zeyu.fz 8a09881626 refactor(tool-bailian-kb): 重构默认服务配置管理及设置页同步逻辑
- 替换默认服务配置字段为 defaultRetrieveAgentId 和 defaultChatAgentId,支持分别管理检索和对话服务
- 增加 Bailian knowledge base 插件设置命名空间,配置支持用户层叠覆盖和实时生效
- 统一凭证与设置配置的回退链,新增一阶段设置用户层优先读取字段
- 实现凭证值向设置文档的单次迁移,辅助设置页首次展示历史值
- Bailian 页面控制器支持基于设置作用域的双域同步,回显设置字段且支持删除操作
- 工具代码切换为从设置作用域异步解析默认服务 id,agent_id 在运行时均为可选但调用时必填
- README 与文档更新,包含配置项扩展、回退链说明以及 UI 配置页操作说明
- 底层依赖由 `dsh-client-ui-settings-plugins` 切换为 `dsh-client-ui-settings`
- 修正 patch 配置与 API 参数命名,完善错误提示和超时配置读取
2026-08-17 13:52:05 +08:00
2026-08-15 18:25:13 +08:00

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 插件本体:Config、KbClient、三个工具、随包打包的管理 skill
packages/bundle 分发面:dsh.bundle 声明 + cordis.patch.yml

安装(dsh 用户)

dsh plugin --profile web add bailian-kb-dsh   # 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 bailian-kb-dsh。

开发

依赖 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/

本地联调:link: 安装不会把被链接包的依赖装进 profile,需要把 bundle 和插件包都 add 进去(插件包会报 "declares no dsh.bundle — installed as a plain dependency" 警告,符合预期);npm 正式安装无此问题:

dsh plugin --profile dev add <本仓库>/packages/bundle
dsh plugin --profile dev add <本仓库>/packages/tool-bailian-kb   # 仅 link 联调需要

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 提示)。
S
Description
bailian-cli: 阿里云百炼 / Aliyun Bailian / DashScope 资源管理与 bl CLI hub: 应用调用(bl app)、应用记忆、知识库检索、模型目录/模型列表、用量/额度/配额、免费额度、 工作空间、MCP 市场、pipeline、文件上传、console API、登录鉴权与配置、 Agent…; bailian-gen: 阿里云百炼图片/视频/语音生成与理解入口:用户要生图、画图、生成照片、生成图片、AI 绘画、海报、头像、插画、 文生图(text-to-image)、图生图、改图、修图、多图合成、生成视频、文生视频、图生视频、参考生视频、视频编辑、风格转换、…; bailian-protocol: 阿里云百炼 bl 家族共享执行协议(consent 确认、版本预检、鉴权/安装、错误上报、本地文件与输出约定)。 不是面向用户意图的业务入口;当任一 bailian-* 业务 skill(bailian-cli / bailian-gen / bailian-finetune /…; bailian-finetune: 阿里云百炼模型精调…
Readme Apache-2.0 68 MiB
Languages
TypeScript 93.4%
JavaScript 6.4%
CSS 0.2%