跳到主要内容

SpecWeave CLI 3.1.0免费且开源

工作比会话活得更久。

你的智能体写代码。SpecWeave 把“完成”的含义、证明和你停下的位置,保存为 git 里的普通文件,Claude Code、Codex 或任何其他智能体都能接着做同一个任务。

npm i -g specweave

版本 3.1.0,发布于 17 October 2026。免费且开源。

$ specweave pickup
Picked up the handoff from claude@cloud (out of tokens): applied 7 uncommitted files.
SpecWeave pickup · you are codex@laptop
Increment 0001-resumable-checkout "Resumable checkout" (active) · tasks 1/2 done
Next: T-02 Restore the draft on return
  AC-01: Returning within 24 hours restores the cart and shipping choice
  AC-02: A paid order is never restored
  Files: src/restore.js | Test: npm test
Branch: main · in sync with origin/main · 3 uncommitted files
Last handoff: claude@cloud: out of tokens · next: finish restore on return
Notes:
- claude@cloud: Payment thread: drafts must never store card data
Claude Code 交接后,以 Codex 身份运行的第二个克隆的真实输出。

从规划到关闭,六条命令

每一步都会留下文件。没有什么靠勾选框就能关闭:测试会运行,输出会保存,验证通过之前增量始终保持打开。

  1. 01 规划增量

    $ specweave create-increment "Resumable checkout"

    智能体会填写问题、范围、编号的验收标准、方案和任务。动手写之前,sw-increment 只询问需要你拍板的决定,一次一个并附推荐答案:默认最多五个,访谈深度由 planning.deepInterview 设定。

    spec.md每个任务都写明它的验收标准、涉及的文件和测试。

  2. 02 认领任务

    $ specweave task claim T-02

    认领记录写入台账,所以第二个智能体再申请同一个任务会被拒绝。超过两小时的认领视为过期,可以被接管。specweave task next 会打印下一个任务及其验收标准的文字。

    ledger.jsonl只追加:认领、完成、释放、跳过和阻塞事件。

  3. 03 证明已完成

    $ specweave task done T-02 --run "npm test"

    由 CLI 亲自运行测试。只有退出码 0 才会把任务记为完成,并以提交和输出末尾作为证据。失败的运行不会留下任何记录。

    reports/task-T-02.txt完整的命令输出,含退出码和时间。

  4. 04 验证增量

    $ specweave verify

    运行你的测试、lint 和构建命令(来自 testing.commands,或从 package.json、Cargo、pytest、Go 中自动识别),并检查每一条验收标准。

    reports/verify.json只有所有命令和验收标准都通过,ok 才为 true。

  5. 05 交给另一个模型评审

    $ specweave review

    把差异交给与编写者不同模型家族的评审者:Codex 评审 Claude 的代码,Claude 评审 OpenAI 的代码。退出码 0 表示可以发布,退出码 3 表示先修复。--brief 会打印可粘贴到任何工具的评审简报。3.1.0 新增;见 用另一个模型评审。

    reports/review-codex.md评审结论和判定,以评审者命名。

  6. 06 关闭

    $ specweave complete 0001

    reports/verify.json 缺失或未通过时拒绝关闭。想跳过它需要加 --reason,原因会随增量一并保存。

    metadata.json已完成,或在没有证明的情况下关闭的原因。

命令、参数和文件名与 specweave 3.1.0 一致。增量、任务和评审者是本页通篇使用的示例。

token 用完不是终点

在要离开的工具里说“交接”,在下一个工具里说“从我停下的地方接着做”。Codex 可以在同一台或另一台机器上继续 Claude Code 开始的工作。工具之间不复制任何东西:specweave handoff 会把快照推送到 specweave-handoff 和 wip/<branch>,并添加一条台账事件。

  • handoff --all写入一份索引,涵盖每个活跃增量和每个有本地独有工作的嵌套仓库。
  • pickup --list列出待处理的交接,最新的在前,不做任何更改。
  • pickup <id 或标题>有多个等待时,选取指定的一个。
  • handoff --no-push把交接保留在本机,不推送到远程。
