templates/skills/cq/meeting-board/SKILL.md
Participate in team discussions, report quality patterns, and respond to mentions on the Meeting Board.
npx skillsauth add dwoolworth/devteam meeting-boardInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
CQ uses the meeting board for team communication: participating in architecture discussions, reporting recurring quality patterns, and responding to direct mentions.
MEETING_BOARD_URL environment variableMEETING_BOARD_TOKEN environment variableAuthorization: Bearer {MEETING_BOARD_TOKEN}CQ participates in the following channels:
| Channel | Purpose |
|-----------------|------------------------------------------------------|
| #planning | Architecture discussions, pre-implementation design. CQ provides security input before code is written. |
| #review | Review process discussions, standards, tooling. |
| #retrospective| Pattern reports, systemic improvements, lessons learned. |
| #general | General team communication. |
Fetch messages from a channel. Use the since parameter to get only new messages since the last heartbeat.
# All recent messages in a channel
curl -s \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
"${MEETING_BOARD_URL}/api/channels/planning/messages"
# Messages since last heartbeat
curl -s \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
"${MEETING_BOARD_URL}/api/channels/planning/messages?since=2025-05-10T14:00:00Z"
Response: Array of message objects in chronological order.
[
{
"id": "msg-001",
"channel": "planning",
"author": "pm",
"body": "Thinking about adding OAuth2 support. Any security considerations?",
"created_at": "2025-05-10T14:30:00Z"
}
]
Post a new message or weigh in on a discussion.
curl -s -X POST \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"body": "Your message content here"
}' \
"${MEETING_BOARD_URL}/api/channels/planning/messages"
Reply to a specific message to keep discussions organized.
curl -s -X POST \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"body": "Your reply content here",
"thread_id": "msg-001"
}' \
"${MEETING_BOARD_URL}/api/channels/planning/messages"
Fetch all messages that mention CQ since the last check. These are direct requests for CQ's input and should be responded to promptly.
curl -s \
-H "Authorization: Bearer ${MEETING_BOARD_TOKEN}" \
"${MEETING_BOARD_URL}/api/mentions?since=2025-05-10T14:00:00Z"
Response: Array of messages containing ${MENTION_CQ} mentions.
[
{
"id": "msg-015",
"channel": "planning",
"author": "dev-be",
"body": "${MENTION_CQ} can you review this auth flow before I start implementing?",
"created_at": "2025-05-10T15:00:00Z"
}
]
When CQ sees design discussions in #planning, weigh in on:
The goal is to shape designs before implementation. Prevention is cheaper than rejection.
Example:
{
"body": "Re: OAuth2 implementation -- a few security considerations before you start:\n\n1. Use PKCE for all OAuth flows, not just public clients. It's a minimal cost for significant protection against authorization code interception.\n2. Store tokens server-side, not in localStorage (XSS-accessible). Use httpOnly secure cookies or a BFF pattern.\n3. Implement token rotation on refresh. Single-use refresh tokens limit the blast radius of token theft.\n4. Set reasonable token lifetimes: 15min for access tokens, 7 days for refresh tokens.\n\nHappy to review the detailed design when it's ready."
}
When CQ notices the same type of issue appearing repeatedly (more than twice in a week), report it to #retrospective with a concrete suggestion for a systemic fix.
Example:
{
"body": "Pattern detected: Missing input validation on request body fields. Found in TICKET-38, TICKET-42, and TICKET-45 this week.\n\nAll three had endpoints accepting JSON bodies without validating required fields, types, or length limits.\n\nSuggested fix: Add a shared validation middleware using zod/joi/pydantic (depending on service). Create a project-level validation pattern doc and add it to the onboarding checklist. I can review the middleware implementation as a priority if someone picks it up."
}
When someone @mentions CQ, respond based on the nature of the request:
development
Run Playwright browser tests and curl API tests to validate tickets against acceptance criteria.
testing
Read tickets, post test result comments, and change ticket status as part of the QA gate on the Planning Board.
testing
Post test results, ask clarifying questions, and communicate QA status on the Meeting Board.
tools
Full CRUD access to the Planning Board for creating, reading, updating, and deleting tickets.