slack by membranedev/application-skills
npx skills add https://github.com/membranedev/application-skills --skill slackSlack 是一款面向企业的消息应用,可将人员与其所需的信息连接起来。各种规模的团队都使用它在中心化工作区中进行沟通、协作和共享文件。
根据需要使用操作名称和参数。
此技能使用 Membrane CLI 与 Slack 交互。Membrane 会自动处理身份验证和凭据刷新——因此您可以专注于集成逻辑,而无需处理身份验证的底层细节。
安装 Membrane CLI,以便您可以从终端运行 membrane 命令:
npm install -g @membranehq/cli
membrane login --tenant
将打开一个浏览器窗口进行身份验证。
无头环境: 运行该命令,复制打印出的 URL 供用户在浏览器中打开,然后使用 membrane login complete <code> 完成验证。
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
创建新连接:
membrane search slack --elementType=connector --json
从 output.items[0].element?.id 中获取连接器 ID,然后:
membrane connect --connectorId=CONNECTOR_ID --json
用户在浏览器中完成身份验证。输出结果包含新的连接 ID。
当您不确定连接是否已存在时:
检查现有连接:
membrane connection list --json
如果存在 Slack 连接,请记下其 connectionId。
当您知道要做什么但不确定确切的操作 ID 时:
membrane action list --intent=QUERY --connectionId=CONNECTION_ID --json
这将返回包含 ID 和 inputSchema 的操作对象,以便您了解如何运行它。
| 名称 | 键 | 描述 |
|---|---|---|
| 列出对话 | list-conversations | 列出 Slack 团队中的所有频道。 |
| 列出用户 | list-users | 列出 Slack 团队中的所有用户。 |
| 列出文件 | list-files | 列出团队、频道或用户的文件。 |
| 列出提醒 | list-reminders | 列出由用户创建或为用户创建的所有提醒。 |
| 列出用户组 | list-user-groups | 列出团队的所有用户组。 |
| 获取对话信息 | get-conversation-info | 检索有关对话的信息。 |
| 获取用户信息 | get-user-info | 获取有关用户的信息。 |
| 获取文件信息 | get-file-info | 获取有关文件的信息。 |
| 获取对话历史 | get-conversation-history | 获取对话的消息和事件历史记录。 |
| 创建对话 | create-conversation | 发起基于公共或私有频道的对话。 |
| 创建提醒 | create-reminder | 为用户创建提醒。 |
| 更新消息 | update-message | 更新频道中的现有消息。 |
| 发布消息 | post-message | 向频道、私有群组或直接消息发送消息。 |
| 删除消息 | delete-message | 从频道中删除消息。 |
| 删除文件 | delete-file | 从 Slack 中删除文件。 |
| 搜索消息 | search-messages | 搜索与查询匹配的消息。 |
| 添加反应 | add-reaction | 向消息添加反应(表情符号)。 |
| 移除反应 | remove-reaction | 从消息中移除反应(表情符号)。 |
| 邀请用户加入对话 | invite-users-to-conversation | 邀请用户加入频道。 |
| 归档对话 | archive-conversation | 归档对话。 |
membrane action run --connectionId=CONNECTION_ID ACTION_ID --json
要传递 JSON 参数:
membrane action run --connectionId=CONNECTION_ID ACTION_ID --json --input "{ \"key\": \"value\" }"
当可用操作无法满足您的用例时,您可以通过 Membrane 的代理直接向 Slack API 发送请求。Membrane 会自动将基础 URL 附加到您提供的路径,并注入正确的身份验证标头——如果凭据过期,还会透明地进行刷新。
membrane request CONNECTION_ID /path/to/endpoint
常用选项:
| 标志 | 描述 |
|---|---|
-X, --method | HTTP 方法(GET、POST、PUT、PATCH、DELETE)。默认为 GET |
-H, --header | 添加请求头(可重复),例如 -H "Accept: application/json" |
-d, --data | 请求体(字符串) |
--json | 发送 JSON 请求体并设置 Content-Type: application/json 的简写 |
--rawData | 按原样发送请求体,不做任何处理 |
--query | 查询字符串参数(可重复),例如 --query "limit=10" |
--pathParam | 路径参数(可重复),例如 --pathParam "id=123" |
membrane action list --intent=QUERY(将 QUERY 替换为您的意图)以查找现有操作。预构建的操作处理了原始 API 调用可能遗漏的分页、字段映射和边缘情况。每周安装数
187
代码仓库
GitHub 星标数
18
首次出现
13 天前
安全审计
安装于
mcpjam187
iflow-cli187
kilo187
replit187
junie187
windsurf187
Slack is a messaging app for businesses that connects people to the information they need. It's used by teams of all sizes to communicate, collaborate, and share files in a central workspace.
Official docs: https://api.slack.com/
Use action names and parameters as needed.
This skill uses the Membrane CLI to interact with Slack. Membrane handles authentication and credentials refresh automatically — so you can focus on the integration logic rather than auth plumbing.
Install the Membrane CLI so you can run membrane from the terminal:
npm install -g @membranehq/cli
membrane login --tenant
A browser window opens for authentication.
Headless environments: Run the command, copy the printed URL for the user to open in a browser, then complete with membrane login complete <code>.
Create a new connection:
membrane search slack --elementType=connector --json
Take the connector ID from output.items[0].element?.id, then:
membrane connect --connectorId=CONNECTOR_ID --json
The user completes authentication in the browser. The output contains the new connection id.
When you are not sure if connection already exists:
Check existing connections:
membrane connection list --json
If a Slack connection exists, note its connectionId
When you know what you want to do but not the exact action ID:
membrane action list --intent=QUERY --connectionId=CONNECTION_ID --json
This will return action objects with id and inputSchema in it, so you will know how to run it.
| Name | Key | Description |
|---|---|---|
| List Conversations | list-conversations | Lists all channels in a Slack team. |
| List Users | list-users | Lists all users in a Slack team. |
| List Files | list-files | Lists files for a team, in a channel, or from a user. |
| List Reminders | list-reminders | Lists all reminders created by or for the user. |
| List User Groups | list-user-groups | Lists all user groups for a team. |
| Get Conversation Info | get-conversation-info | Retrieves information about a conversation. |
| Get User Info | get-user-info | Gets information about a user. |
| Get File Info | get-file-info | Gets information about a file. |
| Get Conversation History | get-conversation-history |
membrane action run --connectionId=CONNECTION_ID ACTION_ID --json
To pass JSON parameters:
membrane action run --connectionId=CONNECTION_ID ACTION_ID --json --input "{ \"key\": \"value\" }"
When the available actions don't cover your use case, you can send requests directly to the Slack API through Membrane's proxy. Membrane automatically appends the base URL to the path you provide and injects the correct authentication headers — including transparent credential refresh if they expire.
membrane request CONNECTION_ID /path/to/endpoint
Common options:
| Flag | Description |
|---|---|
-X, --method | HTTP method (GET, POST, PUT, PATCH, DELETE). Defaults to GET |
-H, --header | Add a request header (repeatable), e.g. -H "Accept: application/json" |
-d, --data | Request body (string) |
--json | Shorthand to send a JSON body and set Content-Type: application/json |
--rawData |
membrane action list --intent=QUERY (replace QUERY with your intent) to find existing actions before writing custom API calls. Pre-built actions handle pagination, field mapping, and edge cases that raw API calls miss.Weekly Installs
187
Repository
GitHub Stars
18
First Seen
13 days ago
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
mcpjam187
iflow-cli187
kilo187
replit187
junie187
windsurf187
通过 LiteLLM 代理让 Claude Code 对接 GitHub Copilot 运行 | 高级变通方案指南
31,600 周安装
付费广告优化指南:Google、Meta、LinkedIn等平台投放策略与文案框架
177 周安装
SolidJS 最佳实践与模式指南:解决状态耦合与UI卡顿问题
177 周安装
Sentry OTel 导出器设置教程:配置OpenTelemetry Collector发送追踪日志
177 周安装
漫画风格短剧生成器 - AI自动分镜图生视频工具,快速创作漫剧
177 周安装
Cloudflare D1数据库迁移指南 - Drizzle ORM工作流与问题解决方案
177 周安装
MongoDB开发专家 | Payload CMS与Node.js全栈TypeScript开发,支持React Native/Next.js
177 周安装
| Fetches a conversation's history of messages and events. |
| Create Conversation | create-conversation | Initiates a public or private channel-based conversation. |
| Create Reminder | create-reminder | Creates a reminder for a user. |
| Update Message | update-message | Updates an existing message in a channel. |
| Post Message | post-message | Sends a message to a channel, private group, or DM. |
| Delete Message | delete-message | Deletes a message from a channel. |
| Delete File | delete-file | Deletes a file from Slack. |
| Search Messages | search-messages | Searches for messages matching a query. |
| Add Reaction | add-reaction | Adds a reaction (emoji) to a message. |
| Remove Reaction | remove-reaction | Removes a reaction (emoji) from a message. |
| Invite Users to Conversation | invite-users-to-conversation | Invites users to a channel. |
| Archive Conversation | archive-conversation | Archives a conversation. |
| Send the body as-is without any processing |
--query | Query-string parameter (repeatable), e.g. --query "limit=10" |
--pathParam | Path parameter (repeatable), e.g. --pathParam "id=123" |