Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Tasarruflar

PRECC, her müdahaleden elde edilen tahmini token tasarrufunu takip eder. PRECC’nin ne kadar israfı önlediğini görmek için precc savings kullanın.

Hızlı özet

$ precc savings
Session Token Savings
=====================
Total estimated savings: <span data-stat="session_tokens_saved">8,741</span> tokens

Breakdown:
  Pillar 1 (cd prepends):         <span data-stat="session_p1_tokens">3,204</span> tokens  (<span data-stat="session_p1_count">6</span> corrections)
  Pillar 4 (skill activations):   <span data-stat="session_p4_tokens">1,560</span> tokens  (<span data-stat="session_p4_count">4</span> activations)
  RTK rewrites:                   <span data-stat="session_rtk_tokens">2,749</span> tokens  (<span data-stat="session_rtk_count">11</span> rewrites)
  Lean-ctx wraps:                 <span data-stat="session_lean_tokens">1,228</span> tokens  (<span data-stat="session_lean_count">2</span> wraps)

Ayrıntılı döküm (Pro)

$ precc savings --all
Session Token Savings (Detailed)
================================
Total estimated savings: <span data-stat="session_tokens_saved">8,741</span> tokens

Command-by-command:
  #  Time   Command                          Saving   Source
  1  09:12  cargo build                      534 tk   cd prepend (cargo-wrong-dir)
  2  09:14  cargo test                       534 tk   cd prepend (cargo-wrong-dir)
  3  09:15  git status                       412 tk   cd prepend (git-wrong-dir)
  4  09:18  npm install                      824 tk   cd prepend (npm-wrong-dir)
  5  09:22  find . -name "*.rs"              387 tk   RTK rewrite (output truncation)
  6  09:25  cat src/main.rs                  249 tk   RTK rewrite (lean-ctx wrap)
  7  09:31  cargo clippy                     534 tk   cd prepend (cargo-wrong-dir)
  ...

Pillar Breakdown:
  Pillar 1 (context resolution):   <span data-stat="session_p1_tokens">3,204</span> tokens  <span data-stat="session_p1_pct">36.6</span>%
  Pillar 2 (GDB debugging):            0 tokens   0.0%
  Pillar 3 (mined preventions):        0 tokens   0.0%
  Pillar 4 (automation skills):    <span data-stat="session_p4_tokens">1,560</span> tokens  <span data-stat="session_p4_pct">17.8</span>%
  RTK rewrites:                    <span data-stat="session_rtk_tokens">2,749</span> tokens  <span data-stat="session_rtk_pct">31.5</span>%
  Lean-ctx wraps:                  <span data-stat="session_lean_tokens">1,228</span> tokens  <span data-stat="session_lean_pct">14.1</span>%

Tasarruflar nasıl tahmin edilir

Her düzeltme türünün, PRECC olmadan ne olacağına dayalı tahmini bir token maliyeti vardır:

Düzeltme türüTahmini tasarrufGerekçe
cd prepend~500 tokensHata çıktısı + Claude muhakemesi + yeniden deneme
Beceri etkinleştirme~400 tokensHata çıktısı + Claude muhakemesi + yeniden deneme
RTK rewrite~250 tokensClaude’un okuması gereken ayrıntılı çıktı
Lean-ctx wrap~600 tokensBüyük dosya içeriği sıkıştırıldı
Öğrenilmiş önleme~500 tokensBilinen hata kalıbından kaçınıldı

Bunlar muhafazakâr tahminlerdir. Gerçek tasarruflar genellikle daha yüksektir çünkü Claude’un hatalar hakkındaki muhakemesi ayrıntılı olabilir.

Kümülatif tasarruflar

Tasarruflar PRECC veritabanında oturumlar arasında kalıcıdır. Zamanla toplam etkiyi takip edebilirsiniz:

$ precc savings
Session Token Savings
=====================
Total estimated savings: <span data-stat="session_tokens_saved">8,741</span> tokens

Lifetime savings: <span data-stat="total_tokens_saved">142,389</span> tokens across <span data-stat="total_sessions">47</span> sessions

Durum çubuğu

Kurulumdan sonra PRECC, ~/.claude/settings.json dosyasına bir statusLine girdisi ekler; böylece Claude Code durum çubuğu canlı oturum metriklerini gösterir:

$0.42 spent | 1.2M in/out | 📊 last cmd: −1.2K | PRECC: 7 fixes | 5.8ms avg | this session: 320 saved over 7 cmds (~$0.05) | lifetime: 8.9K saved over 217 cmds (~$2.85)

Etiketleri kendi dilinizde göstermek için PRECC_LANG değişkenini ayarlayın — Yerelleştirme bölümüne bakın.

Her segment:

SegmentKaynakAnlamıOturum yeniden başlatıldığında sıfırlanır mı?
$0.42 spentcost.total_cost_usdClaude Code tarafından bildirilen kümülatif oturum maliyetiEvet
1.2M in/outtotal_input_tokens + total_output_tokensOturum boyunca önbelleğe alınmamış giriş + çıkış tokenleriEvet
📊 last cmd: −1.2KEn son Bash komutunun PRECC ölçümüOrijinali yeniden çalıştırarak ölçülen gerçek tasarrufHayır (oturumlar arasında korunur)
PRECC: 7 fixesmetrics.logBu oturumdaki düzeltme sayısı — yalnızca sayım, sahte token tahmini yokEvet
5.8ms avgPRECC kanca gecikmesi p50PRECC’in her araç çağrısını işlemek için harcadığı süreEvet
bash 18% of totalpost_observations.logBash çıktısından gelen oturum tokenlerinin payı — PRECC’in tasarruflarının doğal olarak toplam maliyetin bir kısmı olmasının nedenini açıklar (PRECC yalnızca Bash çıktısını optimize eder)Evet
this session: 320 saved over 7 cmds (~$0.05).lifetime_summary.json − baselineOturum başına gerçek delta. Delta sıfır olduğunda gizlenir (oturum başlangıcı)Evet (taban yeniden anlık görüntü alınır)
lifetime: 8.9K saved over 217 cmds (~$2.85).lifetime_summary.jsonPRECC ilk yüklendiğinden bu yana biriken tasarruf edilen tokenler ve yeniden ölçülen komutlar, artı geçerli token başı fiyat üzerinden tahmini USD değeriHayır

