spec-kit
← Retour au tableau · Le labo ↓
Rang : A · dépôt
Présentation du framework
Spec Kit est un toolkit open source pour construire des logiciels avec n'importe quel agent de codage IA, autour d'un processus piloté par les spécifications, prêt à l'emploi ou remplaçable par le sien. Dans ce Spec-Driven Development, les spécifications deviennent exécutables et génèrent directement des implémentations fonctionnelles, au lieu de seulement les guider. Le processus avance ainsi par raffinements en plusieurs étapes, plutôt que par une génération de code d'un seul jet à partir de prompts. Au-delà de ce cœur, des extensions y introduisent de nouvelles commandes et de nouveaux modèles. Le code de ces extensions n'est toutefois ni relu, ni audité, ni soutenu par les mainteneurs de Spec Kit. De même, une étape shell de ses workflows exécute une commande locale avec les privilèges de l'utilisateur, sans aucun bac à sable de capacités.
Ce texte a été généré le 2026-09-14 à partir de la documentation des concepteurs.
Les critères
1 - Adoption durable · Haut 139 474 étoiles ; le dépôt existe depuis 405 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 · Haut Porté par une organisation ; 308 contributeurs.
4 - Multi-outils · Haut 1 assistant pris en charge sur 14 considérés : GitHub Copilot. Le projet suit aussi la convention AGENTS.md.
5 - Évaluation tierce · Haut 23 travaux indexés citent l'entrée ; 3 d'entre eux en citent aussi une autre du classement. Les trois publications les plus récentes :
- SPEC-DRIVEN DEVELOPMENT FOR ENTERPRISE AGENTIC SOFTWARE ENGINEERING: A GOVERNANCE FRAMEWORK FOR RELIABLE AI-GENERATED SOFTWARE, 2026-09-16
- "We Permit the Use of AI, but [...]": The Landscape of AI Policies in Popular Open Source Projects, 2026-09-07
- Formalising and Implementing Grassroots Social Contracts: From Legal Text to Grassroots Platforms (Full Version), 2026-09-05
En pratique
S'installe en une commande, par un gestionnaire de paquets. 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 : A. 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, les quatre sont Haut. Le critère 5 est publié sans influencer le rang.
Prochain cran : le 2027-01-28, le rang passera à B si rien ne bouge chez lui.
Provenance
| Partie de la fiche | Produite par | Révisée le | Faits les plus anciens |
|---|---|---|---|
| Critères | Calculé | 2026-09-30 | 2026-09-29 |
| Déclaré par nous | Éditorial | 2026-09-07 | 2026-09-07 |
| Autres données relevées | Calculé | 2026-09-30 | 2026-09-29 |
| Présentation du framework | Généré | 2026-09-14 | 2026-09-09 |
| Classification | Généré | 2026-10-08 | 2026-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èle | claude-opus-5 |
| Instruction | prompt-description-framework-v2 |
| Empreinte de la matière fournie au modèle | 8890bf553998f875649e2aa21d3b9012e6b2cbf51c3ddf088dea3a663f6ecc6d |
Critère 1 - Adoption durable
Niveau : Haut, au moins 5 000 étoiles et dépôt créé depuis 12 mois ou plus.
| Donnée | Définition | Valeur | Faits au | Relevé le | Âge |
|---|---|---|---|---|---|
| Nombre d'étoiles | Comptes qui ont marqué le dépôt d'une étoile sur la forge | 139 474 | 2026-09-29 | 2026-09-30 | - |
| Date de création | Date de création du dépôt sur la forge | 2025-08-21 | 2026-09-29 | 2026-09-30 | 405 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ée | Définition | Valeur | Faits au | Relevé le | Âge |
|---|---|---|---|---|---|
| Archivé | Oui si le dépôt est archivé, en lecture seule | non | 2026-09-29 | 2026-09-30 | - |
| Dernier push | Date du dernier envoi sur n'importe quelle branche ; l'activité réelle est au moins aussi récente | 2026-09-29 | 2026-09-29 | 2026-09-30 | 1 j |
| Dernier commit humain | Date du dernier commit d'un auteur non robot sur la branche principale ; publiée à titre d'information, n'entre dans aucune règle | 2026-09-29 | 2026-09-29 | 2026-09-30 | 1 j |
| Nombre de releases | Versions publiées sur la forge | 227 | 2026-09-29 | 2026-09-30 | - |
| Dernière release | Date de la version publiée la plus récente | 2026-09-29 | 2026-09-29 | 2026-09-30 | 1 j |
Critère 3 - Gouvernance / bus factor
Niveau : Haut, propriétaire de type Organization et ≥ 15 contributeurs.
| Donnée | Définition | Valeur | Faits au | Relevé le |
|---|---|---|---|---|
| Type de propriétaire | Personne ou organisation | organisation | 2026-09-29 | 2026-09-30 |
| Nombre de contributeurs | Comptes contributeurs déclarés par la forge, pas le nombre de personnes qui tiennent le projet | 308 | 2026-09-29 | 2026-09-30 |
| Part du premier contributeur | Part des contributions du contributeur le plus actif, avec son dénominateur | au plus 19,2 % de 1 877 contributions lues : la liste était tronquée, le total réel est plus grand et la part surestimée, elle ne peut donc pas conclure Bas | 2026-09-29 | 2026-09-30 |
Critère 4 - Multi-outils
Niveau : Haut, la convention AGENTS.md fait partie des assistants atteignables.
| Donnée | Définition | Valeur | Faits au | Relevé le |
|---|---|---|---|---|
| Assistants pris en charge | Assistants de notre liste fermée que l'outil atteint ; un assistant atteint par deux voies compte une fois | 1 | 2026-09-29 | 2026-09-30 |
| Assistants considérés | Taille de la liste fermée, le dénominateur | 14 | 2026-09-29 | 2026-09-30 |
| Assistants atteignables et voies d'accès | Par assistant, ce qui l'a fait compter : un marqueur porté par le dépôt, un nom cité au README, une commande d'invocation | Convention AGENTS.md : marqueur · GitHub Copilot : nom et commande | 2026-09-29 | 2026-09-30 |
Critère 5 - Évaluation tierce
Niveau : Haut, un travail qui cite l'entrée en cite aussi une autre du classement.
| Donnée | Définition | Valeur | Faits au | Relevé le |
|---|---|---|---|---|
| Travaux qui citent l'entrée | Travaux indexés qui nomment l'adresse du dépôt, hors auto-citation par ses auteurs : leur nombre, et ce qu'ils sont | 23 | 2026-09-30 | 2026-09-30 |
Les travaux collectés : 23, 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ée | Définition | Valeur | Déclaré le |
|---|---|---|---|
| Fonctionne sans service hébergé ni clé de licence | Déclaré par nous, après lecture | oui | 2026-09-07 |
Motif de « sans service hébergé » : CLI installée par uvx, artefacts écrits dans le dépôt de l'adoptant ; aucun service du projet n'est appelé
Autres données relevées
Elles n'entrent dans aucun critère.
| Donnée | Définition | Valeur | Faits au | Relevé le |
|---|---|---|---|---|
| Licence | Licence déclarée sur la forge | MIT | 2026-09-29 | 2026-09-30 |
| Description du dépôt | La phrase d'accroche écrite par les auteurs sur la forge | Toolkit to help you get started with SDD or any other process! | 2026-09-29 | 2026-09-30 |
| Nombre de forks | Copies du dépôt créées sur la forge | 12 502 | 2026-09-29 | 2026-09-30 |
| Abonnés | Comptes qui suivent l'activité du dépôt | 712 | 2026-09-29 | 2026-09-30 |
| Service hébergé requis | Plus recherché : un README ne permet pas de distinguer un service imposé par le projet d'une clé d'API que l'adoptant choisit | Non collecté | 2026-09-29 | 2026-09-30 |
| Mode d'installation | Première famille d'installation trouvée dans le README | gestionnaire de paquets | 2026-09-29 | 2026-09-30 |
| Commande d'installation | La ligne du README où ce mode se lit, telle quelle | uv tool install specify-cli | 2026-09-29 | 2026-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.
| Champ | Valeur | Sources attendues absentes | Justification | Version lue | Définition | Déterminée le | Référence | Accord |
|---|---|---|---|---|---|---|---|---|
| Couverture | PDLC | aucune | Branche 3 de la règle. | v1.1.2 · commit f545e4c | coverage-v5 | 2026-10-08 | SDLC, sous v1.0.12 du 2026-09-25 ; dernier commit 8d3f64c du 2026-09-28 ; définition coverage-v1 | désaccord |
| Enchaînement | Workflow | aucune | Branche 2 de la règle. | v1.1.2 · commit f545e4c | sequencing-v5 | 2026-10-08 | Workflow, sous v1.0.12 du 2026-09-25 ; dernier commit 8d3f64c du 2026-09-28 ; définition sequencing-v1 | accord |
| Devenir de la spec | spec-first | aucune | Branche 5 de la règle. | v1.1.2 · commit f545e4c | spec-fate-v5 | 2026-10-08 | spec-first, sous v1.0.12 du 2026-09-25 ; dernier commit 8d3f64c du 2026-09-28 ; définition spec-fate-v1 | accord |
Les réponses que chaque règle a lues :
| Champ | Question | Réponse | Force | Cite |
|---|---|---|---|---|
| Couverture | L'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é | templates/commands/implement.md · templates/tasks-template.md · workflows/speckit/workflow.yml · scripts/bash/check-prerequisites.sh --json --require-tasks --include-tasks · /speckit-implement |
| Couverture | Cette é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é | templates/commands/implement.md · templates/commands/tasks.md · templates/spec-template.md · templates/tasks-template.md · scripts/bash/setup-tasks.sh --json · scripts/bash/check-prerequisites.sh --json --require-tasks --include-tasks |
| Couverture | Une é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 ? | oui | énoncé | extensions/assess/commands/speckit.assess.research.md · extensions/assess/README.md · extensions/assess/commands/speckit.assess.intake.md · /speckit.assess.research slug=offline-mode · specify extension add assess |
| Couverture | Une é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 ? | oui | énoncé | workflows/assess/workflow.yml · bundles/assess/README.md · extensions/assess/README.md · extensions/assess/commands/speckit.assess.decide.md · /speckit.assess.research slug=offline-mode · /speckit-assess-research slug=offline-mode |
| Enchaînement | L'entrée a-t-elle au moins deux étapes qui s'enchaînent dans une même unité de travail ? | oui | énoncé | workflows/speckit/workflow.yml · templates/commands/specify.md · templates/commands/plan.md · templates/commands/tasks.md · templates/commands/implement.md · /speckit-tasks · /speckit-converge |
| Enchaînement | L'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é | templates/commands/implement.md · templates/commands/tasks.md · templates/commands/converge.md · scripts/bash/check-prerequisites.sh · workflows/speckit/workflow.yml · scripts/bash/check-prerequisites.sh --json --require-tasks --include-tasks · scripts/bash/check-prerequisites.sh --json --require-spec --require-tasks --include-tasks · scripts/bash/setup-tasks.sh --json |
| Enchaînement | Sur 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é | templates/tasks-template.md · templates/commands/implement.md · templates/commands/tasks.md · extensions/github/commands/speckit.github.taskstoissues.md · scripts/bash/check-prerequisites.sh --json --require-tasks --include-tasks · scripts/bash/setup-tasks.sh --json |
| Enchaînement | L'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é ? | non | énoncé | templates/commands/specify.md · templates/commands/tasks.md · templates/commands/implement.md · workflows/speckit/workflow.yml · scripts/bash/check-prerequisites.sh --json --require-tasks --include-tasks · /speckit-tasks |
| Devenir de la spec | L'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é | templates/commands/implement.md · templates/tasks-template.md · workflows/speckit/workflow.yml · scripts/bash/check-prerequisites.sh --json --require-tasks --include-tasks · /speckit-implement |
| Devenir de la spec | Cette é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é | templates/commands/implement.md · templates/commands/tasks.md · templates/spec-template.md · templates/tasks-template.md · scripts/bash/setup-tasks.sh --json · scripts/bash/check-prerequisites.sh --json --require-tasks --include-tasks |
| Devenir de la spec | Le 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é | templates/commands/implement.md · templates/commands/plan.md · templates/tasks-template.md · scripts/bash/check-prerequisites.sh --json --require-tasks --include-tasks |
| Devenir de la spec | Sur 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é | templates/commands/specify.md · templates/commands/converge.md · templates/spec-template.md · mkdir -p SPECIFY_FEATURE_DIRECTORY · scripts/bash/check-prerequisites.sh --json --require-spec --require-tasks --include-tasks |
Ce que l'Analyste a lu : l'inventaire de 83 fichiers de prose, chacun par son chemin et son préambule, puis 12 pièces demandées sous prompt-pieces-v3 : templates/commands/implement.md · templates/spec-template.md · templates/commands/specify.md · extensions/assess/README.md · extensions/assess/commands/speckit.assess.research.md · extensions/assess/commands/speckit.assess.decide.md · templates/commands/converge.md · templates/commands/tasks.md · templates/tasks-template.md · workflows/speckit/workflow.yml · templates/commands/plan.md · README.md.
| Champ | Modèle | Instruction | Empreinte de la matière fournie au modèle |
|---|---|---|---|
| Couverture | claude-opus-5 | prompt-faits-v2 | b169a1e98bc576891e7b0556d6050173b42c1f291ce1141bf61f37463760ae1c |
| Enchaînement | claude-opus-5 | prompt-faits-v2 | b169a1e98bc576891e7b0556d6050173b42c1f291ce1141bf61f37463760ae1c |
| Devenir de la spec | claude-opus-5 | prompt-faits-v2 | b169a1e98bc576891e7b0556d6050173b42c1f291ce1141bf61f37463760ae1c |
Ce qui a bougé depuis le 2026-09-09
Aucun mouvement : cette entrée garde son rang et ses cinq niveaux.