Skip to content

feat(agent-adoption): make skills a deploy artifact and add auto repair - #288

Merged
Windsander merged 7 commits into
mainfrom
fix/agent-adoption-v0.2.4
Oct 29, 2026
Merged

Windsander merged 7 commits into
mainfrom
fix/agent-adoption-v0.2.4

Conversation

@Windsander

Copy link
Copy Markdown
Owner

概述

修复 #285:把 Mebular Skill 从“可选按钮”变成部署产物,并补齐 Agent 的发现与采用链路。

1. Skill 自动安装

  • connectClient 成功后自动 ensure 当前客户端 Skill。
  • App 首次初始化 / 守护启动 / 升级收敛时自动 ensure 已检测客户端。
  • mebular init 同样自动 ensure。
  • fleet quickstart/join --daemon 通过 mebular-serve 启动时的收敛覆盖;非 daemon 路径在下一次 serve 时收敛。
  • Skill 安装包含 mebular-memory、mebular-tasks、mcp/ 片段和受管标记。
  • 默认只安装缺失项或更新 Mebular 受管旧版本;用户改过或无受管标记的 Skill 保留,不覆盖。
  • install.mjs --global 补齐 OpenChamber/OpenCode 的 ~/.config/opencode/skills。

2. 设置 · 常用“自动修复”

  • 新增一行“自动修复”,不依赖桌面 bridge,browser / desktop / DSH 都可用。
  • 二次确认后强制重跑已检测助手的 MCP 接入 + Skill 安装,并回传逐项结果。
  • 失败项可展开查看脱敏后的原因。
  • 只修改客户端接入资产;不重启 daemon,不重建身份,不动记忆/订阅/任务/审计。
  • 锁定设置页移除重复的“新建忆云 / 加入忆云”按钮,保留诊断信息和顶栏入口引导。

3. Agent 路由信号

  • 29 个工具描述首行统一增加“何时用:…”,覆盖 13 个记忆工具和 16 个任务工具。
  • MCP server 增加全局 instructions,说明先查后写、任务派发前先 task_targets,以及工具描述首行是首选路由信号。
  • 修正工具面“27 个”的过期注释为 29。

4. SETUP 兜底

  • 优先通过 runtime.json 中的 http.host / http.port + /healthz 判断 App/守护已在运行。
  • 已在跑时跳过 §2 CLI 安装,不再因 command -v mebular 失败误装第二套 CLI。
  • 无 config.json 时仍不自建身份,引导从 App 主界面新建/加入。
  • runtime 检测与 CLI 分支在同一 shell 块中,避免跨块变量丢失。

安全与边界

  • 自动安装默认不覆盖用户 Skill;只有显式“自动修复”才 force。
  • 受管标记的旧文件清理增加路径校验,拒绝绝对路径、盘符、反斜杠、./.. 和空段,避免越界删除。
  • 自动修复集成测试验证 store、身份文件、主密钥、daemon config、记忆/审计计数不变。
  • 未修改身份、存储、同步、cloud/profile、subscription、task/audit 的业务语义。

验证

通过:

  • npm run build
  • npm test -- --runInBand --testPathIgnorePatterns=tests/mcp/runtime-cli.test.mjs:216 suites / 2174 tests passed
  • npm run verify:console
  • npm run verify:mcp:skill
  • npm run check:i18n:32 checks,0 failed
  • npm run check:surface-parity:11/11 passed,统一注册表 29
  • npm run check:cleanliness:0 errors / 0 warnings
  • npm run verify:onboarding:36/36 passed
  • npm run verify:daemon:37/37 passed
  • npm run verify:mcp:stdio / verify:mcp:http:通过

已知本机环境限制(非本次改动路径):

  • 全量 npm test -- --runInBand 为 2178/2179;唯一失败是 tests/mcp/runtime-cli.test.mjs 的 profile 解析被本机 /Applications/Mebular.app 0.2.2 daemon 占用 127.0.0.1:7331 影响。
  • verify:runtime:coexistence 在本机 0.2.2 App provider 被选中时出现 6 个环境相关失败;其 rest/self 相关场景通过。
  • verify:console:ui SKIP:当前环境没有 Chrome/Chromium。

发布

本 PR 不包含版本号、CHANGELOG 或发布资产;合并后按 v0.2.4 release 流程处理。

Closes #285

@Windsander
Windsander merged commit 04f39ff into main Oct 29, 2026
8 checks passed
@Windsander
Windsander deleted the fix/agent-adoption-v0.2.4 branch October 29, 2026 07:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(onboarding): Agent 侧采用链路断开——skill 未落到客户端目录、桌面安装无 PATH CLI、工具描述无触发条件

1 participant