botmux 1.13.0 → 1.13.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -4,61 +4,282 @@
4
4
  <img src="cover.svg" alt="botmux cover" width="800">
5
5
  </p>
6
6
 
7
- 中文 | [English](README.en.md)
8
-
9
- 飞书话题群与 AI 编程 CLI 的桥接工具。Daemon 监听飞书消息,为每个新话题自动启动一个独立的 CLI 进程(支持 Claude Code、Aiden、CoCo、Codex、Gemini),提供实时流式卡片和 Web 终端。
7
+ <p align="center">
8
+ <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="License MIT"></a>
9
+ <img src="https://img.shields.io/badge/node-%3E%3D20-brightgreen.svg" alt="Node.js >= 20">
10
+ <a href="https://www.npmjs.com/package/botmux"><img src="https://img.shields.io/npm/v/botmux.svg" alt="npm version"></a>
11
+ <a href="https://github.com/deepcoldy/botmux"><img src="https://img.shields.io/github/stars/deepcoldy/botmux.svg?style=social" alt="GitHub Stars"></a>
12
+ </p>
10
13
 
11
- ## 演示
14
+ <p align="center">
15
+ <a href="#设计理念">设计理念</a> · <a href="#核心优势">核心优势</a> · <a href="#5-分钟快速接入">快速接入</a> · <a href="#使用指南">使用指南</a> · <a href="#配置">配置</a>
16
+ </p>
12
17
 
13
18
  <p align="center">
14
- <img src="gif/fold&unfold.gif" alt="飞书卡片交互 — 流式输出展开/折叠" width="600">
19
+ 中文 | <a href="README.en.md">English</a>
15
20
  </p>
16
21
 
22
+ ---
23
+
24
+ **飞书话题群 + AI 编程 CLI,一条消息启动编程会话。** Daemon 监听飞书消息,为每个新话题自动启动独立 CLI 进程(Claude Code / Aiden / CoCo / Codex / Gemini / OpenCode),提供实时流式卡片和可交互 Web 终端。
25
+
26
+ ## 演示
27
+
28
+ | 飞书流式卡片 | Web 终端 | tmux 会话管理 | 多机器人协作 |
29
+ |:-:|:-:|:-:|:-:|
30
+ | <img src="gif/fold&unfold.gif" width="220" /> | <img src="gif/web_terminal.gif" width="220" /> | <img src="gif/tmux.gif" width="220" /> | <img src="docs/setup/multi-bot-collab.png" width="220" /> |
31
+
17
32
  <details>
18
- <summary>📺 完整演示视频</summary>
33
+ <summary>完整演示视频</summary>
19
34
 
