hobhob

hob CLI

Look up the commands people and agents use to arrange work, read results, coordinate, and automate in hob.

The hob CLI connects the work people and agents share: projects, panes, conversations, commands, and the results they produce. Agents receive its guidance through managed instructions; use this reference to understand their actions, script supported operations, and look up what a command will change.

Namespace index

NamespacePurposeReference
hob appInstallation, updates, repair, and licenseRun and license hob
hob listCurrent working layout and callerOrient and arrange
hob paneOpen, configure, read, and communicate with panesArrange, read, deliver
hob open, hob closePanels, views, and filesOrient and arrange
hob workspace, hob environmentWorkspaces, snapshots, and checkoutsOrient and arrange
hob search, hob conversationFind and read saved conversationsRead and recover
hob attention, hob walkthrough, hob annotatePoint, guide, and leave markersDeliver and collaborate
hob feedbackPrepare feedback for human reviewBoundaries
hob git, hob issue, hob prReview and record work with provenanceRecord and review
hob automationDefine, validate, run, and inspect workflowsAutomate
hob agent verifyVerify the caller's live agent capabilityChoose the command context

Choose the command context

A project directory identifies the work. A live hob connection and, for agent-only operations, a pane capability determine what the caller can do.

Where the command runsAvailable operations
Ordinary shellApp/license commands and native/headless launch. Issue and PR commands can use their git-platform integration; local hob issues need the live project connection. Non-commit hob git subcommands pass through to Git.
Shell with hob's live project connection, such as a hob terminalProject operations including local issues, hob environment list, and automation list/init/show/apply/validate/inspect/run/runs/logs. This does not grant agent-only pane controls.
hob-launched agent or inheriting subprocessAgent-only layout, pane, conversation, attention, walkthrough, annotation, feedback, and commit-provenance operations, subject to the live pane capability and target requirements.

User Commands

Start with hob app --help, hob issue --help, or hob pr --help in an ordinary shell. Use --project-dir /path/to/project for project-aware commands. That flag selects a project; it does not create a connection or grant agent authority.

Agent commands

hob agent verify --json succeeds only with current agent authority. A hob terminal or automation shell step fails this check; an automation agent step receives its own capability. HOB_PANE_ID identifies a pane, but its presence alone is not proof of authorization.

Top-level help hides the agent-context namespaces when no pane context is present. Managed guidance normally arrives at agent launch through Settings → Agents → Managed hob instructions, without editing repository files. See Working with your agent.

Run and license hob

Launch hob

CommandBehavior
hob /path/to/projectSubmit a native project-open request to the elected Host.
hob --detach /path/to/projectOpen the native presentation without keeping the launching shell attached.
hob --headlessEnable headless service mode and stay attached; Ctrl-C requests Host shutdown.
hob --headless --detachEnable the daemon service, print the browser URL, and return to the shell.
hob app versionPrint the installed version.
hob app update, hob app repairUpdate or repair the installation; check subcommand help for options.
hob app uninstallRemove the installation through the uninstall flow.

Headless mode does not accept a project path. Choose the project in the browser IDE. Headless mode covers shutdown, systemd, SSH, and the lifetime of the elected Host.

License activation

Use hob app license activate, hob app license status, or hob app license deactivate on the machine running hob. For non-interactive activation, supply the key on standard input:

printf '%s\n' "$HOB_LICENSE_KEY" | hob app license activate --key-stdin

Orient and arrange

CommandUse it to…
hob listRead panels, panes, workspaces, caller identity, environment IDs, and spatial relationships in one call.
hob pane list --unplacedInclude project-owned panes without a workspace/Dock placement.
hob pane details --jsonInspect the caller pane's metadata and backend conversation identity.
hob pane rename "Review the counter"Keep the pane title aligned with its task; --id targets another pane.
hob pane open <type>Open agent, terminal, selection, render, web, or issue; choose --workspace, --surface dock, and --focus as needed.
hob pane set --id <pane-id> …Change typed settings such as model, effort, account, permission mode, working directory, or render file. It does not expose arbitrary pane state.
hob pane move <pane-id> --from <source> --to <destination>Move one placement between a workspace and the Dock, leaving other placements intact.
hob pane close [pane-id]Close the caller or a named pane.
hob workspace list, hob workspace details <target>Inspect workspace IDs, environments, panes, and layout.
hob workspace new --name "Counter review"Create a workspace in the caller's checkout; add --focus to switch to it.
hob workspace open <target>, hob workspace rename, hob workspace set, hob workspace closeNavigate or configure a workspace; targets accept a number, name, or ID where supported.
hob workspace save, hob workspace saved, hob workspace restoreSave, list, and restore named layouts. update-saved and delete-saved manage them. See Saved.
hob environment list --jsonList live checkout environments and their root paths.
hob open panel <name>, hob close panel <name>Show or close a tool panel: home, files, issue, history, automations, bookmarks, shares, or sourcecontrol.
hob open view automations, hob open view statsOpen the singleton full-page view; hob close view <name> closes it.

