Communitygithub.com

matthiasdebernardini/ontology-notes

Une base de connaissances ontologique ancrée dans les sources, avec une compétence de chat pour l'agent Prime et une recherche locale sans dépendances.

Qu'est-ce que ontology-notes ?

Cette compétence permet à un agent IA de répondre aux questions en puisant dans une base de connaissances ontologique locale, plutôt que de se fier à sa mémoire interne. Elle assure une réponse factuelle et vérifiable en suivant un workflow de recherche structuré : identification des projets, normes ou ontologies nommés, exécution de requêtes ciblées, ouverture des fichiers de notes pertinents, et vérification des affirmations dans les sources primaires lorsque disponibles. La compétence supporte plusieurs modes de réponse (explication, comparaison, recommandation, tutoriel, etc.) et impose des règles strictes d'ancrage aux sources, avec des citations et une divulgation explicite des limites. Elle fonctionne avec Prime (et tout agent compatible SKILL.md), est indépendante de dépendances, et nécessite que la base de connaissances soit installée soit via un script, soit en définissant la variable d'environnement ONTOLOGY_KB_ROOT.

Compatible avec✓Claude Code~Codex CLI~Cursor
npx skills add matthiasdebernardini/ontology-notes

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Chat Ontologie

Répondre depuis la base de connaissances ontologique locale plutôt que depuis la mémoire.

Localiser la base de connaissances

Résoudre scripts/ontology_kb.py par rapport à ce SKILL.md. Le CLI localise la racine de la base de connaissances dans cet ordre :

  1. Un --root PATH explicite
  2. ONTOLOGY_KB_ROOT
  3. ~/.config/ontology-chat/config.json
  4. Le répertoire courant et ses parents
  5. Le répertoire source de la compétence et ses parents

Si la découverte échoue, expliquer comment exécuter le scripts/install.py du dépôt ou définir ONTOLOGY_KB_ROOT. Ne pas répondre silencieusement depuis des connaissances antérieures.

Commencer les sessions inconnues par :

python3 <skill-dir>/scripts/ontology_kb.py status --json

Choisir le mode de réponse

Inférer le mode depuis la question :

  • Expliquer : définir un concept et le relier à des normes ou projets concrets.
  • Comparer : récupérer des preuves pour chaque élément comparé et énoncer les différences dimension par dimension.
  • Recommander : dériver des critères des notes, présenter les compromis, et étiqueter la recommandation finale comme éditoriale.
  • Comment faire : assembler un workflow ancré à partir d'outils et formats documentés.
  • Modèles LLM : distinguer les implémentations LLM directes des mentions de catalogue, du ML classique, des embeddings et de l'utilisation générique de graphes de connaissances.
  • Audit de source : tracer une affirmation depuis la synthèse jusqu'aux notes et, quand disponible localement, jusqu'au texte récupéré ou à la documentation du dépôt.
  • Parcours d'apprentissage : ordonner les lectures des concepts fondamentaux aux outils et motifs avancés.
  • Explorer : faire apparaître des entrées, sections, mises en garde et questions de suivi connexes.

Workflow de récupération

  1. Identifier tout projet, norme, ontologie ou vocabulaire explicitement nommé. Exécuter d'abord sources <name> --json pour que les entrées ignorées et les lacunes de preuves enregistrées soient visibles avant une recherche plus large. Si elle est ignorée, commencer par cette limitation ; les mentions indirectes dans d'autres notes ne peuvent être résumées qu'à titre de preuve secondaire.
  2. Transformer la question restante en deux à quatre requêtes de recherche courtes et concrètes. Inclure les noms des éléments comparés si connus.
  3. Exécuter la récupération pour chaque requête :
python3 <skill-dir>/scripts/ontology_kb.py search "<query>" --limit 8 --json

Les filtres utiles sont --section et --kind. 4. Fusionner les résultats et ouvrir les quatre à huit meilleurs fichiers notes/<slug>.md. Ne pas considérer les extraits comme des preuves suffisantes. 5. Pour les comparaisons, s'assurer que chaque élément nommé a sa propre note. Utiliser show <slug> si la récupération ne l'a pas fait apparaître. 6. Lire SYNTHESIS.md uniquement pour l'orientation et la structure inter-sources. Vérifier ses affirmations par rapport aux notes citées avant de les répéter. 7. Pour une affirmation contestée, surprenante ou faisant l'objet d'un audit de source, exécuter sources <slug> --json. Si sources/<slug>.txt ou repos/<slug>/ est présent, inspecter le passage source pertinent ou le README/docs. Les installations publiques peuvent omettre ces artefacts tiers ; divulguer cette limitation au lieu d'improviser. 8. Utiliser related <slug> --limit 8 --json seulement après avoir identifié une note d'ancrage utile.

Règles d'ancrage

  • Baser les affirmations factuelles sur les notes ouvertes. Ne jamais combler un vide à partir de connaissances générales en ontologie.
  • Citer chaque paragraphe ou puce substantiel avec des liens Markdown relatifs au dépôt, comme [OntoLearner](notes/ontolearner.md).
  • Attribuer une affirmation spécifique à une source à cette source. Utiliser plusieurs citations pour les conclusions inter-sources.
  • Étiqueter explicitement les conseils assemblés à partir de preuves comme Recommandation ou Synthèse éditoriale.
  • Préserver les qualifications, y compris l'âge de la version, le statut archivé, la documentation incomplète, les limites de profil, les limites de passage à l'échelle et les preuves de type catalogue uniquement.
  • Ne pas transformer "un guide est répertorié" en preuve du contenu du guide.
  • Ne pas appeler les graphes de connaissances ordinaires, les embeddings, le raisonnement symbolique ou le ML classique "intégration LLM".
  • Si une entrée explicitement nommée est ignorée, le dire au début et citer ou paraphraser de près sa skip_reason enregistrée. Ne pas substituer des mentions indirectes à une note dédiée inexistante ni fabriquer son contenu.
  • Si la base de connaissances ne supporte pas la réponse, le dire et nommer la preuve manquante.

Format de réponse par défaut

Utiliser la structure la plus légère qui convient :

  1. Réponse directe
  2. Explication ou comparaison étayée par des preuves
  3. Mises en garde importantes
  4. Question suivante ou suggestion de lecture facultative

Éviter de déverser les scores de récupération ou les étapes de recherche internes, sauf si l'utilisateur demande un audit. Préférer un petit nombre de citations solides à une longue bibliographie.

Référence CLI

ontology_kb.py search <query> [--limit N] [--section TEXT] [--kind KIND] [--json]
ontology_kb.py show <slug-or-name> [--json]
ontology_kb.py related <slug-or-name> [--limit N] [--json]
ontology_kb.py sources <slug-or-name> [--json]
ontology_kb.py status [--json]

Les options peuvent apparaître avant ou après la sous-commande. Le CLI est déterministe, sans dépendances et n'effectue aucune requête réseau.

Skills associés