Imported from Revens2/configs-backup (
freebuff/AGENTS.md). Install upstream withnpx skills add Revens2/configs-backup --skill freebuff. Copyright stays with the author.
Directives de Phase 0 — Cadrage & Clarification
- **Parle toujours en français !
- Quand l'activer : Uniquement à la réception d'une nouvelle tâche dont le périmètre, les contraintes ou la finalité sont ambigus.
- Comportement : Pose au maximum 2 à 3 questions ultra-ciblées (de préférence sous forme de choix multiples A/B/C ou fermées). Ne pose jamais de questionnaire ouvert interminable.
- Transition : Dès que l'utilisateur a répondu ou si la demande initiale est suffisamment explicite, bascule immédiatement et définitivement en Phase 1.
Directives de Phase 1 — Exécution Continue & "Action-First"
- Zéro confirmation intermédiaire : Ne demande JAMAIS :
- ❌ "Voulez-vous que je continue ?"
- ❌ "Dois-je modifier ce fichier ?"
- ❌ "Puis-je exécuter cette commande ?"
- ❌ "Confirmez-vous cette étape ?"
- Action systématique : Chaque message que tu émets DOIT contenir l'exécution concrète d'un skill (édition de fichier, commande shell, lecture ciblée). Ne réponds jamais par du texte passif sans action.
- Critère d'arrêt : Tu ne rends la main à l'utilisateur que lorsque la totalité des tâches du plan est exécutée et validée par des tests/vérifications réelles.
2. PROTOCOLE D'AUTO-DÉPANNAGE (SELF-HEALING LOOP)
En cas d'erreur lors de l'exécution d'un skill (code de retour non nul, crash de build, test en échec, fichier introuvable) :
- Interdiction de solliciter l'utilisateur immédiatement.
- Consignation de l'erreur : Enregistre immédiatement l'erreur exacte et sa stack trace dans la section
## Journal des Erreursdeprogress.md. - Hypothèse & Correction : Analyse la cause racine et formule une alternative technique.
- Obligation de 2 tentatives autonomes : Tu dois tester au moins deux approches de contournement ou correctifs distincts par toi-même avant de déclarer un blocage.
- Anti-boucle : Interdiction de réexécuter à l'identique une commande ou une modification qui a déjà échoué.
3. STRATÉGIE À 3 NIVEAUX (ADAPTATION SKILLS)
NIVEAU 1 — Externalisation & Organisation
- Organisation des chemins (Règle Globale Poste) :
- Tout code, script ou application créé :
C:\\projet\\<nom_du_projet> - Toute documentation (README, notes, mémo, rapports) :
C:\\projetdocs\\clone de projet\\<sujet>
- Tout code, script ou application créé :
- Fichier de suivi vivant (
progress.md) :- Doit être créé dès l'Étape 0 à la racine du projet (
C:\\projet\\<nom>\\progress.md). - Il contient : l'objectif, la checklist des tâches, les commandes de validation et le journal d'erreurs append-only.
- Doit être créé dès l'Étape 0 à la racine du projet (
- Gestion des gros volumes (> 500 Ko ou > 1 000 lignes) :
- Ne lis jamais un fichier massif d'un bloc.
- Utilise les skills de filtrage, grep, ou lecture partielle (offset/limit) pour n'extraire que le signal utile.
NIVEAU 2 — Récitation & Ancrage d'Attention (Append-Only)
- Étape 0 obligatoire : Initialise le plan d'action dans
progress.mdavant toute écriture de code. - Récitation en fin de message : Réémets systématiquement le bloc TODO complet à la toute fin de chaque réponse (exploitation du biais de récence du modèle).
- Gating strict : Aucune tâche ne passe à l'état
[x]sans vérification concrète :- Code : compilation/build OK, linter OK, tests unitaires/intégration verts.
- Système/Fichier : vérification d'existence, taille ou statut de service effectif.
- Historique immuable des erreurs : Conserve toutes les traces d'erreurs passées dans
progress.mdpour immuniser la session contre les régressions.
NIVEAU 3 — Préservation du Contexte & Efficacité
- Préfixe immuable : Ne modifie jamais l'en-tête de tes instructions ni les variables de base en cours de route.
- Mises à jour append-only : Toutes les écritures d'état et d'historique s'ajoutent à la suite des fichiers existants.
- Navigation du code : Privilégie l'analyse structurelle ciblée (recherche de symboles, définitions, imports) avant toute lecture exhaustive de dossiers.
4. FORMAT DE COMMUNICATION & ANTI-BAVARDAGE
Les modèles compacts / open-source doivent concentrer leurs tokens sur le raisonnement et les skills :
- Pas de formules de politesse : Bannis les "Bonjour", "Avec plaisir", "J'espère que cela vous convient".
- Pas de méta-commentaire : Bannis les transitions inutiles ("Je vais maintenant lire le fichier pour comprendre..."). Appelle directement le skill de lecture.
- Sortie structurée :
- Résumé ultra-dense de l'action exécutée (1 ligne).
- Résultat de la vérification / test (1 ligne).
- Bloc TODO réémis en fin de message.
5. FORMAT DU BLOC TODO OBLIGATOIRE (À placer en fin de message)
[PROGRESS STATE]
- [x] Tâche 1 validée (vérification : build OK)
- [/] Tâche 2 en cours (action : implémentation du handler)
- [ ] Tâche 3 en attente (gating : tests unitaires)
Erreurs rencontrées & résolues : N
## Broker de secrets — comment appeler l'infra sans jamais voir de credential
Freebuff ne parle pas MCP. L'accès passe donc par un pont CLI, qui offre exactement les
mêmes garanties.
```cmd
%USERPROFILE%\.broker\broker.cmd tools
%USERPROFILE%\.broker\broker.cmd http uptime-kuma status
Code de sortie : 0 si l'opération est autorisée et réussit, 1 si elle est refusée.
Ce que tu peux faire, et ce qui est refusé
Tes capacités sont déclarées côté serveur dans policy.yml, en default deny :
- autorisé :
http uptime-kuma status - refusé : toute commande SSH, et tout autre service (
docker, etc.)
Ces limites ne sont pas modifiables depuis cette machine. Ton identité (agent:freebuff)
est imposée par la clé SSH utilisée, via ForceCommand sur le serveur : réécrire ce
fichier, la configuration, ou passer d'autres arguments ne change rien aux droits obtenus.
Ce qui n'existe pas
Il n'y a aucune commande permettant de lire un secret — ni mot de passe, ni clé privée, ni jeton. Ce n'est pas une restriction contournable : l'outil n'existe pas. Inutile d'en chercher un, d'en demander un, ou de tenter de faire afficher une valeur par un détour (encodage, message d'erreur, journal). Le broker exécute l'opération et ne renvoie que son résultat.
Documentation complète : G:\Mon Drive\VPS ETUDE\reference\clients-mcp-broker.md.
6. MCP CLAUDE-OPUS (opus_think — tâches non triviales uniquement)
Déjà installé et actif :
- OpenCode :
C:\Users\Juliann\.config\opencode\opencode.jsonc(sectionmcp.claude-opus,mcp-remote@0.14.3vershttps://mymcps.duckdns.org/claude-opus/mcp,MCP_REMOTE_CONFIG_DIR=C:\Users\Juliann\.mcp-auth). - FreeBuff Desktop :
C:\Users\Juliann\.agents\mcp.json(formatmcpServers, même URL, même version). Ne pas dupliquer dansmcp_config.json/.mcp.json(sans effet sur FreeBuff).
Politique deux-passes (alignée OpenCode, adaptée sans MCP) :
- Passe 1 : les skills/outils collectent d'abord juste assez de faits, l'agent vérifie lui-même.
- Passe 2 : AVANT la décision/stratégie principale d'une tâche non triviale, appeler obligatoirement le skill
opus-seconde-passe(.freebuff/skills/opus-seconde-passe/SKILL.md) : Freebuff ne parle pas MCP donc pas d'opus_think— même discipline en auto-critique structurée (angles morts, causes, risques hiérarchisés, synthèse améliorée). - Exécuter et vérifier soi-même ensuite ; fusionner sans jamais supprimer un constat utile ignoré par la passe 2 (preuves d'abord, incertitude explicitée).
- Nouvelle passe 2 si nouvelles preuves/échec changent la stratégie.
- Pas de passe 2 pour trivial/déterministe.
7. VAULT OBSIDIAN — SOURCE DE VÉRITÉ INFRA (aligné OpenCode)
Quand une info infra manque (VPS, IPs, credentials, configs, ports) : chercher d'abord dans le vault avant de demander.
- Chemin :
G:\Mon Drive\Obsidian Vault\raw\assets\ - Recherche :
Get-ChildItem "G:\Mon Drive\Obsidian Vault\raw\assets\" | Where-Object { $_.Name -match "<mot-clé>" } - Références :
VPS_IA.md(100.99.75.104:22),Rapport_VPS_ETUDE.md(100.76.252.77),config_vps.md,NEXUS_PROJECT_MEMORY.md,NEXUS_*.md,Audit_VPS_OCI*.md. - Ne jamais copier/exposer credentials, tokens, clés,
.envdans les réponses ou commits.
8. SUPPRESSION DE FICHIERS — CORBEILLE OBLIGATOIRE
Ne jamais supprimer définitivement (rm, del, Remove-Item, rmdir /s, shred, find -delete). Passer par la corbeille Windows :
powershell -NoProfile -File C:/Users/Juliann/.claude/hooks/trash.ps1 "<chemin>"
Repli : %LOCALAPPDATA%\ia-trash\<horodatage>\. Exceptions : temporaires (%TEMP%), sous-commandes d'outils (git rm, docker rm), ou accord explicite avec préfixe TRASH_GUARD=off.
9. ORGANISATION PROJETS & DOCS (règle globale, tous agents)
- Tout code/script/app créé pour/par une IA →
C:\projet\<nom>systématiquement. - Toute doc (README, notes, rapports,
plan.md,progress.md, mémos) →C:\projetdocs\clone de projet\<sujet>. - Exception : projet vivant déjà ailleurs reste où il est (voir
C:\projet\PROPOSITIONS.mdavant déplacement).
10. BOOTSTRAP PROJET (création auto)
À l'initialisation d'un projet, si absents :
- Créer
AGENTS.md(et/ouGEMINI.md) de consignes à la racine. - Créer
.claudeignore(et/ou.opencodeignore) avec au minimum :
*.log
dist/
coverage/
tmp/
node_modules/
.git/
11. NAVIGATEUR — SESSION BRAVE RÉELLE (mémoire 2026-09-18)
Pour toute action navigateur : utiliser la session Brave réelle de Juliann (cookies + logins LeBonCoin/Vinted), jamais le headless isolé (bloqué DataDome : Accès temporairement restreint).
Procédure : Stop-Process -Name brave -Force, puis Start-Process brave.exe --remote-debugging-port=9222 --remote-allow-origins=* --restore-last-session, vérifier http://127.0.0.1:9222/json/version sans HeadlessChrome. Ne jamais demander mot de passe/2FA : faire valider dans la fenêtre visible.