Archcore MCP

officiel

Serveur MCP stdio local qui permet aux agents de codage IA de lire et de maintenir l'architecture structurée, les règles et les décisions directement depuis votre dépôt.

Que pouvez-vous faire avec Archcore MCP ?

  • Charger le contexte du projet — Demandez à votre assistant de récupérer les ADR, règles et spécifications pertinents pour un module avant d’apporter des modifications, via list_documents et search_documents.

  • Enregistrer les décisions comme documents durables — Faites créer par votre assistant des documents Markdown typés (ADR, règles, plans) dans .archcore/ à l’aide de create_document, en gardant le contexte versionné dans Git.

  • Lier les documents associés — Demandez à votre assistant de connecter les documents avec des relations comme implements, depends_on ou supersedes en utilisant add_relation pour construire un graphe de contexte.

  • Mettre à jour le contexte existant — Demandez à votre assistant de réviser ou supprimer les documents obsolètes dans .archcore/ via update_document et remove_document, afin de maintenir les connaissances du projet à jour.

  • Initialiser le contexte dans tout dépôt — Faites initialiser .archcore/ de zéro par votre assistant dans un espace de travail vide à l’aide de init_project, permettant un suivi du contexte immédiat.

Documentation

Archcore CLI — Contexte natif Git pour les agents de codage IA

Archcore a déménagé vers github.com/archcore-ai/archcore. Ce dépôt est archivé. La CLI vit désormais sous cli/ dans ce dépôt, à côté du plugin, et chaque version à partir de v0.10.1 est publiée sur archcore-ai/archcore/releases. Installez ou mettez à jour avec curl -fsSL https://archcore.ai/install.sh | bash sur macOS, Linux et WSL, ou irm https://archcore.ai/install.ps1 | iex sur Windows. Un binaire installé depuis ce dépôt (v0.8.7 ou antérieur) ne se met plus à jour automatiquement ; exécutez l'installateur une fois pour passer au nouveau canal. Problèmes : archcore-ai/archcore/issues.

License Go Release Platform

Archcore est une couche de contexte native Git pour les agents de codage IA.

La CLI conserve les spécifications, les décisions d'architecture, les règles, les plans et les connaissances du projet dans .archcore/, versionnés avec votre code, et fournit le contexte pertinent aux agents de codage via MCP et les hooks de session.

Elle est fournie sous forme de CLI et de serveur MCP stdio local, de sorte que tout agent de codage compatible MCP peut lire et écrire le contexte de votre projet via des outils standard. Utilisez-la pour un contexte de projet persistant dans Claude Code, Cursor, Codex CLI, GitHub Copilot, Gemini CLI, OpenCode, Roo Code et Cline.

Voyez-le en action

Ce contexte provient de .archcore/ — des documents Markdown typés versionnés dans Git, servis à tout agent via les outils MCP et les hooks de session.

archcore demo

Ce qui change

❌ Sans Archcore

Chaque session part de zéro. L'agent :

  • devine votre architecture et enfreint vos conventions
  • duplique la logique qui existe déjà
  • re-remet en cause des décisions que votre équipe a déjà prises
  • a besoin que le même contexte soit réexpliqué à chaque conversation

✅ Avec Archcore

Vos décisions, règles et conventions vivent dans Git comme contexte structuré. L'agent :

  • charge les décisions et règles applicables au début de la session
  • place le code là où votre architecture dit qu'il doit être
  • respecte les ADR, spécifications et règles déjà présents dans le dépôt
  • enregistre les nouvelles décisions comme contexte durable — révisables dans les PR, portables entre agents

L'agent arrête de deviner et commence à suivre le système.

Commencez en 60 secondes

curl -fsSL https://archcore.ai/install.sh | bash    # macOS / Linux
cd your-project && archcore init

archcore init crée .archcore/, détecte vos agents de codage et configure les hooks et MCP pour eux.

Ensuite, ouvrez votre agent et dites :

"Nous utilisons PostgreSQL pour le stockage principal. Enregistrez cette décision."

Voilà — il existe désormais un ADR structuré dans .archcore/ que chaque future session, dans n'importe quel agent, verra.

Sur Windows : irm https://archcore.ai/install.ps1 | iex. Pour WSL, go install, et la compilation depuis les sources, voir Méthodes d'installation ci-dessous ou le guide d'installation complet.

Fonctionne avec votre agent

La CLI est elle-même un serveur MCP stdio local — une surface d'intégration unique pour tout agent compatible MCP. Les hooks ajoutent le contexte de début de session là où l'agent les prend en charge.

AgentHooksMCP
Claude Codeouioui
Cursorouioui
Gemini CLIouioui
GitHub Copilotouioui
OpenCode—oui
Codex CLI—oui
Roo Code—oui
Cline—manuel

archcore init configure automatiquement les agents détectés. Pour en configurer un manuellement :

archcore mcp install --agent cursor      # write MCP config for a specific agent
archcore hooks install                   # install session-start hooks for detected agents
claude mcp add --transport stdio archcore -- archcore mcp   # or add the server manually

Comment ça fonctionne

  1. Initialisation — archcore init crée .archcore/ et installe les intégrations d'agents.
  2. Capture — les décisions, règles, plans et guides sont stockés comme documents Markdown typés avec frontmatter YAML.
  3. Réutilisation — les agents lisent, créent, mettent à jour et lient des documents via les outils MCP pendant qu'ils travaillent ; les hooks chargent le contexte au début de la session.
  4. Gardez-le dans Git — révisez les changements de contexte comme du code, faites-les évoluer dans le temps, gardez-les portables entre outils.
.archcore/
├── settings.json
├── auth/
│   ├── jwt-strategy.adr.md
│   └── auth-redesign.prd.md
├── backend/
│   └── error-wrapping.rule.md
├── incidents/
│   └── connection-pool-exhaustion.cpat.md
└── notifications/
    └── notifications-implementation.plan.md

