| name | angel-host |
| description | Control the local Angel Engine desktop daemon via the bundled `angelctl` CLI: list chats, send messages, inspect runs and projects. Use when the user asks to manage Angel chats or when orchestration needs host APIs. Skill-first path; does not require MCP.
|
Angel Host Control
Manipulate the local Angel Engine host (desktop app + daemon) through the
bundled host CLI. This is the Skill-first injection path: no MCP server is
required. MCP remains a future extension.
Find angelctl
Prefer the absolute path when provided:
$ANGELCTL_BIN — full path to the binary (injected by the host when host control is enabled).
$ANGELCTL_BIN_DIR/angelctl — directory containing the binary.
angelctl on PATH (host prepends the bin dir for agent processes).
- Packaged app:
Angel Engine.app/Contents/Resources/bin/angelctl (macOS).
- Dev monorepo:
packages/host-cli/dist/bin/angelctl after bun run host-cli:build.
command -v angelctl || test -x "$ANGELCTL_BIN" && echo "ok"
angelctl --help
angelctl --json which
Connect to the daemon
Do not invent URLs or tokens. Resolution order (CLI built-in):
--url + --token flags
ANGEL_DAEMON_URL + ANGEL_DAEMON_TOKEN (injected into agent processes)
--info / ANGEL_DAEMON_INFO pointing at daemon.json
- Well-known
~/.angel-engine/daemon.json (mode 0600, written by the daemon)
- App Support
…/Angel Engine/daemon.json (or Dev variant)
angelctl --json which
angelctl --json health
Safe read-only examples
angelctl --json health
angelctl --json chat ls
angelctl --json chat get <chatId>
angelctl --json run active <chatId>
angelctl --json project ls
angelctl --json agent ls
angelctl --json skill ls --runtime claude
Write examples (confirm with the user first)
angelctl chat create --runtime codex --title "Follow-up"
angelctl chat send <chatId> "Please continue from the last summary."
angelctl chat archive <chatId>
angelctl run stop <runId>
Use --json for machine-readable output; --quiet / -q for IDs only when supported.
Security boundaries
- Never print, log, or commit
ANGEL_DAEMON_TOKEN, daemon.json, or Bearer headers.
- Prefer
angelctl over hand-rolled curl so tokens stay out of shell history.
- Do not call process-kill / daemon-shutdown host routes from this skill.
- Do not mass-delete or archive chats without explicit user confirmation.
- Mobile-paired tokens are restricted; host control uses the primary desktop token context only.
When not to use
- User only wants code edits in the current workspace (use normal tools).
- You need structured tool schemas without shell — that is the future MCP path; it is not implemented here. Skill + CLI is sufficient for host control.
Source of truth
If this document drifts, trust angelctl --help and the live daemon API.
MCP is intentionally not required for this path.