メインコンテンツまでスキップ

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として動く2つ目のクローンでの実際の出力。

計画からクローズまで、6つのコマンド

どのステップもファイルを残します。チェックボックスだけではクローズしません。テストが実行され、出力が保存され、検証に合格するまでインクリメントは開いたままです。

  1. 01 インクリメントを計画する

    $ specweave create-increment "Resumable checkout"

    エージェントが、課題、スコープ、番号つきの受け入れ基準、アプローチ、タスクを書き込みます。書き始める前に、sw-incrementはあなたの判断が必要な点だけを、推奨回答つきで1つずつ尋ねます。デフォルトでは最大5問で、深さはplanning.deepInterviewで設定します。

    spec.md各タスクには、基準、ファイル、テストが明記されます。

  2. 02 タスクを担当する

    $ specweave task claim T-02

    担当宣言は台帳に記録されるため、同じタスクを別のエージェントが求めても拒否されます。2時間を過ぎた宣言は期限切れとなり、引き継げます。specweave task nextは、次のタスクを基準の本文つきで表示します。

    ledger.jsonl追記専用:claim、done、release、skip、blockのイベント。

  3. 03 完了を証明する

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

    テストはCLI自身が実行します。終了コード0のときだけタスクが完了と記録され、コミットと出力の末尾が証跡として残ります。失敗した実行は何も記録しません。

    reports/task-T-02.txtコマンドの全出力、終了コード、実行時刻。

  4. 04 インクリメントを検証する

    $ specweave verify

    testing.commandsのコマンド、またはpackage.json、Cargo、pytest、Goから検出したコマンドで、テスト、lint、ビルドを実行し、すべての受け入れ基準を確認します。

    reports/verify.jsonokがtrueになるのは、すべてのコマンドと基準が合格したときだけ。

  5. 05 別のモデルでレビューする

    $ specweave review

    差分を、書いたモデルとは別のモデルファミリーのレビュアーに渡します。ClaudeのコードはCodexが、OpenAIのコードはClaudeがレビューします。終了コード0はリリース可能、3は先に修正を意味します。--briefは、どのツールにも貼り付けられるブリーフを出力します。3.1.0で追加。別のモデルによるレビューをご覧ください。

    reports/review-codex.md所見と判定。レビュアーの名前で保存されます。

  6. 06 クローズする

    $ specweave complete 0001

    reports/verify.jsonがない、またはokでない間は拒否します。それでも閉じるには--reasonが必要で、理由はインクリメントに保存されます。

    metadata.json完了、または証明なしでクローズした理由。

コマンド、フラグ、ファイル名はspecweave 3.1.0のとおり。インクリメント、タスク、レビュアーは、このページ全体で使う例です。

トークン切れは終わりではない

離れるツールで「ハンドオフして」、次のツールで「中断したところから再開して」と伝えるだけ。Claude Codeが始めた作業を、同じマシンでも別のマシンでも、Codexが続けられます。ツール間でコピーするものはありません。specweave handoffがスナップショットをspecweave-handoffとwip/<branch>にプッシュし、台帳にイベントを追加します。

  • handoff --allアクティブなすべてのインクリメントと、ローカルだけの作業が残るすべてのネストしたリポジトリの索引を1つ書き出します。
  • pickup --list保留中のハンドオフを新しい順に表示します。何も変更しません。
  • pickup <idまたはタイトル>複数が待機しているとき、特定の1つを指定します。
  • 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

pickupの行は、Codexとして動く2つ目のクローンでの実際の出力です。handoffの行は、同じ実行で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 onClaude Codeを100万トークン近くではなく40万トークンで圧縮するので、後半のターンが小さく保たれます。

SpecWithCodeでエージェントを動かしていますか?プロバイダーのサブスクリプションごとに1台のマシンを使いましょう。各マシンはプロバイダーごとに1アカウントでサインインしたままにし、容量が必要なときは手動でサブスクリプションを切り替えず、マシンを追加します。

自動ハンドオフガイド

標準で7つのスキル、必要に応じて4つ

スキルとは、エージェントが必要なときに読み込む短い指示です。3.1.0以降、オプションのスキルはプロジェクトが必要とするときに自動でオンになります。specweave skills listで各スキルがオンの理由を確認でき、enableまたはdisableで変更できます。

すべてのプロジェクトで

sw-increment
インクリメントを1つのspec.mdとして計画し、重要な判断を先に尋ねます。
sw-grill-me
計画のすべての判断が固まるまで、何ラウンドかに分けてあなたに質問します。planning.deepInterviewをdeepにすると、新しいインクリメントごとに実行されます。
sw-do
インクリメントをタスクごとに進めます。担当、ファイル内で実装、テスト、コミット、証跡つきで完了。単独でも、無人でも、並列レーンでも。
sw-auto
すべてのタスクが完了するまでインクリメントを無人で実行し、検証してクローズします。
sw-review
新しいコンテキスト、または別のモデルファミリーによる敵対的レビュー。すべての所見がファイルと行を示します。
sw-done
インクリメントをクローズします。タスク完了、検証グリーン、新しいコンテキストでのレビュー、そして完了。
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/

    セッションを越えて残る判断

    1つの事実につき1ファイル。MEMORY.mdに索引化されてコミットされるため、すべてのツールとアカウントから見えます。

  • specweave dashboard

    すべてをまとめたボード

    デフォルトでは127.0.0.1のポート3456、ローカルのみ。読み取りにモデル呼び出しは不要です。

  • specweave report

    誰が何をしたかをページで

    ツール、セッション、ハンドオフ、証跡のHTMLタイムライン(reports/handoff-report.html)。

この例でダッシュボードが読み取る内容

インクリメント0001-resumable-checkoutについてダッシュボードが読み取る内容
インクリメント0001-resumable-checkout 再開できるチェックアウト
状態進行中
タスク2件中1件完了
次のタスクT-02 復帰時に下書きを復元
基準AC-01 24時間以内に戻ると、カートと配送の選択が復元される。AC-02 支払い済みの注文は復元されない。
ファイルとテストsrc/restore.js, npm test
直近のハンドオフclaude@cloudがトークン切れ。codex@laptopが引き継ぎ。

このページ冒頭と同じspecweave pickupの実行から作成しています。ご自身のプロジェクトでspecweave dashboardを実行すると、あなたの分が表示されます。

いつものツールと連携

どれも任意で、設定するまでオフのままです。

  • コードナビゲーション

    $ specweave lsp refs src/restore.js restoreDraft

    言語サーバーから参照、定義、ホバー時の型、シンボルを取得できるので、エージェントはgrepに頼らずに済みます。specweave lsp setupが、リポジトリの言語に合うサーバーを選びます。

    LSPガイド
  • Jev

    $ specweave jev route "<prompt>"

    選択肢が決まった判断を約250ミリ秒で返します。どのスキルやモデル階層を使うか、シェルコマンドを実行して安全か、取得したテキストに再確認が必要かなどです。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のワーカースレッドは、1つのブランチで作業して1つのプルリクエストを開きます。これはまさにインクリメントの形です。チェックリストはインクリメントのタスクリストで、台帳への書き込みはこのページのコマンドそのものです。スレッドどうしは、互いのファイルを編集せず、台帳にメモを残してやり取りします。

SpecWithCodeを見る
SpecWithCodeワーカースレッド
成果を報告するSpecWithCodeのワーカースレッド。実行したコマンドとその出力、ブロッカーなし、変更された2つのファイルを表示
ワーカースレッドが成果、証跡、変更したファイルを報告します。SpecWithCode 1.0.21、2026年10月15日。

完了の定義を書き留めれば、ツールは自由に乗り換えられる

クイックスタート3.1での変更点