Mémoire de l’agence
14 routes. Chemins relatifs à https://api.nexus-engine.eu/api/v1.
GET
/memory/search
Cherche dans la mémoire de l’agence : code indexé, résumés de sessions, décisions des discussions.
Requêteq (le besoin, en français), fromProjectId, kinds (CODE, SESSION, DISCUSSION, NOTE, séparés par des virgules), limit (≤ 20)
RéponseMemorySearchResult { hits[] }
NoteUn résultat sans extrait vient d’un projet confidentiel.
GET
/memory/status
État de l’index : fragments par nature, projets couverts, dernier passage.
POST
/memory/index
application de bureau seulement
Dépose un lot de fragments de code expurgés (c’est l’application qui indexe).
POST
/memory/reindex-sources
Owner et Admin
Réindexe sessions et discussions (balayage complet).
CorpsprojectId (facultatif)
DELETE
/memory/projects/:id
Owner et Admin
Purge la mémoire d’un projet.
GET
/admin/memoire
Owner et Admin
La base de connaissance en un coup d’œil : compteurs par origine (code, sessions, décisions, notes), plongements, dernier passage, un rang par projet avec ce qui le tient hors mémoire, notes de toute l’entreprise.
RéponseMemoireAdminDto { compteurs, embeddingsEnabled, dernierPassage, projets[], notesEntreprise }
GET
/admin/memoire/fragments
Owner et Admin
Liste les fragments de la mémoire, une page à la fois ; avec q, recherche lexicale (100 au plus, sans curseur). Un projet en mode aveugle rend la ligne sans son extrait (retenu).
Requêtekind (CODE, SESSION, DISCUSSION, NOTE), projectId (un projet, ou « entreprise » pour les notes sans projet), q, cursor, limit (≤ 100)
RéponseMemoireFragmentsPageDto { items: MemoireFragmentDto[], suivant }
GET
/admin/memoire/fragments/:id
Owner et Admin
Un fragment en entier ; contenu nul et retenu pour un projet en mode aveugle.
RéponseMemoireFragmentDetailDto
POST
/admin/memoire/supprimer
Owner et Admin session de l’application seulement
Retire des fragments de la mémoire (ceux de l’entreprise seulement), journalisé.
Corpsids: string[] (≤ 200)
Réponse{ ok, removed }
NoteSans oubli durable : un fragment de code revient au prochain envoi du dépôt, une session ou une décision revient si sa source est relue. Pour écarter un projet durablement, l’exclure de la mémoire.
GET
/projects/:id/faits
Les faits du projet — décisions, pièges, conventions, commandes, architecture — proposés par les agents, gardés par l’équipe. Sans `etat`, tout sauf les retirés.
Requêteetat (PROPOSE, GARDE, RETIRE)
RéponseFaitProjetDto[]
POST
/projects/:id/faits
application de bureau seulement
Propose un fait du projet (outil d’agent `note_project_fact`, Walter, reprise de l’auto-mémoire d’un poste) ou, depuis une session, le pose gardé. Expurgé de ses secrets ; un fait déjà connu n’est pas récrit.
Corpssorte, texte (8 à 400), pourquoi, sessionId, commit, origine (WALTER, AUTO_MEMOIRE)
RéponseFaitProjetDto & { deja }
Note409 projet en mode aveugle ; 422 texte trop dense en secrets.
PATCH
/faits/:id
Owner et Admin session de l’application seulement
Garde, corrige ou retire un fait du projet — « une personne décide ». Gardé, il entre dans le bloc géré du dépôt et dans la mémoire de l’agence ; retiré, il en sort.
Corpsetat (GARDE, RETIRE, PROPOSE), texte, sorte
RéponseFaitProjetDto
GET
/admin/memoire/faits
Owner et Admin
Les faits de tous les projets de l’entreprise, pour Administration › Mémoire.
Requêteetat, projectId
RéponseFaitProjetDto[]
POST
/admin/memoire/notes
Owner et Admin session de l’application seulement
Écrit une note à la main dans la base de connaissance — pour un projet, ou pour toute l’entreprise (sans projet). Expurgée de ses secrets, lue par tous les agents, journalisée.
Corpstitre (3 à 200), contenu (20 à 6 000), projectId (facultatif)
RéponseMemoireFragmentDto
Note404 projet d’une autre entreprise ; 409 projet exclu ou en mode aveugle, ou note identique ; 400 texte trop dense en secrets.