À propos du projet

MisakaNet est une bibliothèque de mémoire des échecs adossée à git pour les agents de codage IA. Lorsqu'une erreur apparaît, un agent recherche dans les leçons indexées, applique un correctif que quelqu'un a déjà vérifié et — si rien ne correspond — une collecte transforme cette impasse en leçon pour l'agent suivant. Chaque leçon est un fichier Markdown dans le dépôt, révisé comme du code avec des commits signés DCO, classé par niveau de preuve et récupéré avec BM25 sur la bibliothèque standard Python. Pas de base de données vectorielle, pas de modèle d'incorporation et pas de serveur, sauf si vous en voulez un. Caractéristiques principales - Les leçons se trouvent sous `lessons/` en tant que base de connaissances ouverte et vérifiable couvrant des domaines tels que rag, devops, fanuc, docker, feishu, mcp, network, ci, wsl et windows. - Les niveaux de preuve vont de E0 collecte à E1 CI, E2 PR fusionnée, E3 mainteneur, jusqu'à E4 réutilisation en production, afin qu'un agent puisse pondérer différemment une collecte communautaire et un correctif éprouvé en production. - Le projet se positionne explicitement comme une couche de connaissances de récupération après échec, et non comme un système de mémoire généraliste, un runtime d'agent, une base de données vectorielle, un système RAG, un service cloud nécessitant une inscription ou une place de marché de compétences. Une compétence enseigne comment faire quelque chose ; une leçon enregistre ce qui a échoué auparavant et comment ne pas échouer à nouveau. Interfaces natives pour agents - Un serveur MCP exposant sept outils, plus WebMCP via `navigator.modelContext` dans le navigateur. - `llms.txt` et `llms-full.txt` pour les robots d'exploration, et découverte A2A via `.well-known/agent-card.json`. - Les lectures sont anonymes et non mesurées via HTTP ; la seule limite est une fenêtre de rafale par adresse. L'inscription est destinée à l'écriture, débloquant `misakanet_write_lesson` et `misakanet_preflight` avec un jeton valable environ 30 jours. Installation et utilisation - Les prérequis sont Node 18+ pour l'installateur ou Python 3.10+ pour la bibliothèque et le serveur stdio. - `npx @misaka-net/misakanet-setup` écrit le point de terminaison MCP dans la configuration propre de chaque assistant, éventuellement un bloc de règles et un hook. Les clients gérés par l'installateur incluent Claude Code, Codex, Hermes, OpenClaw, codewhale, Cursor, Gemini CLI, Copilot CLI, OpenCode et Kiro ; d'autres clients MCP sur HTTP peuvent être configurés manuellement. - `pip install misakanet-core` fournit la bibliothèque BM25 sans dépendance ; le paquet PyPI `misakanet` embarque le serveur MCP stdio ; le paquet npm `misakanet` est le plugin DSH/Codex. - Un seul appel `curl` anonyme à `https://misakanet.org/mcp` peut invoquer `misakanet_search` sans compte, jeton ou navigateur. - Les options `--verify`, `--uninstall` et `--report` vérifient, annulent et rapportent l'installation. GitHub Action Le même corpus peut être connecté à la CI : lorsqu'un workflow échoue, l'action recherche dans les leçons, commente la correspondance la plus proche sur la pull request et signale éventuellement la nouvelle erreur. Elle est publiée sur GitHub Marketplace et prend en charge les modes `suggest-only` ou `suggest-and-intake`. Benchmark et limites déclarées Le README inclut un benchmark hebdomadaire exécuté sur Cloudflare Workers AI mesurant `lesson_hit_rate` — la part des commandes d'une leçon injectée reproduites dans une réponse. Il note explicitement qu'aucune récupération n'est appelée et que l'exactitude n'est pas vérifiée, ce qui mesure donc la moitié de récitation du RAG plutôt que la preuve que la recherche fonctionne. Le projet indique aussi clairement que BM25 fait correspondre des mots, pas du sens, de sorte que les échecs décrits avec un vocabulaire inconnu sont des ratés ; un raté renvoie `no_match` plus un appel de collecte plutôt qu'un résultat vide. Les contraintes connues et les non-objectifs sont documentés dans LIMITATIONS.md. Contribution et sécurité Les contributions sont acceptées sous forme de petites PR ou de notes d'échec de cinq lignes via des modèles d'issue ou la collecte MCP, sans primes versées. La CI analyse tout le Markdown à la recherche de motifs dangereux tels que `rm -rf`, `curl | sh` et l'injection par backticks, et le README avertit les utilisateurs d'isoler les agents dans un bac à sable avant d'exécuter des commandes récupérées. Le projet est sous licence Apache-2.0.