mirror of
https://github.com/modelstudioai/cli.git
synced 2026-09-14 19:49:23 +08:00
dbf83c3e16
- 移除独立的 bundle 包及其配置文件和说明文档 - 将原 bundle 的 patch 配置迁移到插件包内的 cordis.patch.yml - 在插件包 package.json 中声明 dsh.bundle.patch 指向新 patch 文件 - 更新 README,说明插件包即是 bundle,简化安装和本地联调流程 - 调整文档中插件名及卸载命令,统一使用 dsh-tool-bailian-kb - 修正仓库结构描述,将包称为目录,更准确反映当前结构 - 改进配置解析链和 Web UI 配置页的说明,突出用户层设置及覆盖机制
2.4 KiB
2.4 KiB
bailian-kb-dsh
阿里云百炼知识库能力的 DeepSeek Harness (dsh) 插件 bundle:三个 API 直连模型工具(kb_service_list / kb_search / kb_chat)+ kscli 管理面 skill。
设计文档:docs/specs/2026-08-15-bailian-kb-bundle-design.md · 实现计划:docs/plans/2026-08-15-bailian-kb-bundle.md
仓库结构
| 目录 | 职责 |
|---|---|
packages/tool-bailian-kb |
插件包(同时是 dsh bundle):Config、KbClient、工具、skill、cordis.patch.yml、浏览器端配置页 |
安装(dsh 用户)
dsh plugin --profile web add dsh-tool-bailian-kb # npm 发布后;本地开发用绝对/相对路径
安装后 CLI 自动把 bundle 加入 profile 的层栈,无需手改 YAML。
配置写入 ~/.dsh/.env:
BAILIAN_WORKSPACE_ID=ws-xxx # 必填:百炼工作空间 id
DASHSCOPE_API_KEY=sk-xxx # 必填:也可放 ~/.dsh/.credentials.yaml
验证:dsh --profile web --dump-config 应能看到 tool-bailian-kb row。缺 BAILIAN_WORKSPACE_ID 时加载期直接报错(fail loud),不会静默跳过。
卸载:dsh plugin --profile web remove dsh-tool-bailian-kb。
开发
依赖 dsh 的运行时包(@deepseek-ai/dsh-tools 等)以 peerDependencies 声明、由 dsh 安装闭包在运行时提供;开发期通过 link: 指向同级的 ../deepseek-harness checkout(npm registry 尚未发布完整 dsh 闭包)。
pnpm install
pnpm run test # vitest 单元测试
pnpm run typecheck
pnpm run build # tsc 产出 lib/
本地联调:只需 add 一次(包同时声明 dsh.bundle 和插件代码):
dsh plugin --profile dev add <本仓库>/packages/tool-bailian-kb
patch 文件受 HMR 监听。
Known Limitations
- 无 keyless snapshot / e2e 基建:首版以单元测试 + 手动集成验收覆盖;snapshot/e2e 依赖 dsh snapshot harness 对 out-of-tree bundle 的支持情况,v0.2 跟进。
- kb_chat 执行期无进展显示:服务端是分钟级 agentic loop,UI 只有 pending → 完成两态;进展会话事件 + Web 渲染器的设计见 spec 附录 A,等真实使用反馈再排期。
- 服务清单单 scene 上限 100 条:超出部分靠
name_filter收窄(结果带 truncated 提示)。