交接与接手详解

离开:Claude Code,身份为 claude@cloud

$ specweave handoff --reason "out of tokens"
Handed off 0001-resumable-checkout (released T-02, pushed your uncommitted edits).
To continue in any tool, machine or account, say "pick up" there (or run `specweave pickup`).
Details: .specweave/increments/0001-resumable-checkout/handoff.md

推送到远程 specweave-handoff 和 wip/<branch> 的快照,加上台账中的一条交接事件

到达:Codex,身份为 codex@laptop

$ specweave pickup
Picked up the handoff from claude@cloud (out of tokens): applied 7 uncommitted files.
SpecWeave pickup · you are codex@laptop
Increment 0001-resumable-checkout "Resumable checkout" (active) · tasks 1/2 done
Next: T-02 Restore the draft on return

接手部分是以 Codex 身份运行的第二个克隆的真实输出。交接部分是同一次运行中 CLI 的原始消息。

用量上限,在触达前就处理好

specweave auto-handoff on 为 Claude Code、Codex 和 Grok Build 添加钩子。每个钩子都会保存本地检查点,任一用量窗口达到 95% 时,由模式决定接下来怎么做(Grok 不报告百分比,所以它的钩子在某一轮触达速率限制时才起作用)。

SpecWithCode 用量面板:Codex 每周剩余 10%,Claude 会话剩余 2%,每周剩余 54%,每周 Fable 剩余 84%,每项都附带重置时间
真实截图 · SpecWithCode 用量面板,钩子监控的窗口
  • suggest默认
    触达阈值时
    只提醒你一次交接已准备好,然后继续工作。
    适用于
    默认模式。由你决定何时切换。
  • enforce
    触达阈值时
    运行 specweave handoff 并停止会话。
    适用于
    无人值守的运行,需要在任务边界干净地停下。
  • checkpoint
    触达阈值时
    只保存本地检查点,从不交接。
    适用于
    有额度补充或代理、在上限之后仍可继续的套餐。
  • --at 90调整阈值;默认是 95。
  • --wait-under 30当所有已满窗口都在这么多分钟内重置时,什么也不做;默认是 30。
  • autocompact on在 400K token 时压缩 Claude Code,而不是接近一百万,让后面的轮次保持精简。

在 SpecWithCode 中运行智能体?请一台机器对应一个提供商订阅:让每台机器长期只登录每个提供商的一个账号,需要更多额度时添加机器,而不是手动切换订阅。

自动交接指南

默认七个技能,需要时再加四个

技能是智能体按需加载的简短说明。自 3.1.0 起,可选技能会在你的项目需要时自动开启。specweave skills list 显示每个技能开启的原因,enable 或 disable 用来更改。

每个项目都有

sw-increment
把增量规划成一份 spec.md,并先询问关键决策。
sw-grill-me
分轮访谈你,直到计划中的每个决策都敲定。将 planning.deepInterview 设为 deep 时,每个新增量都会运行它。
sw-do
逐个任务推进增量:认领、在其文件范围内实现、测试、提交、附证据标记完成。可单独、无人值守或并行运行。
sw-auto
无人值守地运行增量直到所有任务完成,然后验证并关闭。
sw-review
由全新上下文或另一个模型家族进行对抗式评审。每条发现都标注文件和行号。
sw-done
关闭增量:任务完成、验证通过、全新上下文评审,然后 complete。
sw-handoff
把工作交给另一个工具、账号或机器,并在那边接手。

项目需要时开启

