docs(kbtree): 补客户端封装脚本 + 本机部署交接说明

SKILL.md 里原本只有 curl 示例,agent 用起来要自己拼 URL 与鉴权头。
补 scripts/kb_tree.sh(照 dify-ops 的做法把脚本随 skill 分发):

- 子命令 tree/categories/counts/search,选项 -q/-c/-d/-i/-l
- token 读取顺序:KB_TOKEN 环境变量 → config/config.json。
  **故意不接受命令行传 token**(会进 shell 历史与 ps 输出)
- 预检端口:不通时直接说明「服务未上线」并给出上线步骤,
  而不是抛 curl: (7) Connection refused 让用户自己猜
- 错误翻译成人话:401 → 令牌无效;404 → 附上服务端返回的现有分类
  (用 curl -w 而非 -f,否则 404 响应体里最有用的那份清单会被丢掉)
- 退出码:0 成功 / 2 参数 / 3 令牌 / 4 分类不存在 / 5 HTTP / 7 连不上 / 8 请求失败

DEPLOY.md 是给部署方的交接单:本机 kbtree 代码已合入 main 且 skill/token
已就位,但**运行中的二进制里没有 kbtree**(14:35 有人换过一版二进制),
故替换与重启留给部署方。含备份/替换/验证步骤、回滚方式、端口与 token 说明。

token 与 config.json **不入库**(config/ 目录留空),安装时由部署方从
配置库 config_kbtree 表读取后写入本机。
This commit is contained in:
JianFeeeee
2026-09-26 14:43:46 +08:00
parent f93e9347f0
commit fc5563bc75
3 changed files with 276 additions and 0 deletions

View File

@ -34,6 +34,23 @@ AUTH="X-API-Key: $KB_TOKEN" # 或 Authorization: Bearer <token> 或 ?token=
curl -s -H "$AUTH" "$BASE/"
```
### 本机封装脚本(推荐先用它)
`scripts/kb_tree.sh` 把上面四条命令封好了,省得手拼 URL 与鉴权头:
```bash
S=~/.claude/skills/knowledge-base/scripts/kb_tree.sh # 按实际安装路径调整
$S # 整棵树
$S tree -c tech -d 1 # tech 子树,只看第一层
$S categories # 分类列表
$S counts # 各分类条目数
$S search -q goroutine -c tech
```
token 读取顺序:环境变量 `KB_TOKEN` → 同上<E5908C><E4B88A>目录的 `../config.json`。
**不要**把 token 写在命令行上(会进 shell 历史与 `ps` 输出)。
### 核心工作流:先看树,再定向检索
**别一上来就全文搜索。** 知识库是分层的,先定位分类能显著提高命中率,