43 outils MCP · Rust · 0,00 $/requête

Votre agent IA souffre d'amnésie.
m1nd se souvient.

Chaque outil trouve ce qui existe. m1nd trouve ce qui manque.

À chaque session, votre agent relit l'intégralité de votre codebase — brûlant 0,05 à 0,50 $ par cycle de recherche en tokens LLM, oubliant tout à la session suivante. m1nd remplace cette boucle par un graphe de code persistant qui apprend de l'utilisation, détecte les trous structurels qu'aucun grep ne pourra jamais trouver, et répond en 31ms à 0,00 $. Binaire Rust local. Zéro clé API. Zéro compteur qui tourne.

Claude Code Cursor Windsurf GitHub Copilot Zed Cline Roo Code Continue OpenCode Amazon Q
find
what's missing
what if?
navigate
9,767 nodes · 26,557 edges · 335 files
28 langages. Zéro configuration.
Extracteurs regex, parsers tree-sitter et fallback générique — tout intégré.
PythonPython
RustRust
TypeScriptTypeScript
JavaScriptJavaScript
GoGo
JavaJava
CC
C++C++
C#C#
RubyRuby
PHPPHP
SwiftSwift
KotlinKotlin
ScalaScala
BashBash
LuaLua
RR
HTMLHTML
CSSCSS
JSONJSON
ElixirElixir
DartDart
ZigZig
HaskellHaskell
OCamlOCaml
TOMLTOML
YAMLYAML
SQLSQL
+ fallback regex générique pour tout langage non listé
Compatible avec tous les clients MCP
Protocole MCP standard. Un binaire, n'importe quel client.
Claude Code
Cursor
Windsurf
GitHub Copilot
Zed
Cline
Roo Code
Continue
OpenCode
Amazon Q
Construit avec Rust
Licence MIT
Zéro token LLM
Local uniquement — votre code ne quitte jamais votre machine

Les agents IA sont de puissants raisonneurs.
De piètres navigateurs.

À chaque fois qu'un agent a besoin de contexte, il lance des appels LLM pour chercher, lire et deviner. Sur une codebase de 10 000 fichiers, c'est des centaines de dollars par semaine — et il manque quand même ce qui n'est pas là.

« Qu'est-ce que cette modification impacte ? »
Le rayon d'impact est invisible sans analyse structurelle.
m1nd.impact
« Qu'est-ce qui me manque ? »
Les trous structurels sont indétectables par recherche textuelle.
m1nd.missing
« Quoi d'autre va changer ? »
Les patterns de co-change nécessitent un contexte historique.
m1nd.predict
« Comment sont-ils connectés ? »
Les chaînes de dépendance traversent fichiers, modules et couches d'abstraction.
m1nd.why
Approche Ce qu'elle fait Pourquoi elle échoue
Recherche full-text Correspondance de tokens Trouve ce que vous avez dit, pas ce que vous vouliez dire
RAG Embedding de chunks, top-K Chaque retrieval est amnésique. Aucune relation.
Analyse statique AST, call graphs Snapshot figé. Ne répond pas à « et si ? ». N'apprend pas.
Knowledge graphs Triple stores Curation manuelle. Ne retourne que ce qui a été encodé explicitement.

Six capacités qu'aucun autre outil ne possède.

Pas des améliorations incrémentales. Des différences structurelles.

Le graphe apprend
Hebbian Plasticity
Quand les résultats sont corrects, les chemins se renforcent. Quand ils sont faux, ils s'affaiblissent. Chaque requête rend la suivante plus précise. Le graphe s'adapte à votre codebase, pas l'inverse.
Le graphe annule le bruit
XLR Differential Processing
Emprunté à l'ingénierie audio. Deux signaux parcourent le même chemin -- la différence révèle la vérité. Les arêtes faux-positifs sont annulées avant de polluer les résultats.
Le graphe mémorise
Trail System
Sauvegardez, reprenez et fusionnez l'état d'enquête entre sessions. Un agent peut reprendre exactement là où un autre s'est arrêté. Zéro redécouverte. Zéro contexte perdu.
Le graphe teste les affirmations
Hypothesis Engine
25 015 chemins explorés en 58ms. Scoring bayésien de confiance. Le graphe ne se contente pas de récupérer -- il évalue si une affirmation structurelle est plausible.
Le graphe simule des alternatives
Counterfactual Engine
4 189 nœuds analysés en 3ms. Supprimez un module virtuellement, voyez ce qui casse, mesurez la profondeur de la cascade -- avant de toucher une seule ligne de code.
Le graphe vous permet de naviguer
Exploration stateful avec historique, branches et annulation. Entrez dans une perspective, suivez les routes, bifurquez votre enquête, comparez les chemins. 12 outils. Comme un chirurgien dans votre codebase.

La boucle fondamentale

m1nd ne cherche pas dans vos données -- il les active. Interrogez un concept, et le graphe s'illumine.

EN VEILLE — CLIQUEZ POUR ACTIVER 0.94 0.89 0.83 0.71 0.23 hole!

Cliquez sur le graphe pour voir la spreading activation en action

01
Ingest
Construisez le property graph à partir des données source. Code, JSON, n'importe quel domaine.
02
Activate
Spreading activation sur 4 dimensions avec annulation du bruit XLR.
03
Learn
Hebbian plasticity : les résultats corrects renforcent les connexions, les erreurs les affaiblissent.
04
Persist
Graphe + état de plasticité sauvegardés sur disque. La prochaine session reprend là où celle-ci s'est arrêtée.

Quatre dimensions d'activation

Structurelle
Topologie du graphe : arêtes, PageRank, structure des communautés. Comment les choses sont câblées.
Sémantique
Similarité des labels : n-grammes de caractères, co-occurrence (PPMI), expansion de synonymes.
Temporelle
Dynamiques temporelles : décroissance de récence, vélocité de changement, historique co-change.
Causale
Flux de dépendance : causation dirigée le long des arêtes d'import, d'appel et de contenance.

Chaque outil de recherche a été conçu pour les humains.
m1nd a été conçu pour les agents.

2026 est l'année de l'AI slop — des agents qui forcent leur chemin à travers les codebases avec des boucles grep, brûlant des tokens comme du petit bois. grep, ripgrep, tree-sitter : des outils brillants. Pour les humains qui lisent des terminaux. Mais un agent IA ne veut pas 200 lignes d'output à interpréter linéairement. Il veut un graphe avec des poids, des dimensions et une réponse directe : « ce qui compte et ce qui manque » — prêt à décider, pas à parser.

La fin du théâtre de la fenêtre de contexte. Plus besoin de passer des résultats de recherche à un LLM pour qu'il cherche à nouveau.

Le cycle slop
1. L'agent lance grep 200 lignes de bruit
2. Envoie tout au LLM brûle des tokens à parser du texte
3. Le LLM relance grep répéter 3–5 fois
4. Finit par agir sur un tableau incomplet
0,30–0,50 $ brûlés par recherche. 10 secondes perdues. Les angles morts structurels persistent.
Chirurgie de précision
1. L'agent appelle m1nd.activate
2. Obtient un sous-graphe classé avec scores de confiance
3. Voit les trous structurels qu'aucune recherche textuelle ne pourrait trouver
4. Agit immédiatement avec le tableau complet
1 appel. 31ms. 0,00 $. Zéro token. Compréhension structurelle complète.

m1nd ne produit pas du texte qu'un LLM doit réinterpréter. Il produit des décisions structurées — nœuds pondérés, scores de confiance, classements dimensionnels, trous structurels. Le format dont un agent a réellement besoin pour agir, pas plus de slop à mâcher.

Pourquoi 0,00 $ est réel — pas du marketing

Quand un agent IA cherche dans votre code avec un LLM, il envoie votre code à une API cloud, paie par token (entrée + sortie), attend la réponse, et répète souvent 3–5 fois. Chaque cycle coûte 0,05 à 0,50 $.

m1nd utilise zéro appel LLM. Votre codebase vit sous forme de graphe pondéré en RAM locale. Les requêtes sont de la math pure — spreading activation, parcours de graphe, algèbre linéaire — exécutées par un binaire Rust sur votre machine. Pas d'appel API. Pas de tokens. Aucune donnée ne quitte votre ordinateur. C'est pour ça que c'est à 0,00 $ en 31ms.

Cycle grep LLM
Votre code → API Cloud → tokens → $$
Comme demander son chemin à Google chaque fois qu'on doit traverser la rue
Requête m1nd
Graphe en RAM → math → réponse → 0 $
Comme regarder une carte déjà posée sur votre bureau

Naviguez dans le code comme un chirurgien.

grep est stateless. Chaque recherche part de zéro. Les Perspectives m1nd maintiennent une session de navigation vivante — avec historique, branches et suggestions.

🔍
start
Entrez dans une perspective. Une surface navigable se forme autour de votre requête.
🧭
routes
Parcourez les routes classées — chemins pondérés à travers le graphe.
🎯
follow
Déplacez le focus vers une cible. De nouvelles routes se synthétisent automatiquement.
🔀
branch
Bifurquez votre exploration. Comme les branches git, mais pour l'investigation.
💡
suggest
m1nd recommande votre prochain mouvement basé sur l'historique de navigation.
⚖️
compare
Diff de deux perspectives. Nœuds partagés, chemins uniques, deltas dimensionnels.

12 outils. Exploration stateful avec mémoire, branches et annulation.
Aucun autre outil de navigation de code sur le marché ne fait ça.

session de perspective
$ m1nd.perspective_start --query "payment flow"
Perspective p-7a3f ouverte · 6 routes synthétisées

$ m1nd.perspective_follow --route "checkout → stripe"
Focus déplacé sur stripe/client.rs · 4 nouvelles routes depuis ce nœud

$ m1nd.perspective_branch --name "refund-path"
Branche créée · bifurquée depuis stripe/client.rs

$ m1nd.perspective_suggest
refund/handler.rs (affinité : 0.91, structurelle + causale)
  « Basé sur 3 hops : c'est la dépendance suivante la plus probable »

$ m1nd.perspective_compare --a "main" --b "refund-path"
Partagés : 12 nœuds · Uniques à refund-path : 5 nœuds · Divergence : 0.34

Tout ce dont un agent a besoin.

Invocables par tout client MCP via JSON-RPC stdio. Aucun SDK requis.

Fondations (13)
m1nd.ingest
Charger des données dans le graphe. Extracteur de code ou descripteur JSON.
m1nd.activate
Requête de spreading activation -- « qu'est-ce qui est lié à X ? »
m1nd.impact
Rayon d'impact -- « qu'est-ce que modifier X affecte ? »
m1nd.why
Explication du chemin -- « comment A et B sont-ils connectés ? »
m1nd.learn
Feedback Hebbian -- « ce résultat était correct / faux / partiel. »
m1nd.drift
Analyse de dérive des poids -- « qu'est-ce qui a changé depuis la dernière session ? »
m1nd.health
Diagnostic -- comptage nœuds/arêtes, sessions, état de persistance.
m1nd.seek
Recherche ciblée de nœuds -- trouver des entités spécifiques par ID ou pattern.
m1nd.scan
Scan large du graphe -- énumérer les nœuds par type, label ou voisinage.
m1nd.timeline
Séquence temporelle -- comment les nœuds ont changé au fil du temps.
m1nd.diverge
Analyse de divergence -- où deux chemins divergent-ils ?
m1nd.warmup
Amorce du contexte -- « prépare-toi pour la tâche X. »
m1nd.federate
Fédération multi-repo -- relier les graphes entre repositories.
Navigation par Perspective (12)
perspective.start
Ouvrir une perspective -- une vue filtrée et scopée dans le graphe.
perspective.routes
Trouver tous les chemins entre deux nœuds dans la perspective.
perspective.follow
Naviguer en avant -- suivre une arête depuis la position actuelle.
perspective.back
Naviguer en arrière -- revenir à une position précédente.
perspective.peek
Aperçu des voisins sans bouger -- regarder avant de sauter.
perspective.inspect
Détail complet du nœud actuel -- arêtes, poids, métadonnées.
perspective.suggest
Navigation guidée -- « où devrais-je aller ensuite ? »
perspective.affinity
Évaluer la corrélation entre deux nœuds depuis ce point de vue.
perspective.branch
Bifurquer la perspective actuelle en explorations parallèles.
perspective.compare
Diff de deux perspectives -- qu'est-ce que chacune voit que l'autre ne voit pas ?
perspective.list
Lister toutes les perspectives actives et leurs positions.
perspective.close
Fermer une perspective et libérer ses ressources.
Système de Verrous (5)
lock.create
Snapshot de l'état du graphe -- créer une baseline pour comparaison.
lock.watch
Surveiller les changements par rapport au verrou -- détection de dérive en temps réel.
lock.diff
Diff de l'état actuel par rapport au verrou -- qu'est-ce qui a changé ?
lock.rebase
Mettre à jour le verrou vers l'état actuel -- accepter tous les changements.
lock.release
Libérer le verrou et la mémoire du snapshot.
Super-pouvoirs (13)
m1nd.hypothesize
Tester une affirmation structurelle -- confiance bayésienne sur 25K+ chemins.
m1nd.counterfactual
Simulation de suppression -- « que casse-t-on si on supprime X ? »
m1nd.missing
Détection de trous structurels -- « qu'est-ce qui manque dans ce tableau ? »
m1nd.resonate
Analyse harmonique -- ondes stationnaires, fréquences de résonance.
m1nd.fingerprint
Détection d'équivalence -- « ces deux choses sont-elles des doublons ? »
m1nd.trace
Trace complète d'activation -- chaque hop, chaque poids, chaque décision.
m1nd.validate_plan
Valider un plan d'implémentation contre la structure du graphe.
m1nd.predict
Prédiction co-change -- « quoi d'autre devra changer ? »
m1nd.differential
XLR différentiel -- séparer le signal du bruit entre deux requêtes.
trail.save
Sauvegarder l'état d'enquête actuel -- toutes les activations, perspectives, contexte.
trail.resume
Reprendre un trail sauvegardé -- repartir exactement là où vous étiez.
trail.merge
Fusionner deux trails -- combiner des investigations parallèles.
trail.list
Lister tous les trails sauvegardés avec métadonnées et horodatages.

Des vrais chiffres d'une vraie codebase.

Mesurés sur un projet de 335 fichiers en Rust + Python + TypeScript. Zéro cherry-picking.

Ingestion complète
910ms
335 fichiers → 9 767 nœuds → 26 557 arêtes
Spreading activation
31-77ms
Front d'onde à 4 dimensions, gate de bruit XLR
Rayon d'impact
5-52ms
Analyse en cascade complète avec profondeur de hop
Simulation counterfactual
3ms
4 189 nœuds affectés évalués
Lock diff
0.08µs
Comparaison de snapshot, quasi instantané
Fédération (2 repos)
1.3s
18 203 arêtes cross-repo reliées

m1nd vs. les alternatives.

Une catégorie différente, pas juste une meilleure version.

La taxe sur les tokens est réelle

Chaque fois qu'un agent IA grep votre codebase et envoie les résultats à un LLM, vous payez. Des utilisateurs Cursor ont signalé des dépassements de 22 000 $/mois. Des équipes utilisant Copilot + modèles frontier sur de gros repos voient 200–500 $/mois en coûts de recherche invisibles.

100 recherches/jour × 0,30 $/recherche = 9 $/jour = 270 $/mois
Soit 3 240 $/an rien que pour la recherche. Par développeur.
m1nd
0 $
/requête. /jour. /mois. /pour toujours.
Binaire Rust local. Zéro clé API. Zéro cloud.
Aucune donnée ne quitte votre machine. Jamais.
m1nd Sourcegraph Cursor Copilot Greptile
Graphe de code Property graph complet Index de symboles Aucun Aucun Index AST
Apprend de l'usage Hebbian plasticity Non Non Non Non
Persiste les enquêtes Trail system Non Non Non Non
Teste les hypothèses Moteur bayésien Non Non Non Non
Simule la suppression Counterfactual Non Non Non Non
Verrous multi-agents Système de verrous (opérationnel) Non Tenté, échoué Non Non
Multi-repo Fédération Oui Non Non Par repo
Latence de recherche 31ms (local) ~200ms (cloud) 320ms+ (cloud) 500–800ms Dépendant du cloud
Interface agent 43 outils MCP API Intégré uniquement Intégré uniquement API
Coût mensuel 0 $ (pour toujours) 59 $/utilisateur/mois 20+ $/mois (dépassements jusqu'à 22K $) 19+ $/mois 30 $/dev/mois
Capacités (sur 16) 16/16 1/16 0/16 0/16 1/16

3–4 ans d'avance. Mesurés.

Nous avons comparé m1nd à chaque outil de la catégorie sur 16 capacités. m1nd obtient 16/16. Le meilleur concurrent obtient 3. Cursor et Copilot obtiennent zéro.

Capacités couvertes (sur 16)
m1nd
16/16
100%
CodeGraphCtx
3/16
Joern
2/16
CodeQL
2/16
ast-grep
2/16
Letta Code
2/16
Sourcegraph
1/16
Augment
1/16
Greptile
1/16
Cursor
0/16
Copilot
0/16
Six choses que personne d'autre ne peut revendiquer
01 — ZÉRO CONCURRENT
Hebbian plasticity sur graphes de code
Le graphe se recâble en fonction des chemins de requête menant à des résultats corrects. Aucun autre outil ne fait ça. Aucun paper publié ne le décrit pour le code.
02 — 10-30x PLUS RAPIDE
0,00 $/requête en 31ms
Binaire Rust local. Zéro token LLM brûlé par requête. Tout outil dépendant d'un LLM paie 0,10-0,50 $ par recherche et attend 300ms-2s.
03 — ZÉRO ANTÉCÉDENT
Trouve ce qui MANQUE dans le code
Détection de trous structurels issue de la théorie sociologique de Burt, appliquée aux graphes de code. Trouve les lacunes de votre architecture qu'aucune recherche ne peut révéler.
04 — PLUS GRANDE SURFACE
43 outils MCP = cycle cognitif complet
Ingérer, activer, formuler des hypothèses, simuler, apprendre, naviguer, fédérer. Le plus grand concurrent offre ~15 outils. La plupart en offrent 3-5.
05 — TECHNIQUE INÉDITE
Annulation du bruit XLR
Empruntée à l'ingénierie audio : le filtrage Cross-Layer Resonance supprime les arêtes faux-positifs durant la spreading activation. Zéro antécédent pour les graphes de code. Zéro concurrent, zéro paper.
06 — LES AUTRES ONT ESSAYÉ ET ÉCHOUÉ
Verrouillage de graphe multi-agents
Cursor a tenté le file locking multi-agents et l'a abandonné. m1nd livre 5 outils de verrous qui fonctionnent : snapshot, watch, diff, rebase, release. Plusieurs agents, un seul graphe cohérent.
3–4 ans d'avance
Construit sur 6 disciplines qu'aucun concurrent ne couvre : sciences cognitives, sociologie, neurosciences, traitement du signal, physique et systèmes distribués.
Lire l'analyse concurrentielle complète →

Une session complète, du début à la fin.

m1nd ingérant et analysant une codebase de production. Chaque chiffre est réel.

session de production m1nd
1. Ingest > m1nd.ingest path=./
335 fichiers sources scannés dans 3 langages
9 767 nœuds, 26 557 arêtes construits en 910ms
Historique co-change : 214 groupes de commits analysés

2. Activate > m1nd.activate query="spreading activation"
Graines : activation.rs, graph.rs, xlr.rs
Front d'onde : 3 → 18 → 47 nœuds
0.94 fn::propagate_wavefront (structural 0.97)
0.91 fn::score_candidates (semantic 0.93)
0.87 fn::xlr_gate (causal 0.89)
0.72 fn::compute_pagerank (structural 0.78)
XLR a annulé 12 arêtes de bruit · 31ms

3. Impact > m1nd.impact targets=["graph.rs"]
Rayon d'impact : 23 nœuds sur 4 hops
Direct : activation.rs, xlr.rs, temporal.rs, builder.rs
Indirect : server.rs, tools.rs, session.rs
Haut impact : graph.rs est une clé de voûte (PageRank top 3%)

4. Hypothesize > m1nd.hypothesize "graph.rs depends on temporal.rs"
25 015 chemins explorés en 58ms
Confiance : 0.87 (forte évidence structurelle + temporelle)
En soutien : 14 chemins directs, 3 clusters co-change
En affaiblissement : 2 chemins via module déprécié

5. Counterfactual > m1nd.counterfactual remove=["graph.rs"]
CASCADE : 4 189 nœuds affectés en 3ms
ORPHELINS : 8 fonctions deviennent inaccessibles
RÉSILIENTS : temporal.rs, domain.rs survivent via chemins alternatifs
Simulation terminée : graph.rs est porteur

6. Learn > m1nd.learn feedback=correct nodes=[activation.rs, xlr.rs]
LTP appliqué : 14 arêtes renforcées (moy. +0.12)
État de plasticité persisté · 2 847 poids modifiés au total

Opérationnel en 60 secondes.

1

Compiler

cargo build --release
2

Lancer

m1nd démarre en tant que serveur JSON-RPC stdio. Compatible MCP dès le départ.

./target/release/m1nd-mcp
3

Ingérer et Interroger

Envoyez des messages MCP via stdin. L'état persiste automatiquement.

// Ingérer une codebase
{"method":"tools/call","params":{"name":"m1nd.ingest",
  "arguments":{"path":"/your/project","agent_id":"my-agent"}}}

// Interroger
{"method":"tools/call","params":{"name":"m1nd.activate",
  "arguments":{"query":"authentication","agent_id":"my-agent"}}}

// Apprendre des résultats
{"method":"tools/call","params":{"name":"m1nd.learn",
  "arguments":{"feedback":"correct","node_ids":["file::src/auth.rs"]}}}
4

N'importe quel domaine

Pas que du code. Ingérez n'importe quel knowledge graph depuis JSON.

// Descripteur JSON -- fonctionne pour tout domaine
{"nodes": [
  {"id":"concept::activation", "label":"Spreading Activation", "type":"Concept"},
  {"id":"concept::plasticity", "label":"Hebbian Plasticity", "type":"Process"}
],
"edges": [
  {"source":"concept::activation", "target":"concept::plasticity",
   "relation":"enables", "weight":0.8}
]}

Ce que m1nd n'est pas.

Aucun outil ne fait tout. Voici les limites de m1nd.

Pas un éditeur de code
m1nd navigue et analyse. Il n'écrit pas, ne refactorise pas, n'applique pas de patches. Associez-le à un agent qui le fait.
Pas un moteur de recherche
Il trouve des relations structurelles, pas des correspondances de chaînes. Pour la recherche textuelle littérale, utilisez grep. Pour la compréhension structurelle, utilisez m1nd.
Le graphe vit en mémoire
Le graphe complet est conservé en RAM pour la vitesse. Les grands monorepos (100K+ fichiers) nécessiteront de la mémoire significative. La persistance se fait sur disque à l'arrêt.
Machine unique, aujourd'hui
La fédération relie les graphes de plusieurs repos, mais le serveur tourne sur une seule machine. Le mode distribué n'est pas encore implémenté.
~15 500
Lignes de Rust
159
Tests
43
Outils MCP
6+1
Langages
~8 Mo
Binaire (ARM64)

Arrêtez de payer pour l'amnésie.
Donnez un m1nd à vos agents.

Open source. Local. Zéro coût. Un seul binaire. 43 outils.
Votre codebase ne quitte jamais votre machine.

Obtenir m1nd sur GitHub Sponsoriser ce projet

Licence MIT · Rust · ~8 Mo binaire · Compatible avec tout client MCP