بنقرة واحدة
meeting-board
Post status updates, respond to mentions, and communicate with the team on the Meeting Board.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Post status updates, respond to mentions, and communicate with the team on the Meeting Board.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Participate in team discussions, report quality patterns, and respond to mentions on the Meeting Board.
Read review queue, post review feedback, and transition tickets through the CQ gate on the Planning Board.
Read assigned tickets, post comments, and update ticket status on the Planning Board.
Post deployment status, infrastructure health updates, and coordinate with team on the Meeting Board.
Read tickets, post deployment comments, and move tickets to closed status on the Planning Board.
Communicate with human stakeholders via Meeting Board, Discord, or Slack webhooks.
| name | meeting-board |
| description | Post status updates, respond to mentions, and communicate with the team on the Meeting Board. |
The meeting board is the team's shared communication space. Every persona uses it to coordinate work, discuss technical approaches, share status updates, and raise concerns. DEV has full read and write access to all channels.
The meeting board is your primary tool for staying connected with the team. Use it to announce when you start work, when you submit for review, when you have questions, and when you need input on a technical approach.
| Variable | Description |
|---|---|
MEETING_BOARD_URL | Base URL of the meeting board API |
MEETING_BOARD_TOKEN | Bearer token for authentication |
All requests require the authorization header:
Authorization: Bearer ${MEETING_BOARD_TOKEN}
The meeting board is organized into channels. Each channel has a specific purpose. Post in the right channel.
| Channel | Purpose |
|---|---|
planning | Technical discussions, approach proposals, scope questions |
review | PR submissions, review status, fix notifications |
standup | Daily status, availability, blockers |
general | Cross-cutting discussions, announcements, misc |
incidents | Production issues and incident response (read, rarely post) |
Send a message to a specific channel. All team members subscribed to the channel will see it.
curl -s -X POST \
"${MEETING_BOARD_URL}/api/channels/planning/messages" \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"body": "Starting TICKET-42: implementing user auth flow. Plan is to use JWT with refresh tokens. ${MENTION_CQ} any concerns with this approach?"}'
Post to #review when submitting for review:
curl -s -X POST \
"${MEETING_BOARD_URL}/api/channels/review/messages" \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"body": "TICKET-42 ready for review. PR #18: https://github.com/org/repo/pull/18. All tests passing in Docker. Key changes: JWT auth middleware, login/register endpoints, rate limiting."}'
Post to #standup for status updates:
curl -s -X POST \
"${MEETING_BOARD_URL}/api/channels/standup/messages" \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"body": "DEV standup: Working on TICKET-42 (user auth). ~60% complete. No blockers. Should be ready for review by next heartbeat cycle."}'
Fetch messages from a channel, optionally filtering by time or author.
Get recent messages:
curl -s -X GET \
"${MEETING_BOARD_URL}/api/channels/planning/messages" \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
-H "Content-Type: application/json" | jq .
Get messages since last heartbeat:
curl -s -X GET \
"${MEETING_BOARD_URL}/api/channels/planning/messages?since=2025-01-15T10:00:00Z" \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
-H "Content-Type: application/json" | jq .
Get messages from a specific persona:
curl -s -X GET \
"${MEETING_BOARD_URL}/api/channels/planning/messages?author=po" \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
-H "Content-Type: application/json" | jq .
With pagination:
curl -s -X GET \
"${MEETING_BOARD_URL}/api/channels/planning/messages?limit=20&offset=0" \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
-H "Content-Type: application/json" | jq .
Response format:
{
"messages": [
{
"id": "msg-101",
"channel": "planning",
"author": "po",
"body": "TICKET-42 is highest priority this sprint.",
"reply_to": null,
"created_at": "2025-01-15T09:00:00Z"
}
],
"total": 1
}
This is critical for your heartbeat. Check if any persona has mentioned you across any channel.
curl -s -X GET \
"${MEETING_BOARD_URL}/api/mentions?persona=dev&since=2025-01-15T10:00:00Z" \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
-H "Content-Type: application/json" | jq .
Response format:
{
"mentions": [
{
"message_id": "msg-205",
"channel": "planning",
"author": "cq",
"body": "${MENTION_DEV} can you explain the singleton pattern choice in the DB layer?",
"created_at": "2025-01-15T11:30:00Z"
},
{
"message_id": "msg-210",
"channel": "review",
"author": "qa",
"body": "${MENTION_DEV} the login test is flaky on the CI run, can you check?",
"created_at": "2025-01-15T11:45:00Z"
}
]
}
Always respond to mentions. Ignoring a mention is unprofessional and slows down the team.
Reply to a specific message to keep conversations organized. Use the
reply_to field with the original message ID.
curl -s -X POST \
"${MEETING_BOARD_URL}/api/channels/planning/messages" \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"body": "Good question. The singleton ensures a single connection pool shared across all request handlers, avoiding connection exhaustion under load.",
"reply_to": "msg-205"
}'
For real-time updates between heartbeats, connect to the WebSocket endpoint. This lets you react to messages immediately rather than waiting for the next heartbeat cycle.
Connection:
ws://${MEETING_BOARD_URL}/ws?token=${MEETING_BOARD_TOKEN}&channels=planning,review,standup
Incoming message format:
{
"type": "message",
"data": {
"id": "msg-301",
"channel": "review",
"author": "cq",
"body": "${MENTION_DEV} PR #18 has a critical issue in the auth middleware.",
"reply_to": null,
"created_at": "2025-01-15T14:00:00Z"
}
}
Connection management:
| Situation | Channel | Example |
|---|---|---|
| Starting a new ticket | planning | "Starting TICKET-42: brief approach description" |
| Proposing a technical approach | planning | "For TICKET-42 I suggest X because Y. Thoughts?" |
| Asking for clarification on a ticket | planning | "TICKET-42 AC #3 is ambiguous. ${MENTION_PO} does it mean X or Y?" |
| Submitting a PR for review | review | "TICKET-42 ready for review: [PR link]. Summary." |
| Reporting a fix after rejection | review | "Fixed TICKET-42: refactored per CQ feedback." |
| Daily status update | standup | "DEV: working on TICKET-42, ~60% done, no blockers" |
| No assigned work | standup | "DEV: no assigned tickets, available for work" |
| Answering a technical question | (same as Q) | Reply in the thread where the question was asked |
| Raising a blocker | standup | "DEV: blocked on TICKET-42, need API credentials" |
| HTTP Status | Meaning | Action |
|---|---|---|
| 200/201 | Success | Process response |
| 400 | Bad request | Check JSON body and parameters |
| 401 | Unauthorized | Check MEETING_BOARD_TOKEN |
| 404 | Channel or message not found | Verify channel name or message ID |
| 429 | Rate limited | Back off and retry after delay |
| 500 | Server error | Retry once, then log and skip |