lifetime: segmenti en sona yerleştirilir; böylece Claude Code arayüzü çubuğu sağ kenardan kırptığında ilk kesilen o olur.

Maliyet ve token sayısı neden bölünemez

Görüntülenen 1.2M in/out, $0.42 spent değerini üreten payda değildir. Claude Code’un cost.total_cost_usd değeri, API’nin tam token dökümünden hesaplanır — temel giriş, çıkış, artı önbellek okumaları ve önbellek oluşturmaları. Oturum genelindeki kümülatif önbellek token sayıları statusline şemasında açılmaz, bu yüzden PRECC yalnızca görünür (önbellek olmayan) kısmı gösterebilir.

Yoğun dosya yeniden okumaları içeren uzun oturumlarda, önbellek okumaları görünür token sayısının 10 katı olabilir. Bu yüzden ikisini bir oran olarak eşleştirmek yanıltıcı olur — PRECC bunları bunun yerine bağımsız segmentler olarak gösterir.

PRECC neden maliyeti hesaplamaz

Maliyet sayısı yetkilidir. PRECC, Claude Code’un stdin üzerinden status komutuna ilettiği JSON’dan cost.total_cost_usd değerini olduğu gibi okur. Bu, Claude Code’un abonelik/kullanım bütçenizden düştüğü aynı sayıdır. Yerleşik /cost slash komutuyla istediğiniz zaman doğrulayabilirsiniz — ikisi de uyuşmalıdır.

Maliyeti ne belirler

Claude Opus 4.6 için:

Token typeStandard (≤200k context)1M context tier
Input$15 / MTok$30 / MTok
Output$75 / MTok$150 / MTok
Cache write$18.75 / MTok$37.50 / MTok
Cache read$1.50 / MTok$3 / MTok

Uzun oturumlardaki en büyük etkenler genellikle çıkış tokenleridir (özellikle 1M bağlam katmanında token başına en pahalı tür), tekrarlanan önbellek okumalarıdır (bireysel olarak ucuz ama birçok turda hızla birikir) ve önbellek oluşturmalarıdır (her dosya okuması için bir kez yazılır, temel giriş ücretinin ~1.25 katı). PRECC, Bash çıkışını sıkıştırarak görünür token maliyetini azaltır (📊 last cmd: segmenti komut başına tasarrufu gösterir), ancak Claude’un zaten yüklediği dosyaların önbellek okumalarını azaltamaz.

Kararlı oturum sayımları

“PRECC: N fixes” segmenti, kalıcılaştırılmış oturum başlangıcından bu yana olayları sayar; bu, her oturumun ilk statusline yenilemesinde ~/.local/share/precc/sessions/<session_id>.start dosyasına yazılır. Bu, sayımı monoton yapar — belirli bir yenilemede cost.total_duration_ms eksik olsa bile oturum ortasında düşemez.

Otomatik yenilenen ömür boyu anlık görüntü

lifetime: segmenti ~/.local/share/precc/.lifetime_summary.json dosyasını okur; bu dosya her PostToolUse ölçümünde ve her precc savings çağrısında yeniden yazılır. this session: segmenti aynı lifetime dosyasını okur ancak her oturumun ilk yenilemesinde kalıcı hale getirilen oturum başına bir taban değeri çıkarır. Manuel yenileme gerekmez — dosyalar kendilerini günceller.

Durum çubuğunu bastırma

Mevcut durum çubuğunuzu korumayı tercih ediyorsanız, kendi statusLine komutunuzu ~/.claude/settings.json içine yazın. PRECC’in yükleyicisi özel değeri algılayacak ve sonraki güncellemelerde dokunmadan bırakacaktır.

Yalnızca etkileşim başına 📊 PRECC satırını (additionalContext içinde) bastırmak için kabuk ortamınızda PRECC_QUIET=1 ayarlayın.

PRECC’s three savings mechanisms each have a counterpart in the recent literature. These are related work — the ideas PRECC’s design draws on. Their reported figures are their measurements, not PRECC’s: PRECC only ever quotes numbers measured on your own machine (see “measured, not estimated”, above).

  • Output/trajectory trimming (PRECC’s diet + bash-output compression) — Reducing Cost of LLM Agents with Trajectory Reduction (AgentDiet), FSE 2026, arXiv:2509.23586. Removes redundant/expired trajectory content post-hoc; reports −39.9–59.7% input tokens. PRECC applies the same idea pre-execution and deterministically (no extra LLM call).
  • Skills as programs (PRECC’s mined + builtin rewrite skills) — Harnessing LLM Agents with Skill Programs, arXiv:2605.17734. Frames reusable agent skills as executable program functions — the same analogy behind PRECC’s command-rewrite skills (a pattern → a deterministic rewrite).
  • Context compression (PRECC’s compress + lean-ctx wrapping) — Compress the Context, Keep the Commitments: A Formal Framework for Verifiable LLM Context Compression, arXiv:2605.17304. Recent work on compressing context without losing required information — the property PRECC’s deterministic, cache-stable rewrites aim to preserve.