Skip to content

Topologie et structure ​

Ces outils gèrent la forme de la mémoire : inventorier les projets et domaines, en créer, renommer, fusionner, déplacer ou reclasser, rattacher une note, réparer des liens, retirer une note vers la corbeille et la remettre.

Deux seulement lisent (mem_list, mem_get_topology). mem_move n'écrit que si apply vaut vrai, mem_relocate_project que si confirm vaut vrai : sans eux, ce sont des essais à blanc. Les autres écrivent.

mem_move_undo annule la dernière opération de déplacement (mem_move, mem_rename, mem_reclass, mem_merge). mem_remove ne supprime pas : il déplace vers .trash/, d'où mem_restore le remet en place.

En pratique ​

Vous demandez à l’agent

« Quels projets ai-je en mémoire ? »

→ L’agent appellemem_list
Vous demandez à l’agent

« Crée un projet « kessho-docs » rattaché au dépôt /Users/ben/Projets/Kessho. »

→ L’agent appellemem_init_project
  • slug = kessho-docs
  • repo_path = /Users/ben/Projets/Kessho
Vous demandez à l’agent

« Renomme le projet kessho-docs en kessho-documentation, et mets à jour les liens qui le visent dans tout le vault. »

→ L’agent appellemem_rename
  • old_slug = kessho-docs
  • new_slug = kessho-documentation
  • rewrite_links = true
Vous demandez à l’agent

« Montre-moi ce que donnerait le déplacement de 20-knowledge/runner.md vers 20-knowledge/architecture/runner.md. »

→ L’agent appellemem_move
  • path = 20-knowledge/runner.md
  • to = 20-knowledge/architecture/runner.md

Les outils ​

mem_list ​

Inventorie les projets, domaines et projets archivés du vault, avec leur phase, dernière session, portée, dépôt (repo_path) et nombre d'archives.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
archived_onlybooleannon / noN'inventorier que les projets archivés.
include_archivedbooleannon / noDéplier les projets archivés.

mem_get_topology ​

Lit la fiche de topologie d'un projet, éventuellement celle d'une branche. Son absence n'est pas une erreur.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
branchstringnon / noBranche dont lire la topologie.
projectstringoui / yesSlug du projet.

mem_init_project ​

Crée le squelette d'un projet ou domaine : son dossier, archives/.gitkeep, context.md et history.md, immédiatement exploitables par mem_archive.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
displaystringnon / noNom affiché. Défaut : dérivé du slug.
kindstringnon / no'project' (défaut) ou 'domain'.
repo_pathstringnon / noRacine absolue du dépôt associé.
scopestringnon / no'work' (défaut) ou 'personal'.
slugstringoui / yesSlug du nouveau projet ou domaine, en kebab-case.

mem_rename ​

Renomme un projet ou domaine partout où il apparaît dans son dossier (frontmatter re-étiqueté, previous_slugs posé). Les liens qui le visent (wikiliens, liens Markdown, frontmatter) sont réécrits dans tout le vault ; rewrite_links: false pour ne pas le faire. mem_move_undo annule l'opération.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
new_slugstringoui / yesNouveau slug.
old_slugstringoui / yesSlug actuel.
rewrite_linksbooleannon / noVrai (défaut) : réécrire dans tout le vault les liens qui visent le dossier renommé. Faux : ancien comportement, liens laissés tels quels.

mem_merge ​

Fusionne un projet ou domaine dans un autre de même nature : re-étiquette et déplace ses archives, puis supprime le dossier source. Les liens qui les visent (wikiliens, liens Markdown, frontmatter), archives renommées par collision comprises, sont réécrits dans tout le vault ; rewrite_links: false pour ne pas le faire. mem_move_undo annule l'opération.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
rewrite_linksbooleannon / noVrai (défaut) : réécrire dans tout le vault les liens qui visent les archives déplacées. Faux : ancien comportement.
source_slugstringoui / yesSlug source, supprimé après fusion.
target_slugstringoui / yesSlug cible, conservé et enrichi.

mem_reclass ​

