Aller au contenu principal

SpecWeave CLI 3.1.0Gratuit et open source

Le travail survit à la session.

Votre agent écrit le code. SpecWeave garde ce que signifie terminé, ce qui l’a prouvé et où vous vous êtes arrêté, sous forme de simples fichiers dans git, pour que Claude Code, Codex ou tout autre agent continue la même tâche.

npm i -g specweave

Version 3.1.0, publiée le 17 October 2026. Gratuite et open source.

$ 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
Sortie réelle d’un second clone exécuté comme Codex, après le transfert de Claude Code.

Six commandes du plan à la clôture

Chaque étape laisse un fichier. Rien ne se clôt sur une case cochée : le test s’exécute, sa sortie est stockée, et l’incrément reste ouvert tant que la vérification n’a pas réussi.

  1. 01 Planifier l’incrément

    $ specweave create-increment "Resumable checkout"

    L’agent remplit Problem, Scope, des critères d’acceptation numérotés, Approach et Tasks. Avant d’écrire, sw-increment ne pose que les décisions qui vous reviennent, une à la fois avec une réponse recommandée : cinq au maximum par défaut, et planning.deepInterview règle la profondeur.

    spec.mdChaque tâche nomme ses critères, ses fichiers et son test.

  2. 02 Prendre une tâche

    $ specweave task claim T-02

    La prise est inscrite dans le registre : un second agent qui demande la même tâche est refusé. Une prise de plus de deux heures est périmée et peut être reprise. specweave task next affiche la tâche suivante avec le texte de ses critères.

    ledger.jsonlEn ajout seul : événements claim, done, release, skip et block.

  3. 03 Prouver que c’est fini

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

    La CLI exécute elle-même le test. Seul le code de sortie 0 enregistre la tâche comme terminée, avec le commit et la fin de la sortie comme preuve. Une exécution en échec n’enregistre rien.

    reports/task-T-02.txtLa sortie complète de la commande, avec son code de sortie et son heure.

  4. 04 Vérifier l’incrément

    $ specweave verify

    Exécute vos commandes de test, de lint et de build, tirées de testing.commands ou détectées depuis package.json, Cargo, pytest ou Go, et vérifie chaque critère d’acceptation.

    reports/verify.jsonok vaut true seulement si chaque commande et chaque critère passent.

  5. 05 Relire avec l’autre modèle

    $ specweave review

    Confie le diff à un relecteur d’une autre famille de modèles que celui qui l’a écrit : Codex relit le code de Claude, Claude relit celui d’OpenAI. Le code 0 signifie qu’on peut livrer, le code 3 qu’il faut corriger d’abord. --brief affiche le brief à coller dans n’importe quel outil. Nouveau dans 3.1.0 ; voir Relire avec un autre modèle.

    reports/review-codex.mdLes constats et le verdict, nommés d’après le relecteur.

  6. 06 Le clôturer

    $ specweave complete 0001

    Refuse tant que reports/verify.json est absent ou pas ok. Clôturer sans lui demande --reason, et la raison est conservée avec l’incrément.

    metadata.jsonTerminé, ou la raison pour laquelle il a été clôturé sans preuve.

Commandes, options et noms de fichiers comme dans specweave 3.1.0. L’incrément, la tâche et le relecteur sont l’exemple utilisé sur toute cette page.

Plus de tokens, ce n’est pas la fin

Dites « hand off » dans l’outil que vous quittez et « pick up where I left off » dans le suivant. Codex peut continuer ce que Claude Code a commencé, sur la même machine ou une autre. Rien n’est copié entre les outils : specweave handoff pousse un instantané vers specweave-handoff et wip/<branch> et ajoute un événement au registre.

  • handoff --allÉcrit un index de chaque incrément actif et de chaque dépôt imbriqué ayant du travail uniquement local.
  • pickup --listAffiche les transferts en attente, du plus récent au plus ancien, sans rien modifier.
  • pickup <id ou titre>Prend un transfert précis quand plusieurs attendent.
  • handoff --no-pushGarde le transfert sur cette machine au lieu de le pousser vers votre remote.
Transfert et reprise en détail

Départ : Claude Code, en tant que 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

Un instantané poussé vers specweave-handoff et wip/<branch> sur votre remote, plus un événement de transfert dans le registre

