Open source · Gratuit à vie

Votre agent relit les mêmes fichiers.
Vous payez pour ça.

DRIP s'interpose entre votre agent IA et le système de fichiers — remplaçant chaque relecture par un delta ou un sentinel `unchanged`. Même workflow, 34 à 88 % de tokens en moins.

Un seul binaire Rust. SQLite local. Pas de daemon, pas d'appel réseau, pas de télémétrie.

tokens en moins
0–0 %

mesuré sur 8 langages

agents câblés
0

Claude · Codex · Gemini

télémétrie envoyée
100 bytes

vérifié à chaque release

~ /you/projectdrip 0.1.0
$
→ 400 lines (2,403 tok, semantic-compressed)
$
→ [DRIP: unchanged]
$
→ +3 lines
$
→ [DRIP: delta | +3 −0 | 280 B]
$
DRIP Meter (Since Install)
──────────────────────────────────
Tokens saved:102.8K
Reduction:87 %
$ saved:$0.31
████████████████████▒▒▒▒ 87 %

Drop-in pour les agents que vous utilisez déjà

Claude Code
Codex CLI
Gemini CLI
MCP
Apache 2.0
Rust
Open source
Claude Code
Codex CLI
Gemini CLI
MCP
Apache 2.0
Rust
Open source
Claude Code
Codex CLI
Gemini CLI
MCP
Apache 2.0
Rust
Open source
Claude Code
Codex CLI
Gemini CLI
MCP
Apache 2.0
Rust
Open source
Le problème

Les agents IA hémorragient des tokens sur les lectures de fichiers

Votre modèle relit le même fichier cinq fois dans une session. Vous le payez cinq fois.

Le même fichier, encore et encore

Un app.py de 400 lignes lu cinq fois = 2 000 lignes envoyées au modèle — alors que 397 d'entre elles n'ont jamais changé.

$$

Aucune visibilité sur ce qui coûte

Les dashboards de pricing montrent les factures mensuelles. Ils ne disent pas quel fichier votre agent relit vingt fois par heure.

Limites de contexte atteintes plus vite

Plus d'input redondant, plus tôt Claude / Codex compactent. Les compactions effacent les baselines DRIP et forcent des renvois.

Avant / après

Même workflow. 13 % de l'input.

DRIP intercepte les appels Read et substitue un delta ou un sentinel `unchanged`. Même agent, mêmes outils, payloads radicalement plus petits.

Sans DRIP
30,025 tok
read app.py     → 400 lines  (6,005 tok)
read app.py     → 400 lines  (6,005 tok)
read app.py     → 400 lines  (6,005 tok)
read app.py     → 400 lines  (6,005 tok)
read app.py     → 400 lines  (6,005 tok)
                              ─────────
                              30,025 tok
Avec DRIP
2,403 tok92 % saved
read app.py     → 400 lines  (2,403 tok, semantic-compressed)
read app.py     → [DRIP: unchanged]
read app.py     → [DRIP: unchanged]
read app.py     → [DRIP: unchanged]
read app.py     → [DRIP: unchanged]
                              ─────────
                              2,403 tok
Sous le capot

Un seul binaire Rust qui se rentabilise en une session

Delta sur chaque relecture

Première lecture : le fichier. Toutes les suivantes : un unified diff via `similar`, un sentinel `[unchanged]`, ou — pour les gros diffs — un fallback vers full content.

Compression sémantique

13 langages reconnus. Les corps de fonction sont élidés à la première lecture, les signatures + imports + déclarations de classe préservés. Zéro perte structurelle vérifiée sur les 8 fixtures de benchmark.

Lectures partielles

`Read(file, offset, limit)` est scopé fenêtre : DRIP diff uniquement la plage demandée, renvoie un sentinel `unchanged (lignes X-Y)` quand la fenêtre est byte-identique, et ne mute jamais la baseline full-content du fichier.

Certificats d'édition

Lisez un fichier juste après l'avoir édité et DRIP renvoie une attestation 390 octets (hash + lignes touchées + noms de symboles) au lieu de laisser l'agent re-lire 600 lignes qu'il vient d'écrire.

Ledger de compaction de contexte

Schema v9 tracke combien de fois Claude / Codex compactent, combien de tokens ont été renvoyés, et décore les premières lectures avec `↺ context was compacted` pour que l'agent sache pourquoi.

DripMeter pour macOS (optionnel)

App barre de menu compagnon qui affiche vos économies en direct : breakdown par agent, top files, sparkline, flux d'activité temps réel. Lit la SQLite locale de DRIP, pas de réseau.

Un init par agent

Trois agents. Un seul CLI.

DRIP se câble dans Claude Code via les hooks Pre/PostToolUse et dans Codex/Gemini via MCP. Une commande par agent — idempotente, non-destructive.

Claude Code logo

Claude Code

Hooks PreToolUse / PostToolUse

$drip init -g

Global (~/.claude/)

Codex CLI logo

Codex CLI

Serveur MCP (read_file)

$drip init --agent codex

~/.codex/config.toml

Gemini CLI logo

Gemini CLI

Serveur MCP (read_file)

$drip init -g --agent gemini

Global (~/.gemini/)

App compagnon · macOS

Voyez vos économies grimper — en direct, dans votre barre menu.

DripMeter est l'app macOS compagnon de DRIP. Elle lit la SQLite locale (zéro télémétrie) et affiche vos économies en temps réel : par agent, par fichier, par modèle de coût. Un clic, et c'est lancé.

  • 100% local
  • macOS 14+
  • Swift 6.2
  • Zéro réseau
  • Open source
