원클릭으로
api-slack
Slack Web API for messaging, channels, and notifications. Uses Bot token for headless/CI. Activate for Slack operations.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Slack Web API for messaging, channels, and notifications. Uses Bot token for headless/CI. Activate for Slack operations.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
AI Agent Community API interaction. Post errors, questions, solutions and interact with other agents.
Confluence REST API for pages, spaces, and content. Uses API token for headless/CI. Activate for Confluence operations.
GitHub REST API for issues, PRs, repos. Uses PAT for headless/CI. Activate for GitHub operations.
Google Calendar API for events and schedules. Uses OAuth2 refresh token for headless/CI. Activate for calendar operations.
Jira REST API for issues, projects, sprints. Uses API token for headless/CI. Activate for Jira operations.
Notion REST API for pages, databases, blocks. Uses internal integration token for headless/CI. Activate for Notion operations.
| name | api-slack |
| description | Slack Web API for messaging, channels, and notifications. Uses Bot token for headless/CI. Activate for Slack operations. |
| allowed-tools | Bash, Read, Grep |
| user-invocable | true |
| quality_grade | C |
| quality_checked | "2026-03-19T00:00:00.000Z" |
Credentials File: .credentials/slack.json
{
"bot_token": "xoxb-...",
"channel_id": "C..."
}
Create token at: https://api.slack.com/apps → Your App → OAuth & Permissions
Load credentials before API calls:
SLACK_BOT_TOKEN=$(jq -r '.bot_token' /Users/dhlee/Git/personal/neuron/.credentials/slack.json)
SLACK_CHANNEL_ID=$(jq -r '.channel_id' /Users/dhlee/Git/personal/neuron/.credentials/slack.json)
Required Scopes:
chat:write - Send messageschannels:read - List public channelschannels:history - Read public channel messagesgroups:history - Read private channel messagesfiles:write - Upload filesreactions:read - Read reactions (optional)https://slack.com/api
-H "Authorization: Bearer $SLACK_BOT_TOKEN"
-H "Content-Type: application/json"
curl -s -X POST \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
"https://slack.com/api/auth.test"
curl -s -X POST \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel": "CHANNEL_ID",
"text": "Hello from Claude!"
}' \
"https://slack.com/api/chat.postMessage"
curl -s -X POST \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel": "CHANNEL_ID",
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*Title*\nDescription text"
}
}
]
}' \
"https://slack.com/api/chat.postMessage"
curl -s -X GET \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
"https://slack.com/api/conversations.list?types=public_channel,private_channel"
curl -s -X GET \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
"https://slack.com/api/conversations.history?channel=CHANNEL_ID&limit=10"
curl -s -X POST \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-F "channels=CHANNEL_ID" \
-F "file=@/path/to/file" \
-F "initial_comment=File description" \
"https://slack.com/api/files.upload"
curl -s -X POST \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel": "CHANNEL_ID",
"thread_ts": "1234567890.123456",
"text": "Thread reply"
}' \
"https://slack.com/api/chat.postMessage"
curl -s -X POST \
-H "Authorization: Bearer $SLACK_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel": "CHANNEL_ID",
"timestamp": "1234567890.123456",
"name": "thumbsup"
}' \
"https://slack.com/api/reactions.add"
| Format | Syntax |
|---|---|
| Bold | *bold* |
| Italic | _italic_ |
| Strike | ~strike~ |
| Code | `code` |
| Code block | ```code``` |
| Link | `<https://url |
| User mention | <@USER_ID> |
| Channel mention | <#CHANNEL_ID> |
| Error | Meaning | Action |
|---|---|---|
invalid_auth | Bad token | Check .credentials/slack.json |
channel_not_found | Invalid channel | Verify channel ID |
not_in_channel | Bot not in channel | Invite bot to channel |
ratelimited | Too many requests | Wait and retry |
Implement exponential backoff on ratelimited responses.