yao-agent
Agent management expert. ALWAYS invoke this skill when you need to list available agents,…
Daemon process management — start, monitor, restart, stop long-running services. ALWAYS invoke this skill when the user asks to start, check, restart, or stop background services, dev servers, or daemon processes.
$ npx -y skills add YaoApp/yao --skill yao-daemon --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/yao-daemonContext preview
The summary Claude sees to decide when to auto-load this skill.
Daemon process management — start, monitor, restart, stop long-running services. ALWAYS invoke this skill when the user asks to start, check, restart, or stop background services, dev servers, or daemon processes.
name: yao-daemon description: "Daemon process management — start, monitor, restart, stop long-running services. ALWAYS invoke this skill when the user asks to start, check, restart, or stop background services, dev servers, or daemon processes."
| Param | Required | Default | Description | |-------|----------|---------|-------------| | `command` | yes | — | Shell command to execute | | `description` | yes | — | Concise 5–10 word summary | | `port` | no | auto-detect | Expected listen port; the system verifies the port is ready before reporting it | | `args` | no | — | Additional arguments | | `working_dir` | no | workspace | Working directory |
| Param | Default | Description | |-------|---------|-------------| | `status` | all | Filter: `running`, `stopping`, `completed`, `failed`, `cancelled`, `port_detecting`, `all` | | `limit` | 20 | Max items per page | | `offset` | 0 | Skip first N items |
| Param | Required | Description | |-------|----------|-------------| | `daemon_id` | yes | The daemon ID |
All responses are JSON. Daemon objects contain:
id, kind, session_id, status, description, command, command_argv, command_line, pid, pgid, user, started_at, finished_at, duration_ms, exit_code, signal, detail, daemon_port, daemon_url, daemon_restarts, seq
**Port detection behavior:**
Both modes start by returning `port_detecting` with `daemon_port: 0` if the port is not confirmed within the initial ~2s settle window. If the port is confirmed within ~2s, `start` returns `running` with `daemon_port`/`daemon_url` directly.
{ "daemons": [...], "total": 5, "offset": 0, "limit": 20, "has_more": false }{ "job": { ... }, "detail": "already in terminal state (cancelled); no action taken" }Structured JSON with `code` and `message`:
{ "error": { "code": "not_found", "message": "daemon \"dmn_xxx\" not found" } }Codes: `invalid_argument`, `not_found`, `internal`.
1. **Always provide a `description`**. 2. **Specify `port`** when starting a server — the system confirms the port is actually listening before reporting `daemon_url`. 3. **Daemons run indefinitely** — use `yao_daemon_stop` to terminate. 4. **Use `yao_daemon_restart`** to restart a crashed or misconfigured daemon without losing its ID. 5. **Monitor output** with `yao_job_output` passing the `daemon_id` as `job_id`.
When a daemon's port becomes ready, the system delivers a `<BackgroundJobReceipt>` XML message containing the `daemon_url`. Use that URL for subsequent HTTP requests to the daemon.
✨ All your agents and workspaces in one place, on every device you own. Track tasks on a board, accessible from desktop, mobile, browser, or API. Self-hosted.
Agent management expert. ALWAYS invoke this skill when you need to list available agents,…
Audio expert. ALWAYS invoke this skill when the user asks to transcribe, recognize, or…
Kanban board and task query expert. ALWAYS invoke this skill when the user asks about boards,…
Typed decision expert. ALWAYS invoke this skill when you need structured classification,…
Yao process documentation expert. ALWAYS invoke this skill when the user needs to discover…