feat: add reusable inbox skill bundle
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
---
|
||||
name: inbox
|
||||
description: Durable agent-to-agent coordination through a bundled inbox CLI. Use when an agent needs to fetch work, claim a thread, report progress, ask blocked questions, wait for replies, inspect thread history, or return done/fail results through a SQLite-backed inbox instead of ad hoc chat.
|
||||
---
|
||||
|
||||
# Inbox
|
||||
|
||||
Use the bundled `./assets/inbox` CLI to communicate through a durable SQLite-backed inbox.
|
||||
|
||||
## Quick Start
|
||||
|
||||
- Invoke `./assets/inbox` relative to this skill directory.
|
||||
- Pass `--db` explicitly for every command.
|
||||
- Prefer `--json` whenever another agent or script will read the output.
|
||||
- Run `init` before first use on a new database path.
|
||||
|
||||
## Rules
|
||||
|
||||
- Treat `fetch` as discovery only; only `claim` grants ownership.
|
||||
- Do not start work without a valid lease.
|
||||
- Use `update --status in_progress` for progress and `update --status blocked` for precise questions.
|
||||
- Prefer `wait-reply` over manual sleep loops when blocked.
|
||||
- Use `done` for terminal success and `fail` for terminal failure.
|
||||
- Keep scheduling and dependency decisions out of this layer; those belong to `orch`.
|
||||
|
||||
## Typical Commands
|
||||
|
||||
```bash
|
||||
./assets/inbox --db ./coord.db --json init
|
||||
./assets/inbox --db ./coord.db --json fetch --agent backend-worker --status pending
|
||||
./assets/inbox --db ./coord.db --json claim --agent backend-worker --thread thr_123 --lease-seconds 900
|
||||
./assets/inbox --db ./coord.db --json update --agent backend-worker --thread thr_123 --status in_progress --summary "Implementing post CRUD routes"
|
||||
./assets/inbox --db ./coord.db --json update --agent backend-worker --thread thr_123 --status blocked --summary "Need auth decision" --payload-json '{"question":"Should admin auth use email/password in MVP?"}'
|
||||
./assets/inbox --db ./coord.db --json wait-reply --agent backend-worker --thread thr_123 --after-event 51 --timeout-seconds 1800
|
||||
./assets/inbox --db ./coord.db --json reply --from leader --to backend-worker --thread thr_123 --summary "Use email/password for MVP" --body "Use a simple credential flow for the first iteration."
|
||||
./assets/inbox --db ./coord.db --json done --agent backend-worker --thread thr_123 --summary "Post CRUD implemented" --body-file result.md
|
||||
```
|
||||
|
||||
## Command Map
|
||||
|
||||
- `init`: initialize schema and pragmas on a database path
|
||||
- `send`: create a new thread or append a message
|
||||
- `fetch`: list candidate threads for an agent without claiming them
|
||||
- `claim`: acquire a lease on a thread
|
||||
- `renew`: extend an active lease
|
||||
- `update`: send progress or blocked updates
|
||||
- `reply`: send an answer, control message, or follow-up inside a thread
|
||||
- `done`: mark a thread complete with final result data
|
||||
- `fail`: mark a thread failed with failure details
|
||||
- `cancel`: cancel a thread
|
||||
- `list`: list threads by filters
|
||||
- `show`: inspect thread state and message history
|
||||
- `watch`: block until matching thread activity arrives
|
||||
- `wait-reply`: block until a reply arrives for a specific thread
|
||||
|
||||
## Notes
|
||||
|
||||
- `body-file` and artifact-heavy flows are supported; prefer them over long inline strings when sending reports or patches.
|
||||
- `fetch --unread` and `show --mark-read` depend on per-agent read cursors.
|
||||
- If the bundled binary cannot execute on the current host, stop and report the compatibility issue instead of guessing a replacement path or workflow.
|
||||
Reference in New Issue
Block a user