20
35
  [演示视频](https://github.com/user-attachments/assets/3ba4c681-0a7e-4a03-89c8-b8d26b544a65)
21
36
  </details>
22
37
 
38
+ ---
39
+
40
+ ## 为什么选择 botmux
41
+
42
+ ### 设计理念
43
+
44
+ **不做 SDK wrapper,直接桥接 CLI。**
45
+
46
+ botmux 不重新实现 Agent 能力,而是直接桥接已有的 AI 编程 CLI(Claude Code、Codex、Aiden、CoCo、Gemini、OpenCode)。记忆、上下文管理、工具调用、权限体系——这些能力 CLI 本身都在快速迭代,botmux 选择站在这个进化之上,而不是平行重造一套。CLI 的每次升级,botmux 零适配自动受益。
47
+
48
+ ### 核心优势
49
+
50
+ 与 OpenClaw 等基于 Agent SDK 构建的方案相比:
51
+
52
+ | 特性 | botmux | OpenClaw 类方案 |
53
+ |------|--------|----------------|
54
+ | 底层架构 | 直接桥接完整 CLI 进程 | 基于 Agent SDK 重新构建 |
55
+ | CLI 能力 | 完整运行时(hooks、memory、plan mode、MCP 生态、`/` 命令) | SDK API 子集,需手动实现缺失功能 |
56
+ | CLI 升级 | 零适配自动受益 | 需要跟进 SDK 版本变更 |
57
+ | 记忆 / 上下文 | 直接复用 CLI 内建的记忆系统,随 CLI 迭代自动增强 | 需自建记忆系统,与 CLI 原生能力重复 |
58
+ | 多 CLI 支持 | 6 种 CLI 一键切换(Claude Code / Codex / Aiden / CoCo / Gemini / OpenCode) | 绑定单一 SDK,无法切换 CLI |
59
+ | Web 终端 | 可交互的完整终端,移动端快捷键工具栏,手机/电脑/飞书三端同步 | 通常仅 Web 聊天界面或只读输出 |
60
+ | 多机器人协作 | 多 bot 同群 @mention 路由,独立进程隔离,不同 CLI 赛博斗蛐蛐 | 通常单机器人 |
61
+ | 终端直连 | tmux attach 直接进入 CLI 进程,和本地开发体验一致 | 无法直接操作底层终端 |
62
+ | 安装部署 | `npm install -g botmux`,5 分钟飞书配置即可使用 | 安装简单,但配置项较多 |
63
+
64
+ ---
65
+
23
66
  ## 功能特性
24
67
 
25
- - **一个话题 = 一个 AI 编程会话** — 每个飞书话题线程对应一个独立的 CLI 进程
26
- - **多 CLI 支持** — 通过适配器架构支持 Claude Code、Aiden、CoCo、Codex、Gemini,可扩展
27
- - **实时流式卡片** — 终端输出实时渲染到飞书卡片中,支持 Markdown 格式,每轮对话独立卡片
28
- - **Web 终端 (xterm.js)** — 浏览器查看完整 PTY 输出,移动端快捷键工具栏,按需获取可操作链接
29
- - **会话持久化** 会话在 Daemon 重启后自动恢复;tmux 后端下 CLI 进程常驻,重启零中断
30
- - **定时任务** 基于 Cron 的周期性任务,支持中文自然语言配置
31
- - **项目管理** — 交互式仓库选择器,每个会话独立工作目录
32
- - **MCP 集成** — CLI 可通过 MCP 工具回复飞书话题、读取消息历史、添加表情回应
33
- - **权限控制** — 用户白名单、终端 Token 写入权限、卡片按钮操作限制
68
+ ### 实时流式卡片
69
+
70
+ 每轮对话生成一个实时更新的飞书卡片:
71
+
72
+ - 终端输出实时渲染为 Markdown,自动过滤 TUI 装饰,仅展示实际工作输出
73
+ - 状态指示:🟡 启动中 🔵 工作中 → 🟢 就绪
74
+ - 操作按钮:打开终端、获取操作链接、重启 CLI、关闭会话
75
+ - 每次回复创建新的流式卡片,上一轮卡片冻结在最后状态
76
+
77
+ ### Web 终端(可交互)
78
+
79
+ 每个会话提供一个 Web 终端,地址为 `http://<WEB_EXTERNAL_HOST>:<端口>`。
80
+
81
+ - **只读链接** — 展示在群话题的流式卡片上,随时查看进度
82
+ - **可操作链接** — 按需获取(点击卡片上的「🔑 获取操作链接」通过私聊发送),可直接在浏览器中操作 CLI
83
+ - 移动端/平板提供悬浮快捷键工具栏(Esc、Ctrl+C、Tab、方向键等),手机上也能流畅操作
84
+
85
+ ### 多机器人协作
86
+
87
+ 支持在同一台机器上运行多个飞书机器人,每个机器人可对应不同的 CLI。同一群聊中的多个机器人通过 @mention 路由消息,仅有一个机器人时自动响应无需 @。
88
+
89
+ ### Tmux 会话常驻
90
+
91
+ 安装 tmux 后自动启用。CLI 进程常驻在 tmux session 内,所有功能不受影响。
92
+
93
+ **核心收益:Daemon 重启不中断 CLI。** `botmux restart` 时 worker 进程退出,但 tmux session(及其中的 CLI 进程)保持运行。下次收到消息时 worker 自动 re-attach,无需 `--resume` 重载上下文。
94
+
95
+ | 事件 | tmux session | CLI 进程 |
96
+ |------|-------------|---------|
97
+ | `botmux restart` | 存活 | 存活(下次消息 re-attach) |
98
+ | `/close` 或关闭按钮 | 销毁 | 终止(SIGHUP) |
99
+ | CLI 自行退出 / 崩溃 | 随之关闭 | 已退出(自动重启用新 session) |
100
+
101
+ ```bash
102
+ # 推荐:交互式会话列表 — 选择后直接 attach 到 tmux
103
+ npx botmux list
104
+
105
+ # 也可以手动 attach(会话名 = bmx-<sessionId 前 8 位>)
106
+ tmux attach -t bmx-<session-id-前8位>
107
+ # Ctrl+B, D 退出 attach,不影响 CLI 继续运行
108
+
109
+ # 强制降级到纯 pty 模式(不使用 tmux)
110
+ BACKEND_TYPE=pty botmux start
111
+ ```
112
+
113
+ `botmux list` 提供交互式 TUI,显示所有活跃会话的 ID、标题、工作目录、PID、运行时长和状态,方向键选择后回车即可 attach。也支持 `botmux list --plain` 输出纯文本表格供脚本使用。
114
+
115
+ **tmux 会话命名规则:** `bmx-<sessionId 前 8 位>`
116
+
117
+ ### 定时任务
118
+
119
+ 基于 Cron 的周期性任务,支持中文自然语言配置。
120
+
121
+ ```
122
+ /schedule 每日17:50 帮我看看AI圈有什么新闻
123
+ /schedule 工作日每天9:00 检查服务状态
124
+ /schedule 每周一10:00 生成周报
125
+ ```
126
+
127
+ ### MCP 集成
128
+
129
+ CLI 可通过 MCP 工具与飞书话题交互:
130
+
131
+ - 回复飞书话题
132
+ - 读取消息历史
133
+ - 添加表情回应
134
+
135
+ ---
34
136
 
35
137
  ## 前置要求
36
138
 
37
139
  - **Node.js** >= 20
38
140
  - **AI 编程 CLI** 已安装并完成认证(`claude`、`aiden`、`coco`、`codex`、`gemini` 或 `opencode` 在 PATH 中)
39
- - **飞书应用** 具备机器人和消息权限(WebSocket 事件订阅)
40
141
  - **tmux** >= 3.x(可选,安装后自动启用会话常驻)
41
142
 
42
- ## 安装
143
+ ## 5 分钟快速接入
43
144
 
44
- ```bash
45
- npm install -g botmux
145
+ ### Step 1: 创建飞书应用
146
+
147
+ 打开 [飞书开放平台](https://open.larkoffice.com/app),点击「创建企业自建应用」。
148
+
149
+ ![创建应用](docs/setup/create-app.png)
150
+
151
+ ### Step 2: 获取凭证
152
+
153
+ 进入应用详情 →「凭证与基础信息」,复制 **App ID** 和 **App Secret**。
154
+
155
+ ![获取凭证](docs/setup/credentials.png)
156
+
157
+ ### Step 3: 添加权限
158
+
159
+ 进入「权限管理」→「批量导入/导出权限」,粘贴以下 JSON 一次性导入所有权限:
160
+
161
+ ![权限管理](docs/setup/permissions.png)
162
+
163
+ <details>
164
+ <summary>点击展开批量导入 JSON</summary>
165
+
166
+ ```json
167
+ {
168
+ "scopes": {
169
+ "tenant": [
170
+ "contact:user.base:readonly",
171
+ "contact:user.id:readonly",
172
+ "im:chat:read",
173
+ "im:chat.members:bot_access",
174
+ "im:chat.members:read",
175
+ "im:message",
176
+ "im:message:readonly",
177
+ "im:message:send_as_bot",
178
+ "im:message:update",
179
+ "im:message.group_at_msg",
180
+ "im:message.group_at_msg:readonly",
181
+ "im:message.group_msg",
182
+ "im:message.p2p_msg:readonly",
183
+ "im:message.reactions:write_only",
184
+ "im:resource"
185
+ ]
186
+ }
187
+ }
46
188
  ```
189
+ </details>
47
190
 
48
- ## 快速开始
191
+ ### Step 4: 安装 & 启动 botmux
49
192
 
50
193
  ```bash
51
- # 1. 交互式配置 — 创建 ~/.botmux/bots.json
194
+ # 安装
195
+ npm install -g botmux
196
+
197
+ # 交互式配置 — 输入 Step 2 的 App ID 和 App Secret
52
198
  botmux setup
53
199
 
54
- # 2. 启动 daemon
200
+ # 启动(飞书后台配置长连接订阅前需要先启动,否则无法检测到连接)
55
201
  botmux start
56
202
  ```
57
203
 
58
- `setup` 命令会引导你完成:
59
- - 创建飞书应用(列出所需权限)
60
- - 输入 App ID、App Secret、Chat ID
61
- - 可选:Claude 模型、工作目录、权限控制
204
+ ### Step 5: 配置事件订阅
205
+
206
+ 回到飞书开放平台,进入「事件与回调」:
207
+
208
+ 1. **订阅方式**:点击编辑图标,选择「使用长连接接收事件」(需要 botmux 已启动,飞书会检测长连接是否建立)
209
+
210
+ ![配置长连接](docs/setup/event-websocket.png)
211
+
212
+ 2. **添加事件**:点击「添加事件」,搜索添加 `im.message.receive_v1`(接收消息 v2.0)
213
+
214
+ ![添加事件](docs/setup/event-receive-msg.png)
215
+
216
+ 3. **启用回调**:切换到「回调配置」tab,开启「卡片回传交互」(`card.action.trigger`)
217
+
218
+ ### Step 6: 发版
219
+
220
+ 进入「版本管理与发布」,点击「创建版本」并发布。可用性范围选择「仅自己可见」即可自动通过审核。
221
+
222
+ ![发版](docs/setup/publish.png)
223
+
224
+ ### Step 7: 建群开聊
225
+
226
+ 1. 飞书中创建一个**话题群**
227
+ 2. 进入群设置 → 群机器人 → 添加刚创建的机器人
228
+ 3. 在群里发消息,机器人自动响应
229
+
230
+ ![添加机器人到群](docs/setup/add-bot-to-group.png)
231
+
232
+ ---
233
+
234
+ ## 使用指南
235
+
236
+ ### 使用流程
237
+
238
+ 1. 在飞书话题群中发送消息创建新话题
239
+ 2. 机器人弹出仓库选择卡片 — 选择项目或点击「直接开启会话」
240
+ 3. CLI 在所选目录下启动
241
+ 4. 话题中出现实时流式卡片,展示终端输出并支持 Markdown 渲染
242
+ 5. 每次回复创建新的流式卡片,上一轮卡片冻结在最后状态
243
+ 6. 点击卡片上的「🔑 获取操作链接」通过私聊获取可写终端链接
244
+ 7. CLI 通过 MCP 工具在话题中回复
245
+
246
+ ### 斜杠命令
247
+
248
+ | 命令 | 说明 |
249
+ |------|------|
250
+ | `/repo` | 显示项目选择卡片 |
251
+ | `/repo <N>` | 切换到上次扫描的第 N 个项目 |
252
+ | `/skip` | 跳过仓库选择,直接开启会话 |
253
+ | `/cd <路径>` | 切换工作目录 |
254
+ | `/status` | 查看会话信息(运行时间、终端地址等) |
255
+ | `/cost` | 查看 Token 用量和费用估算 |
256
+ | `/restart` | 重启 CLI 进程 |
257
+ | `/close` | 关闭会话并终止 CLI |
258
+ | `/clear` | 清除上下文(新会话,同一话题) |
259
+ | `/schedule` | 管理定时任务 |
260
+ | `/help` | 显示可用命令 |
261
+
262
+ ### 定时任务管理
263
+
264
+ 用自然语言创建周期性任务:
265
+
266
+ ```
267
+ /schedule 每日17:50 帮我看看AI圈有什么新闻
268
+ /schedule 工作日每天9:00 检查服务状态
269
+ /schedule 每周一10:00 生成周报
270
+ ```
271
+
272
+ 管理任务:
273
+
274
+ ```
275
+ /schedule list
276
+ /schedule remove <id>
277
+ /schedule enable <id>
278
+ /schedule disable <id>
279
+ /schedule run <id>
280
+ ```
281
+
282
+ ---
62
283
 
63
284
  ## CLI 命令
64
285
 
@@ -76,12 +297,12 @@ botmux start
76
297
  | `botmux delete all` | 关闭所有活跃会话 |
77
298
  | `botmux delete stopped` | 清理所有进程已退出的僵尸会话 |
78
299
 
300
+ ---
301
+
79
302
  ## 配置
80
303
 
81
304
  通过 `~/.botmux/bots.json` 配置机器人。运行 `botmux setup` 交互式创建,或手动编辑。
82
305
 
83
- 支持在同一台机器上运行多个飞书机器人,每个机器人可对应不同的 CLI。同一群聊中的多个机器人通过 @mention 路由消息,仅有一个机器人时自动响应无需 @。
84
-
85
306
  ```bash
86
307
  # 交互式配置
87
308
  botmux setup
@@ -130,7 +351,7 @@ botmux setup
130
351
  | `SESSION_DATA_DIR` | `~/.botmux/data` | 会话和队列的存储目录 |
131
352
  | `DEBUG` | _(未设置)_ | 设为 `1` 启用调试日志 |
132
353
 
133
- ## 文件位置
354
+ ### 文件位置
134
355
 
135
356
  | 路径 | 说明 |
136
357
  |------|------|
@@ -138,110 +359,7 @@ botmux setup
138
359
  | `~/.botmux/data/` | 会话数据、消息队列 |
139
360
  | `~/.botmux/logs/` | Daemon 日志 |
140
361
 
141
- ## 使用
142
-
143
- ### 使用流程
144
-
145
- 1. 在飞书话题群中发送消息创建新话题
146
- 2. 机器人弹出仓库选择卡片 — 选择项目或点击「直接开启会话」
147
- 3. Claude Code 在所选目录下启动
148
- 4. 话题中出现实时流式卡片,展示终端输出并支持 Markdown 渲染
149
- 5. 每次回复创建新的流式卡片,上一轮卡片冻结在最后状态
150
- 6. 点击卡片上的「🔑 获取操作链接」通过私聊获取可写终端链接
151
- 7. Claude 通过 MCP 工具在话题中回复
152
-
153
- ### 斜杠命令
154
-
155
- | 命令 | 说明 |
156
- |------|------|
157
- | `/repo` | 显示项目选择卡片 |
158
- | `/repo <N>` | 切换到上次扫描的第 N 个项目 |
159
- | `/skip` | 跳过仓库选择,直接开启会话 |
160
- | `/cd <路径>` | 切换工作目录 |
161
- | `/status` | 查看会话信息(运行时间、终端地址等) |
162
- | `/cost` | 查看 Token 用量和费用估算 |
163
- | `/restart` | 重启 Claude 进程 |
164
- | `/close` | 关闭会话并终止 Claude |
165
- | `/clear` | 清除上下文(新会话,同一话题) |
166
- | `/schedule` | 管理定时任务 |
167
- | `/help` | 显示可用命令 |
168
-
169
- ### 定时任务
170
-
171
- 用自然语言创建周期性任务:
172
-
173
- ```
174
- /schedule 每日17:50 帮我看看AI圈有什么新闻
175
- /schedule 工作日每天9:00 检查服务状态
176
- /schedule 每周一10:00 生成周报
177
- ```
178
-
179
- 管理任务:
180
-
181
- ```
182
- /schedule list
183
- /schedule remove <id>
184
- /schedule enable <id>
185
- /schedule disable <id>
186
- /schedule run <id>
187
- ```
188
-
189
- ### 流式卡片
190
-
191
- 每轮对话会生成一个实时更新的飞书卡片,展示:
192
-
193
- - 实时终端输出(通过 headless xterm 捕获 + 飞书卡片 v2 Markdown 渲染)
194
- - 状态指示:🟡 启动中 → 🔵 工作中 → 🟢 就绪
195
- - 操作按钮:打开终端、获取操作链接、重启 Claude、关闭会话
196
-
197
- 卡片内容由 headless xterm 终端捕获,自动过滤 TUI 装饰(Logo、状态栏、提示符、框线字符),仅展示 Claude 的实际工作输出。
198
-
199
- ### Web 终端
200
-
201
- <p align="center">
202
- <img src="gif/web_terminal.gif" alt="Web 终端实时输出" width="600">
203
- </p>
204
-
205
- 每个会话提供一个 Web 终端,地址为 `http://<WEB_EXTERNAL_HOST>:<端口>`。
206
-
207
- - **只读链接** — 展示在群话题的流式卡片上
208
- - **可操作链接** — 按需获取(点击卡片上的「🔑 获取操作链接」通过私聊发送)
209
-
210
- 特性:xterm.js + fit/unicode11/web-links 插件、TokyoNight 主题、滚动缓冲区。移动端/平板通过悬浮快捷键工具栏提供 Esc、Ctrl+C、Tab、方向键等虚拟键盘缺失的控制键,工具栏自动避让虚拟键盘。
211
-
212
- ### Tmux 会话常驻
213
-
214
- <p align="center">
215
- <img src="gif/tmux.gif" alt="botmux list — 交互式 tmux 会话管理" width="600">
216
- </p>
217
-
218
- 安装 tmux 后,botmux 自动使用 tmux 后端。CLI 进程运行在 tmux session 内,daemon 通过 node-pty attach 到 tmux 来捕获输出,流式卡片、空闲检测、Web 终端等功能全部不受影响。
219
-
220
- **核心收益:Daemon 重启不中断 CLI。** `botmux restart` 时 worker 进程退出,但 tmux session(及其中的 CLI 进程)保持运行。下次收到消息时 worker 自动 re-attach,无需 `--resume` 重载上下文。
221
-
222
- ```bash
223
- # 推荐:交互式会话列表 — 选择后直接 attach 到 tmux
224
- npx botmux list
225
-
226
- # 也可以手动 attach(会话名 = bmx-<sessionId 前 8 位>)
227
- tmux attach -t bmx-<session-id-前8位>
228
- # Ctrl+B, D 退出 attach,不影响 CLI 继续运行
229
-
230
- # 强制降级到纯 pty 模式(不使用 tmux)
231
- BACKEND_TYPE=pty botmux start
232
- ```
233
-
234
- `botmux list` 提供交互式 TUI,显示所有活跃会话的 ID、标题、工作目录、PID、运行时长和状态,方向键选择后回车即可 attach。也支持 `botmux list --plain` 输出纯文本表格供脚本使用。
235
-
236
- **tmux 会话命名规则:** `bmx-<sessionId 前 8 位>`
237
-
238
- **生命周期:**
239
-
240
- | 事件 | tmux session | CLI 进程 |
241
- |------|-------------|---------|
242
- | `botmux restart` | 存活 | 存活(下次消息 re-attach) |
243
- | `/close` 或关闭按钮 | 销毁 | 终止(SIGHUP) |
244
- | CLI 自行退出 / 崩溃 | 随之关闭 | 已退出(自动重启用新 session) |
362
+ ---
245
363
 
246
364
  ## 贡献
247
365
 
@@ -1 +1 @@
1
- {"version":3,"file":"aiden.d.ts","sourceRoot":"","sources":["../../../src/adapters/cli/aiden.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAA6B,MAAM,YAAY,CAAC;AAMxE,wBAAgB,kBAAkB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,CAkEpE;AAED,eAAO,MAAM,MAAM,2BAAqB,CAAC"}
1
+ {"version":3,"file":"aiden.d.ts","sourceRoot":"","sources":["../../../src/adapters/cli/aiden.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAA6B,MAAM,YAAY,CAAC;AAMxE,wBAAgB,kBAAkB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,CAiEpE;AAED,eAAO,MAAM,MAAM,2BAAqB,CAAC"}
@@ -20,13 +20,12 @@ export function createAidenAdapter(pathOverride) {
20
20
  return args;
21
21
  },
22
22
  async writeInput(pty, content) {
23
+ // Aiden is a Claude Code fork but does NOT enable bracketed paste mode
24
+ // (\x1b[?2004h) — escape sequences render as literal text.
25
+ // Use split-write + delay like Codex/Gemini/OpenCode.
23
26
  pty.write(content);
24
27
  await delay(200);
25
28
  pty.write('\r');
26
- if (content.includes('\n')) {
27
- await delay(200);
28
- pty.write('\r');
29
- }
30
29
  },
31
30
  ensureMcpConfig(entry) {
32
31
  const configPath = join(homedir(), '.aiden', '.mcp.json');
@@ -1 +1 @@
1
- {"version":3,"file":"aiden.js","sourceRoot":"","sources":["../../../src/adapters/cli/aiden.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aiden.js","sourceRoot":"","sources":["../../../src/adapters/cli/aiden.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"coco.d.ts","sourceRoot":"","sources":["../../../src/adapters/cli/coco.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAA6B,MAAM,YAAY,CAAC;AAExE,wBAAgB,iBAAiB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,CA6DnE;AAED,eAAO,MAAM,MAAM,0BAAoB,CAAC"}
1
+ {"version":3,"file":"coco.d.ts","sourceRoot":"","sources":["../../../src/adapters/cli/coco.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAA6B,MAAM,YAAY,CAAC;AAMxE,wBAAgB,iBAAiB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,CAiEnE;AAED,eAAO,MAAM,MAAM,0BAAoB,CAAC"}
@@ -1,5 +1,8 @@
1
1
  import { execSync } from 'node:child_process';
2
2
  import { resolveCommand } from './registry.js';
3
+ function delay(ms) {
4
+ return new Promise(resolve => setTimeout(resolve, ms));
5
+ }
3
6
  export function createCocoAdapter(pathOverride) {
4
7
  const bin = resolveCommand(pathOverride ?? 'coco');
5
8
  return {
@@ -18,7 +21,11 @@ export function createCocoAdapter(pathOverride) {
18
21
  return args;
19
22
  },
20
23
  async writeInput(pty, content) {
21
- pty.write(content + '\r');
24
+ // CoCo is a Claude Code fork but may not enable bracketed paste mode.
25
+ // Use split-write + delay like Codex/Gemini/OpenCode.
26
+ pty.write(content);
27
+ await delay(200);
28
+ pty.write('\r');
22
29
  },
23
30
  ensureMcpConfig(entry) {
24
31
  // Use `coco mcp add-json` CLI — coco stores config in ~/.trae/traecli.yaml
@@ -1 +1 @@
1
- {"version":3,"file":"coco.js","sourceRoot":"","sources":["../../../src/adapters/cli/coco.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,MAAM,UAAU,iBAAiB,CAAC,YAAqB;IACrD,MAAM,GAAG,GAAG,cAAc,CAAC,YAAY,IAAI,MAAM,CAAC,CAAC;IACnD,OAAO;QACL,EAAE,EAAE,MAAM;QACV,WAAW,EAAE,GAAG;QAEhB,SAAS,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE;YAC7B,MAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;YACvC,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,eAAe,EAAE,mBAAmB,EAAE,cAAc,CAAC,CAAC;YACrF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,GAAc,EAAE,OAAe;YAC9C,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;QAC5B,CAAC;QAED,eAAe,CAAC,KAAqB;YACnC,2EAA2E;YAC3E,8EAA8E;YAC9E,KAAK,MAAM,KAAK,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBAC1C,IAAI,KAAK,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;oBACzB,IAAI,CAAC;wBACH,QAAQ,CAAC,GAAG,GAAG,eAAe,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAClG,CAAC;oBAAC,MAAM,CAAC,CAAC,wBAAwB,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;YAED,qFAAqF;YACrF,IAAI,CAAC;gBACH,QAAQ,CAAC,GAAG,GAAG,eAAe,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YACvG,CAAC;YAAC,MAAM,CAAC,CAAC,wBAAwB,CAAC,CAAC;YAEpC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,GAAG,EAAE,KAAK,CAAC,GAAG;aACf,CAAC,CAAC;YACH,IAAI,CAAC;gBACH,QAAQ,CAAC,GAAG,GAAG,iBAAiB,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE;oBACpE,QAAQ,EAAE,OAAO;oBACjB,OAAO,EAAE,MAAM;oBACf,KAAK,EAAE,QAAQ;iBAChB,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,OAAO,CAAC,IAAI,CAAC,oCAAoC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;QAED,iBAAiB,EAAE,SAAS;QAC5B,YAAY,EAAE,IAAI,EAAI,6DAA6D;QACnF,WAAW,EAAE;YACX,4CAA4C;SAC7C;QACD,SAAS,EAAE,KAAK;KACjB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,iBAAiB,CAAC"}
1
+ {"version":3,"file":"coco.js","sourceRoot":"","sources":["../../../src/adapters/cli/coco.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAIhD,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED,wBAAgB,oBAAoB,CAAC,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,CAQ/D;AAED,wBAAgB,iBAAiB,CAAC,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,CAO5D;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,EAAE,CA2B/D;AAID,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAiBrI;AAID;;8EAE8E;AAC9E,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAuBlE;AAED,wBAAgB,qBAAqB,CAAC,WAAW,CAAC,EAAE,cAAc,EAAE,GAAG,MAAM,CAI5E;AAED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,KAAK,EACZ,eAAe,CAAC,EAAE,MAAM,EACxB,WAAW,CAAC,EAAE,cAAc,EAAE,EAC9B,QAAQ,CAAC,EAAE,WAAW,EAAE,EACxB,aAAa,CAAC,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GACtE,MAAM,CAyCR;AAID,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,IAAI,CAgDtF;AAID,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,aAAa,EACnB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC1C,iBAAiB,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,GAC7C,OAAO,CAAC,IAAI,CAAC,CAyCf"}
1
+ {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAIhD,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED,wBAAgB,oBAAoB,CAAC,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,CAQ/D;AAED,wBAAgB,iBAAiB,CAAC,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,CAO5D;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,EAAE,CA2B/D;AAID,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAiBrI;AAID;;8EAE8E;AAC9E,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAuBlE;AAED,wBAAgB,qBAAqB,CAAC,WAAW,CAAC,EAAE,cAAc,EAAE,GAAG,MAAM,CAI5E;AAED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,KAAK,EACZ,eAAe,CAAC,EAAE,MAAM,EACxB,WAAW,CAAC,EAAE,cAAc,EAAE,EAC9B,QAAQ,CAAC,EAAE,WAAW,EAAE,EACxB,aAAa,CAAC,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GACtE,MAAM,CAmCR;AAID,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,IAAI,CAgDtF;AAID,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,aAAa,EACnB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC1C,iBAAiB,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,GAC7C,OAAO,CAAC,IAAI,CAAC,CAyCf"}
@@ -119,11 +119,7 @@ export function formatAttachmentsHint(attachments) {
119
119
  export function buildNewTopicPrompt(userMessage, sessionId, cliId, cliPathOverride, attachments, mentions, availableBots) {
120
120
  const adapter = createCliAdapterSync(cliId, cliPathOverride);
121
121
  const hints = adapter.systemHints;
122
- const noteLines = [
123
- '- 回复使用 send_to_thread(重要结论、方案确认、最终结果)',
124
- '- 对于代码修改任务,先通过 send_to_thread 发送执行方案给用户确认后再执行',
125
- ...hints.map(h => `- ${h}`),
126
- ];
122
+ const noteLines = hints.map(h => `- ${h}`);
127
123
  // Mention metadata section
128
124
  let mentionSection = '';
129
125
  if (mentions && mentions.length > 0) {
@@ -142,17 +138,17 @@ export function buildNewTopicPrompt(userMessage, sessionId, cliId, cliPathOverri
142
138
  });
143
139
  botSection = `\n\n当前群聊中的其他机器人:\n${botLines.join('\n')}\n可通过 send_to_thread 的 mentions 参数 @mention 它们协作,也可用 list_bots 工具查询。`;
144
140
  }
145
- return `你已连接到飞书话题,用户发送了:
146
- ---
147
- ${userMessage}${formatAttachmentsHint(attachments)}
148
- ---
149
-
150
- Session ID: ${sessionId}
151
-
152
- 请处理用户的请求,通过 send_to_thread 回复用户(session_id: "${sessionId}")。
153
-
154
- 注意:
155
- ${noteLines.join('\n')}${mentionSection}${botSection}`;
141
+ const parts = [
142
+ `用户发送了:\n---\n${userMessage}${formatAttachmentsHint(attachments)}\n---`,
143
+ `Session ID: ${sessionId}`,
144
+ ];
145
+ if (noteLines.length > 0)
146
+ parts.push(noteLines.join('\n'));
147
+ if (mentionSection)
148
+ parts.push(mentionSection.trim());
149
+ if (botSection)
150
+ parts.push(botSection.trim());
151
+ return parts.join('\n\n');
156
152
  }
157
153
  // ─── Session restore ─────────────────────────────────────────────────────────
158
154
  export function restoreActiveSessions(activeSessions) {
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"worker-pool.d.ts","sourceRoot":"","sources":["../../src/core/worker-pool.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAkC,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAOhD,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACzG,oBAAoB,EAAE,CAAC,EAAE,CAAC,EAAE,aAAa,KAAK,MAAM,CAAC;IACrD,cAAc,EAAE,MAAM,MAAM,CAAC;IAC7B,sDAAsD;IACtD,YAAY,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,CAAC;CAC3C;AAID;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI,CAE5D;AAyBD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAI3E;AA8BD,eAAO,MAAM,aAAa;WAA4B,MAAM;YAAU,MAAM;EAAK,CAAC;AAOlF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAkB5E;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI,CAWlD;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAAQ,GAAG,IAAI,CAuQlF;AAID,wBAAgB,aAAa,CAAC,eAAe,EAAE,OAAO,EAAE,GAAG,IAAI,CAwD9D;AAOD,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAEpD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C"}
1
+ {"version":3,"file":"worker-pool.d.ts","sourceRoot":"","sources":["../../src/core/worker-pool.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAkC,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAOhD,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACzG,oBAAoB,EAAE,CAAC,EAAE,CAAC,EAAE,aAAa,KAAK,MAAM,CAAC;IACrD,cAAc,EAAE,MAAM,MAAM,CAAC;IAC7B,sDAAsD;IACtD,YAAY,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,CAAC;CAC3C;AAID;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI,CAE5D;AAyBD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAI3E;AA8BD,eAAO,MAAM,aAAa;WAA4B,MAAM;YAAU,MAAM;EAAK,CAAC;AAOlF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAkB5E;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI,CAWlD;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAAQ,GAAG,IAAI,CAuQlF;AAID,wBAAgB,aAAa,CAAC,eAAe,EAAE,OAAO,EAAE,GAAG,IAAI,CA6D9D;AAOD,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAEpD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C"}
@@ -390,10 +390,13 @@ export function killStalePids(activeSessions_) {
390
390
  }
391
391
  }
392
392
  else {
393
- // Multi-bot or same CLI_ID: clean orphaned tmux sessions not in active set
393
+ // Clean orphaned tmux sessions that belong to THIS bot only.
394
+ // In multi-bot mode each daemon only knows its own sessions — we must
395
+ // not kill tmux sessions that belong to other bots' daemons.
394
396
  const activeNames = new Set(activeSessions_.map(s => TmuxBackend.sessionName(s.sessionId)));
397
+ const ownedNames = new Set(sessionStore.listSessions().map(s => TmuxBackend.sessionName(s.sessionId)));
395
398
  for (const name of TmuxBackend.listBotmuxSessions()) {
396
- if (!activeNames.has(name)) {
399
+ if (ownedNames.has(name) && !activeNames.has(name)) {
397
400
  logger.info(`Killing orphaned tmux session: ${name}`);
398
401
  TmuxBackend.killSession(name);
399
402
  }