Arrivée : Codex, en tant que 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

Les lignes de reprise sont la sortie réelle d’un second clone exécuté comme Codex. Les lignes de transfert sont le message exact de la CLI pour la même exécution.

Les limites d’utilisation, gérées avant qu’elles ne frappent

specweave auto-handoff on ajoute des hooks à Claude Code, Codex et Grok Build. Chaque hook enregistre un point de contrôle local, et à 95 % de n’importe quelle fenêtre d’usage, le mode décide de la suite (Grok n’indique aucun pourcentage : son hook agit quand un tour atteint sa limite de débit).

Panneau d’usage de SpecWithCode : Codex hebdomadaire 10 % restant, Claude session 2 % restant, hebdomadaire 54 % restant et hebdomadaire Fable 84 % restant, chacun avec son heure de réinitialisation
Capture réelle · panneau d’usage de SpecWithCode, les fenêtres qu’un hook surveille
  • suggestPar défaut
    Au seuil
    Vous prévient une fois qu’un transfert est prêt et continue de travailler.
    À utiliser pour
    Le mode par défaut. Vous décidez quand basculer.
  • enforce
    Au seuil
    Exécute specweave handoff et arrête la session.
    À utiliser pour
    Les exécutions sans surveillance qui doivent s’arrêter proprement à la frontière d’une tâche.
  • checkpoint
    Au seuil
    Enregistre seulement des points de contrôle locaux et ne transfère jamais.
    À utiliser pour
    Les forfaits où des crédits ou un proxy permettent de continuer au-delà de la limite.
  • --at 90Déplace le seuil ; la valeur par défaut est 95.
  • --wait-under 30Ne fait rien quand chaque fenêtre pleine se réinitialise dans ce nombre de minutes ; la valeur par défaut est 30.
  • autocompact onCompacte Claude Code à 400K tokens au lieu de près d’un million, pour que les derniers tours restent légers.

Vous lancez des agents dans SpecWithCode ? Utilisez une machine par abonnement de fournisseur : gardez chaque machine connectée définitivement à un seul compte par fournisseur, et ajoutez une machine quand il vous faut plus de capacité plutôt que de changer d’abonnement à la main.

Guide du transfert automatique

Sept skills par défaut, quatre au besoin

Les skills sont de courtes instructions que votre agent charge à la demande. Depuis 3.1.0, les optionnels s’activent quand votre projet l’exige. specweave skills list montre pourquoi chacun est actif, et enable ou disable le modifie.

Dans chaque projet

sw-increment
Planifie l’incrément dans un seul spec.md et pose d’abord les décisions critiques.
sw-grill-me
Vous interroge par tours jusqu’à ce que chaque décision d’un plan soit tranchée. Avec planning.deepInterview réglé sur deep, chaque nouvel incrément l’exécute.
sw-do
Traite l’incrément tâche par tâche : prise, implémentation dans ses fichiers, test, commit, terminé avec preuve. Seul, sans surveillance ou en voies parallèles.
sw-auto
Exécute un incrément sans surveillance jusqu’à ce que chaque tâche soit terminée, puis le vérifie et le clôture.
sw-review
Une relecture contradictoire par un contexte neuf ou une autre famille de modèles. Chaque constat cite un fichier et une ligne.
sw-done
Clôture l’incrément : tâches terminées, verify au vert, relecture en contexte neuf, puis complete.
sw-handoff
Confie le travail à un autre outil, compte ou machine, et le reprend là-bas.

Quand le projet l’exige

sw-glossary
Construit GLOSSARY.md, le vocabulaire commun du projet. specweave glossary check --strict fait échouer la CI en cas de dérive.
sw-sync
Pousse les incréments vers GitHub, Jira ou Azure DevOps. Actif quand le projet a un outil de tickets.
sw-project
Lit et met à jour le hub du projet. Actif quand .specweave/project/hub.json existe.
sw-jev
Confie les décisions à choix fermé à Jev. Actif quand jev.enabled est défini.
Référence des skills

Une trace que vous pouvez inspecter

