deamon-vault/_adn/conventions.md
2026-04-19 19:09:32 +02:00

12 KiB

title type created updated owner status description tags related
Conventions du vault DAEMON config 2026-04-19 2026-04-19 jerem active Source unique de vérité pour les conventions du vault. Toute skill / script / agent DOIT s'y conformer. En cas de conflit avec une autre note, ce fichier gagne.
config
conventions
brain
_index
_adn/soul
_adn/skills/_index

Conventions du vault DAEMON

Règle absolue : ce fichier est la source unique de vérité. Toutes les skills, agents, scripts, et notes doivent s'y conformer. Si un autre fichier du vault contredit celui-ci, il doit être corrigé (pas l'inverse).


1. Structure des dossiers

vault/
├── _adn/                  # Identité DAEMON, config, règles (Tier 2 — validation requise)
│   ├── infra/             # Configs infra (VPS, backup, MCP servers)
│   ├── skills/            # Définitions des skills / sub-agents
│   ├── orchestration/     # Multi-agents, routing LLM, budget tokens
│   ├── routines/          # Daily, hebdo, mensuelles, trimestrielles
│   ├── memory/            # Logs append-only (learnings, dream, cron, etc.)
│   ├── identite/          # Écosystème, inspirations, rituels, perceptions
│   ├── hooks/             # Audit-logger, safety-guard
│   └── mcp-servers/       # Config MCP
├── inbox/                 # Tout ce qui est créé dans la journée atterrit ici
│   ├── notion-imports/    # Notes importées depuis Notion (par date)
│   └── daemon-questions/  # Questions soulevées par les agents pendant les runs automatiques
├── projects/              # Notes liées à des projets actifs
├── knowledge/             # Veille, fiches de compétences, références, apprentissages
├── content/               # Idées et briefs de contenu (YouTube, Instagram, blog)
├── journal/               # Journal personnel
│   ├── daily/             # Daily notes (YYYY-MM-DD)
│   ├── introspection/     # Réflexions profondes
│   └── review/            # Reviews (hebdo, mensuelles, trimestrielles)
├── decisions/             # Historique des décisions
└── moc/                   # Maps of Content (index thématiques)

Règle de placement

  • Pendant la journée : tout ce que DAEMON (ou toi) écrit va dans inbox/. Point. Zéro exception.
  • Le soir : la skill obsidian-organizer trie inbox/ vers les bons dossiers.
  • Si tu crées une note manuellement et que tu sais OÙ elle va (ex: un hub projet), tu peux la mettre directement dans le bon dossier. L'organizer ne touchera pas ce qui est déjà bien placé.

2. Types de notes (type dans frontmatter)

Valeurs autorisées uniquement :

