Passer au contenu
Anti spaghettiManage AI Code
Anti spaghetti

pilot-shell

← Retour au tableau · Le labo ↓

Rang : B · dépôt

Présentation du framework

Pilot Shell est un système d'ingénierie du contexte et du harnais qui entoure les agents de programmation, et non une collection de règles et de compétences. Il coordonne l'ensemble du processus d'ingénierie autour du modèle, des revues indépendantes aux vérifications à l'exécution. Quand un cadre plus structuré est voulu, les workflows /spec, /build, /fix et /prd ajoutent des artefacts durables et des contrats de cycle de vie explicites, sans devenir des règles d'aiguillage pour les demandes ordinaires. En arrière-plan, la capture de mémoire s'exécute automatiquement pour les deux agents pris en charge. Cette prise en charge reste inégale : sur le second agent, tous les workflows sont disponibles, mais avec moins de fonctionnalités propres à la plateforme. Lors du compactage de la conversation, les mécanismes de sauvegarde et de restauration ne garantissent pas la conservation de chaque détail échangé.

Ce texte a été généré le 2026-09-14 à partir de la documentation des concepteurs.

Les critères

1 - Adoption durable · Moyen 2 080 étoiles ; le dépôt existe depuis 347 jours.

2 - Maintenance active · Haut Le projet n'est pas archivé ; ses dernières modifications datent de 1 jour avant le relevé du 2026-09-30.

3 - Gouvernance / bus factor · Moyen Porté par une personne ; 12 contributeurs.

4 - Multi-outils · Haut 2 assistants pris en charge sur 14 considérés : Claude Code, Codex CLI. Le projet suit aussi la convention AGENTS.md.

5 - Évaluation tierce · Bas Aucun travail indexé ne cite l'entrée, après exclusion de l'auto-citation.

En pratique

S'installe par un script. Fonctionne sur votre machine, sans service hébergé ni clé de licence.


Le labo : comment ces résultats sont construits

Les règles appliquées, les données lues et leurs dates, les choix humains et leurs motifs.

Dans les tables ci-dessous : Faits au est la date des faits rapportés par la source ; Relevé le, la date à laquelle la chaîne les a lus ; Âge, l'ancienneté d'une date au jour du relevé.

Le rang

Rang : B. Quatre critères influencent le rang (1, 2, 3 et 4), et le rang est le niveau du plus faible : A si les quatre sont Haut, B autrement, C si l'un est Bas. Ici, le plus faible est Moyen (critères 1 et 3). Le critère 5 est publié sans influencer le rang.

Prochain cran : le 2027-03-29, le rang passera à C si rien ne bouge chez lui.

Provenance

Partie de la ficheProduite parRévisée leFaits les plus anciens
CritèresCalculé2026-09-302026-09-29
Déclaré par nousÉditorial2026-09-072026-09-07
Autres données relevéesCalculé2026-09-302026-09-29
Présentation du frameworkGénéré2026-09-142026-09-09
ClassificationGénéré2026-10-082026-10-08

La présentation a été générée le 2026-09-14 à partir des déclarations des concepteurs dans leur documentation publique et des éléments que nous avons collectés, dont les plus anciens datent du 2026-09-09.

Modèleclaude-opus-5
Instructionprompt-description-framework-v2
Empreinte de la matière fournie au modèle5336101f6223a84bf52c2e745386da154a1ef62373ef42001ed60db141986b78

Critère 1 - Adoption durable

Niveau : Moyen, tout le reste.

DonnéeDéfinitionValeurFaits auRelevé leÂge
Nombre d'étoilesComptes qui ont marqué le dépôt d'une étoile sur la forge2 0802026-09-292026-09-30-
Date de créationDate de création du dépôt sur la forge2025-10-182026-09-292026-09-30347 j

Critère 2 - Maintenance active

Niveau : Haut, aucun signal de dérive, une release publiée, et aucune des deux fraîcheurs en défaut : push ≤ 120 j, release ≤ 6 mois.

DonnéeDéfinitionValeurFaits auRelevé leÂge
ArchivéOui si le dépôt est archivé, en lecture seulenon2026-09-292026-09-30-
Dernier pushDate du dernier envoi sur n'importe quelle branche ; l'activité réelle est au moins aussi récente2026-09-292026-09-292026-09-301 j
Dernier commit humainDate du dernier commit d'un auteur non robot sur la branche principale ; publiée à titre d'information, n'entre dans aucune règle2026-09-292026-09-292026-09-301 j
Nombre de releasesVersions publiées sur la forge2492026-09-292026-09-30-
Dernière releaseDate de la version publiée la plus récente2026-09-292026-09-292026-09-301 j

Critère 3 - Gouvernance / bus factor

Niveau : Moyen, tout le reste.

DonnéeDéfinitionValeurFaits auRelevé le
Type de propriétairePersonne ou organisationpersonne2026-09-292026-09-30
Nombre de contributeursComptes contributeurs déclarés par la forge, pas le nombre de personnes qui tiennent le projet122026-09-292026-09-30
Part du premier contributeurPart des contributions du contributeur le plus actif, avec son dénominateur63,5 % de 1 491 contributions lues2026-09-292026-09-30

Critère 4 - Multi-outils

Niveau : Haut, la convention AGENTS.md fait partie des assistants atteignables.

DonnéeDéfinitionValeurFaits auRelevé le
Assistants pris en chargeAssistants de notre liste fermée que l'outil atteint ; un assistant atteint par deux voies compte une fois22026-09-292026-09-30
Assistants considérésTaille de la liste fermée, le dénominateur142026-09-292026-09-30
Assistants atteignables et voies d'accèsPar assistant, ce qui l'a fait compter : un marqueur porté par le dépôt, un nom cité au README, une commande d'invocationConvention AGENTS.md : marqueur et nom · Claude Code : marqueur, nom et commande · Codex CLI : nom et commande2026-09-292026-09-30

Critère 5 - Évaluation tierce

Niveau : Bas, aucun travail indexé ne cite l'entrée.

DonnéeDéfinitionValeurFaits auRelevé le
Travaux qui citent l'entréeTravaux indexés qui nomment l'adresse du dépôt, hors auto-citation par ses auteurs : leur nombre, et ce qu'ils sont02026-09-302026-09-30

Les travaux collectés : zéro trouvé suite à nos recherches, après exclusion de l'auto-citation.

Déclaré par nous

Éditorial : une personne l'a écrit et en répond, l'ayant vérifié.

DonnéeDéfinitionValeurDéclaré le
Fonctionne sans service hébergé ni clé de licenceDéclaré par nous, après lectureoui2026-09-07

