en un clic
bus
Message bus communication — how agents talk to each other
Installer avec Codex ou Claude Copiez ce prompt, collez-le dans Codex, Claude ou un autre assistant, puis laissez-le vérifier la page du skill et l'installer pour vous.
Menu
Message bus communication — how agents talk to each other
Installer avec Codex ou Claude Copiez ce prompt, collez-le dans Codex, Claude ou un autre assistant, puis laissez-le vérifier la page du skill et l'installer pour vous.
Basé sur la classification professionnelle SOC
Review pull requests for code quality, security, and correctness
Review pull requests for code quality, security, and correctness
End-to-end shipping workflow — tests, PR creation, review request. Unified pr-create + pr-complete.
Periodic cross-agent learning consolidation — review what worked, what didn't, propagate insights
Break down complex problems through structured analytical frameworks
Persist and recall context across sessions — critical for continuity
| name | bus |
| version | 1.0.0 |
| description | Message bus communication — how agents talk to each other |
| uses | [] |
| requires | {"tools":[],"env":[]} |
| security | {"risk_level":"write","capabilities":["bus:read","bus:write"],"requires_approval":false} |
Publish and consume messages on the file-based message bus for inter-agent communication. The bus enables asynchronous, decoupled communication between agents.
This is a builtin skill (handler: type: builtin). When bus_publish is invoked, the executor appends a structured message to the appropriate channel file (.os/bus/channels/{channel}.jsonl). The tool schema in tool.yaml defines the external contract; the executor handles the file I/O directly.
There are only 3 channels. All shared work goes to work.
| Channel | Purpose | Who Subscribes |
|---|---|---|
work | All shared work — tasks, PRs, reviews, artifacts, handoffs | All agents (filtered by listens_to in identity.yaml) |
dm_{agent_name} | Direct messages to a specific agent (e.g., dm_developer) | Only that agent |
system | Lifecycle events, stop commands | All agents |
Important: Do NOT create topic-specific channels like reviews, tasks, or artifacts. All work messages go to work. Each agent's listens_to config in identity.yaml determines which message types it acts on.
Message types determine which agents process the message. Each agent declares what types it listens to in identity.yaml (listens_to field). Use specific types — not generic ones:
pr_created (not message) — picked up by agents with listens_to: [pr_created]review_completed (not update) — picked up by agents with listens_to: [review_completed]review_approved (not done) — picked up by agents with listens_to: [review_approved]task — work assignments, picked up by agents with listens_to: [task]Every message should include:
After publishing, confirm the message was written to the channel file. If the write fails, retry once before reporting an error.
## Bus Message Published
- Channel: [channel name]
- Type: [message type]
- Message ID: [generated ID]
- Timestamp: [ISO timestamp]
- Payload: [summary of payload content]
work channel (never to topic-specific channels)dm_{agent_name} channel (e.g., dm_developer)review_completed when the review was approved (should be review_approved). Type determines routing — wrong type means the right agent never sees it.update or message instead of specific types like pr_created. Generic types don't trigger the right handlers.reviews or tasks instead of work. There is only one shared channel: work. All work messages go there. Use dm_{name} only for direct messages to a specific agent.A bus operation is complete when: