Écrire dans la mémoire
Ce parcours sert à faire entrer dans la mémoire un fait, un principe, un objectif, une personne ou un document : l'agent crée une note (un « atome ») dans la bonne zone. Pour ce que la session elle-même laisse, voir Archiver une session.
Ce que vous demandez à l'agent
« Note ceci : « Le fragment scellé ne se modifie jamais à la main. » »
mem_notetitle=Fragment scellécontent=Le fragment scellé ne se modifie jamais à la main.
« Retiens ce principe, une ligne rouge : on ne documente que ce que le code soutient. »
mem_principletitle=Ne documenter que ce que le code soutientcontent=Une affirmation que le catalogue ou le code ne soutient pas n'a pas sa place dans la référence.force=red-line
« Ajoute un objectif à court terme : publier la documentation d'ici le 2026-12-01. »
« Crée la fiche de Claire Martin, cliente. »
« Absorbe ce document dans la mémoire : /Users/ben/Documents/cahier-des-charges.pdf. »
mem_docpath=/Users/ben/Documents/cahier-des-charges.pdftitle=Cahier des charges
« Garde ça de côté, je classerai plus tard : penser à demander un devis pour le rail LED. »
Quand vous ne dites pas de quelle nature est le contenu (« note ceci », « garde ça »), l'agent peut passer par mem, qui dépose dans la boîte de réception ; quand vous la précisez (« retiens ce principe »), il appelle l'outil de ce type.
Ce que fait l'agent
Chaque outil écrit une nouvelle note :
| Outil | Où elle arrive | Obligatoire | Utile à savoir |
|---|---|---|---|
mem | 00-inbox/ | content | hint oriente le classement ultérieur : note, principle, goal, person ou idea. |
mem_note | 20-knowledge/ | title, content | title sert de nom. |
mem_principle | 40-principles/{portée}/ | title, content | force : red-line, heuristic (défaut), value ou action-rule. |
mem_goal | 50-goals/{horizon}/ | title | horizon : short (défaut), medium ou long ; status : open (défaut), in-progress, done ou abandoned ; deadline au format AAAA-MM-JJ. |
mem_person | 60-people/{relation}/ | name | relation : colleague (défaut), client, friend, family ou other. La fiche est marquée sensible par défaut (sensitive). |
mem_doc | 00-inbox/ | path (absolu) | Un document local par appel : Markdown, texte, PDF, DOCX, XLSX, PPTX, HTML ou CSV. |
Tous sauf mem acceptent project (projet de rattachement) et scope : work (défaut), personal ou all.
Aucune de ces écritures n'écrase une note existante. Si le nom est déjà pris, le serveur en choisit un autre en ajoutant un suffixe (-2, -3…) ; la réponse donne le chemin réellement écrit. L'agent n'a donc pas à vérifier d'abord si la note existe. Quand l'écriture tombe dans une zone transverse, l'index.md de cette zone est régénéré.
D'autres outils écrivent des notes, avec leur propre règle :
mem_archive, en mode complet, crée les notes dederive; un nom déjà pris y fait refuser l'archivage entier (voir Archiver une session).mem_codebaseinscrit à la carte d'un projet un fait que le code ne dit pas de lui-même (fact,body,project). Il demande les fichiers que le fait décrit (describes, chemins relatifs au dépôt, qui doivent exister) ou, à défaut,unmeasurable_because, la raison pour laquelle il ne se rattache à aucun fichier ; sans l'un des deux, l'écriture est refusée. Le catalogue conseille de consulter d'abordmem_codebase_scan.
Corriger une note existante n'est pas le rôle de ces outils : renommer, déplacer, rattacher ou retirer se fait avec ceux de Entretenir la mémoire.
Ce que vous voyez

La note écrite apparaît dans sa zone, ici Connaissance (20-knowledge) : une ligne par note, avec son type et son projet (voir Zones). Le témoin de fraîcheur s'allume dès que l'agent écrit, et Relire met la liste à jour. Pour ouvrir la note et la lire ou la modifier, voir Atome et éditeur.
Vous pouvez aussi créer une note vous-même, avec Nouveau dans l'en-tête de la zone : l'agent n'est pas nécessaire.