Command-Line Help for hivectl

This document contains the help content for the hivectl command-line program.

Command Overview:

hivectl

Sibling to the hive-c0re daemon binary. Covers host-side admin operations that don't go through the broker — manual user provisioning on the bundled matrix container, plus future recovery / debugging verbs.

Usage: hivectl [OPTIONS] <COMMAND>

Subcommands:
Options:

hivectl forge

Reconcile an agent's config between this hive and the forge.

A human's first SSO login to the forge makes their forge account.

Usage: hivectl forge <COMMAND>

Subcommands:

hivectl forge reconcile-config

Show + reconcile the divergence between an agent's local applied config checkout and its forge agent-configs/<agent> main.

Always prints the diff first. --from forge resets the local checkout to forge main (effective on the next deploy); --from local isn't supported yet. With no --from, prompts for the direction.

Usage: hivectl forge reconcile-config [OPTIONS] <AGENT>

Arguments:
Options:

hivectl matrix

matrix-tuwunel invites.

Manual invites into the hive Space and its rooms; c0re's periodic matrix sweep provisions the Space, the chat room and the agents' invites on its own.

Usage: hivectl matrix <COMMAND>

Subcommands:

hivectl matrix invite

Invite a matrix user to the hive Space, or a specific room with --room. Idempotent

Usage: hivectl matrix invite [OPTIONS] <USER>

Arguments:
Options:

hivectl agent

Lifecycle actions on ONE managed agent container. Needs the hive-c0re daemon running.

Everything here targets a single named agent (hivectl agent foo restart, hivectl agent foo choom, …) — anything that acts hive-wide lives at the top level instead (list-agents, restart/stop/start with a scope, quota-enable).

Usage: hivectl agent <NAME> <COMMAND>

Subcommands:
Arguments:

hivectl agent restart

Stop and start this agent container without rebuilding config

Usage: hivectl agent restart [OPTIONS]

Options:

hivectl agent pause

Park this agent's turn loop, leaving the container running.

The harness stops driving turns but keeps serving its web UI and MCP daemons, so the container, its mounts and its warm caches stay up while it burns no tokens. Inbox messages queue unacked and the backlog drains on resume. Sticky: it survives a restart, and pausing a stopped agent makes it come up paused.

Usage: hivectl agent pause [OPTIONS]

Options:

hivectl agent resume

Resume this paused agent — it drains whatever queued up while parked

Usage: hivectl agent resume

hivectl agent start

Start this EXISTING agent container. Fails immediately if name has no config/topology entry at all — it never attempts first-time creation, which is swarm-level (swarmctl agent create)

Usage: hivectl agent start [OPTIONS]

Options:

hivectl agent stop

Gracefully stop this agent container: signal → drain → reconcile. Never escalates to a hard kill — use kill for that

Usage: hivectl agent stop

hivectl agent kill

Hard-stop this managed container

Usage: hivectl agent kill

hivectl agent destroy

Tear down this sub-agent container, keeping its state by default. No undo

Usage: hivectl agent destroy [OPTIONS]

Options:

hivectl agent rebuild

Apply pending config to this managed container

Usage: hivectl agent rebuild

hivectl agent choom

Open an interactive Claude session inside this agent's container.

A fresh session by default, or resume a prior one. Requires root or hive-admin group membership, plus a running container.

Usage: hivectl agent choom [OPTIONS]

Options:

hivectl agent watch

Follow this agent's live turn/tool-call event stream from the CLI.

Prints one compact line per event as they happen. Ctrl-C to stop. Requires the agent to be running.

Usage: hivectl agent watch

hivectl agent quota

This agent's disk accounting + optional quota via btrfs qgroups.

Needs hivectl quota-enable run once hive-wide first. No-op on non-btrfs hosts.

Usage: hivectl agent quota <COMMAND>

Subcommands:

hivectl agent quota show

Report this agent's disk usage from btrfs qgroups

Usage: hivectl agent quota show

hivectl agent quota set

Set or clear this agent's disk-usage quota

Usage: hivectl agent quota set <SIZE>

Arguments:

hivectl agent subvol

btrfs subvolume management for this agent's state dir.

Upgrade an existing plain-dir agent's state into a btrfs subvolume so it gains snapshots and per-subvol usage/quota.

Usage: hivectl agent subvol <COMMAND>

Subcommands:

hivectl agent subvol upgrade

Convert a plain-dir agent state root into a btrfs subvolume in place, so it gains snapshots and per-subvol usage/quota.

