多宿主 preview 扩展
本页同步自
spec-first源仓库docs/VERSION/2026-07-05-branch-multi-host-preview.md,用于官网展示当前分支的用户可感知更新。正式 npm 发版仍以届时package.json、根CHANGELOG.md与单版本说明为准。
摘要
本次分支把 spec-first 从双宿主扩展为五宿主 preview 交付面:在保持 Claude Code 与 Codex 既有行为兼容的前提下,新增 Kiro、Qoder 两个 opt-in preview host,以及更保守的 Cursor generated_runtime_preview。
同期完成跨宿主 spec-* 用户入口归一化、新增 spec-rule-miner 规则挖掘 skill、Windows PowerShell 兼容性修复、Runtime Setup provider 生态迁移与 PATH 修复,并把 using-spec-first bootstrap 收敛为最小入口锚点。
Kiro、Qoder、Cursor 都是显式 opt-in preview,不进入 init -y 默认宿主集。Cursor 的 preview 边界最窄,仅证明 generated runtime 生成,尚未证明 Cursor 本地 skill loader 与完整 user journey。
关键更新
五宿主 preview 投递
新增 Kiro、Qoder、Cursor 三个宿主 adapter,并接入 init、doctor、clean、help、plugin governance、runtime catalog、gitignore/context/source-runtime 边界和 spec-runtime-setup。
| 宿主 | 当前状态 | 生成内容 | 主要边界 |
|---|---|---|---|
| Claude Code | 既有支持 | .claude/ runtime assets | 行为兼容,不作为本次 preview 风险来源 |
| Codex | 既有支持 | .codex/ 与 .agents/skills/ runtime assets | 行为兼容,不作为本次 preview 风险来源 |
| Kiro | opt-in preview | .kiro/skills/、.kiro/agents/、.kiro/spec-first/state.json | 不生成 .kiro/commands/spec、.kiro/hooks 或 .kiro/steering;IDE 实机 smoke 仍为 open item |
| Qoder | opt-in preview | .qoder/commands/spec-*.md、.qoder/skills/、.qoder/agents/、.qoder/spec-first/state.json | agents 默认只读工具;本机缺少 qodercli / qoder,保持 degraded preview |
| Cursor | generated_runtime_preview | .cursor/skills/**、.cursor/spec-first/**、项目级 .cursor/mcp.json | 仅证明 runtime 生成,不声明完整宿主支持 |
共享安全纪律:全宿主 MCP install/configure/uninstall 走单一 CLI 写路径并 fail-closed,generated setup surface 注入 canonical MCP_SETUP_HOST host pin。doctor 裸自动探测只认 spec-first managed sentinel,不因宿主原生 artifact 误判。
spec-* 用户入口归一化
跨 Claude Code、Codex、Cursor、Kiro、Qoder 统一使用 spec-* workflow 入口。旧的 /spec:* 与 $spec-* 只作为 legacy normalization 语境,不再作为当前产品面的主要表达。
同步修复命令 prune 与路径 rewrite 边界,避免误删非受管命令,也避免 Cursor/Kiro/Qoder generated runtime context 中出现混合路径表述。
新增 spec-rule-miner
新增 standalone skill spec-rule-miner,用于从目标仓库证据中挖掘 AI 编码规则。
- 默认写入
docs/ai/project-rules.md,入口文档只保留 repo-relative pointer。 - 多包/monorepo 先识别包级边界,避免把抽样主模式写成全仓绝对事实。
- 支持 legacy marker 迁移,并纳入五宿主 standalone delivery 与 contract test。
Windows 与 provider setup 修复
Windows 兼容性完成 Phase 1 与低风险 Phase 2:修复 PowerShell 5.1 写法、frontmatter UTF-8 验证、临时输出目录、.gitattributes 和凭据 redaction。
Runtime Setup provider 迁移到当前生态版本:CodeGraph 更新到 @colbymchenry/codegraph@1.2.0,Graphify 迁移到 npm scoped 包 @sentropic/graphify@0.17.1。同时修复 Graphify PATH symlink 抢占和 macOS login shell PATH 注入导致的 provider 判断漂移。
Bootstrap 收敛
CLAUDE.md / AGENTS.md 的 bootstrap 从完整入口菜单收敛为最小入口锚点,并把边界细节回指 using-spec-first 与 context governance。非 Claude 宿主共享 AGENTS.md 统一为 spec-* 口径,避免多宿主 init 末位写入者覆盖 Codex startup/dispatch 边界。
兼容性与升级
- Claude Code 与 Codex 既有行为保持兼容,可从
1.12.0平滑升级。 - Kiro、Qoder、Cursor 需要显式
--kiro、--qoder、--cursoropt-in,不进入init -y默认宿主集。 - Cursor 是
generated_runtime_preview,不要据此当作完整宿主支持。 - source 变更后修复 runtime drift 仍然走
spec-first init,不要手改.claude/、.codex/、.agents/skills/、.cursor/、.kiro/、.qoder/generated mirror。
验证边界
本分支说明依据源仓库分支 diff、根 CHANGELOG.md、package.json、README、adapter source 与相关测试核对。源码提交的具体验证命令记录在对应 CHANGELOG.md、docs/plans/** 和 docs/validation/** 中。
Kiro IDE smoke、Qoder CLI、Cursor loader / user journey 仍保持 degraded 或 open,不在本页声明为 confirmed。
