Claude-skill-registry comms
Post to Slack channels and manage Trello cards with natural language
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/comms" ~/.claude/skills/majiayu000-claude-skill-registry-comms && rm -rf "$T"
skills/data/comms/SKILL.md/comms - Slack & Trello Communications Skill
Post messages to Slack channels and create/update Trello cards with natural language commands.
Usage
/comms [message or instruction]
CRITICAL: Load MCP Tools First
MCP tools are deferred and MUST be loaded via ToolSearch before use.
Before calling any Slack or Trello tool, load it:
ToolSearch: select:mcp__slack__slack_post_message ToolSearch: select:mcp__trello__add_card_to_list
Do NOT:
- Try bash commands to call MCP tools
- Assume tools are unavailable if direct calls fail
- Go searching through scripts or configs
The tools ARE available. Just load them first with ToolSearch.
Key Rules
Trello Comments
Always prefix Trello comments with "From Claude Code: "
Example: If asked to add comment "Fixed the bug", post:
From Claude Code: Fixed the bug
Fuzzy Matching
Match user input to channels/boards using aliases. Examples:
- "android" -> tech-android (Slack) or Android list (Trello)
- "ios" -> tech-ios (Slack) or IOS App list (Trello)
- "server" -> tech-server (Slack) or Server list (Trello)
Smart Defaults
- Tech topics without channel specified -> tech-general
- Tech topics without board specified -> Tech Work board
- Business/org topics -> Org-Business Work board
Example Commands
| User Says | Action |
|---|---|
| "post to android: feature complete" | Post to tech-android channel |
| "create card on ios list: Fix crash bug" | Create card on Tech Work -> IOS App list |
| "add comment to card X: resolved" | Add "From Claude Code: resolved" to card |
| "tell server channel build is ready" | Post to tech-server channel |
| "create website card: update pricing" | Create card on Org-Business Work -> Website list |
Resources
See RESOURCES.md for complete channel/board mappings with IDs.
MCP Tools Used
Slack
- Post to channelmcp__slack__slack_post_message
- Reply in threadmcp__slack__slack_reply_to_thread
- Read messagesmcp__slack__slack_get_channel_history
- Add emoji reactionmcp__slack__slack_add_reaction
Trello
- Create cardmcp__trello__add_card_to_list
- Add comment (remember prefix!)mcp__trello__add_comment
- Update cardmcp__trello__update_card_details
- Move card between listsmcp__trello__move_card
- List cardsmcp__trello__get_cards_by_list_id
Workflow
- Parse user intent (Slack, Trello, or both)
- Resolve channel/board/list using fuzzy matching
- Convert content to platform-native formatting (see below)
- Execute appropriate MCP tool(s)
- Confirm action to user
Platform Formatting Guidelines
CRITICAL: Neither Trello nor Slack supports markdown tables. You must convert tabular data to platform-native formats.
Trello Formatting (Markdown subset)
Supported:
- Bold:
or**text**__text__ - Italic:
or*text*_text_ - Strikethrough:
~~text~~ - Headings:
,# H1
,## H2### H3 - Bulleted lists:
or- item
(blank line required above list)* item - Numbered lists:
1. item - Code blocks: ``` or indent 4 spaces
- Links:
[text](url) - Horizontal rule:
---
NOT Supported:
- Tables (pipes and dashes render as plain text)
- Nested formatting in some contexts
Slack Formatting (mrkdwn, NOT markdown)
Supported:
- Bold:
(single asterisk, unlike markdown)*text* - Italic:
_text_ - Strikethrough:
(single tilde)~text~ - Code:
`code` - Code blocks: ``` (no syntax highlighting)
- Links:
(angle brackets, not square)<url|text> - Blockquotes:
at line start> - Lists: Use bullet character or numbers
NOT Supported:
- Tables
- Headings (# doesn't work)
- Standard markdown link syntax
Converting Tables to Native Formats
Option 1: Key-Value Lists (Recommended for Trello)
Instead of:
| Component | Cost | |-----------|------| | GPU | $100 | | STT | $0 |
Use:
**Components:** - **GPU:** $100 - **STT:** $0
Option 2: Grouped Sections (Best for comparisons)
Instead of a comparison table, use:
## 20 Users - **Total:** $100/month - GPU: $87-100 - STT: $0 (Groq free tier) - TTS: $0 (self-hosted) ## 100 Users - **Total:** $175/month - GPU: $115-145 - STT: $0-30 - TTS: $0 (self-hosted)
Option 3: Code Block (Preserves alignment)
For data that must stay aligned, use a code block:
Component 20 Users 100 Users ───────────────────────────────────────── GPU $100 $150 STT $0 $0-30 TTS $0 $0 ───────────────────────────────────────── TOTAL $100 $175
Option 4: Inline Summary (For Slack)
Slack messages should be concise:
*Cost Summary:* • 20 users: *$100/mo* (GPU $100, STT free, TTS free) • 100 users: *$175/mo* (GPU $150, STT $0-30, TTS free)
Formatting Checklist
Before posting to Trello or Slack:
- Convert all markdown tables to lists or code blocks
- Ensure blank line before any list
- Use platform-specific bold/italic syntax
- Use
for Slack links,<url|text>
for Trello[text](url) - Keep Slack messages concise; Trello can be longer