Token-Kosten-Vorhersage
PRECC liefert ein Orakel zur Vorhersage von Token-Kosten, damit mehrstufige Pläne in Tokens budgetiert werden können, nicht in Echtzeit. Protokollieren Sie eine Vorhersage vor jedem Schritt, erfassen Sie den Istwert nach Abschluss der Arbeit, und der Datensatz trainiert einen eingebauten Prädiktor, der sich mit der Zeit verbessert.
Vorhersage protokollieren
Übergeben Sie eine einzeilige Beschreibung des geplanten Schritts. PRECC kategorisiert ihn (feat / fix / test / refactor / measurement / doc / chore / unknown), schätzt eine Tokenanzahl und gibt eine id aus, mit der Sie den Kreislauf schließen.
$ precc predict "Implement read-deltas with mtime check"
id=42 category=feat predicted=5680 tokens (confidence=0.50, model=trained-v1)
Record actual when done: precc predict --record 42 <actual_tokens>
Istwert erfassen
Nachdem der Schritt abgeschlossen ist, ermitteln Sie die tatsächliche Tokenanzahl aus der Sitzungsfußzeile oder der Telemetrie und übergeben Sie diese über die id zurück.
$ precc predict --record 42 6300
Recorded actual=6300 tokens for prediction id=42.
trained-v1 trainieren
Sobald Sie mindestens zehn geschlossene Vorhersagen haben, passen Sie die trained-v1 Ridge-Regression auf log10(actual) gegen log10(Beschreibungslänge) plus einen One-Hot-Kategoriewert an. Die Anpassung ist geschlossen-formig (Cholesky auf den Normalgleichungen mit Ridge λ=1) und läuft in Millisekunden.
$ precc predict --train
Trained trained-v1 on 22 closed predictions (λ=1).
Model file : ~/.local/share/precc/predict_model.json
Confidence : 0.50
Intercept : +1.0016
log_desc : +1.2339
Categories :
unknown +0.4811
doc +0.4474
measurement +0.3422
test +0.1071
refactor +0.0326
feat +0.0071
fix -0.1096
chore -0.3063
Nach dem Training verwendet jeder neue precc predict-Aufruf automatisch trained-v1, bis Sie die Modelldatei entfernen oder ersetzen. Alte Vorhersagen behalten ihre ursprüngliche model_version, damit Sie Prädiktoren über die Zeit vergleichen können.
Genauigkeit des Prädiktors prüfen
precc predict --eval meldet den mittleren absoluten prozentualen Fehler (MAPE) insgesamt und pro Kategorie, berechnet nur über geschlossene Vorhersagen (Zeilen mit sowohl vorhergesagten als auch tatsächlichen Werten).
$ precc predict --eval
Predictions logged : 30
With actuals (closed): 22
Mean predicted : 1483 tokens
Mean actual : 47238 tokens
MAPE (statistical) : 76.4%
By category:
category n predicted actual MAPE
feat 6 4605 5250 26.2%
unknown 4 1597 30526 52.6%
test 4 924 38900 56.4%
...
Aktuelle Vorhersagen auflisten
precc predict --list zeigt aktuelle Zeilen in umgekehrter chronologischer Reihenfolge. Offene Zeilen (ohne Istwert) sind bereit zum Schließen.
$ precc predict --list --limit 5
id ts category predicted actual conf description
30 2026-05-09 09:40:51 feat 5348 - 0.50 Run the synthetic-fleet pilot...
29 2026-05-09 08:56:48 test 1050 - 0.60 Train predictor: trained-v1...
28 2026-05-09 07:44:18 test 915 150000 0.60 Implement minimal task-12...
Warum Tokens und nicht Echtzeit
Zeitschätzungen sind im Nachhinein nicht messbar und lassen sich nicht über Maschinen oder Sitzungen hinweg zusammensetzen. Tokenzahlen sind deterministisch, vergleichbar und lassen einen gelabelten Datensatz wachsen, der den Prädiktor mit jeder geschlossenen Schleife verbessert. Der Sinn des Orakels ist es, Schätzung aus einem Ratespiel in eine Messung zu verwandeln.
Wo die Daten gespeichert sind
Alle Vorhersagedaten werden lokal auf Ihrem Rechner gespeichert. Nichts wird hochgeladen.
~/.local/share/precc/
├── metrics.db — predictions table (oracle DB)
└── predict_model.json — trained-v1 coefficients (after `--train`)