DripMeterMAJ il y a 2m
108,2Ktokens économisés
Éco.87 %
Money0,31 $
CO₂28 g
Par agent
Claude Code62 K
12 sessions · 5m94%
Codex28 K
3 sessions · 1h71%
Gemini0
Hooks ok · en attente0%
Projection coût
249 $/ mois en Opus 4.7

Compteur barre menu live

Une petite goutte verte qui se remplit selon votre % d'économies. Clic pour déployer.

Détail par agent

Claude Code, Codex, Gemini — voyez d'où viennent vos économies, avec les logos officiels et les badges d'installation détectée.

Projection de coût

Sonnet 4.6, Opus 4.7, GPT-5 ou Gemini 2.5 — DripMeter extrapole vos économies par jour, semaine, mois, année.

Rapport Markdown

Un clic exporte un .md portable avec totaux à vie, streak, tables 7j/30j et breakdown par agent.

Tracker de compactions

Expose le ledger v9 de DRIP : combien de fois votre agent compacte, combien de tokens ont été renvoyés, avec un score de qualité.

Flux d'activité temps réel

Voyez DRIP intercepter les lectures à mesure, FSEvents. Cliquez une ligne pour ouvrir le fichier dans votre éditeur.

$brew install --cask drip-cli/drip/dripmeter
Et il y a encore

Trois morceaux de l'onglet Vue — chacun est une vraie vue SwiftUI dans l'app.

Streak 12 j

Panneau streak

Flamme qui pulse, barre semaine, progression objectif.

Today12-day streak
18.2Ksaved · target 25K
M
T
W
T
F
S
S
31,5K moy / j

Tuiles rollup

Toggle 7j / 30j, moyenne journalière, pic.

Rollup
7d30d
Saved
220K
Avg/d
31.5K
Peak
80K
Active
6/7
73 jours actifs

Heatmap d'activité

90 jours, intensité log-bucketée, jour entouré.

Activity~3 months
lessmore
Installation

Une commande par plateforme.

DRIP est un seul binaire Rust. macOS via Homebrew, Linux via le script d'install (musl-static auto-détecté), Windows via le zip pré-build, ou `cargo install drip-cli` n'importe où.

  1. 1

    Installer le binaire

    Un seul binaire Rust de 4 Mo. macOS Apple Silicon + Intel, Linux x86_64 + arm64, Windows x86_64.

    $brew install drip-cli/drip/drip

    Vous voulez aussi l'app barre de menu ? brew install --cask drip-cli/drip/dripmeter

  2. 2

    Le câbler à votre agent

    Idempotent et non-destructif — drip init écrit les hooks via tmp-file + rename(2), n'écrase jamais votre CLAUDE.md ou settings.json existants.

    $drip init -g
  3. 3

    Voir les économies

    drip meter affiche les économies humanisées depuis l'install. Ou pipez --json dans votre propre dashboard.

    $drip meter
FAQ

Questions, réponses honnêtes

Non. Un seul binaire Rust, une seule base SQLite (~/Library/Application Support/drip/sessions.db sur macOS). Pas de daemon, pas d'appel réseau, pas de télémétrie. Vérifié à chaque release avec `cargo machete` + audit manuel du graphe de dépendances.

Mesuré 34 % à 88 % sur un benchmark 8 langages (8 langages × 4 styles de workflow), avec zéro perte structurelle vérifiée sur la compression sémantique. Voir BENCHMARKS.md dans le repo pour la table complète.

Claude Code (hooks PreToolUse / PostToolUse), Codex CLI (serveur MCP), Gemini CLI (serveur MCP). L'outil read built-in de Cursor bypasse MCP et n'est pas dans la roadmap — DRIP ne verrait que les appels que le modèle a délibérément routés à travers, pas le contrat des autres agents.

Non. drip init écrit via tmp-file + rename(2), préserve les bits Unix mode, ne touche jamais le contenu hand-edited de CLAUDE.md ou settings.json. drip uninstall reverse chaque octet écrit — les hooks préexistants et les serveurs MCP non liés restent intacts.

macOS arm64 + x86_64, Linux x86_64 + arm64, WSL, Windows x86_64. La toolchain Rust ≥ 1.95 le compile depuis la source sur n'importe quelle plateforme avec cargo.

drip meter, drip sessions, drip replay sont les surfaces CLI. Pour les utilisateurs macOS, DripMeter est une app compagnon en barre de menu qui lit la même SQLite et affiche les économies en direct, avec breakdown par agent et click-through vers votre IDE.

L'équipe

Construit par Perform Code, à Lille.

Trois ingénieurs qui livrent l'infrastructure ennuyeuse dont les agents IA ont besoin pour arrêter d'hémorragier des tokens. Open source par défaut, pas de VC, pas d'upsell.

Maxence Bombeeck

Founder · Designer & Swift

Pense la marque et construit DripMeter. Possède la surface Swift macOS de bout en bout.

@MaxenceB59

Hugo Barbosa

Founder · Core DRIP

A écrit le cœur Rust de DRIP : modèle de session, compression sémantique, moteur de delta, hooks agents.

@Hugobrbs

Hugo Ponthieux

Founder · DevOps & Infra

Gère les pipelines de release, benchmarks, infra et canaux de distribution.

@Hugoy8

Arrêtez de payer deux fois pour le même fichier.

Un seul binaire Rust, zéro télémétrie. DripMeter compte pour vous depuis la barre menu. 34 à 88 % de tokens en moins dès la première session.