nikou-cli 0.1.15 → 0.1.16

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
@@ -160,13 +160,13 @@ Hook 支持三种启动模式:
160
160
  - 单独从节点:只启动 Worker,连接已有主节点。
161
161
  - 一主多从:单独启动一个主节点,再让多台机器的从节点接入。
162
162
 
163
- 主节点负责连接聊天平台、接收消息、维护 Worker 列表并分发任务。从节点负责连接主节点,收到任务后调用 Codex、Claude、GeminiAPI Agent 执行。
163
+ 主节点负责连接聊天平台、接收消息、维护 Worker 列表并分发任务。从节点负责连接主节点,收到任务后调用 Codex、Claude、GeminiAPI Agent 或知识库客户端执行。
164
164
 
165
165
  群聊发送 `@机器人 绑定: <目录>` 时,主节点会先检查当前用户是否已经绑定该目录;已有绑定会直接返回当前绑定状态卡片。当前用户已有其他目录时,会通过卡片确认“覆盖原绑定”或“新增绑定目录”;覆盖操作会在新目录校验成功后再撤销旧绑定。一个群可以保留多个用户、多个目录的 Agent 绑定,绑定指令不会广播给其他 Worker 抢占。
166
166
 
167
167
  绑定成功后会返回绿色状态卡片,展示本次绑定、当前群的全部普通目录绑定、完整路径、对应 Agent,以及知识库固定绑定(如有)。卡片底部同时给出省略盘符路径、完整路径和无路径选择三种解绑方式,便于确认当前真实绑定状态。
168
168
 
169
- 群聊内任何成员都可以发送解绑指令。路径既支持完整路径,也支持省略盘符后的末两级路径;不带路径时会显示卡片供用户选择。Agent 选择卡片会展示省略盘符路径,并在底部提示解绑方式。
169
+ 群聊内任何成员都可以发送解绑指令。路径既支持完整路径,也支持省略盘符后的末两级路径;不带路径时会显示卡片供用户选择。Agent 选择卡片会展示省略盘符路径、在线状态:在线 Agent 带绿色状态标识且可选择,离线 Agent 会置灰禁用;选择超时后会发送置灰的超时状态卡片。卡片底部同时提示解绑方式。
170
170
 
171
171
  ```text
172
172
  @妮蔻 解绑 D:\project\hst\report
@@ -190,7 +190,7 @@ nikou-cli hook binding remove \
190
190
 
191
191
  不传 `--dir` 时,会移除该 Agent 在群内的全部目录;如只需移除一条目录绑定,可追加 `--dir /srv/project-a`。群名匹配到多个 `chat_id` 时,命令会停止并要求改用 `--chat-id`,避免误删。
192
192
 
193
- 群聊发送 `绑定知识库` 后,任务会定向到配置的知识库 Worker 和固定目录,执行结果卡片不展示宿主信息。知识库绑定只作用于群聊;单聊仍按发送人的飞书 `user_id` 选择其归属 Worker,同一用户多台 Worker 在线时优先使用最近接入的一台。
193
+ 群聊发送 `绑定知识库` 后,任务会定向到配置的知识库 Worker 和固定目录,并返回不暴露知识库目录、IP 或宿主的红色绑定状态卡片。卡片同时展示当前群其他 Agent 目录绑定和解绑指令。发送 `解绑知识库` 可移除当前群的知识库固定绑定。知识库绑定只作用于群聊;单聊仍按发送人的飞书 `user_id` 选择其归属 Worker,同一用户多台 Worker 在线时优先使用最近接入的一台。
194
194
 
195
195
  专用知识库 Worker 建议在从节点配置中关闭单聊,并设置可区分的启动通知名称:
196
196
 
@@ -205,6 +205,26 @@ nikou-cli hook binding remove \
205
205
 
206
206
  关闭后,该 Worker 仍可承接群聊知识库固定路由,但不会成为宿主的单聊候选。启动通知会显示“公司知识库妮蔻已启动,群聊知识库任务已可用”。未配置时 `p2p_enabled` 默认为 `true`,保持旧 Worker 行为。
207
207
 
208
+ 知识库 Worker 可以使用 `knowledge` 引擎直接连接 FastGPT 应用。此模式不会启动 Claude,也不会在 Worker 内重复连接知识库或代码 MCP;FastGPT 应用负责完成知识检索、内部工具调用和回答生成,Worker 只负责会话、流式事件与飞书卡片适配:
209
+
210
+ ```json
211
+ {
212
+ "hook": {
213
+ "p2p_enabled": false,
214
+ "worker_name": "公司知识库妮蔻",
215
+ "knowledge": {
216
+ "provider": "fastgpt",
217
+ "base_url": "http://127.0.0.1:3000/api",
218
+ "api_key_env": "NIKOU_FASTGPT_APP_KEY",
219
+ "request_timeout_ms": 600000,
220
+ "retain_dataset_cite": true
221
+ }
222
+ }
223
+ }
224
+ ```
225
+
226
+ API Key 必须来自 `api_key_env` 指定的环境变量,不支持把真实 Key 写入命令参数、README 或默认配置。`base_url`、`api_key_env`、`request_timeout_ms` 和 `retain_dataset_cite` 同时兼容 camelCase。
227
+
208
228
  ### 初始化配置
209
229
 
210
230
  ```bash
@@ -289,6 +309,12 @@ API Agent:
289
309
  ai-hook local api --api kiro
290
310
  ```
291
311
 
312
+ FastGPT 知识库客户端:
313
+
314
+ ```bash
315
+ ai-hook local knowledge
316
+ ```
317
+
292
318
  完整入口也可以写成:
293
319
 
294
320
  ```bash
@@ -358,6 +384,18 @@ API Agent:
358
384
  nikou-cli hook worker api --api kiro
359
385
  ```
360
386
 
387
+ FastGPT 知识库客户端:
388
+
389
+ ```bash
390
+ ai-hook knowledge
391
+ # 完整入口
392
+ nikou-cli hook worker knowledge
393
+ ```
394
+
395
+ `knowledge` 模式调用 FastGPT `/api/v1/chat/completions`,固定开启流式响应、详细事件和知识库引用。飞书话题会映射为稳定的 FastGPT `chatId`,因此同一话题可以连续追问,Worker 重启后也会恢复映射。FastGPT 返回的正文进入卡片“执行结果”,可见推理摘要进入“思考过程”,工作流节点和工具调用以脱敏状态行展示;不会展示工具参数和完整工具返回值。
396
+
397
+ 首版仅支持文本问答。图片消息和 FastGPT 交互节点会返回明确的不支持提示,不会静默忽略。
398
+
361
399
  连接远端主节点:
362
400
 
363
401
  ```bash
@@ -384,6 +422,7 @@ ai-hook claude --model sonnet
384
422
  ai-hook gemini
385
423
  ai-hook kiro
386
424
  ai-hook api --api kiro
425
+ ai-hook knowledge
387
426
  ```
388
427
 
389
428
  也可以通过 `--` 传递底层工具参数: