Skip to main content

App lifecycle & chat

The Go CLI provides commands for developing and testing apps. They hit the same HTTP endpoints the chat client / web client uses, so every behavior rule, sub-agent, tool call, and approval flow runs in production mode · no mocks.

CommandPurpose
digitorn install <source>Install an app YAML on the running daemon.
digitorn chat <app-id>Multi-turn chat with the installed app.
digitorn listList installed apps and their status.
digitorn app-status <app-id>Show app health checks.
digitorn app-reload <app-id>Recompile and reload an app from disk.
digitorn sessions <app-id>List sessions for an app.
digitorn uninstall <app-id>Remove an installed app.

All commands accept --daemon (default http://127.0.0.1:8000). Full flag lists: digitorn <cmd> --help and the CLI reference.

Prerequisites

bash
# Start the daemon in another terminal
digitornd -config config.yaml run

# OR talk to a remote daemon
digitorn <command> --daemon https://my-daemon.example.com

JWT auth is honoured - the CLI threads the cached token from ~/.digitorn/credentials.json (set by digitorn login). When auth is disabled on the daemon (server.auth_enabled: false), no token is needed.

digitorn install

Installs an app YAML on the running daemon (compile + register).

bash
digitorn install path/to/app.yaml
digitorn install path/to/app.yaml --daemon http://127.0.0.1:8000

The path must be readable by the daemon process. Compiler errors surface in the CLI output.

digitorn app-status

Print health / status for an installed app.

bash
digitorn app-status my-app

digitorn chat

Interactive multi-turn chat with an installed app (TUI).

bash
# Interactive
digitorn chat my-app

# Resume an existing session
digitorn chat my-app -s abc123

# Custom daemon
digitorn chat my-app --daemon https://prod.example.com

See digitorn chat --help for the full flag list. For listing sessions after the fact:

bash
digitorn sessions my-app

Approvals

Production clients honour approval gates from tools.capabilities.approve. For local smoke tests, prefer an app with tools.capabilities.default_policy: auto so tools do not pause for a human.

Common workflows

Test an app you just edited

bash
digitorn install ./my-app.yaml
digitorn chat my-app
digitorn sessions my-app

Reload after an on-disk edit

bash
digitorn app-reload my-app
digitorn chat my-app

Cross-references

  • Top-level CLI overview: CLI Reference
  • Auth + JWT cache (~/.digitorn/credentials.json): Auth
  • Background mode triggers (chat does not drive cron/webhook triggers; those run on the daemon schedule): Triggers