mirror of
https://github.com/rennf93/roboco.git
synced 2026-08-03 07:23:24 +02:00
The RAG knowledge base (indexed and queried by agents at runtime) described entire fictional MCP tool surfaces — roboco_task_*, roboco_journal_*, roboco_message_send, roboco_notify_send, roboco_agent_*, roboco_session_*, roboco_workspace_*, roboco_project_* — that don't exist, so agents searching the KB were handed invented tool names. Rewrite every affected doc (tools, roles, workflows, troubleshooting, and the stale architecture snippets) to the real surface: the gateway intent verbs (give_me_work, i_will_work_on, open_pr, i_am_done, claim_review, pass, fail, claim_doc_task, i_documented, triage, delegate, i_will_plan, unblock, complete, escalate_up, escalate_to_ceo, ...) and content tools (commit, note(scope=...), say, dm, evidence, notify*, open_session, channels). Also reconcile the access-control docs to code: CEO can cancel (Board/Auditor cannot); the management-channel membership and the Auditor's silent-but-present status now match communications.py.
78 lines
2.4 KiB
Markdown
78 lines
2.4 KiB
Markdown
# Channel Reference
|
|
|
|
All available channels with their slugs and access rules.
|
|
|
|
## Cell Channels
|
|
|
|
| Slug | Name | Members |
|
|
|------|------|---------|
|
|
| `backend-cell` | Backend Cell | be-dev-1, be-dev-2, be-qa, be-pm, be-doc |
|
|
| `frontend-cell` | Frontend Cell | fe-dev-1, fe-dev-2, fe-qa, fe-pm, fe-doc |
|
|
| `uxui-cell` | UX/UI Cell | ux-dev-1, ux-dev-2, ux-qa, ux-pm, ux-doc |
|
|
|
|
## Cross-Cell Channels
|
|
|
|
| Slug | Name | Members |
|
|
|------|------|---------|
|
|
| `dev-all` | All Developers | All 6 developers |
|
|
| `qa-all` | All QA | be-qa, fe-qa, ux-qa |
|
|
| `pm-all` | All PMs | be-pm, fe-pm, ux-pm, main-pm |
|
|
| `doc-all` | All Documenters | be-doc, fe-doc, ux-doc |
|
|
|
|
## Management Channels
|
|
|
|
| Slug | Name | Members |
|
|
|------|------|---------|
|
|
| `main-pm-board` | Main PM & Board | main-pm, product-owner, head-marketing, auditor (all read/write) |
|
|
| `board-private` | Board Private | product-owner, head-marketing, auditor, ceo (read/write) + main-pm (read-only) |
|
|
|
|
## Special Channels
|
|
|
|
| Slug | Name | Read | Write |
|
|
|------|------|------|-------|
|
|
| `announcements` | Announcements | Everyone | PM/Board only |
|
|
| `all-hands` | All Hands | Everyone | Everyone |
|
|
|
|
## Auditor Silent Access
|
|
|
|
Auditor has silent read access (in these channels' `silent_roles`) to:
|
|
- `backend-cell`
|
|
- `frontend-cell`
|
|
- `uxui-cell`
|
|
- `dev-all`
|
|
- `qa-all`
|
|
- `pm-all`
|
|
- `doc-all`
|
|
|
|
Auditor does NOT appear in member lists but CAN read. On the two management
|
|
channels (`main-pm-board`, `board-private`) the Auditor is NOT silent — it
|
|
has full read + write there. (Its content-tool manifest is `note`,
|
|
`evidence`, and read-only `notify_list`/`notify_get`/`channels`, with no
|
|
`say`/`dm`/`notify`, so it observes rather than posts in practice.)
|
|
|
|
## Privileged Access
|
|
|
|
These roles bypass normal membership checks:
|
|
- **CEO**: Full access everywhere
|
|
- **Auditor**: Silent read on cell + cross-cell channels; read/write on the
|
|
management channels
|
|
- **Main PM**: Read access to all cell channels
|
|
|
|
## Using Channels
|
|
|
|
```python
|
|
# List the channel slugs you can read / write (call this first if unsure of
|
|
# a slug — inventing slugs returns "Channel not found")
|
|
channels() # -> {writable: [...], readable: [...]}
|
|
|
|
# Send a message to your cell
|
|
say(
|
|
channel="backend-cell",
|
|
text="Starting work on task",
|
|
task_id=task_id,
|
|
)
|
|
|
|
# Direct agent-to-agent message (same-cell only)
|
|
dm(recipient="be-qa", text="Quick sanity check before QA", task_id=task_id)
|
|
```
|