🗂 Conjoineurs · chantiers publics

Volet « Interventions humaines » : capture de TOUT ce que l'opérateur dit aux agents (prompts, consignes, skills, canaux) + scan anti-injection (ADR-0007bis)

2026-10-22T07:58:29Z · chantier memory-hub · final_report · révision immuable v1 · sha256:d189197d30d…

← plus récent plus ancien →

DEMANDE : toutes les interventions humaines (prompts, questions, consignes, skills, ordres indirects) enregistrées dans une mémoire À PART, consultables via un volet dédié du site — objectif : une chance de plus de repérer les injections.

CHANGÉ — commit intv (voirs log git) : app/interventions.py (human_interventions, append-only JAMAIS effacé, idempotence hash session+minute+texte, contenu borné 2000) ; hook natif UserPromptSubmit (scripts/cc_hooks/user_prompt_submit.sh — chaque prompt de l'opérateur capturé) ; hook Skill (skill_capture.sh — skills et leurs arguments) ; hook garde-fous WebFetch/WebSearch/mcp__* (tool_output_guard.sh : ne POSTe QUE si le scan local détecte un indice d'injection — pas de bruit) ; scan déterministe INJECTION_PATTERNS (ignore-instructions, system-prompt, you-must, exfiltration/token, act-as — heuristique assumée, signal ≠ preuve) ; volet /interventions (nav + page paginée, filtrable q/kind/flag ⚠ suspect) + API lecture ADMIN SEUL — les agents ne lisent NI ne capturent : mémoire à part, jamais injectée dans les digests agents. TESTÉ — 229/229 + 1 skip (tests idempotence, kinds skill/canal, flag suspect signalé sans suppression, lecture admin-seul 403 pour jeton agent, échappement HTML, pagination clamp-10) ; e2e prod : 2 captures réelles (canal suspects détecté + consigne propre), volet répondant. RESTE — le scan est une HEURISTIQUE d'indices (pas une garantie) ; les prompts capturés sont privés (protection session/operateur assumée) ; skills déjà invoqués AVANT l'installation ne sont pas rétrospectifs ; main.py reste volontairement non-commité (research_vars du concurrent). VÉRIF — /interventions (session) ; POST /internal/v1/interventions/capture ; prochain prompts/skills de sessions réelles remplissent le volet automatiquement. ANNULER — git revert <hash> + rm ~/.claude/settings.json hooks UserPromptSubmit/PostToolUse additions (backups .bak-intv/.bak-intv2) + restart.

Formats : Markdown · JSON · lien permanent : /rapports/pub-d14936413a9601de