- Réécriture HANDOFF.md dashboard multi-domaines - Mise à jour MEMORY.md / TOOLS.md / AGENTS.md - Cleanup fichiers cron obsolètes + fichiers root - Gmail Phase E : audit, 18 filtres natifs, labels Promos/Dev-Tools/Social - Gmail Phase F : archive Philippot + Ulys terminée
6.6 KiB
6.6 KiB
Mémoire opérationnelle — MEMORY.md
Connaissances persistantes pour l'agent. Lu à chaque création de session.
Identité du système
OpenClaw : v2026.6.5 (mis à jour le 11/6/2026)
Hébergement : Synology DS920+ ARCHIVE3 (RAM 20Gi, /volume1/docker/)
LLM backend : Qwen/Qwen3-VL-30B-A3B-Thinking-FP8 servi par vLLM sur DGX Spark, --served-model-name=qwen3-vl
Utilisateur principal : Thierry Tallagrand (+33607148216)
Vision projet : système d'orchestration personnelle (bourse via N8N, mail multi-comptes, photos→sheets, WhatsApp/GUI).
Capacités opérationnelles
Gmail (gog CLI v0.21.0) — ACTIF
- ✅ Envoyer mail :
gog gmail send --to ... --subject "..." --body "..." --attach <fichier> - ✅ Lire/chercher :
gog gmail search "..." -j --max N - ✅ Brouillons :
gog gmail drafts create/list/send/delete - ✅ Trier :
gog gmail trash/archive(toujours--dry-rund'abord) - ✅ Labels :
gog gmail labels list,gog gmail messages modify --add-label/--remove-label
WhatsApp — ACTIF
- ✅ Envoi messages texte vers l'utilisateur principal
- ✅ Envoi images PNG/JPEG — SVG interdits
- ✅ Commande
/newpour nouvelle session DM
Bourse — Workflow N8N (refonte 2026-06-24)
- ✅ Graphe : webhook N8N
POST https://n8n.airtria.pro/webhook/bourse-graphe(workflow4bluZIeN3TnbzIrv) - ✅ Watchlist : éditable dans
workspace/bourse-config.json - ✅ Prix texte rapide :
curl -fs "https://query1.finance.yahoo.com/v8/finance/chart/SYMBOLE?interval=1d&range=1d" | jq '.chart.result[0].meta | {price: .regularMarketPrice, prev: .chartPreviousClose, currency}' - ✅ Cron :
orange-cloture(40 17 * * 1-5) via le workflow N8N - ⚠️ OBSOLÈTES (ne plus utiliser) :
orange-bourse.md,get_quote.py,generate_chart.py,clean_bourse_md.py— archivés dansworkspace/_archive-bourse-20260624/
Filesystem & exec
- ✅ Lecture/écriture dans
/home/node/.openclaw/workspace/ - ✅ Exec
python3,node,curl,jq,git - ✅ Aucun
pip installruntime
Web
- ✅
web_fetch(1500 chars max),web_search(10 résultats max)
Hard constraint GLOBAL — Anti-amnésie
L'agent NE DIT JAMAIS "je ne peux pas faire X" sans vérification.
Procédure obligatoire avant tout refus :
- Chercher X dans
TOOLS.md(sections 1-9) - Si X est documenté → tenter la commande et rapporter le résultat
- Si erreur → rapporter l'erreur EXACTE, pas l'incapacité
- Si vraiment non documenté → demander précision à l'utilisateur
Exemples de refus INTERDITS :
- "Je ne peux pas envoyer un mail" (faux : Gmail send actif)
- "Je n'ai pas accès à Gmail" (faux : auth persistée)
- "Je suis un assistant sans capacités" (faux : voir
TOOLS.md) - "Gmail à venir" (faux : opérationnel depuis 9/6/2026)
- "Je ne peux pas tracer un graphe boursier" (faux : webhook N8N actif depuis 24/6/2026)
Bourse — Architecture N8N (source de vérité actuelle)
Principe
Agent = interlocuteur. N8N = exécutant. Aucune donnée n'est editée à la main.
Source de vérité
- Fichier :
workspace/bourse-config.json - Tickers FR : suffixe
.PA(ORA.PA, TTE.PA) - Tickers US : sans suffixe (NVDA, AAPL)
- Aliases et options par défaut définis dans le JSON
Crons actifs
orange-cloture(40 17 * * 1-5Europe/Paris) : appelle le webhook N8N et envoie le PNG sur WhatsApp.- Actuellement en timeout — voir
workspace/HANDOFF.mdTODOs.
- Actuellement en timeout — voir
Crons bourse obsolètes (désactivés dans SQLite)
orange-ouvertureorange-intradayorange-chart-update
Format réponse standard
- Cours simple :
ORA.PA : 17,86€ (+1,16%) - Indisponible/marché fermé : dire "Aucune donnée", ne pas inventer
- Graphe : 3 lignes max + PNG attaché
Gmail — Suivi des phases
Phase terminées
- Re-auth OAuth + GOG_HOME persisté (2026-06-09)
- Phase D : 12 401 mails trashés
Phases terminées
- Phase E : filtres natifs Gmail anti-spam (2026-06-25) — 18 filtres créés, ~889 messages archivés
- Phase F : archive Philippot + Ulys (2026-06-25) — inbox vides, futurs messages filtrés
Phases en attente
- Phase G : longue traîne newsletters
Cron actif
daily-email-report(30 8 * * *Europe/Paris) → résumé quotidien WhatsApp des dernières 24h
TODO actuel
Haute priorité
- Stabiliser le cron
orange-cloture(timeouts) - Régler le max tokens GUI à ~8192 (navigateur)
Moyenne priorité
- Tester "2 graphes séparés zoomés" (2×
beginAtZero:false) - Surveiller l’efficacité des filtres Phase E (1–2 semaines)
- Phase G Gmail : longue traîne newsletters
Basse priorité
- Aligner
agents/main/agent/models.jsonavecvllm/qwen3-vl - Augmenter
OPENCLAW_CRON_JOB_TIMEOUT_MSsi le Thinking déborde
Apprentissages structurants
Sessions précédentes
- 9/6/2026 : Re-auth OAuth Gmail + GOG_HOME persisté (test compose down/up validé)
- 10/6/2026 : Fix cron orange-intraday (prompt "OK" → vrai cours), RAM upgrade 16GB
- 10/6/2026 : Découverte SVG incompatible WhatsApp + bug tri chronologique
- 23/6/2026 : Migration du cron email horaire (
hourly-email-check) vers un rapport quotidien (daily-email-report) à 8h30 Europe/Paris. Source de vérité :state/openclaw.sqlite(pas les JSON obsolètes). Format : résumé court global + détail des messages importants. - 24-25/6/2026 : Refonte bourse via N8N — suppression des scripts Python, du fichier
orange-bourse.mdet des workflows cassés ; passage au modèle Thinking. - 25/6/2026 : Phase E Gmail (filtres natifs) + Phase F (archive Philippot/Ulys) terminées. Audit via SSH sur Synology +
gogdans containeropenclaw-gateway.
Patterns à respecter
- Test après chaque modification (checklist comportementale)
- Backup AVANT chaque mutation (
.bak-<TS>avec timestamp) - 3 couches doivent rester alignées : Tools/Skills (
TOOLS.md) + Knowledge (MEMORY.md) + Identity (SOUL.md/IDENTITY.md) - L'agent ne modifie jamais des fichiers directement quand un outil/service est la source de vérité (cas bourse :
bourse-config.jsonOK, mais les prix viennent de Yahoo via N8N)
Méta : où trouver quoi
| Sujet | Fichier de référence |
|---|---|
| Skills opérationnels (syntaxe gog, webhook, etc.) | TOOLS.md |
| Comportement, hard constraints | AGENTS.md |
| Identité, persona | SOUL.md, IDENTITY.md |
| État global / transfert inter-sessions | HANDOFF.md |
| Mode batch/cron silencieux | HEARTBEAT.md |
| Règles métier Gmail | gmail-rules.md |
| Données bourse (watchlist + options) | bourse-config.json |
| Mémoire évolutive (ce fichier) | MEMORY.md |