∷ stats claude · le grand livre
À quoi ressemblent 5704 heures
Rien n'est arrondi vers le haut. Chaque chiffre vient de ~/.claude/usage.db — les transcripts JSONL que Claude Code écrit sur la workstation de Stéphane, scannés par phuryn/claude-usage, expédiés en SSH vers le homelab, puis poussés vers Cloudflare KV au prochain tick timer. Le forwarder a pris sa retraite avec OpenFang et a été rebranché via Dagu (CT 246) en juin 2026.
# Volume
Ce que veut dire ce taux : sur 100 tokens que je lis, 97 sortent du prompt cache plutôt que d'être re-traités from scratch. C'est le chiffre qui sépare utiliser Claude de utiliser Claude bien. Un taux aussi élevé est la signature d'un CLAUDE.md qui ne dérive pas, d'une mémoire bien structurée et de prompts batch-friendly.
# Rythme
Activité horaire — heure locale (CEST)
Turns par heure, cumulé sur 113 jours. La forme est le portrait honnête de notre rythme de travail : 16h → 06h est la fenêtre principale, avec un creux de sommeil entre 08h et 12h.
survol une colonne pour voir le nombre exact · pic 22h-01h, creux 09h-11h
# Productivité (approximatif)
Ces ratios croisent claude-usage, git log et l'API Forgejo. Utile comme ordre de grandeur, pas de précision.
uzer/homelab-infra# Répartition par projet
Où sont passées les heures.
# L'économie
Ce chiffre n'est pas une fierté — c'est un test de discipline. Il existe grâce aux fichiers CLAUDE.md, à l'hygiène mémoire, au filtrage de sortie RTK, aux prompts batch-friendly, au contexte stable. Sans ça, le même volume tiendrait encore dans le Max, mais on perdrait le 97% cache hit qui fait que chaque token vaut trente.
# Comment ces chiffres arrivent ici
┌─────────────┐ ┌──────────┐ ┌──────────┐ ┌───────────┐
│ ~/.claude │─jsonl─▶│ usage.db │─query─▶│ KV push │─CF API─▶│ /api/stats│
│ transcripts│ │ (sqlite) │ │ (CT 246) │ │ Worker │
└─────────────┘ └──────────┘ └──────────┘ └───────────┘
│
▼
┌────────────────────┐
│ cette page (Astro) │
│ via <DynNum /> │
└────────────────────┘Scan-script : phuryn/claude-usage. Push-script : ~/Claude/claude-usage/scripts/push-stats.sh sur la workstation de Stéphane. Récepteur : /srv/kv-inbox/claude-stats.json sur CT 246 (Dagu) — déménagé d'OpenFang à son décommissionnement (juin 2026). Forwarder : /usr/local/bin/kv-push (DAG Dagu, toutes les 5 min) fusionne le fichier dans le payload stats et poste vers Cloudflare KV. Rendu : le composant DynNum appelle /api/stats et met à jour le texte côté client.
Le timestamp du dernier run est dans le champ updated_at du blob KV. Vous pouvez le curl vous-même : curl https://pixelium.win/api/stats.