Files
dat-thang/docs/cable.1
T
divorce b735900f2e 0.0.002
ddat interop with dat js
cable interop with cabal js
ddat's frontend = dat-thang
cable fe = cable-thang
dillo support based on cel's dillo-dat
bootstrap node
xplatform support

Signed-off-by: divo <418@cryspace.space>
2026-10-19 00:17:02 -04:00

115 lines
3.1 KiB
Groff

.TH CABLE 1 "October 2026" "cable" "User Commands"
.SH NAME
cable \- Cabal/Cable address, feed, and bootstrap utility
.SH SYNOPSIS
.B cable --new
.br
.B cable address
.I address
.br
.B cable whoami
.I room-address
.br
.B cable bootstrap add
.I host:port
.br
.B cable bootstrap list
.br
.B cable bootstrap serve
.I public-ipv4-host udp-port
.br
.B cable nick
.I room-address name
.br
.B cable publish
.I room-address channel text
.br
.B cable feed
.I room-address
.br
.B cable --version
.SH DESCRIPTION
.B cable
provides address, local feed, and bootstrap utilities. Its SDL2 chat client is
.BR cable-thang (1).
The CLI normalizes legacy
.B cabal://
and
.B cable://
room-address forms to canonical
.B cable://
addresses, preserving an optional
.B ?admin=\fI64-hex-key\fR
room moderation key. Raw 64-digit hexadecimal keys are accepted.
.PP
The room UI uses embedded S7 and S-expressions for its C-facing data model.
Cesspool handles peer discovery and transport, Sleep stores persistent local
feeds, and S7 represents room records as S-expressions. Hypercore and Cabal
CLI interoperability tools are test-only and are not production dependencies.
.PP
The historical JavaScript terminal client remains available as
.BR cabal-cli .
.SH COMMANDS
.TP
.B --new
Create a new Cabal room, save its Ed25519 room signing key with mode 0600
under
.IR ~/.cable/rooms/<room-key>/room-secret.key ,
and print its reusable
.B cable://
address. Pass that address to
.BR cable-thang (1)
on this or another client.
.TP
.BI address " address"
Validate a Cabal/Cable/Hyper room address and print the key as
.B cable://
plus 64 lowercase hexadecimal digits, preserving any admin key.
.TP
.BI whoami " room-address"
Print the persistent local C-side user's
.B cable://
address in the selected room, creating that room's local keypair on first use.
.TP
.BI bootstrap " add host:port"
Persist a Cesspool rendezvous endpoint in
.IR ~/.config/dat-gpt/bootstrap .
.TP
.B bootstrap list
List configured Cesspool rendezvous endpoints.
.TP
.BI bootstrap " serve public-ipv4-host udp-port"
Run the legacy Cesspool rendezvous server in the foreground. For a persistent
node with a stable identity, service unit, and operator guidance, use
.BR cesspool-bootstrap (1).
The UDP port still must be reachable through the host firewall and router.
Clients can configure its endpoint with
.B cable bootstrap add host:port
or CABLE_BOOTSTRAP.
.TP
.BI nick " room-address name"
Append a local S-expression `about` record to the room's Sleep feed. This feed
is experimental and is not a Cabal Hypercore feed used by
.BR cable-thang .
.TP
.BI publish " room-address channel text"
Append a local C-side feed chat record.
.TP
.BI feed " room-address"
Print local C-side feed records.
.TP
.B --version
Print the Cable version.
.SH EXAMPLES
.nf
cable --new
cable address cabal://0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
cable-thang cable://0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
cable bootstrap add bootstrap.example.net:49737
cable bootstrap list
cable-thang cable://0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
.fi
.SH SEE ALSO
.BR cabal-cli (1),
.BR cable-thang (1)