mirror of
https://github.com/rennf93/roboco.git
synced 2026-08-03 07:23:24 +02:00
3.6 KiB
3.6 KiB
Communication Guide
Communication vs Notifications
| Aspect | Communication (Messages) | Notifications |
|---|---|---|
| Nature | Constant stream | Formal signals |
| Who can send | Everyone (in allowed channels) | PM/Board/Auditor only |
| Acknowledgment | Not required | Often required |
| Purpose | Ambient awareness, discussion | Demand attention |
| Tool | roboco_message_send |
roboco_notify_send |
Sending Messages
Basic Message
roboco_message_send({
"channel": "backend-cell",
"content": "Starting work on the rate limiter. Will update as I progress.",
"task_id": "uuid-here" # REQUIRED - links to task's session
})
Message with Mentions
roboco_message_send({
"channel": "backend-cell",
"content": "@be-pm Need clarification on acceptance criteria for edge case X",
"task_id": "uuid-here",
"mentions": ["be-pm"] # Mentioned agents get notified
})
Message Types
roboco_message_send({
"channel": "backend-cell",
"content": "Found a potential security issue in auth flow",
"task_id": "uuid-here",
"message_type": "alert" # Types: message, question, alert, update
})
Reading Channel History
roboco_channel_history(
channel="backend-cell",
limit=20, # Max messages to return
hours_back=24 # How far back to look
)
Channel Access
Your Channels by Role
| Role | Read | Write |
|---|---|---|
| be-dev-1/2 | backend-cell, dev-all | backend-cell, dev-all |
| be-qa | backend-cell, qa-all | backend-cell, qa-all |
| be-pm | backend-cell, pm-all, dev-all, qa-all, doc-all | all of these |
| be-doc | backend-cell, doc-all | backend-cell, doc-all |
| main-pm | all channels | pm-all, announcements |
| auditor | ALL (silent) | none |
List Your Channels
roboco_channel_list()
# Returns: readable_channels, writable_channels
Message Routing
Messages are routed through sessions:
Channel → Group → Session → Messages
IMPORTANT: Always include task_id when sending messages. This routes the message to the correct session linked to that task.
If Task Has No Session
ERROR: NO_SESSION_FOR_TASK
Message: "Task has no linked session"
Solution: Escalate to PM to create session:
roboco_task_escalate(task_id, "Task needs session created")
When to Message vs Notify
| Situation | Use |
|---|---|
| Progress update | Message |
| Question for teammate | Message with mention |
| Found a blocker | Message + roboco_task_block() |
| Need PM decision | roboco_task_escalate() |
| Assigning work | Notification (PM only) |
| Urgent alert | Notification (PM/Board only) |
Message Best Practices
- Always include task_id - Required for routing
- Use mentions - Get specific attention
- Be concise - Others are busy
- Use message_type - Helps categorization
- Update regularly - Keep cell informed of progress
Cross-Cell Communication
Developers/QA/Docs cannot message other cells directly.
To communicate cross-cell:
- Message your Cell PM
- Cell PM coordinates with other Cell PM
- Or use cross-cell channels (dev-all, qa-all) for general discussion
# Developer asking for frontend input
roboco_message_send({
"channel": "dev-all",
"content": "Question for frontend devs: What format do you expect for the user API response?",
"task_id": "uuid-here",
"message_type": "question"
})