Motif de « sans service hébergé » : Offre commerciale adossée : clé de licence, renommé Pilot Shell (adresse actuelle https://github.com/maxritter/pilot-shell, l'ancienne restant l'identité au corpus). Le corpus le déclare néanmoins : « le cycle s'exécute en local », la licence portant sur l'outillage et non sur un service hébergé qui exécuterait le cycle

Autres données relevées

Elles n'entrent dans aucun critère.

DonnéeDéfinitionValeurFaits auRelevé le
LicenceLicence déclarée sur la forgeNon collecté : licence non identifiée par la forge2026-09-292026-09-30
Description du dépôtLa phrase d'accroche écrite par les auteurs sur la forgeProfessional context and harness engineering for Claude Code and OpenAI Codex. Build production-grade software with spec-driven development, TDD, persistent memory, quality gates, code intelligence, human oversight, and end-to-end verification.2026-09-292026-09-30
Nombre de forksCopies du dépôt créées sur la forge1792026-09-292026-09-30
AbonnésComptes qui suivent l'activité du dépôt202026-09-292026-09-30
Service hébergé requisPlus recherché : un README ne permet pas de distinguer un service imposé par le projet d'une clé d'API que l'adoptant choisitNon collecté2026-09-292026-09-30
Mode d'installationPremière famille d'installation trouvée dans le READMEscript2026-09-292026-09-30
Commande d'installationLa ligne du README où ce mode se lit, telle quellecurl -fsSL https://raw.githubusercontent.com/maxritter/pilot-shell/main/install.sh | bash2026-09-292026-09-30

Classification

Calculée par la chaîne depuis les réponses de l'Analyste model_written généré : un modèle a lu l'inventaire du matériel que l'entrée livre, a choisi les pièces qu'il voulait lire en entier et nommé, pour chaque champ, les sources attendues que l'inventaire ne portait pas, puis répondu aux questions de fait que pose la méthode de chaque champ, chaque réponse citée et pesée ; la chaîne a vérifié chaque réponse, a ramené à la force qu'admet sa question une réponse qui la dépassait, en le disant à côté d'elle, puis calculé la valeur par la règle du champ, et son qualificatif. La version lue porte le commit de l'arbre lu, par ses premiers caractères quand la version n'est pas déjà ce commit. La référence manual éditorial est la valeur que l'Éditeur a lue, sous la définition qu'elle nomme : elle mesure l'accord et ne décide de rien ici. Les questions, la règle de chaque champ, et ce que veulent dire énoncé, indice, doute, principalement et semble, se lisent au labo.

ChampValeurSources attendues absentesJustificationVersion lueDéfinitionDéterminée leRéférenceAccord
CouvertureSDLCaucuneBranche 4 de la règle.v11.0.7 · commit 7e00130coverage-v52026-10-08SDLC, sous v11.0.1 du 2026-09-08 (CHANGELOG) ; dernier commit 4d782c8 du 2026-09-18 ; définition coverage-v1accord
EnchaînementWorkflowMagasin de tâchesBranche 2 de la règle.v11.0.7 · commit 7e00130sequencing-v52026-10-08Workflow, sous v11.0.1 du 2026-09-08 (CHANGELOG) ; dernier commit 4d782c8 du 2026-09-18 ; définition sequencing-v1accord
Devenir de la specspec-firstaucuneBranche 5 de la règle.v11.0.7 · commit 7e00130spec-fate-v52026-10-08spec-first, sous v11.0.1 du 2026-09-08 (CHANGELOG) ; dernier commit 4d782c8 du 2026-09-18 ; définition spec-fate-v1accord

Les réponses que chaque règle a lues :

ChampQuestionRéponseForceCite
CouvertureL'entrée a-t-elle une étape de réalisation : une commande, un skill, un agent ou une boucle qui écrit le code de l'application à partir des artefacts de l'outil ?ouiénoncépilot/skills/spec-implement/orchestrator.md · pilot/skills/spec-implement/steps/02-tdd-loop.md · pilot/skills/spec-implement/steps/03-completion.md · pilot/skills/build/steps/04-build.md · pilot/skills/fix/steps/03-fix.md · git add <files> && git commit -m "{type}(spec): {task-name}"
CouvertureCette étape de réalisation prend-elle en entrée une spécification, directement ou par un plan ou une liste de tâches qui en dérive ?ouiénoncépilot/skills/spec-implement/steps/01-setup.md · pilot/skills/spec-implement/steps/02-tdd-loop.md · pilot/skills/spec-plan/steps/07-implementation-planning.md · pilot/skills/spec-plan/steps/09-write-plan.md · pilot/skills/spec-plan/steps/08-e2e-scenarios.md · uv run pytest tests/path/to/test.py -q
CouvertureUne étape a-t-elle pour objet la découverte au sens strict, explorer et qualifier le besoin avant de décider, et en persiste-t-elle le résultat dans un fichier qu'elle seule écrit ?nonénoncépilot/skills/prd/steps/02-research.md · pilot/skills/prd/steps/03-ideate.md · pilot/skills/prd/steps/07-write-prd.md · pilot/skills/prd/steps/06-converge.md · pilot/skills/investigate/orchestrator.md · pilot/skills/spec-plan/steps/05-exploration.md · mkdir -p docs/prd
CouvertureUne étape de découverte est-elle reliée à la chaîne : le parcours déclaré ou l'aiguillage la nomme-t-il, ou une étape en aval lit-elle son résultat ?nonénoncépilot/skills/prd/orchestrator.md · pilot/skills/prd/steps/02-research.md · pilot/skills/prd/steps/03-ideate.md · pilot/skills/prd/steps/08-handoff.md · pilot/skills/spec/steps/01-parse-route.md · pilot/rules/task-and-workflow.md · Skill(skill='spec-plan', args='<task_description> --worktree=yes|no|--new-branch [--lane <id>]')
EnchaînementL'entrée a-t-elle au moins deux étapes qui s'enchaînent dans une même unité de travail ?ouiénoncépilot/skills/spec/steps/02-status-dispatch.md · pilot/skills/spec/steps/01-parse-route.md · pilot/skills/spec-plan/orchestrator.md · pilot/skills/spec-implement/orchestrator.md · pilot/skills/spec-verify/orchestrator.md · ~/.pilot/bin/pilot register-plan "<plan_path>" "<status>" $LANE_FLAG 2>/dev/null || true
EnchaînementL'outil fixe-t-il un parcours unique de phases, avec un prérequis d'artefact entre elles, sur le chemin de toute unité de travail ?ouiénoncépilot/skills/spec/steps/02-status-dispatch.md · pilot/skills/spec/steps/01-parse-route.md · pilot/skills/spec-plan/orchestrator.md · pilot/skills/spec-plan/steps/12-approval.md · pilot/skills/spec-implement/orchestrator.md · pilot/skills/spec-implement/steps/01-setup.md · pilot/skills/spec-verify/orchestrator.md · pilot/skills/spec-bugfix-plan/orchestrator.md · uv run --no-project --python python3 python "$HOME/.pilot/hooks/spec_plan_validator.py" · Skill(skill='spec-plan', args='<task_description> --worktree=yes|no|--new-branch [--lane <id>]')
EnchaînementSur le chemin de toute unité de travail, l'exécutant choisit-il l'élément suivant dans un même magasin persistant d'éléments de travail, dotés d'un état et de dépendances, dont il calcule les éléments prêts et qu'il réclame avant de les travailler ?nonénoncépilot/skills/spec-implement/steps/01-setup.md · pilot/skills/spec-implement/steps/02-tdd-loop.md · pilot/skills/spec-plan/steps/09-write-plan.md · pilot/skills/spec-plan/steps/07-implementation-planning.md · pilot/skills/build/steps/04-build.md · TaskUpdate(taskId="...", addBlockedBy=["..."]) · TaskUpdate(taskId, status="in_progress")
EnchaînementL'entrée offre-t-elle un ensemble d'éléments décrits, skills ou agents, parmi lesquels l'étape suivante se choisit sur le moment, avec un mécanisme de sélection et sans parcours imposé ?ouiénoncépilot/rules/task-and-workflow.md · pilot/skills/spec/orchestrator.md · pilot/skills/build/orchestrator.md · pilot/skills/fix/orchestrator.md · pilot/skills/prd/orchestrator.md · pilot/skills/investigate/orchestrator.md · pilot/skills/cleanup/orchestrator.md · pilot/skills/create-skill/orchestrator.md · pilot/skills/benchmark/orchestrator.md · pilot/skills/prd/steps/08-handoff.md · Skill('spec')
Devenir de la specL'entrée a-t-elle une étape de réalisation : une commande, un skill, un agent ou une boucle qui écrit le code de l'application à partir des artefacts de l'outil ?ouiénoncépilot/skills/spec-implement/orchestrator.md · pilot/skills/spec-implement/steps/02-tdd-loop.md · pilot/skills/spec-implement/steps/03-completion.md · pilot/skills/build/steps/04-build.md · pilot/skills/fix/steps/03-fix.md · git add <files> && git commit -m "{type}(spec): {task-name}"
Devenir de la specCette étape de réalisation prend-elle en entrée une spécification, directement ou par un plan ou une liste de tâches qui en dérive ?ouiénoncépilot/skills/spec-implement/steps/01-setup.md · pilot/skills/spec-implement/steps/02-tdd-loop.md · pilot/skills/spec-plan/steps/07-implementation-planning.md · pilot/skills/spec-plan/steps/09-write-plan.md · pilot/skills/spec-plan/steps/08-e2e-scenarios.md · uv run pytest tests/path/to/test.py -q
Devenir de la specLe lot montre-t-il des fichiers de code marqués générés, à ne pas modifier, et une commande qui les régénère depuis la spécification ?nonénoncépilot/skills/create-skill/steps/03-check.md · pilot/skills/create-skill/steps/04-create.md · pilot/skills/setup-rules/scripts/sync-agent-assets.mjs · pilot/skills/spec-implement/steps/02-tdd-loop.md · pilot/skills/spec-plan/steps/09-write-plan.md · node scripts/sync-agent-assets.mjs --check
Devenir de la specSur une demande nouvelle portant sur une fonctionnalité déjà livrée, une étape dit-elle reprendre la spécification existante, ou en ouvrir une autre ?en ouvre une autreénoncépilot/skills/spec/steps/02-status-dispatch.md · pilot/skills/spec/steps/01-parse-route.md · pilot/skills/spec-plan/steps/02-create-header.md · pilot/skills/spec-plan/steps/09-write-plan.md · pilot/skills/spec-plan/steps/01-special-cases.md · pilot/skills/spec-verify/steps/11-update-status.md · pilot/agents/spec-native-plan.md · ~/.pilot/bin/pilot register-plan "<plan_path>" "<status>" $LANE_FLAG 2>/dev/null || true

Ce que l'Analyste a lu : l'inventaire de 144 fichiers de prose, chacun par son chemin et son préambule, puis 12 pièces demandées sous prompt-pieces-v3 : pilot/skills/spec-plan/steps/09-write-plan.md · pilot/skills/spec-plan/steps/07-implementation-planning.md · pilot/skills/spec/steps/02-status-dispatch.md · pilot/skills/spec-implement/steps/02-tdd-loop.md · pilot/skills/spec-plan/steps/01-special-cases.md · pilot/rules/task-and-workflow.md · pilot/skills/prd/steps/07-write-prd.md · pilot/skills/prd/steps/02-research.md · pilot/skills/prd/steps/03-ideate.md · pilot/skills/spec/steps/01-parse-route.md · pilot/skills/prd/orchestrator.md · pilot/skills/spec-implement/steps/01-setup.md.

ChampModèleInstructionEmpreinte de la matière fournie au modèle
Couvertureclaude-opus-5prompt-faits-v29f621923cc89dd18f558527bf7c5bc0bed30a0319dc64bd794c9369278a1945e
Enchaînementclaude-opus-5prompt-faits-v29f621923cc89dd18f558527bf7c5bc0bed30a0319dc64bd794c9369278a1945e
Devenir de la specclaude-opus-5prompt-faits-v29f621923cc89dd18f558527bf7c5bc0bed30a0319dc64bd794c9369278a1945e

Ce qui a bougé depuis le 2026-09-09

Aucun mouvement : cette entrée garde son rang et ses cinq niveaux.