La structure est libre — organisez par domaine, fonctionnalité ou équipe. Le type d'un document réside dans son nom de fichier (slug.type.md) : 23 types répartis sur trois couches — connaissance (ADR, règles, spécifications, guides), vision (PRD, plans, idées, pistes d'exigences) et expérience (modèles d'incidents, tâches récurrentes). Le .archcore/ de ce dépôt est un exemple fonctionnel.

Demandez à votre agent

"Avant de toucher au module d'authentification, quelles décisions et règles s'appliquent ici ?"

Charge les ADR et règles liés à ce domaine avant que l'agent ne modifie une seule ligne.

"Nous avons une convention : toujours envelopper les erreurs avec fmt.Errorf et %w. Faites-en une règle."

Crée backend/error-wrapping.rule.md avec des directives impératives, la justification et des exemples bons/mauvais.

"La semaine dernière, nous avons eu un incident d'épuisement du pool de connexions. Documentez-le pour ne pas le répéter."

Crée incidents/connection-pool-exhaustion.cpat.md avec l'analyse des causes racines et les étapes de prévention.

Comparaison

Si vous comptez sur…La lacuneCe que fait Archcore à la place
RienL'agent réapprend votre dépôt à chaque session et re-remet en cause les décisions régléesCharge les décisions, règles et conventions au début de la session — dans n'importe quel agent
Fichiers d'instructions plats (CLAUDE.md, .cursorrules)Un mur de texte qui grossit — pas de types, pas de liens, pas de cycle de vie, copié-collé par outilDocuments typés, un graphe de relations, un cycle de vie brouillon → accepté, une configuration pour chaque agent
Outils mémoire (claude-mem, Mem0)Se souviennent de ce que vous avez fait — volatil, opaque, lié au fournisseurStocke comment le système est construit et ce qui a été décidé — versionné dans Git, vous appartient
Kits méthodologiques (BMAD, Spec Kit, Agent OS)Prescrivent un processus, souvent comme un transfert ponctuelStockent les artefacts — un graphe de contexte vivant qui évolue avec la base de code
RAG / une fenêtre de contexte plus grandeRécupère ce que le code dit, pas ce qui a été décidé et pourquoiGarde les décisions et la justification explicites et sélectives — l'agent charge ce qui s'applique, pas tout

Pas pour — la mémoire de chat, une bibliothèque de prompts, ou un générateur ponctuel spécification-vers-code. Archcore est une couche de vérité de dépôt pour les agents de codage, pas un kit méthodologique.

Référence

Ce qui est inclus : 23 types de documents, 7 types de relations, 10 outils MCP, intégrations de hooks pour 4 agents et intégrations MCP pour 8.

Types de documents — 23 types répartis entre vision, connaissance et expérience

Connaissance

TypeNom completDescription
adrArchitecture Decision RecordCapture une décision technique finalisée avec contexte, alternatives et conséquences
rfcRequest for CommentsPropose un changement significatif ouvert à la révision et aux retours de l'équipe
ruleRuleNorme de codage ou de processus avec directives impératives et exemples
guideGuideInstructions étape par étape pour accomplir une tâche spécifique
docDocumentDocumentation de référence, registres et matériel descriptif
specSpecificationContrat de comportement normatif pour une frontière ou une fonctionnalité/sous-système dont d'autres dépendent
evidenceEvidenceUn matériel externe avec son localisateur, extrait et notes d'interprétation
scenarioScenarioFlux acteur-sujet et exemples Given/When/Then qui illustrent les clauses d'une spécification

Vision

TypeNom completDescription
prdProduct Requirements DocumentObjectifs, récits utilisateur, critères d'acceptation et métriques de succès
ideaIdeaCapture légère d'une idée produit ou technique pour exploration future
planPlanListe de tâches par phases avec critères d'acceptation et dépendances
rndResearchInvestigation limitée dans le temps qui répond à une question bloquant une décision
journeyJourneyParcours prévu d'un type d'utilisateur à travers le système, avant qu'une spécification couvrant cette interaction n'existe
researchResearchInvestigation de territoire avec portée, couverture, sources datées, conclusions et lacunes ouvertes

Deux pistes d'exigences supplémentaires pour les équipes qui ont besoin d'une découverte structurée ou d'une décomposition formelle :

Piste Sources (MRD → BRD → URD) — capture d'où viennent les exigences :

TypeNom completDescription
mrdMarket Requirements DocumentPaysage du marché, TAM/SAM/SOM, analyse concurrentielle et besoins du marché
brdBusiness Requirements DocumentObjectifs commerciaux, parties prenantes, ROI et règles métier
urdUser Requirements DocumentPersonas utilisateurs, parcours, exigences d'utilisabilité et critères d'acceptation

Piste ISO/IEC/IEEE 29148:2018 (BRS → StRS → SyRS → SRS) — capture comment les exigences se décomposent :

TypeNom completDescription
brsBusiness Requirements SpecificationMission, objectifs, buts et concept opérationnel métier
strsStakeholder Requirements SpecificationBesoins des parties prenantes, concept opérationnel et exigences utilisateur
syrsSystem Requirements SpecificationFonctions système, interfaces, performances et contraintes de conception
srsSoftware Requirements SpecificationFonctions logicielles, interfaces externes et spécifications comportementales détaillées

Utilisez le PRD pour la plupart des projets ; ajoutez la piste Sources pour une découverte structurée des exigences, et ISO 29148 pour une traçabilité formelle dans les systèmes réglementés ou complexes multi-équipes. Mélangez librement.

Expérience

TypeNom completDescription
task-typeTask TypeListe de contrôle et flux de travail réutilisables pour une tâche récurrente
cpatCode Change PatternAnalyse des causes racines d'un bug ou incident avec étapes de prévention

Chaque document est un fichier Markdown avec frontmatter YAML :

---
title: "Use PostgreSQL for Primary Storage"
status: draft
tags: [database, infrastructure]
---

## Context

...

Statuts valides : draft, accepted, rejected. Les tags sont optionnels et libres.

Outils MCP et relations

Outils MCP

10 outils : init_project, list_documents, get_document, search_documents, create_document, update_document, remove_document, add_relation, remove_relation, list_relations. Le serveur fonctionne également dans un dépôt vide — les agents peuvent amorcer .archcore/ eux-mêmes via init_project.

Relations

Les documents sont reliés par sept relations dirigées gérées par les outils MCP.

AxeRelationDirection
StructurelrelatedLa source est associée à la cible
StructurelimplementsLa source implémente la cible
StructurelextendsLa source s’appuie sur la cible
Structureldepends_onLa source requiert la cible
ProbantsupportsLe matériau étaye l’affirmation cible
ProbantcontradictsLe contestataire conteste l’affirmation cible
TemporelsupersedesLe document plus récent remplace le document plus ancien

Les points de terminaison sont des documents locaux existants distincts. Les relations ne modifient pas automatiquement le statut d’un document et ne résolvent pas les contradictions. Les anciennes versions de la CLI rejettent les manifestes contenant les trois nouvelles valeurs.

Une source commence comme une ligne dans l’enquête. Donnez-lui un fichier evidence lorsque plusieurs documents la réutilisent, qu’une contradiction l’implique, ou que du matériel plus récent la remplace. Le moteur stocke le localisateur et l’extrait ; il ne récupère ni ne vérifie la source.

Serveur MCP local

archcore mcp sert les documents du répertoire courant via stdio. Passez --project /path/to/repo (ou définissez ARCHCORE_PROJECT_ROOT) lorsque le serveur est lancé depuis un répertoire qui n’est pas votre espace de travail — par exemple, via une intégration d’éditeur.

Commandes
CommandeDescription
archcore initInitialiser le répertoire .archcore/ de manière interactive
archcore doctorVérifier votre configuration archcore et corriger les problèmes
archcore statusVérifier la structure .archcore/ et la santé des documents
archcore configAfficher ou modifier les paramètres
archcore hooks installInstaller les hooks pour les agents IA détectés
archcore mcpExécuter le serveur MCP stdio
archcore mcp installInstaller la configuration MCP pour les agents détectés
archcore instructionsGérer l’indice Archcore dans les fichiers d’instructions
archcore pluginInstaller, mettre à jour ou signaler le plugin Archcore
archcore updateMettre à jour Archcore vers la dernière version

archcore update vérifie les versions sur GitHub Releases, télécharge la version plus récente, vérifie la somme de contrôle SHA-256, et remplace le binaire de manière atomique. Il met ensuite à jour le plugin Archcore sur chaque hôte où il est déjà installé, et affiche la commande à exécuter pour un hôte dont la CLI est inaccessible.

archcore plugin gère ce plugin directement sur Claude Code, Cursor, Codex CLI et GitHub Copilot. archcore init l’installe pour les hôtes que vous sélectionnez là.

Mise à jour et télémétrie

Mise à jour sans intervention

Depuis la v0.8.0, la CLI se met également à jour sans surveillance. archcore mcp — le serveur que votre agent démarre — exécute la même vérification en arrière-plan, au plus une fois toutes les 24 heures par machine, et ne remplace le binaire que par une version publiée par ce projet, après avoir exécuté le binaire téléchargé une fois pour prouver qu’il démarre. Le processus en cours n’est jamais redémarré ni interrompu ; une nouvelle version prend effet au prochain lancement du binaire. Les versions que vous compilez vous-même, les forks et les exécuteurs CI ne se mettent jamais à jour automatiquement.

Aucune variable et aucune clé .archcore/settings.json ne désactive cela. Si une machine ne doit pas se mettre à jour, installez le binaire dans un répertoire que son utilisateur ne peut pas écrire — un emplacement appartenant à root — et chaque tentative s’arrête avant de télécharger quoi que ce soit.

Analytique de mise à jour

Une version de publication envoie un événement par tentative de mise à jour : les versions entre lesquelles elle est passée, votre système d’exploitation et votre architecture CPU, si l’exécution ressemblait à un CI, si vous avez tapé la commande ou si la vérification en arrière-plan l’a exécutée, et quelle étape a échoué le cas échéant. Elle n’envoie jamais de message d’erreur, de chemin, de nom d’utilisateur, de nom d’hôte, ni rien sur votre dépôt. Définissez DO_NOT_TRACK=1 ou ARCHCORE_TELEMETRY_OPTOUT=1 pour ne rien envoyer du tout. Les deux variables ne régissent que l’analytique — aucune n’empêche la CLI de se mettre à jour. Détails complets : archcore.ai/privacy.

Méthodes d’installation

macOS / Linux

curl -fsSL https://archcore.ai/install.sh | bash

Windows

irm https://archcore.ai/install.ps1 | iex

Installe archcore.exe sous %LOCALAPPDATA%\Programs\archcore et l’ajoute à votre PATH utilisateur. Ouvrez une nouvelle fenêtre PowerShell après l’installation.

Windows (WSL)

Installez WSL, puis exécutez le script macOS/Linux à l’intérieur.

Installation via Go

go install github.com/archcore-ai/cli@latest

Depuis les sources

git clone https://github.com/archcore-ai/cli.git
cd cli
go build -o archcore .

Plateformes prises en charge : macOS, Linux, Windows — amd64 et arm64.

Pour les variables d’environnement (ARCHCORE_VERSION, ARCHCORE_INSTALL_DIR, GITHUB_TOKEN), voir paramètres d’installation. Pour les problèmes de PATH, voir dépannage d’installation.

Configuration

Les paramètres se trouvent dans .archcore/settings.json, créé par archcore init.

ChampDescriptionValeurs
syncMode de synchronisation. Le cloud et l’on-premise arrivent bientôt.none (local uniquement), cloud, on-prem
languageLangue des documents. Aide l’agent à générer la documentation dans la bonne langue.Chaîne, par défaut en
archcore config                    # show all settings
archcore config get <key>          # get a specific value
archcore config set <key> <value>  # set a value

Écosystème

  • Plugin Archcore — vous utilisez Claude Code ou Cursor ? Le plugin s’associe à la CLI : même moteur, plus des compétences, des commandes d’intention et des garde-fous. Un produit, deux points d’entrée — la CLI seule couvre tous les autres agents.
  • docs.archcore.ai — documentation complète.
  • .archcore/ dans ce dépôt — un exemple vivant : la CLI est construite avec sa propre couche de contexte.

Développement

Nécessite Go 1.25+.

go build -o archcore .   # build
go test ./...            # run all tests

Liens et licence