Repository navigation
Phonton CLI v0.22.0
phonton-cli v0.22.0 — Product Hunt beta
Local models
phonton models setup|install|calibrate|selectmanages a local Ollama
runtime (Windows x64) and measures which edit formats a model can produce.- With a calibrated model selected, the TUI and
phonton goalrun goals
through the local harness: plan approval first, edits in a copy, your
checks on the candidate, andphonton goal --local apply|rollback RUN_ID. - On macOS and Linux, connect an Ollama you installed. The TUI plan review
says Phonton cannot verify that runtime; approving the plan is consent for
that goal, and the receipt labels the runtime origin unknown. - Headless local runs print the diff, check results, and the apply command
instead of a raw JSON receipt. - Local goals start the installed managed runtime when it is not running
(after a reboot, for example). - Local scope keeps files whose text matches a goal that names no symbol
("reduce the maximum title length").
Plans and memory
- Goals like "Add a count() method to TodoStore that ..." no longer plan a
method namedto; every subtask keeps the full goal text. - Memory is scoped to the repository it came from. Before, rejected
approaches and decisions from every repository (goal text and file paths)
were added to prompts for any repository and sent to the provider. - Memory records no longer nest earlier memory, and paths quoted from memory
no longer count as files the worker must edit.
Trust and recovery
phonton review rejectundoes the task: files it changed go back to their
state just before the task (uncommitted edits and untracked files
included), and it refuses without writing if you edited them afterwards.- Workers may add or edit tests. Edits to existing tests count only if the
original tests also pass against the change, so a model cannot pass by
rewriting an assertion. - A worker that cannot produce a usable diff escalates to the next model tier
instead of failing the goal. - Verification copies link
node_modulesand reuse a per-workspace Cargo
target directory (a warm Rust check went from 83 s to 29 s in our runs). - Headless
phonton goalprints a short receipt: files, checks, tokens,
estimated cost when pricing is known, and the next command. - Token totals count each attempt once (they were doubled) and include
retries and escalations. - A diff the worker already checked is not built and tested again by the
orchestrator. Verification caches unused for 7 days are deleted.
Providers
- Tier defaults use current models checked against models.dev on 2026-10-07.
Several previous escalation ids did not exist and failed with 404. - OpenAI-compatible requests allow 16,384 output tokens (32,768 for DeepSeek)
so reasoning models do not spend the whole budget thinking. - Provider transport and Ollama errors include the underlying cause.
- OpenAI-compatible and Anthropic requests retry twice on a dropped
connection, 429 or 5xx.
First run
- With no usable model, Enter on a goal opens Settings and keeps the goal
text. A pasted key is recognised by its prefix; providers auto-detect from
environment keys, then a local model. phonton doctorchecks only the toolchains your project uses and suggests
phonton models setupwhen no key is set.PHONTON_HOMErelocates all per-user state.- Exiting no longer installs updates; it prints the npm command.
Fewer wasted tokens
- Workers get the exact current source of the files they edit (bounded), so
diff context lines match instead of being guessed from signatures. - Later subtasks see a one-line note per finished subtask instead of a replay
of every earlier prompt and diff. - The system prompt and duplicate retrieval slices are no longer sent twice.
These are mechanism changes. We have not published a before/after token
measurement for this release; phonton why-tokens shows provider-reported usage
for your own runs.
Benchmark harness
benchmarks/smokeruns fixed goals on fresh copies of
fixtures/todo-apiand scores them with hidden tests written after the
run. It is a regression check, not a comparison with other tools.
Removed
- Hardcoded worker templates that answered known benchmark goals without a
model. Every edit now comes from the configured model.
TUI
- Pitch-first welcome with the ADE loop, what every goal gets, and starter goals.
- Width-adaptive footer, unclipped help overlay, empty-state Goals panel.
- Esc/Ctrl+C need a second press to quit.