Skip to content

Research: patterns à piocher chez OpenWolf (token ledger, file-read dedup, anatomy.md) #86

@izo

Description

@izo

Contexte

OpenWolf (AGPL-3.0) est un middleware Claude Code qui promet ~65% de réduction de tokens via 3 artefacts et 6 hooks Node invisibles. Comparaison avec l'écosystème ulk existant + identification des patterns à piocher.

Comparaison

OpenWolf Ulk équivalent Gap
anatomy.md — cartographie fichiers + token estimates godspeed (00) + agents/registry.json Pas de token estimates par fichier
cerebrum.md — Do-Not-Repeat list Knowledge Vault Loop (lovecraft 47) + MEMORY.md Concept similaire, déjà couvert
token-ledger.json — tracking lifetime context-audit (55) + docs/apfel-report.md Pas de ledger cumulatif par session
buglog.json — bug fix memory memory-protocol (docs/_memory/) Déjà couvert
Hooks Node invisibles Hooks opt-in (--with-memory-loop) Philosophie différente : ulk = transactionnel, OpenWolf = invisible

Patterns à piocher (sans copier — AGPL-3.0 contaminant)

1. Token ledger par session (P2, effort-S)

Étendre docs/apfel-report.md avec un bloc agrégé : tokens économisés par apfel + tokens estimés par read/edit/grep sur la session. Output lisible par gandalf/context-audit pour scoring plus précis.

2. File-read deduplication via hook (P3, effort-M)

Hook PreToolUse sur Read qui vérifie un cache de session (~/.claude/state/read-cache.json) et avertit "fichier déjà lu Il y a N tours" avant re-read. Opt-in via flag --with-dedup-hook. Bénéfice concret : évite les re-reads silencieux en sessions longues.

3. Enrichir output godspeed avec token estimates (P3, effort-S)

Ajouter un champ estimated_tokens par fichier dans le rapport godspeed (approximation chars/4). Permet à bruce/shuri de prioriser les fichiers pour exploration, et à context-audit de flagger les CLAUDE.md > 4000 tokens.

Non-retenu

  • Middleware invisible : conflit avec session-practices.md ("Keep exchanges transactional"). Ulk préfère les agents explicites.
  • Intégration du code OpenWolf : AGPL-3.0 est copyleft fort, incompatible avec l'esprit "bundlable" d'ulk.
  • Duplication cerebrum.md / buglog.json : déjà couverts par Knowledge Vault Loop.

Références

  • OpenWolf : https://github.com/cytostack/openwolf
  • Ulk existant : agents/_shared/apfel-protocol.md, agents/_shared/memory-protocol.md, agents/specials/55-context-audit.md
  • Règles : .claude/rules/session-practices.md

Acceptance

  • Spec courte pour chacun des 3 patterns (1 page max, dans docs/analysis/openwolf-patterns.md)
  • Décision go/no-go par pattern (avec effort réel vs estimation ici)
  • Si go : ouverture tickets ULK dédiés

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions