# Slack 机器人 API：agent 在你自己的 workspace 里读频道、发消息

在你已经在运营的 Slack workspace 里装一个机器人，agent 就能读取频道最近的消息、并以机器人身份把回复发进去，token 始终不在 agent 手里。scope、manifest、以及「用机器人 token 还是用户 token」这个决定，都在你开始之前就已定好——论坛里大多数帖子卡住的正是这一步。

## 怎么让 鹦鹉AI 做这件事？

安装行（粘到任意 agent）：`set up 鹦鹉AI — https://parrot.amorist.cn/llms.txt`

然后说：「用鹦鹉AI 读取 #support 最近两天的消息，汇总仍未解决的问题并注明各自是谁提的，然后把这份汇总作为一条消息发到 #support-digest。」

- **装一次就行** 一份预填好的 manifest 会用固定的 scope 集合创建机器人。你粘贴一个机器人 token；agent 永远看不到它。
- **先把机器人拉进来** 机器人只能读它已加入的频道。发消息则不需要加入，任何公开频道都能发。
- **分窗口读取** 历史记录分页返回，每次调用有上限，速率按分钟分档。要一个时间窗，不要整份归档。

## 为什么走鹦鹉AI

- **不订阅，不买席位** 按次计费。不用绑卡、没有最低消费；给预付余额充值即可。
- **换个工具只是换一个词** 提示词里换一个词就是另一款工具，而不是一次新的集成。

端点：

- `slack.slack.messages.history` — 读取 Slack 频道的最近消息 (slack): https://parrot.amorist.cn/catalog/slack
- `slack.slack.message.send` — 向 Slack 频道或线程发送消息 (slack): https://parrot.amorist.cn/catalog/slack

## 大家实际卡在哪

2026 年 8 月的 Slack 相关帖子，五分之四是 agent 发布和 MCP 榜单文；约 170 篇帖子里被推销的工具约有二十个，其中一篇正文里还夹着零宽字符。下面这四条，是想读自己 workspace 的人。

**Slack 把历史读取砍到每分钟一次，而且对内部应用同样适用**

> "读取消息现在每分钟只能发 1 个请求，最多返回 15 条消息" (@grinich on X, 1,951 likes: https://x.com/i/status/1946391052489028082)

这一页能帮上的： 对任何未上架的应用来说这仍是规则，而这个连接就是其中之一。本页把这一点直说出来，而不是暗示有绕法：总结一个频道过去一天的内容正好落在额度之内，而那正是大多数人真正想要的工作。

**大家想要的只是早上那份摘要，而那条省事的路被关掉了**

> "我想要的只是每天早上拿到一份 Slack 消息摘要，外加一份待办事项清单。" (r/AI_Agents: https://www.reddit.com/r/AI_Agents/comments/1txzeow/)

这一页能帮上的： 同一位发帖人还发现，Claude 的 Slack 连接器被 IT 禁用了，也不确定自己到底能不能创建一个应用。用 manifest 安装仍然是一次应用安装，所以管理员可能得点头；在那之后，这份摘要每天就是一次读取加一次发帖。

**机器人必须待在房间里**

> "原来机器人得先成为这个频道的成员。" (r/indiehackers, 18 points: https://www.reddit.com/r/indiehackers/comments/1vryo4q/)

这一页能帮上的： 这里也一样，而 manifest 是有意让它保持这样：只读你邀请它进去的频道，只发到你指向的地方。同一个帖子里，DM 权限在审核时因为“访问权限过大”被拒了，这也是这个连接不去要这些权限的原因。

**把机器人令牌粘贴进代码里，审计线索就是从这儿丢的**

> "把机器人令牌粘贴进你的代码里……当你需要确切知道你的 agent 能碰到什么的时候，这就不太妙了" (@Mai_Builds on X: https://x.com/i/status/2091946621504311753)

这一页能帮上的： 令牌放在 鹦鹉AI 那边，agent 手里只有一个对每个工具都有效的团队令牌，而它能碰到什么，就是 manifest 里那份固定的、可阅读的权限清单。撤销这个机器人，agent 的访问权限也随之消失。

## 真正不一样的地方

- 在未上架的新应用上，读历史是限量的。2025 年 5 月之后创建、未在 Slack Marketplace 上架的应用，每分钟只能发一次历史请求、每次最多 15 条消息；你按鹦鹉AI 的 manifest 装出来的机器人就属于这类应用。这里没有任何东西能解除它；鹦鹉AI 如实转发调用，也如实把 429 交回。对活跃频道做每日摘要没问题；回填一整年的数据，不是这个工具。
- 成员身份就是读权限。机器人只读被邀请进入的频道；私信需要单独的 scope，而 manifest 并不申请。发消息的范围更宽：写 scope 让它不必加入就能发进任何公开频道。频道不存在或 scope 缺失时，Slack 会返回 HTTP 200 加 ok: false，所以要看响应体，不要只看状态码。
- 历史返回的是顶层消息，作者是 user id，所以要让摘要能读，得再调 users 接口把名字解出来；而主题内的回复在另一个 replies 调用里。要 agent 给你带名字的摘要，它就会自己去发这些调用；只要原始行，它就交给你一串 id。

## 什么是 Slack 机器人 API？

Slack Web API 是应用以数据方式读写 workspace 的接口：列出频道、读取频道的消息历史、发布消息或主题内回复。机器人 token 是已安装应用持有的凭据，作用域限于这一个 workspace 以及 manifest 申请的权限；它做的一切都以机器人身份出现，而不是你。这项连接用的就是这种 token，所以 agent 读到的是机器人能看到的，发的消息署机器人的名，永远不会署你的名。

## 开始之前

**agent 发消息是用我的身份还是机器人身份？** 永远是机器人身份。这项连接持有的是机器人 token，可审计正来自这里：它写下的每条消息都署机器人的名，而且它读不到你的私信，也读不到你没邀请它进入的频道。

**为什么读历史这么慢？** Slack 对未上架应用的历史读取做了限流：每分钟一次请求、每次 15 条消息。这是 Slack 对所有 2025 年以来在 Marketplace 之外创建的应用的规则，鹦鹉AI 绕不过去。按时间窗来要，让 agent 去翻页。

**如果我的 workspace 限制了应用安装呢？** 那就需要管理员批准这次安装，和任何应用一样。鹦鹉AI 提供 manifest 供你提交；它没法替你批准。

HTML 版本： https://parrot.amorist.cn/use-cases/read-and-post-in-your-slack-channels