Tout ce qui précède, ce sont de simples fichiers dans votre dépôt. La relecture git et les contrôles d’accès protègent l’historique ; ces fichiers ne forment pas un système d’audit infalsifiable.

  • spec.md

    Ce que signifie terminé

    Écrit à la planification et lu avant le code.

  • ledger.jsonl

    Ce qui s’est passé

    Prises, achèvements avec preuves, notes et transferts.

  • reports/

    Ce qui l’a prouvé

    Journaux de tâches, verify.md, verify.json et rapports de relecture.

  • handoff.md

    Où vous vous êtes arrêté

    Écrit par specweave handoff.

  • specweave note

    Notes pour le prochain agent

    Stockées dans le registre, et pickup les affiche.

  • .specweave/memory/

    Des décisions qui survivent à la session

    Un fichier par fait, indexé dans MEMORY.md et commité, pour que chaque outil et chaque compte le voie.

  • specweave dashboard

    Un tableau de tout cela

    Local uniquement, sur 127.0.0.1 port 3456 par défaut. Le lire n’appelle aucun modèle.

  • specweave report

    Qui a fait quoi, en une page

    Une chronologie HTML des outils, sessions, transferts et preuves dans reports/handoff-report.html.

Ce que le tableau de bord lit pour l’exemple

Ce que le tableau de bord lit pour l’incrément 0001-resumable-checkout
Incrément0001-resumable-checkout Paiement reprenable
ÉtatActif
Tâches1 sur 2 terminées
Tâche suivanteT-02 Restaurer le brouillon au retour
CritèresAC-01 Un retour dans les 24 heures restaure le panier et le choix de livraison. AC-02 Une commande payée n’est jamais restaurée.
Fichiers et testsrc/restore.js, npm test
Dernier transfertclaude@cloud, à court de tokens. Repris par codex@laptop.

Construit à partir de la même exécution de specweave pickup que celle montrée en haut de cette page. Lancez specweave dashboard dans votre projet pour voir le vôtre.

Relié aux outils que vous utilisez déjà

Chacun est facultatif et reste désactivé tant que vous ne le configurez pas.

  • Navigation dans le code

    $ specweave lsp refs src/restore.js restoreDraft

    Références, définitions, types au survol et symboles issus des serveurs de langage, pour que les agents arrêtent de grepper. specweave lsp setup choisit les serveurs pour les langages de votre dépôt.

    Guide LSP
  • Jev

    $ specweave jev route "<prompt>"

    Des décisions à choix fermé en environ 250 ms : quel skill ou quel niveau de modèle, si une commande shell peut être lancée sans risque, si un texte récupéré mérite un second regard. À activer avec specweave jev setup.

    À propos de Jev
  • Hub du projet

    $ specweave project brief

    Un objectif, un contexte, des artefacts et des routines partagés dans .specweave/project/hub.json, lus par chaque outil. --harness codex exporte le brief pour un autre outil.

    Guide des projets portables
  • Dépôts existants

    $ specweave get owner/repo

    Clone et enregistre un dépôt dans l’espace de travail, ou tous les dépôts d’une organisation avec --all. --dry-run prévisualise l’adoption d’un checkout que vous avez déjà.

    Guide d’adoption de l’espace de travail
  • Outils de tickets

    $ specweave sync push

    Facultatif. Poussez un incrément vers GitHub Issues, Jira ou Azure DevOps quand votre équipe planifie là-bas.

    Guide de synchronisation des tickets
Toutes les intégrations

Lancez les mêmes incréments dans une app de bureau

Un thread worker SpecWithCode travaille sur une seule branche et ouvre une seule pull request, ce qui correspond exactement à la forme d’un incrément. Sa checklist est la liste de tâches de l’incrément, et ses écritures dans le registre sont les commandes de cette page. Les threads se laissent des notes dans le registre au lieu de modifier les fichiers des autres.

Découvrir SpecWithCode
SpecWithCodeThread worker
Un thread worker SpecWithCode rapportant son résultat, la commande exécutée avec la sortie affichée, aucun blocage et deux fichiers modifiés
Un thread worker rapporte son résultat, ses preuves et les fichiers qu’il a modifiés. SpecWithCode 1.0.21, 15 octobre 2026.

Écrivez ce que signifie terminé, puis changez d’outil librement

Démarrage rapideCe qui a changé dans la 3.1