An agent pane can choose --backend, --model, --effort, and supported --fast/--no-fast options. Models must be configured picker values; a started conversation cannot move to a different backend. See Parallel agents and Accounts and profiles.

For workspace creation, --environment <id> selects a live checkout; --worktree <branch> uses an existing branch, while --new-branch --start-point <ref> creates a branch and managed worktree. See Projects and workspaces for parallel writers.

Dock placement for cross-workspace work

The Dock stays available while workspaces change. Use hob pane open render --file notes/roadmap.md --surface dock --focus for shared context, or hob pane move --to dock to move the caller there. Specify --from when multiple placements make the source ambiguous. Prefer the workspace grid for work that belongs to one task.

Read and recover

CommandUseful selectors and behavior
hob pane view <pane-id>Read an open pane with typed bounds: text --lines 10:30, PDF --pages 1:2, agent --blocks 1:5, web --nodes 1:50.
hob pane view <terminal-id> --cmd <command-id>Read a specific command's output. --wait waits silently; --watch streams retained output/deltas through completion.
hob search conversations "character counter"Search saved turns in this project; use --any, --role, --agent-type, --since, --until, or --limit. The caller is excluded unless --include-self is supplied.
hob conversation listList saved conversations; filter by agent type or time.
hob conversation show <pane-or-session-id>Read past or closed conversations, including when the backend transcript is gone; use --around <block-id> -C 3, --blocks, or --role.
hob attention pane:<pane-id> --location block:<block-id>Create a recovery link to the matching turn. When played, it can restore a closed pane and focus its workspace.

Terminal --watch subsumes --wait, conflicts with --json, and marks gaps caused by bounded retention. Interactive/TUI commands report unavailable live output and fall back to waiting. See Terminals.

For search grammar, snippets, and the recovery workflow, see History. Preserve the returned IDs for later commands rather than identifying a pane by a guessed title.

Deliver and collaborate

CommandWhat the person sees
hob pane input <pane-id> <text> --appendA visible draft, extended with the text. Without --append, it replaces the draft. Nothing is delivered.
hob pane send <pane-id> <text>An attributed agent message or an executed terminal command block. Terminal sends accept --wait or --watch; --raw sends PTY bytes.
hob pane open agent --task <text>A new agent with its assignment delivered in one operation. Use --task --stdin for exact multiline text.
hob open file <path> --line <n>The file beside the work. Optional --placement right, left, above, or below controls where it opens.
hob pane open web --file index.html --watch style.css,app.jsA live-reloading HTML preview. URL/server recipes use --url, --command, --cwd, and optional --start; see Browser previews.
hob attention <target> --message <text>A link to a transient spotlight and optional card. Targets include files, panes, panels, and settings.
hob walkthrough search <topic>, hob walkthrough create --items <json>A library guide or a new ordered tour. hob walkthrough targets discovers valid UI targets.
hob annotate --items <json>A link applying durable markers to one file/pane surface.
hob feedback --note <text>A locally stored feedback draft for the person to review and submit. --problem marks a problem; --screenshot <path> attaches an existing image.

A web node belongs to one snapshot. Use the node and fingerprint returned by the read together; substitute actual values for these illustrative placeholders:

hob pane view web_123
hob attention pane:web_123 --location node:n7 --fingerprint 'returned-fingerprint'

Continue reading that snapshot with --nodes and --fingerprint. Stale or missing elements degrade honestly. Annotations stay within one content surface; walkthroughs can mix surface types but use at most one web pane per set. See Working with your agent for what these interactions look like.

Record and review

CommandResult and provenance
hob git status, hob git diff, hob git logStandard Git inspection through hob's wrapper. Other non-commit Git arguments pass through too.
hob git commit -m "Add note character counter" --link-pane <reviewer-id>Make the commit and link it to the current turn; repeat --link-pane for contributing panes. Standard amend/pathspec forms are supported.
hob issue create --local --title <title> --body <markdown>File a local issue immediately and return its project-bound link. Agent-created issues retain origin-turn provenance; --link-pane adds contributors.
hob issue list, hob issue start <id>, hob issue complete <id>Find and track local work.
hob issue edit --local <id>, hob issue edit <number-or-url>Edit a local or connected issue while preserving omitted fields.
hob issue link --local <id>, hob issue link --remote <number>Retrieve the exact issue link; remote references can use --source <source>.
hob issue create, hob issue comment, hob issue closeCreate or update git-platform issues. Destructive deletion requires explicit --local or --remote scope.
hob pr create, hob pr edit, hob pr comment, hob pr closeWork with the current branch's PR or a specified platform PR; use subcommand help for required fields.