sw-glossary
生成 GLOSSARY.md,项目共用的术语表。specweave glossary check --strict 在出现偏差时让 CI 失败。
sw-sync
把增量推送到 GitHub、Jira 或 Azure DevOps。项目有跟踪器时自动开启。
sw-project
读取并更新项目中枢。存在 .specweave/project/hub.json 时自动开启。
sw-jev
把封闭集合的决策交给 Jev。设置了 jev.enabled 时自动开启。
技能参考

一份可以检查的记录

以上全部都是你仓库里的普通文件。git 评审和访问控制保护着历史记录;这些文件并不是防篡改的审计系统。

  • spec.md

    “完成”的含义

    规划时写下,写代码前阅读。

  • ledger.jsonl

    发生了什么

    认领、附证据的完成记录、备注和交接。

  • reports/

    用什么证明

    任务日志、verify.md、verify.json 和评审报告。

  • handoff.md

    你停在了哪里

    由 specweave handoff 写入。

  • specweave note

    给下一个智能体的备注

    保存在台账中,用 pickup 查看。

  • .specweave/memory/

    比会话更长久的决策

    每条事实一个文件,在 MEMORY.md 中建立索引并提交,所有工具和账号都能看到。

  • specweave dashboard

    汇总一切的看板

    仅限本地,默认在 127.0.0.1 的 3456 端口。读取它不需要调用模型。

  • specweave report

    谁做了什么,成为一个页面

    reports/handoff-report.html 中的 HTML 时间线,涵盖工具、会话、交接和证据。

仪表板为这个示例读取的内容

仪表板为增量 0001-resumable-checkout 读取的内容
增量0001-resumable-checkout 可恢复的结账
状态进行中
任务已完成 1/2
下一个任务T-02 用户返回时恢复草稿
验收标准AC-01 24 小时内返回,会恢复购物车和配送选择。AC-02 已付款的订单绝不恢复。
文件与测试src/restore.js, npm test
最近一次交接claude@cloud 的 token 用完了。由 codex@laptop 接手。

由本页顶部展示的同一次 specweave pickup 运行生成。在你的项目中运行 specweave dashboard,查看你自己的。

与你已在用的工具相连

每一项都是可选的,设置之前保持关闭。

  • 代码导航

    $ specweave lsp refs src/restore.js restoreDraft

    通过语言服务器获取引用、定义、悬停类型和符号,让智能体不再靠 grep 乱找。specweave lsp setup 会为你仓库中的语言挑选服务器。

    LSP 指南
  • Jev

    $ specweave jev route "<prompt>"

    约 250 毫秒完成封闭集合的决策:选哪个技能或模型档位,某条 shell 命令能否安全运行,拉取的文本是否需要再看一眼。用 specweave jev setup 选择启用。

    关于 Jev
  • 项目中枢

    $ specweave project brief

    .specweave/project/hub.json 中保存共同的目标、上下文、产物和例行任务,所有工具都会读取。--harness codex 可导出简报给另一个工具。

    可移植项目指南
  • 已有仓库

    $ specweave get owner/repo

    把一个仓库克隆并注册到工作区,或用 --all 处理组织内的所有仓库。--dry-run 可预览如何接管你已有的检出。

    工作区接入指南
  • 议题跟踪器

    $ specweave sync push

    可选。团队在 GitHub Issues、Jira 或 Azure DevOps 做规划时,可把增量推送过去。

    跟踪器同步指南
全部集成

在桌面应用中运行同样的增量

SpecWithCode 的工作线程在一个分支上工作,并提交一个拉取请求,这正是增量的形态。它的清单就是增量的任务列表,它写入台账的操作就是本页上的这些命令。线程之间通过台账互留备注,而不是互相编辑对方的文件。

了解 SpecWithCode
SpecWithCode工作线程
一个 SpecWithCode 工作线程汇报结果:它运行的命令及打印的输出、无阻塞项、两个已更改的文件
工作线程汇报其结果、证据和更改的文件。SpecWithCode 1.0.21,2026 年 10 月 15 日。

先写下“完成”的含义,再自由切换工具

快速开始3.1 有哪些变化