Ensure accessibility in UI components including semantic HTML, ARIA attributes, keyboard navigation, and WCAG 2.2 AA compliance.
日本語の概要は準備中です。原文の説明を表示しています。
Slack messaging, channels, and notifications - send messages, manage channels, interact with users, upload files, and add reactions. Use for team communication, incident notifications, and workflow alerts.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Mode: Cognitive/Prompt-Driven — No standalone utility script; use via agent context.
This skill provides Slack API operations with progressive disclosure for optimal context usage.
Context Savings: ~90% reduction
chat:write - Send messageschannels:read - List channelschannels:history - Read channel historyusers:read - List usersfiles:write - Upload filesreactions:write - Add reactionsSLACK_BOT_TOKEN environment variableThe skill provides 14 tools across 5 categories:
| Category | Tools | Confirmation Required |
|---|---|---|
| Messaging | post-message, post-thread, update-message, delete-message | Yes (all) |
| Channels | list-channels, get-channel, channel-history | No |
| Users | list-users, get-user, user-presence | No |
| Files | upload-file, list-files | Yes (upload only) |
| Reactions | add-reaction, get-reactions | No |
# Post message to channel
curl -X POST https://slack.com/api/chat.postMessage \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"channel": "C1234567890", "text": "Hello from Claude!"}'
# List channels
curl -X GET "https://slack.com/api/conversations.list" \
-H "Authorization: Bearer $SLACK_BOT_TOKEN"
# Upload file
curl -X POST https://slack.com/api/files.upload \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-F "channels=C1234567890" \
-F "file=@report.pdf" \
-F "title=Weekly Report"
Send a message to a Slack channel.
Parameters:
channel (required): Channel ID or name (e.g., "C1234567890" or "#general")text (required): Message text (supports Slack markdown)thread_ts (optional): Parent message timestamp for threadingblocks (optional): Rich message blocks (JSON array)Example:
curl -X POST https://slack.com/api/chat.postMessage \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel": "C1234567890",
"text": "Deployment successful!",
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*Deployment Status*\n:white_check_mark: Production deployed successfully"
}
}
]
}'
Reply to a message in a thread.
Parameters:
channel (required): Channel IDthread_ts (required): Parent message timestamptext (required): Reply textExample:
curl -X POST https://slack.com/api/chat.postMessage \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel": "C1234567890",
"thread_ts": "1234567890.123456",
"text": "Thread reply here"
}'
Update an existing message.
Parameters:
channel (required): Channel IDts (required): Message timestamptext (required): New message textExample:
curl -X POST https://slack.com/api/chat.update \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel": "C1234567890",
"ts": "1234567890.123456",
"text": "Updated message"
}'
Delete a message.
Parameters:
channel (required): Channel IDts (required): Message timestampExample:
curl -X POST https://slack.com/api/chat.delete \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel": "C1234567890",
"ts": "1234567890.123456"
}'
List all channels in workspace.
Parameters:
types (optional): Comma-separated channel types (default: "public_channel")
limit (optional): Max channels to return (default: 100)Example:
curl -X GET "https://slack.com/api/conversations.list?types=public_channel,private_channel" \
-H "Authorization: Bearer $SLACK_BOT_TOKEN"
Get channel information.
Parameters:
channel (required): Channel IDExample:
curl -X GET "https://slack.com/api/conversations.info?channel=C1234567890" \
-H "Authorization: Bearer $SLACK_BOT_TOKEN"
Get channel message history.
Parameters:
channel (required): Channel IDlimit (optional): Max messages to return (default: 100)oldest (optional): Start of time range (Unix timestamp)latest (optional): End of time range (Unix timestamp)Example:
curl -X GET "https://slack.com/api/conversations.history?channel=C1234567890&limit=50" \
-H "Authorization: Bearer $SLACK_BOT_TOKEN"
Security Note: Channel history may contain sensitive information. Use with caution.
List all users in workspace.
Parameters:
limit (optional): Max users to return (default: 100)Example:
curl -X GET "https://slack.com/api/users.list" \
-H "Authorization: Bearer $SLACK_BOT_TOKEN"
Get user profile information.
Parameters:
user (required): User IDExample:
curl -X GET "https://slack.com/api/users.info?user=U1234567890" \
-H "Authorization: Bearer $SLACK_BOT_TOKEN"
Get user online status.
Parameters:
user (required): User IDExample:
curl -X GET "https://slack.com/api/users.getPresence?user=U1234567890" \
-H "Authorization: Bearer $SLACK_BOT_TOKEN"
Upload a file to Slack channel.
Parameters:
channels (required): Comma-separated channel IDsfile (required): File path to uploadtitle (optional): File titleinitial_comment (optional): Message textExample:
curl -X POST https://slack.com/api/files.upload \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-F "channels=C1234567890" \
-F "file=@C:\reports\weekly.pdf" \
-F "title=Weekly Report" \
-F "initial_comment=Here is this week's report"
List files in channel.
Parameters:
channel (optional): Channel ID to filter byuser (optional): User ID to filter bycount (optional): Max files to return (default: 100)Example:
curl -X GET "https://slack.com/api/files.list?channel=C1234567890" \
-H "Authorization: Bearer $SLACK_BOT_TOKEN"
Add emoji reaction to a message.
Parameters:
channel (required): Channel IDtimestamp (required): Message timestampname (required): Emoji name (without colons, e.g., "thumbsup")Example:
curl -X POST https://slack.com/api/reactions.add \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel": "C1234567890",
"timestamp": "1234567890.123456",
"name": "thumbsup"
}'
Get reactions on a message.
Parameters:
channel (required): Channel IDtimestamp (required): Message timestampExample:
curl -X GET "https://slack.com/api/reactions.get?channel=C1234567890×tamp=1234567890.123456" \
-H "Authorization: Bearer $SLACK_BOT_TOKEN"
# Notify channel of successful deployment
curl -X POST https://slack.com/api/chat.postMessage \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel": "#deployments",
"text": ":rocket: Production deployment completed",
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*Production Deployment*\n:white_check_mark: v1.2.3 deployed successfully\n*Duration:* 5m 23s"
}
}
]
}'
# Alert on-call team of incident
curl -X POST https://slack.com/api/chat.postMessage \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel": "#incidents",
"text": "<!channel> :rotating_light: High severity incident detected",
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*Incident INC-1234*\n:rotating_light: *Severity:* P1\n*Service:* API Gateway\n*Status:* 503 errors increasing"
}
}
]
}'
# Post test results
curl -X POST https://slack.com/api/chat.postMessage \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel": "#qa",
"text": "Test suite completed",
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*Test Results*\n:white_check_mark: 245 passed\n:x: 3 failed\n:warning: 2 skipped"
}
}
]
}'
| Error | Cause | Solution |
|---|---|---|
not_authed | Missing or invalid token | Check SLACK_BOT_TOKEN is set correctly |
channel_not_found | Invalid channel ID | Verify channel ID with list-channels |
missing_scope | Bot lacks required permission | Add scope in Slack App settings |
rate_limited | Too many requests | Implement exponential backoff |
message_not_found | Invalid timestamp | Check message timestamp is correct |
For rate limiting errors, implement exponential backoff:
Slack API rate limits:
Methods by tier:
chat.postMessage: Tier 3 (50/min)conversations.list: Tier 2 (20/min)users.list: Tier 2 (20/min)files.upload: Tier 4 (100/min)Before starting:
Read .claude/context/memory/learnings.md
After completing:
.claude/context/memory/learnings.md.claude/context/memory/issues.md.claude/context/memory/decisions.mdASSUME INTERRUPTION: If it's not in memory, it didn't happen.
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Ensure accessibility in UI components including semantic HTML, ARIA attributes, keyboard navigation, and WCAG 2.2 AA compliance.
日本語の概要は準備中です。原文の説明を表示しています。
Use when you want to improve response quality through meta-cognitive reasoning. Applies 15+ reasoning methods to reconsider and refine initial outputs.
日本語の概要は準備中です。原文の説明を表示しています。
N-round opposing-stance debates for trade-off analysis. Assigns pro/con roles to agents, runs structured debate rounds with quality scoring, and produces a moderator synthesis with confidence-rated recommendation. Generalizable to architecture, technology, security, and design decisions.
日本語の概要は準備中です。原文の説明を表示しています。
Force adversarial code review stance that eliminates confirmation bias — reviewer must find issues or re-analyze
日本語の概要は準備中です。原文の説明を表示しています。
Creates specialized AI agents on-demand when no existing agent matches a request. Use when the Router cannot find a suitable agent for a task. Enables self-evolution by generating persistent agents.
日本語の概要は準備中です。原文の説明を表示しています。
LLM-as-judge evaluation framework with 5-dimension rubric (accuracy, groundedness, coherence, completeness, helpfulness) for scoring AI-generated content quality with weighted composite scores and evidence citations
日本語の概要は準備中です。原文の説明を表示しています。