<!-- 受众: AI(直接投喂) | 用途: 想派活时,把某张卡整段发给 AI 当需求 -->
<!-- 这些是发给 AI 读的任务卡。人类的选活决策树在 ../给人看/发展路径-决策与选活.md 。 -->
🎫 任务派发卡 · 发给 AI 当需求#
每张卡都是一段可直接发给 AI 的需求。选一张,连同下面的「派发头」一起发给 AI。
所有卡都遵守协作铁律.md:叶子 + 默认开门控 + 逐字节回退 + 守卫绿。
派发头(每次派活先发这段)#
下面是这次的任务。开始前先按"铁律速查卡"办事:
先告诉我你要改哪个文件、加哪个 KHY_ 门控、关掉后怎么逐字节回退,我确认后再动手。
做完按"诚实收尾模板"汇报。任务如下:
卡 · 接手先跑的命脉自检(每个新 AI 第一件事)#
接手第一步,按顺序确认命脉没退化,把结果如实报我:
1) 只读体检:node services/backend/bin/khy.js maintain freshness
2) 守卫是否全绿:跑 scripts/check-*.js(或做一次空提交看 pre-commit 钩子)。
3) 版本号是否一致(backend package.json 与发布版本)。
4) 上帝组件待办有没有恶化:npm --prefix services/backend run arch:god
任何一项红/异常,先修它,别做新功能。全绿再来找我要任务。
卡 T1 · 边界/安全审查一个未覆盖的输入路径#
任务:在处理外部/不可信输入的代码里,找一个还没做边界硬化的点,按"严格超集+门控"补上。
入口:搜 startsWith / fromCodePoint / toString('utf-8') / new RegExp / parseInt 等易错原语。
做法:参照错误自查手册 B 类(边界锚定/大小写折叠/越界码点/SSRF等价形/破坏性flag归一)。
写成纯叶子 + KHY_ 门控(默认开),登记 flagRegistry,异常 fail-soft。
验收:新增单测覆盖坏输入;门控关掉逐字节回退;守卫全绿。
风险:低(只多封锁/多清理,是严格超集)。
卡 T2 · 拆一个上帝组件#
任务:从超 2500 行的文件里,抽一个内聚分节成纯叶子模块。
入口:npm --prefix services/backend run arch:god(给出超限文件与现成拆分缝)。
当前超限最重:toolUseLoop.js / cli/repl.js / cli/handlers/gateway.js / gateway/aiGateway.js。
做法:选一个"现成横幅分节"→抽成纯叶子→原文件用同名别名 re-export 保契约不变。
先例:localBrainCalc/localBrainTextOps/localBrainSessionContext/localBrainFileLookup。
验收:对外行为逐字节不变;相关单测绿;arch:god 该文件行数下降;守卫全绿。
风险:中(务必只搬移不改逻辑,保证 re-export 契约不变)。
卡 T3 · 补一个模型/provider 适配缺口#
任务:适配一个新模型或 provider(鉴权/请求字段/能力名单)。
入口:aiGateway.js(normalizeModelForAdapter/协议流水线)、modelRouter.js、providerPresets、apiKeyPool。
做法:参照错误自查手册 G 类——通道家族防护(G1)、默认值收敛单一真源(G2)、
鉴权形态(G3)、请求侧字段透传(G4)、视觉能力名单(G5)。写成叶子+门控。
验收:新模型可用;不泄漏给别家通道;守卫 check-model-hardcoding 绿;门控关回退。
风险:中(易泄漏模型名致 404,务必补对称家族防护)。
卡 T4 · 补一个弱模型兼容缺口#
任务:让某个小模型(≤7B)更稳地跑工具循环。
入口:docs/03_DESIGN_设计/[DESIGN-ARCH-013] 弱模型兼容.md + toolUseLoop.js。
做法:对照错误自查手册 W 类,找一个还没兼容好的失败模式补上(别破坏已有四层兼容)。
验收:用该小模型实测工具循环不再截断/拒收/解析失败;门控关回退。
风险:低-中。
卡 T5 · 给一个已有功能补"诚实出口"#
任务:某功能失败时只甩原始报错、没有定性总结和出路——补上。
入口:参照 visionFailureSummary(识图失败→定性+脱敏真因+配置邀约)与 resultGuard(静默截断检测)。
做法:写纯叶子做"分类失败原因+脱敏+给用户下一步",门控默认开,失败 fail-soft 回旧文案。
验收:失败路径给出可读、不泄密、有出路的提示;门控关逐字节回退旧文案。
风险:低。
中期方向卡(项目稳了再派,范围略大)#
卡 M1 · 联网搜索/网页读取鲁棒性#
任务:提升联网搜索召回或网页读取鲁棒性(多样引擎/字符集解码/超时硬截止)。
入口:webSearchService(ENGINE_REGISTRY)、webFetchDecode、WebFetchTool。
做法:加独立引擎/补解码/补硬截止,各走叶子+门控(先例 mojeekEngine/webFetchDecode)。
验收:目标场景可用;门控关回退;守卫绿。风险:低-中。
卡 M2 · MCP 生态(server/client 双向)#
任务:完善 MCP —— 对外暴露原生工具(stdio+HTTP/SSE)或 khy mcp add <预设> 一键装开源 server。
入口:mcpServer*(协议叶子+IO薄壳)、mcpServerPresets、CLI khy mcp。
红线:tools/call 与本地模型走同一 executeTool 权限门控不开后门;非 loopback 无 token 拒启动。
验收:目标能力可用;权限不被绕过;守卫绿。风险:中。
卡 M3 · 视觉/多模态路由完善#
任务:文本模型看不了图时透明路由到视觉模型再返回;能力名单随新模型族更新。
入口:visionCapability/visionRouting、glmVisionModel、modernVisionHints、recognizeImage 工具。
验收:带图请求正确路由;名单更新精确不误伤;门控关回退。风险:中。
卡 M4 · CLI/TUI 与 Claude Code 键位/体验对齐#
任务:补一个键位/会话恢复/拓扑的真缺口(已对齐 ~90%)。
入口:useTextInput/App.js/keybindingCatalog(SSOT,驱动 /keybindings 与 ? 浮层)。
做法:按真缺口补,别引入重映射引擎。验收:新键位生效;守卫绿。风险:低-中。
卡 M5 · 内置模型开箱可用体验#
任务:让 pip 安装后某 provider 默认"已配置"可见,且可经自然语言/网页替换真 key。
入口:apiKeyPool(BUILTIN_PROVIDER_KEYS,占位 priority 0/用户 key priority 10)、nlProviderResolver、前端 AIGateway.vue。
验收:安装后可见"已配置",真 key 恒盖占位;门控关回退。风险:低-中。
远期方向(别让弱模型直接动手,先写 [DESIGN-ARCH-0NN] 设计文档想清接线点)#
- F1 内核侧能力深化:kernel/ 调度/IPC/文件系统/网络演进;host 桥能力扩展。前置读 .ai/MAP.md 启动流程+.ai/GUARDS.md。
- F2 生态应用扩展:走 platform/khy_platform/app_protocol.py 契约接更多应用。红线:数据主权物理隔离(底座~/.khyos/ vs 应用~/.<app>/);发现≠激活。
- F3 治理层收敛:把 .ai/GUARDS-AI.md §2 标"应统一/收敛目标"的重复真源逐个收敛。每次写一行到 .ai/GOVERNANCE-LEDGER.md。
- F4 跨平台构建分发:见 [OPS-MAN-036] Windows支持方案、[OPS-MAN-042] 发布手册。
每次收尾都要更新的两件事(提醒 AI)#
1) 重要治理写一行到 .ai/GOVERNANCE-LEDGER.md(接线点/开关/默认/E2E 证据)。
2) 新文档回写对应目录 00_INDEX 和 docs/00_INDEX_文档索引.md。