Bounces the agent to migrate its state, so it requires --yes.

Usage: hivectl agent subvol upgrade [OPTIONS]

Options:

hivectl agent subvol snapshot

Read-only snapshots of this agent's state subvolume

Usage: hivectl agent subvol snapshot <COMMAND>

Subcommands:

hivectl agent subvol snapshot create

Create a read-only snapshot (agent must already be a subvolume)

Usage: hivectl agent subvol snapshot create --label <LABEL>

Options:

hivectl agent subvol snapshot delete

Delete a snapshot created by subvol snapshot create

Usage: hivectl agent subvol snapshot delete <LABEL>

Arguments:

hivectl agent subvol snapshot send

Export a snapshot to a local file via btrfs send — the local-file half of the inter-hive migration transport (push is the network half). Also useful standalone as a point-in-time backup: a full send with no --parent produces a self-contained archive of the snapshot

Usage: hivectl agent subvol snapshot send [OPTIONS] --dest <DEST> <LABEL>

Arguments:
Options:

hivectl agent subvol snapshot push

Stream a snapshot to the swarm's snapshot store over the WireGuard mesh — the network half of the migration transport.

Stages nothing locally: btrfs send writes straight into the connection, so a multi-gigabyte agent needs no scratch space on this host. The mesh is the authentication (cryptokey routing binds the sender's address to its key), so there is no credential to pass here.

No destination argument exists: a swarm has one store, read from services.hyperhive.swarm.snapshotStore.

Usage: hivectl agent subvol snapshot push [OPTIONS] <LABEL>

Arguments:
Options:

hivectl list-agents

Show all managed agents with their status and technical state.

Global — not scoped to one agent, so it lives at the top level rather than under hivectl agent <name>. Needs the hive-c0re daemon running.

Usage: hivectl list-agents [OPTIONS]

Options:

hivectl quota-enable

Enable btrfs qgroup accounting on the agent-state filesystem.

Global one-shot toggle (not per-agent), hence top-level rather than under hivectl agent <name>. Idempotent — safe to re-run. Once enabled, hivectl agent <name> quota show/quota set work.

Usage: hivectl quota-enable

hivectl wg

WireGuard inter-hive mesh setup helpers.

Generate this hive's mesh key and print the nix to enable the mesh, add a peer, or inspect live interface state.

Usage: hivectl wg <COMMAND>

Subcommands:

hivectl wg init

Generate this hive's WireGuard key (if absent) and print its public key plus the nix to enable the mesh

Usage: hivectl wg init [OPTIONS]

Options:

hivectl wg peer

Print the nix to add a peer hive to the mesh

Usage: hivectl wg peer [OPTIONS] --pubkey <PUBKEY> --address <ADDRESS> <DOMAIN>

Arguments:
Options:

hivectl wg status

Show the live mesh interface state

Usage: hivectl wg status

hivectl peer-config

Generate the federation peer-config block for THIS hive.

Prints the nix a peer operator pastes into their swarm config to trust and reach this hive.

Usage: hivectl peer-config [OPTIONS]

Options:

hivectl stop

Stop containers hive-wide in one operator action.

Bare hivectl stop stops every agent and the gateway; scope flags narrow it to specific sub-agents or the gateway. The swarm's forge and matrix are never in scope: systemd on the services host runs them.

Usage: hivectl stop [OPTIONS]

Options:

hivectl start

Start containers hive-wide — the inverse of hivectl stop.

Bare hivectl start restores the agents stopped by the last broad-scope stop (or starts everything if none); scope flags narrow it. The swarm's forge and matrix are never in scope.

Usage: hivectl start [OPTIONS]

Options:

hivectl restart

Restart containers hive-wide — stop then start over one scope.

Bare hivectl restart restarts everything; scope flags narrow it. The swarm's forge and matrix are never in scope.

Usage: hivectl restart [OPTIONS]

Options:

hivectl open

Print (and best-effort open in a browser) a hive web surface URL.

Resolves the URL from the running daemon so custom forge / matrix domains work. Bare hivectl open opens the operator dashboard.

Usage: hivectl open [TARGET]

Arguments:

hivectl completions

Generate a shell completion script for hivectl and print it to stdout.

Supports bash, zsh, fish, elvish, and powershell. The NixOS module already installs the zsh script system-wide; this is for ad-hoc or other-shell use.

Usage: hivectl completions <SHELL>

Arguments: