The CLI
Every verb, captured from the installed `daktyl --help`.
Captured verbatim from daktyl --help on the installed CLI when this page was
generated — it is the CLI itself talking, not a transcription. Version captured:
daktyl 0.6.12 (c142df5.2026-09-21).
The blocks below reproduce terminal output at its native width; on a narrow screen they scroll sideways.
daktyl --help
usage: daktyl <command> [args]
daktyl — the Daktyl Connect CLI.
things you can manage:
daktyl account who this machine is signed in as
daktyl account status hub health, identity and who you are signed in as
daktyl account login Google sign-in in a browser -> app token in ~/.daktyl/
daktyl account logout forget the saved token
daktyl agent the agents on this machine
daktyl agent ls list the agents on this machine (panes and harness seats)
daktyl agent create create an agent, guided — name, harness, model, permissions, project (flags answer any question up front)
daktyl agent attach attach to an agent's terminal (harnesses that have one)
daktyl agent kill stop one agent (local first, hub fallback)
daktyl agent role read or set an agent's role (leader, owner:app, worker) — what `role:<r>` targets resolve to; `none` clears
daktyl project the projects this machine hosts
daktyl project ls the projects this machine hosts, and who is running in each
daktyl project add register a project: `add [path] [id]` — no path registers $PWD
daktyl project rm unregister by id (prompts if agents are running there)
daktyl sessions the hub's session rows
daktyl sessions prune delete named dormant rows: `prune <name…>` (explicit names; the hub re-checks each)
daktyl keys pinned owner signing keys
daktyl keys list the owner signing keys pinned on this machine
daktyl keys add pin an owner pubkey: `add <pubkey> [label]`
daktyl keys remove unpin by kid or pubkey
daktyl keys pair QR-scan trust bootstrap with the phone
daktyl keys fingerprint show the kid/fingerprint for a pubkey
daktyl machine this computer and the fleet it belongs to
daktyl machine ls list registered computers (and the build each reports)
daktyl machine update roll the published CLI onto hosts through the hub: `update --all | <host>…` (`--wait <s>` reads back what each reports)
daktyl machine doctor read-only health check of this machine
daktyl machine retention what auto-deletion WOULD do: `retention [status|keep|unkeep <sid>]`
daktyl machine uninstall remove the CLI (see `uninstall` below)
things you can do:
daktyl attach <name> attach to an agent — its tmux session if it's local (Ctrl-b d to detach), else the chat REPL (harness seats, other hosts)
daktyl chat <name> open a live terminal chat with a running agent (like the app's Live tab)
daktyl create create an agent, guided — name, harness, model, permissions, project; any question answered by a flag is not asked, so a fully-flagged invocation is scriptable and needs no terminal
daktyl kill <name> stop one agent — local tmux first, hub fallback
daktyl connect [name] sign in + register this computer + start its daemon (skips what's done)
daktyl init [name] register this computer and set it up: channel plugin, login supervisor, default project, daemon — not signed in? shows a QR to scan with the app
daktyl status hub health, identity, registered machines
daktyl fleet every agent and seat across the fleet — state, model, context, freshness
daktyl usage <agent> an agent's token/context history (what the app's chart draws)
daktyl probe <agent> [message] send one message AS YOU and wait for the reply (+ the turn's telemetry)
daktyl daemon [start|stop|status] this host's daemon — heartbeats to the hub + executes fleet actions
daktyl daemon start start it in the background (bare `daktyl daemon` does the same)
daktyl daemon stop stop the background daemon
daktyl daemon status running? where's the log? does it survive logout?
daktyl runner [install|status|remove] the release runner this machine keeps in its login session — a tag on a repo becomes a build here
daktyl runner install download GitHub's runner (checksum-verified), register it for one repository, write + start the login service
daktyl runner status each runner: registered? listening? which repository, which labels
daktyl runner remove stop, deregister (with a removal token) or drop locally, delete the directory
daktyl update self-update the CLI + channel plugin from the hub (sha256-verified)
daktyl uninstall remove the CLI
daktyl doctor read-only health check of this machine
daktyl logs the daemon's log: `logs [-n 200] [--since 15m] [--level warn] [-f] [--json]` (reads across rotation; pipe it anywhere)
daktyl completion bash|zsh print a shell-completion script: eval "$(daktyl completion bash)"
options:
--manual headless login: open the printed URL anywhere, paste the token back (account)
--host H create on another registered machine (skips attach) (agent)
--harness H which harness to run (default claude-code) (agent)
--model M pin the model at launch (agent)
--effort L pin the effort level at launch (agent)
--project P launch inside a registered project (agent)
--role R pin its role at creation (leader, owner:app, worker) (agent)
--bypass / --no-bypass launch with or without --dangerously-skip-permissions (agent)
--ephemeral keep no history after it stops: identity, artifacts and hub rows dropped on kill (agent)
--yes rm: skip the confirmation (project)
--keep-agents rm: unregister but leave running agents alone (project)
--host H create it on another registered machine (create)
--harness H which harness to run (default claude-code) (create)
--model M pin the model at launch (create)
--project P run it inside a registered project (create)
--bypass / --no-bypass run tools without asking / ask first (create)
--all stop every agent on this host (confirms; --yes skips) (kill)
--yes skip the confirmation (kill)
--dev <umbrella> developer machine: the plugin from that checkout's mcp/claude-channels, and it becomes the default project (init)
--project <path> the default project agents start in (init)
--no-setup register only (plus the daemon phase); skip plugin, supervisor and project (init)
--rekey re-register even though this computer already is (rotates the host key; the daemon reconnects) (init)
--foreground run in this terminal (what systemd and tmux use) (daemon)
--allow-sibling start beside a live daemon anyway (they BOTH execute every command) (daemon)
--url U the repository (https://github.com/<owner>/<repo>) — one runner per repository, by design (runner)
--token-stdin / --token-file P the registration or removal token (never on the command line) (runner)
--labels a,b runner labels (default mac-build — what every lane's runs-on asks for) (runner)
--no-start write the service, do not bootstrap it (runner)
--check report what's available, change nothing (update)
--force reinstall even when the commit matches (update)
--all also stop the daemon + agents, deregister, remove plugin + config (uninstall)
--yes skip the confirmation (uninstall)
-h, --help show this help; add --markdown for the full reference
-V, --version print the CLI version and exit
--server SERVER hub base URL
every command prints what it can do when you leave the rest out.
config: ~/.daktyl/config.json
Per-verb help
daktyl account
usage: daktyl account
who this machine is signed in as
daktyl account status hub health, identity and who you are signed in as
daktyl account login Google sign-in in a browser -> app token in ~/.daktyl/
daktyl account logout forget the saved token
options:
--manual headless login: open the printed URL anywhere, paste the token back
everything: daktyl --help
daktyl agent
usage: daktyl agent
the agents on this machine
daktyl agent ls list the agents on this machine (panes and harness seats)
daktyl agent create create an agent, guided — name, harness, model, permissions, project (flags answer any question up front)
daktyl agent attach attach to an agent's terminal (harnesses that have one)
daktyl agent kill stop one agent (local first, hub fallback)
daktyl agent role read or set an agent's role (leader, owner:app, worker) — what `role:<r>` targets resolve to; `none` clears
options:
--host H create on another registered machine (skips attach)
--harness H which harness to run (default claude-code)
--model M pin the model at launch
--effort L pin the effort level at launch
--project P launch inside a registered project
--role R pin its role at creation (leader, owner:app, worker)
--bypass / --no-bypass launch with or without --dangerously-skip-permissions
--ephemeral keep no history after it stops: identity, artifacts and hub rows dropped on kill
everything: daktyl --help
daktyl project
usage: daktyl project
the projects this machine hosts
daktyl project ls the projects this machine hosts, and who is running in each
daktyl project add register a project: `add [path] [id]` — no path registers $PWD
daktyl project rm unregister by id (prompts if agents are running there)
options:
--yes rm: skip the confirmation
--keep-agents rm: unregister but leave running agents alone
everything: daktyl --help
daktyl keys
usage: daktyl keys
pinned owner signing keys
daktyl keys list the owner signing keys pinned on this machine
daktyl keys add pin an owner pubkey: `add <pubkey> [label]`
daktyl keys remove unpin by kid or pubkey
daktyl keys pair QR-scan trust bootstrap with the phone
daktyl keys fingerprint show the kid/fingerprint for a pubkey
everything: daktyl --help
daktyl machine
usage: daktyl machine
this computer and the fleet it belongs to
daktyl machine ls list registered computers (and the build each reports)
daktyl machine update roll the published CLI onto hosts through the hub: `update --all | <host>…` (`--wait <s>` reads back what each reports)
daktyl machine doctor read-only health check of this machine
daktyl machine retention what auto-deletion WOULD do: `retention [status|keep|unkeep <sid>]`
daktyl machine uninstall remove the CLI (see `uninstall` below)
everything: daktyl --help
daktyl attach
usage: daktyl attach <name>
attach to an agent — its tmux session if it's local (Ctrl-b d to detach), else the chat REPL (harness seats, other hosts)
everything: daktyl --help
daktyl chat
usage: daktyl chat <name>
open a live terminal chat with a running agent (like the app's Live tab)
everything: daktyl --help
daktyl create
usage: daktyl create
create an agent, guided — name, harness, model, permissions, project; any question answered by a flag is not asked, so a fully-flagged invocation is scriptable and needs no terminal
options:
--host H create it on another registered machine
--harness H which harness to run (default claude-code)
--model M pin the model at launch
--project P run it inside a registered project
--bypass / --no-bypass run tools without asking / ask first
everything: daktyl --help
daktyl kill
usage: daktyl kill <name>
stop one agent — local tmux first, hub fallback
options:
--all stop every agent on this host (confirms; --yes skips)
--yes skip the confirmation
everything: daktyl --help
daktyl connect
usage: daktyl connect [name]
sign in + register this computer + start its daemon (skips what's done)
everything: daktyl --help
daktyl init
usage: daktyl init [name]
register this computer and set it up: channel plugin, login supervisor, default project, daemon — not signed in? shows a QR to scan with the app
options:
--dev <umbrella> developer machine: the plugin from that checkout's mcp/claude-channels, and it becomes the default project
--project <path> the default project agents start in
--no-setup register only (plus the daemon phase); skip plugin, supervisor and project
--rekey re-register even though this computer already is (rotates the host key; the daemon reconnects)
everything: daktyl --help
daktyl status
usage: daktyl status
hub health, identity, registered machines
everything: daktyl --help
daktyl fleet
usage: daktyl fleet
every agent and seat across the fleet — state, model, context, freshness
everything: daktyl --help
daktyl usage
usage: daktyl usage <agent>
an agent's token/context history (what the app's chart draws)
everything: daktyl --help
daktyl probe
usage: daktyl probe <agent> [message]
send one message AS YOU and wait for the reply (+ the turn's telemetry)
everything: daktyl --help
daktyl daemon
usage: daktyl daemon [start|stop|status]
this host's daemon — heartbeats to the hub + executes fleet actions
daktyl daemon start start it in the background (bare `daktyl daemon` does the same)
daktyl daemon stop stop the background daemon
daktyl daemon status running? where's the log? does it survive logout?
options:
--foreground run in this terminal (what systemd and tmux use)
--allow-sibling start beside a live daemon anyway (they BOTH execute every command)
everything: daktyl --help
daktyl update
usage: daktyl update
self-update the CLI + channel plugin from the hub (sha256-verified)
options:
--check report what's available, change nothing
--force reinstall even when the commit matches
everything: daktyl --help
daktyl uninstall
usage: daktyl uninstall
remove the CLI
options:
--all also stop the daemon + agents, deregister, remove plugin + config
--yes skip the confirmation
everything: daktyl --help
daktyl doctor
usage: daktyl doctor
read-only health check of this machine
everything: daktyl --help
daktyl logs
usage: daktyl logs
the daemon's log: `logs [-n 200] [--since 15m] [--level warn] [-f] [--json]` (reads across rotation; pipe it anywhere)
everything: daktyl --help
daktyl completion
usage: daktyl completion bash|zsh
print a shell-completion script: eval "$(daktyl completion bash)"
everything: daktyl --help