Inside hob, prefix every Git command with hob. Run commits from the repository you intend to change, including nested repositories. Provenance links help you return to the conversation that produced something; they do not verify correctness. See Commits and artifacts and Issues.

Automate

CommandPurpose
hob automation list --scope sharedInspect registered automations, including invalid definitions and diagnostics; scopes are shared, private, and global.
hob automation init "Guestbook check", hob automation init --stdinCreate a canonical UUID bundle, from a scaffold or complete definition. Stdin definitions omit the generated ID.
hob automation show <id-or-name>Find the actual bundle/manifest paths and inspect its definition.
hob automation apply <id-or-name> --stdinValidate and atomically replace the definition. --bundle <dir> supplies supporting files too.
hob automation validate <bundle-or-manifest>Check a staging bundle without installing it; --stdin validates input directly. Requires a live hob project connection.
hob automation inspect <id-or-name> --step <step-id> --data-file <json>Preflight an HTML presentation template without starting a run.
hob automation run <id-or-name> --waitStart a new execution. Supply inputs with repeatable --input key=value or --inputs-json.
hob automation runs [id-or-name], hob automation logs <run-id>Read run status and recorded output.
hob automation delete <id-or-name>, hob automation restore <id-or-name>Move a definition to Trash or restore it; permanent deletion is a separate explicit option.

Use paths returned by init/show; do not invent registry paths. Linked builder agents may omit the automation ID for supported show/apply/inspect operations. The Automation reference owns complete flags, YAML, expressions, environments, and run-history contracts. hob open view automations opens the human-facing builder and run view.

Command boundaries

BoundaryContract
Draft vs deliverypane input edits a draft; pane send delivers a message or executes a command.
Links vs navigationAttention, walkthrough creation, annotation, feedback, and issue creation/linking print exact deep links to include unchanged in the reply. Printing the link does not navigate; issue creation still files the issue immediately. Attention can also play at turn end if the person is viewing the sender pane.
Readingpane view is read-only and bounded. Typed unavailable content exits 3; it is not an empty successful result. Web nodes need their matching snapshot fingerprint.
DelegationUse pane open agent --task in one call. open followed by input leaves an unsent draft.
Agent repliesThe recipient sends its final answer to the source pane with pane send. The sender does not poll or read the recipient merely to retrieve the answer.
Human choiceOpen an issue pane only when requested. Walkthroughs and annotations are opt-in; use walkthrough play only when the person explicitly asks to start it now.
Feedbackfeedback stores a draft; it cannot send feedback or make the person's diagnostic-sharing choices.
Automation trustThe CLI can request a shared run but cannot approve it. Report pending human approval; do not retry to bypass it. See Trust.

Compose a small workflow

These examples run from a hob agent. IDs below are illustrative: use the actual pane IDs from hob list, command ID returned by the terminal send, and the pane that sent the assignment. Run the example check only with Node installed.

Ask the terminal, read the result, reply

hob pane send terminal_123 "node --check app.js" --wait
hob pane view terminal_123 --cmd 42
# Reply only after reading the actual result; use the source agent's pane ID.
hob pane send agent_456 "The JavaScript syntax check passed. Behavior still needs review."

That final message assumes the check passed. If it failed, send the actual failure and relevant output instead. A syntax check does not verify guestbook behavior; Testing supplies the next checks.

Orient, open, point

When the person asks to see how the guestbook stores notes:

hob list
hob open file app.js --line 3 --placement right
hob attention file:app.js --location line:3 --message "This key keeps guestbook notes in this browser's local storage."

Line 3 is the storage key in the unmodified example; verify the line if the file has changed. Include the exact attention link printed by the last command in your reply, with a descriptive label, so the person can select it.

Options and agent-readable docs

OptionMeaning
--help, -hShow command/subcommand help without carrying out the operation.
--jsonStructured output for supported commands; terminal --watch is incompatible.
--debugConnection/resolution details for supported commands.
--project-dir <path>Select the project for project-aware commands. Issue/PR resolution tries this first, then the current Git root and HOB_PROJECT_DIR.
--stdinSupply the command's specified payload from standard input. Pair it with the payload flag where required: --task --stdin, --body --stdin, or --message --stdin.

Pane input, terminal commands, and initial agent tasks preserve literal text. For long multiline payloads, use a single-quoted heredoc and the supported stdin form. Never treat an unset project/window or unavailable content as permission to guess a target; inspect the error and resolve the context first.

Every guide has Copy Markdown and an Open menu for its .mdx URL. Give an agent the page relevant to the task; the prose and examples are available without downloading screenshots.

Next

On this page