Change la portée ou la zone d'un atome, et le déplace si son chemin en dépend. Les liens qui le visent (wikiliens, liens Markdown, frontmatter) sont réécrits dans tout le vault ; rewrite_links: false pour ne pas le faire. mem_move_undo annule le déplacement.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
pathstringoui / yesChemin de l'atome, relatif au vault.
rewrite_linksbooleannon / noVrai (défaut) : réécrire dans tout le vault les liens qui visent l'atome déplacé. Faux : ancien comportement.
scopestringnon / noNouvelle portée : work, personal ou all.
zonestringnon / noNouvelle zone de premier niveau.

mem_move ​

Renomme ou déplace un fichier ou un dossier du vault (sous une zone), en réécrivant dans tout le vault les liens qui le visent — wikiliens, inclusions, liens Markdown relatifs, corps et frontmatter — et les liens relatifs qu'il porte. Sans apply, rend le plan sans rien écrire : fichiers déplacés, chaque lien avant/après, liens laissés (non résolus), avertissements, empreinte. Refuse une cible occupée, un nom invalide (Windows, caractères qui cassent un wikilien), un dossier protégé, une opération git en cours, ou un plan qui casserait un lien. Une opération interrompue est défaite au geste suivant ; mem_move_undo annule la dernière.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
applybooleannon / noVrai : appliquer. Faux (défaut) : plan à blanc.
empreintestringnon / noFacultatif, avec apply : l'empreinte du plan à blanc. Si le vault a changé depuis (empreinte différente), rien n'est écrit (plan_perime).
pathstringoui / yesFichier ou dossier actuel, relatif au vault.
tostringoui / yesNouveau chemin complet, relatif au vault (même dossier = renommer).

mem_move_undo ​

Annule la dernière opération de déplacement du vault (interface ou agent : mem_move, mem_rename, mem_reclass, mem_merge) : remet les fichiers à leur place et les liens dans leur état d'avant. Refuse si un fichier touché a changé depuis.

Aucun paramètre. / No parameters.

mem_alias_add ​

Ajoute des alias en langue VÉCUE à un atome existant — les mots par lesquels un humain le cherchera, pas ceux dans lesquels il a été écrit. Mesuré sur le vault réel : le moteur atteint sa cible si et seulement si un mot distinctif de la question s'y trouve, et les alias sont le seul pont entre les deux langues. Les alias déjà présents ne sont jamais perdus.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
aliasesarray<string>oui / yesFormulations en langue vécue : le symptôme, la sensation, le besoin — « ça saccade sur téléphone », « les accents s'affichent en carrés ». Jamais le vocabulaire technique déjà présent dans l'atome, qui n'apporterait rien.
pathstringoui / yesChemin de l'atome, relatif au vault.

mem_attach ​

Rattache un atome à un projet ou à un domaine EXISTANT, ou le déclare universel (attachment: universal) quand aucune preuve explicite ne le rattache — une décision écrite et réversible, que le scan des orphelins respecte. Écrit le champ et l'étiquette. Exactement un de project, domain ou universal. Refuse une cible inexistante.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
domainstringnon / noDomaine existant.
pathstringoui / yesChemin de l'atome, relatif au vault.
projectstringnon / noProjet existant, actif ou archivé.
universalbooleannon / noVrai : l'atome est transverse par nature et ne se rattache à rien.

Repointe les wikiliens [[from]] d'un fichier vers to, en préservant #titre et |alias ; un lien écrit dans un bloc de code n'est pas touché. Refuse une cible qui ne résout pas à un fichier unique du vault, ou un from absent du fichier. Rend le nombre d'occurrences réécrites.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
fromstringoui / yesCible actuelle du lien, telle qu'écrite entre les crochets.
pathstringoui / yesFichier source, relatif au vault.
tostringoui / yesNouvelle cible : doit résoudre à un seul fichier.

mem_resolve_conflict ​

Remplace un fichier du vault qui porte un conflit de fusion Git non résolu (bornes <<<<<<< et >>>>>>>) par sa version résolue. Refuse un fichier sans conflit, un contenu qui porte encore une borne, ou dont le frontmatter ne se lit pas. Rend l'original entier dans original : rien de ce que le fichier portait ne disparaît sans trace. Relancer mem_health_scan ensuite — un fichier illisible peut cacher d'autres anomalies.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
contentstringoui / yesContenu résolu complet, frontmatter compris, sans aucune borne de conflit.
pathstringoui / yesFichier en conflit, relatif au vault.

mem_accept_dangling ​

Déclare ACCEPTÉ un wikilien mort gardé délibérément : sa cible est ajoutée à kessho_accepted_dangling du fichier. mem_health_scan le compte alors à part (accepted_dangling_links), visible mais hors anomalies, au lieu de le signaler à chaque scan. Refuse un lien absent du fichier, ou qui résout vers un fichier du vault.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
pathstringoui / yesFichier source, relatif au vault.
targetstringoui / yesCible du lien, telle qu'écrite entre les crochets.

mem_remove ​

Retire un atome vers la corbeille du vault : il est DÉPLACÉ, jamais supprimé, vers .trash/<chemin d'origine>, avec une note jointe (date, motif, ancien chemin) ; mem_restore le remet en place. Retrait libre pour un atome créé par CE serveur pendant la session en cours ; pour tout autre atome, confirm: true ET reason sont exigés — rien n'est déduit du frontmatter. Un atome cité par d'autres est refusé, citants listés ; force: true le retire quand même et rend chaque lien devenu pendant. Refuse hors du vault, .obsidian/, .trash/, index.md, context.md, history.md, et pendant une opération git en cours. Régénère l'index de zone ; ne modifie jamais context.md (ses mentions sont signalées). Ligne d'audit dans 99-meta/migrations/removals.md. Un atome déjà poussé reste dans l'historique git : le compte rendu le dit.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
confirmbooleannon / noObligatoire (vrai) pour un atome qui n'a pas été créé pendant cette session. Sans effet sinon.
forcebooleannon / noVrai : retirer même si d'autres atomes le citent ; leurs liens deviennent pendants et sont listés. Faux (défaut) : refus qui nomme les citants.
pathstringoui / yesChemin de l'atome, relatif au vault (ex. 20-knowledge/note-de-test.md).
reasonstringnon / noPourquoi l'atome est retiré. Obligatoire, non vide, pour un atome qui n'a pas été créé pendant cette session ; écrit dans la note jointe et le journal.

mem_restore ​

Remet à sa place un atome retiré par mem_remove : le déplace de .trash/<chemin> vers <chemin>, octet pour octet, retire sa note jointe, régénère l'index de zone et écrit une ligne d'audit dans 99-meta/migrations/removals.md. Refuse si un fichier occupe déjà le chemin d'origine : rien n'est jamais écrasé.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
pathstringoui / yesChemin d'ORIGINE de l'atome, relatif au vault (ex. 20-knowledge/note-de-test.md). Le préfixe .trash/ est accepté.

mem_promote_domain ​

Promeut un ensemble de fichiers en un nouveau domaine permanent. Refuse en dessous de trois sources sans dérogation.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
allow_2_itemsbooleannon / noDéroger au seuil anti-dérive de trois sources.
slugstringoui / yesSlug du nouveau domaine.
sourcesarray<string>oui / yesChemins des fichiers à promouvoir, relatifs au vault.

mem_relocate_project ​

Fait pointer un projet vers une nouvelle racine de dépôt sur le disque. Essai à blanc par défaut, garde sur l'origine Git.

Paramètre / ParameterTypeRequis / RequiredDescription (catalogue)
confirmbooleannon / noSans confirm, l'appel est un essai à blanc.
forcebooleannon / noPasser outre la garde d'origine Git.
new_rootstringoui / yesNouvelle racine absolue du dépôt.
reasonstringnon / noMotif consigné au journal d'audit.
slugstringoui / yesSlug du projet ou domaine.

Kessho · Mesure d’audience sans cookie, sur un serveur d’ArboRithm.