Type Description Dossier cible par défaut
project Note liée à un projet actif projects/
resource Fiche connaissance, veille, référence knowledge/
idea Idée, concept, brainstorm knowledge/ (ou content/ si tag contenu/*)
decision Décision avec contexte et raisonnement decisions/
daily Entrée de journal quotidien journal/daily/
introspection Réflexion profonde personnelle journal/introspection/
review Review (hebdo, mensuelle, trimestrielle) journal/review/
meeting Notes de réunion ou échange projects/ (dossier du projet concerné)
hub Hub de suivi projet projects/
moc Map of Content moc/
config Config technique / vault _adn/
audit Audit skills, système, vault _adn/
infra Documentation infrastructure _adn/infra/
orchestration Principes multi-agents _adn/orchestration/
routine Routine quotidienne/hebdo _adn/routines/
memory Log append-only _adn/memory/
agent-soul Identité DAEMON _adn/ (soul.md)
index Index / table d'entrée (_index.md, MOCs) racine ou moc/
inbox Note brute non catégorisée inbox/ (reste ici)

3. Tags — convention stricte

Règles générales

  • Toujours en minuscules, sans accents, tirets pour les espaces
  • Hiérarchiques avec / comme séparateur
  • 2 à 5 tags par note, dont au moins un tag de domaine

Taxonomie officielle

Domaines (domaine/...)

domaine/tech              # tout ce qui est technique
domaine/tech/ia           # intelligence artificielle, LLM, MCP
domaine/tech/devops       # infra, CI/CD, servers
domaine/tech/dev          # développement applicatif
domaine/tech/3d-printing  # impression 3D

domaine/business          # business en général
domaine/coaching          # coaching sportif / mental
domaine/content           # création de contenu

domaine/perso             # vie personnelle
domaine/perso/habitudes   # rituels, habitudes
domaine/perso/journal     # journaling
domaine/perso/sport       # enduroman, training
domaine/perso/sante       # santé physique

Statut (statut/...) — cycle de vie

Tag status frontmatter Sens
statut/draft draft Ébauche, work in progress
statut/active active Active, en cours d'utilisation
statut/review review À relire/mettre à jour
statut/done done Terminée, plus besoin de modifs
statut/archived archived Archivée (doublons fusionnés, obsolète)
statut/parked parked Mise en pause, à reprendre plus tard

Important

: le tag statut/... et le champ status du frontmatter doivent toujours être cohérents. L'organizer corrige automatiquement en cas d'incohérence.

Priorité (priorite/...) — système numérique

Tag Sens
priorite/p0 Critique, action immédiate
priorite/p1 Haute, cette semaine
priorite/p2 Moyenne, ce mois
priorite/p3 Basse, quand temps disponible

Contenu (contenu/...)

contenu/youtube
contenu/instagram
contenu/blog
contenu/newsletter
contenu/podcast

Projets (projet/...)

Un tag par projet actif. Doit correspondre à un projet qui existe dans projects/. Exemples :

projet/openclaw
projet/chaine-youtube
projet/enduroman
projet/aura-app
projet/diet-engine
projet/coaching-pipeline

Source d'import (import/...)

import/notion
import/web
import/manual

Meta (meta/...)

meta/hub          # note hub de projet
meta/moc          # map of content
meta/synthese     # note de synthèse auto-générée (dream)

4. Frontmatter YAML obligatoire

Chaque note commence par :

---
title: "Titre clair et descriptif"
type: <un des types de la section 2>
created: 2026-04-19T14:30:00
updated: 2026-04-19T14:30:00
tags:
  - domaine/xxx
  - statut/xxx
status: draft | active | review | done | archived | parked
summary: "Une phrase de 20-50 mots — un LLM doit pouvoir décider si cette note est pertinente en lisant uniquement ce champ"
source_agent: <qui a créé/touché cette note>
source_llm: <moteur LLM sous-jacent, optionnel>
related:
  - "[[Nom de note liée]]"
---

Champs critiques expliqués

source_agentQui a créé ou modifié la note. Remplace l'ancien source_llm comme champ primary. Valeurs autorisées :

Valeur Sens
human Jerem a créé la note directement
daemon-chat Créée pendant une session conversationnelle avec DAEMON
organizer Triée/enrichie par la skill organizer
dream Consolidée par la skill dream
brain-updater Modifiée par brain-updater
notion-sync Importée depuis Notion par notion-sync
note-creator Créée par la skill note-creator
project-hub Maintenue par project-hub
claude-code Créée pendant une session Claude Code

source_llm (optionnel) — Le moteur LLM sous-jacent. Utile pour traçabilité cross-LLM. Valeurs : claude, grok, gemini, local, none (si c'est un humain).

summary — 20-50 mots, phrase complète qui permet à un LLM de décider "cette note est-elle pertinente pour ma requête ?" sans l'ouvrir.

related — Au moins 1 lien [[...]] interne. Zéro lien = note orpheline = mauvaise découvrabilité.

Champs additionnels selon le type

Pour type: project :

project_name: "openclaw"
project_phase: planning | building | testing | deployed | paused | done
deadline: 2026-06-01

Pour type: decision :

decision: "La décision en une phrase"
alternatives_considered: ["Option A", "Option B"]
confidence: high | medium | low
reversible: true | false

Pour type: daily :

mood: 😊 | 😐 | 😔
energy: high | medium | low
wins: ["Action 1", "Action 2"]

Pour type: resource (veille) :

source_url: "https://..."
source_type: article | video | paper | doc | tweet | podcast
relevance: high | medium | low

Pour notes importées Notion :

source_notion: "URL ou page ID Notion"
imported_at: 2026-04-19T14:30:00
notion_properties: {}

5. Nommage des fichiers

  • Tout en minuscules, tirets pour espaces, pas d'accents, pas de caractères spéciaux
  • Daily notes : YYYY-MM-DD.md (dans journal/daily/)
  • Reviews : YYYY-MM-DD-{hebdo|mensuelle|trimestrielle}.md (dans journal/review/)
  • Décisions : decision-{sujet-court}.md
  • Veille : veille-{sujet}-{source-courte}.md
  • Projets : {projet}-{aspect}.md
  • Hubs : hub-{nom-projet}.md
  • MOC : moc-{domaine}.md
  • Notes importées Notion : conservent leur titre original mais slugifié

6. Identifiants canoniques (références croisées)

Ces fichiers/chemins sont la référence — toute autre mention doit utiliser exactement ces noms :

Ce qu'on référence Nom exact (case-sensitive !)
Fichier profil utilisateur _adn/brain.md (minuscules, PAS BRAIN.md)
Index du vault _index.md à la racine (PAS VAULT-INDEX.md, ni INDEX.md)
Soul DAEMON _adn/soul.md
Ce fichier _adn/conventions.md
Learnings append-only _adn/memory/learnings.md
Dream log append-only _adn/memory/dream-log.md
Brain update log _adn/memory/brain-update-log.md
Notion sync state _adn/memory/notion-sync-state.json
Cron logs _adn/memory/cron-logs.md

7. Règles de modification

Tier 1 — DAEMON écrit librement

  • inbox/ (toutes sous-arbos)
  • projects/ (notes, pas les hubs sans validation)
  • knowledge/
  • content/
  • journal/ (sauf introspections manuelles)
  • decisions/ (en append)
  • moc/ (auto-maintenues par organizer)

Tier 2 — Validation requise

  • _adn/* sauf _adn/memory/ et _adn/skills/ update mineure
  • Hubs de projet (skill project-hub proposera, humain valide)
  • Suppression définitive de notes (archivage OK en Tier 1, suppression jamais auto)

Tier 3 — Jamais

  • Modification rétroactive de _adn/memory/*.md (append-only)
  • Suppression de notes avec status: done ou archived
  • Modification du soul.md sans review humaine

8. Contrat de chaque agent / skill

Toute skill / agent / script qui touche au vault doit :

  1. Respecter cette convention — tags, types, dossiers, nommage
  2. Remplir source_agent avec son nom exact
  3. Mettre à jour updated (ISO 8601) à chaque touche
  4. Ne jamais supprimer — archiver uniquement
  5. Logger ses actions dans _adn/memory/cron-logs.md (append)
  6. Créer une note inbox/daemon-questions/YYYY-MM-DD-{topic}.md + notif Slack si question ambiguë (remplace le "demander confirmation" qui marche pas en cron)
  7. Respecter les circuit-breakers tokens (voir _adn/orchestration/budget-tokens.md)

9. Évolution de ce fichier

Modifications via le même process que les autres fichiers _adn/ :

  1. Proposition humaine ou agent
  2. Review par Jerem
  3. Application
  4. Entrée dans _adn/memory/learnings.md si c'est un changement structurant

Version : 1.0 — 2026-04-19 (initial)