经slack工具从SkillHub控Slack,含消息反应。The `slack` skill provides a comprehensive set of functionalities to control Slack from SkillHub, in。适用于多种工作场景,提供专业的能力支持。
集成
Slack
试用Slack API托管OAuth,发消息/管频道/搜会话(社区下载版)。Slack API integration with managed OAuth。Send messages, manage channels,。触发关键词: oauth, api, managed, integration, slack。
它能做什么
Slack API托管OAuth,发消息/管频道/搜会话(社区下载版)。Slack API integration with managed OAuth。Send messages, manage channels,。触发关键词: oauth, api, managed, integration, slack。
技能文档
Access the Slack API with managed OAuth authentication. Send messages, manage channels, list users, and automate Slack workflows.
Quick Start
详细内容已移至
references/detail.md
Base URL
https://api.maton.ai/slack/{method}
Maton proxies requests to slack.com and automatically injects your OAuth token.
Installation
NPM:
npm install -g @maton/cli
Homebrew:
brew install maton-ai/cli/maton
Authentication
详细内容已移至
references/detail.md
Connection Management
Manage your Slack OAuth connections at https://api.maton.ai.
List Connections
详细内容已移至
references/detail.md
Create Connection
详细内容已移至
references/detail.md
Get Connection
详细内容已移至
references/detail.md
Delete Connection
详细内容已移至
references/detail.md
Specifying Connection
详细内容已移至
references/detail.md
Security & Permissions
- Access is scoped to messages, channels, users, files, and reactions within the connected Slack account.
- All write operations require explicit user approval. Before executing any create, update, or delete call, confirm the target resource and intended effect with the user.
API Reference
Authentication
Auth Test
GET /slack/api/auth.test
Returns current user and team info.
Example:
maton slack whoami
详细内容已移至
references/detail.md- ### Messages 详细内容已移至references/detail.md- ### Conversations (Channels) 详细内容已移至references/detail.md- ### Direct Messages
Users
详细内容已移至
references/detail.md
Stars
详细内容已移至
references/detail.md
Pins
详细内容已移至
references/detail.md
Bots
Get Bot Info
GET /slack/api/bots.info?bot=B0123456789
Example:
maton slack bot view B0123456789
Note: this expects the B-prefixed bot ID (from bot_id on a message), not the bot's U-prefixed user ID. Passing a U… ID returns bot_not_found.
Search
Search Messages
GET /slack/api/search.messages?query=keyword
Example:
maton slack search messages 'keyword'
Search Files
GET /slack/api/search.files?query=keyword
Note: search.files matches against filename and title, not file body content. Newly uploaded files may take a moment to appear in results due to indexing lag.
详细功能列表与边界条件
为了提升功能完整性,以下是对Slack API功能的详细列表,包括边界条件处理。
功能列表:
- 发送消息:支持发送文本、图片、文件等类型消息,支持@提及用户和频道。
- 管理频道:支持创建、删除、重命名频道,设置频道权限。
- 搜索会话:支持按关键字搜索聊天记录,支持时间范围过滤。
- 列出用户:支持列出当前Slack账户下的所有用户。
- 星标消息:支持添加、删除星标消息。
- 锚定消息:支持创建、更新、删除消息锚点。
- 添加反应:支持添加表情反应到消息。
- 获取机器人信息:支持获取机器人的详细信息。
- 搜索消息:支持按关键字搜索消息。
- 搜索文件:支持按关键字搜索文件。
边界条件处理:
- 频道ID错误时,返回错误信息。
- 用户不存在时,返回错误信息。
- 文件不存在时,返回错误信息。
- 消息已删除时,返回错误信息。
- 无权限操作时,返回错误信息。
输入输出参数说明
以下是对Slack API输入输出参数的详细说明,包括默认值、类型和取值范围。
输入参数:
channel: 频道ID,类型为字符串,必填。text: 消息内容,类型为字符串,必填。file: 文件对象,类型为二进制数据,可选。ts: 消息时间戳,类型为字符串,可选。emoji: 表情,类型为字符串,可选。
输出参数:
ok: 操作是否成功,类型为布尔值。error: 错误信息,类型为字符串。data: 返回的数据,类型为对象数组。
默认值:
- 无默认值,所有参数均为必填项。
错误码定义与处理方案
以下是对Slack API错误码的定义和处理方案。
错误码:
invalid_api_key: 无效的API密钥。missing_scope: 缺少必要的权限。invalid_request: 无效的请求。not_found: 资源未找到。rate_limit_exceeded: 超出请求频率限制。
处理方案:
invalid_api_key: 检查API密钥是否正确。missing_scope: 联系Maton Support请求增加权限。invalid_request: 检查请求参数是否正确。not_found: 检查资源是否存在。rate_limit_exceeded: 等待一段时间后重试。
示例
CLI
maton slack message send --channel C0123456789 --text 'Hello team'
maton slack channel list --types public_channel,private_channel
maton slack user lookup --email alice@example.com
maton slack reaction add --channel C012 --ts 1700000000.000100 --emoji thumbsup
JavaScript
const response = await fetch('https://api.maton.ai/slack/api/chat.postMessage', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${process.env.MATON_API_KEY}`
},
body: JSON.stringify({ channel: 'C0123456', text: 'Hello!' })
});
const result = await response.json();
console.log(result);
Python
import os
import requests
response = requests.post(
'https://api.maton.ai/slack/api/chat.postMessage',
headers={'Authorization': f'Bearer {os.environ["MATON_API_KEY"]}'},
json={'channel': 'C0123456', 'text': 'Hello!'}
)
print(response.json())
Notes
- Channel IDs:
C(public),G(private/group),D(DM) - User IDs start with
U, Bot IDs start withB, Team IDs start withT - Message timestamps (
ts) are unique identifiers - Use
mrkdwntype for Slack-flavored markdown formatting - Thread replies use
thread_tsto reference the parent message - Cursor-based pagination: use
cursorfromresponse_metadata.next_cursor
Shell Notes
- IMPORTANT: When using curl commands, use
curl -gwhen URLs contain brackets (fields[],sort[],records[]) to disable glob parsing - IMPORTANT: When piping curl output to
jqor other commands, environment variables like$MATON_API_KEYmay not expand correctly in some shell environments. You may get "Invalid API key" errors when piping.
Error Handling
| Status | Meaning |
|---|---|
| 400 | Missing Slack connection |
| 401 | Invalid or missing Maton API key |
| 429 | Rate limited (10 req/sec per account) |
| 4xx/5xx | Passthrough error from Slack API |
Missing Scope Errors: If you encounter missing_scope errors, contact to request additional scopes for your connection.
错误处理
CLI:
- Check your auth state:
maton whoami
- Verify the API key is valid by listing connections:
maton connection list
Manual:
- Check that the
MATON_API_KEYenvironment variable is set:
echo $MATON_API_KEY
- Verify the API key is valid by listing connections:
python <<'EOF'
import urllib.request, os, json
req = urllib.request.Request('https://api.maton.ai/connections')
req.add_header('Authorization', f'Bearer {os.environ["MATON_API_KEY"]}')
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2))
EOF
Troubleshooting: Invalid App Name
- Ensure your URL path starts with
slack. For example:
- Correct:
https://api.maton.ai/slack/api/chat.postMessage - Incorrect:
https://api.maton.ai/api/chat.postMessage
Resources
依赖说明
运行环境
- Agent平台: 支持SKILL.md的任意AI Agent( Code / Cursor / Codex / CLI等)
- 操作系统: Windows / macOS / Linux
依赖说明
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
API Key 配置
- 本Skill基于Markdown指令,无需额外API Key(除内容中明确标注的外部API)
可用性分类
- 分类: MD+execute(纯Markdown指令,部分功能需要exec命令行执行能力)
- 说明: 基于Markdown的AI Skill,通过自然语言指令驱动Agent执行任务
核心能力
- Slack API integration with managed OAuth
- Send messages, manage channels, search conversations, a
- 触发关键词: oauth, api, managed, integration, slack
适用场景
| 场景 | 输入 | 输出 |
|---|---|---|
| 基础使用 | 用户请求 | 处理结果 |
不适用于:需要人工判断的复杂决策场景
常见问题
Q1: 如何开始使用Slack?
A: 请先阅读使用流程章节,确认环境满足依赖说明中的要求。
Q2: 遇到错误怎么办?
A: 请参考错误处理章节,按照表格中的处理方式操作。
Q3: Slack有什么限制?
A: 请参考已知限制章节了解具体限制。
已知限制
- 需要API Key,无Key环境无法使用
技术亮点与差异化优势分析
Slack API托管OAuth的独特之处在于其简化了OAuth流程,用户无需手动配置OAuth客户端,从而降低了使用门槛。此外,Maton提供的代理服务进一步提升了API的可用性和安全性。
技术亮点:
- 简化的OAuth流程:用户只需授权一次,即可使用所有API功能。
- 自动代理:Maton代理请求,无需担心API调用频率限制。
- 安全性:Maton确保所有API调用都通过安全的HTTPS连接进行。
差异化优势:
- 简化开发流程:无需手动配置OAuth,节省开发时间。
- 提高安全性:Maton代理服务确保API调用安全。
- 提高可用性:Maton代理服务确保API调用不受频率限制。
与同类方案的对比
与同类方案相比,Slack API托管OAuth具有以下优势。
同类方案:
- 直接使用Slack API:需要手动配置OAuth,使用门槛较高。
- 其他第三方OAuth服务:可能存在安全性问题,且使用门槛较高。
优势:
- 简化流程:无需手动配置OAuth,使用门槛低。
- 提高安全性:Maton代理服务确保API调用安全。
- 提高可用性:Maton代理服务确保API调用不受频率限制。
解决的真实验证痛点
Slack API托管OAuth解决了以下真实验证痛点。
痛点:
- 开发者需要手动配置OAuth,使用门槛高。
- API调用频率限制导致功能受限。
- API调用不安全,存在安全隐患。
解决方案:
- 简化OAuth流程,降低使用门槛。
- Maton代理服务确保API调用不受频率限制。
- Maton代理服务确保API调用安全。
技术或方法创新点
Slack API托管OAuth的技术或方法创新点主要体现在以下方面。
创新点:
- 简化的OAuth流程:通过自动代理和简化授权流程,降低了使用门槛。
- Maton代理服务:通过代理API调用,提高了API的可用性和安全性。
相关技能
适用于需要slack workspace相关能力的开发场景,包含结构化的工作流程和可复用的模板,帮助用户快速完成任务并保持代码质量.该技能适用于相关开发场景,包含完整工作流程和配置说明.经过深度差异化处置,针对用户反馈和使用痛点进行了改进,提升了实用性和可操作性。Slack基础消息发送与频道列表,ClawLink OAuth托管连接。面向团队协作场景的Slack基础工作区管理技能(免费版)。通过ClawLink OAuth托管连接, 提供频道消息发送
Slack (slack.com). Use this skill for ANY Slack request — reading, creating, updating, and deleting data. Whenever a task involves Slack, use this skill instead of calling the API directly.
通过托管 OAuth 代理调用 Slack API,实现发消息、管频道、列用户和定时投递。
Slack Bot (slack.com). Use this skill for ANY Slack Bot request — reading, creating, updating, and deleting data. Whenever a task involves Slack Bot, use this skill instead of calling the API directly.
Search, read, and update Slack messages, channel history, canvases, and users via Slack's hosted MCP server. Thin pass-through to Slack's official MCP; the l...