Repository navigation
1.7.0 — 2026-10-02
Release Notes
Spend nobody reported no longer reads as zero, and Layover says why a runner's costs are missing
and what to add to its command.
Compatibility. The configuration format, the HTTP API, the MCP tools and the on-disk layout
are unchanged. Three things behave differently in an existing factory:
layover validatehas a new warning, so a factory checked with--strictwhose Copilot or
Claude Code runner lacks its JSON output now fails the check, as it should: its spend has been
unknowable.- A factory with a
[rates]table now gets estimates for runs that print tokens and no dollars,
shown asrate_cardand never debited from Fuel or the Reserve. - A run's recorded
modelis the one its command line selects, falling back to the declared one,
so By model gains runner-fixed models.
Added
layover validatewarns about a runner whose output cannot say what its runs cost: one an
agent uses that runs Copilot CLI without--output-format jsonor Claude Code without
--output-format stream-json(orjson), and a Codex runner without--jsonwhere a rate card
has a row for one of its agents' models. Each names the agents affected and what to add. The CLI
is recognised by name anywhere in the command; a command naming none of them is not judged. A
factory checked withvalidate --strictthat has such a runner now fails the check, which is the
point: its spend has been unknowable.layover doctorsays why runs reported no cost, runner by runner. Beside "7 of 9 run(s)
reported no cost" it now names each runner the silent runs ran on and what to change: the output
flag its CLI needs, a rate card row for a Codex model, or — where the command is already right —
that the runs ended before printing a cost, or were recorded before Layover read one (Copilot
runs were first priced in 1.4.0, and history is never repriced).
Fixed
- A rate card priced nothing.
[rates.<model>]is documented as the fallback for a runner that
prints tokens but no dollars — Codex — and was parsed and validated, and then never applied: every
such run wasunreported, and a factory that had written a rate card still showed no spend. A run
that printed token counts and no dollar figure is now estimated from the card for the model its
command line selects, with Codex's cached input priced at the cache rate. An estimate is
rate_card: shown and totalled, never debited from Fuel and never drawn from the Reserve, as
the cost page always said. A figure a runner printed and that was not believed stays
unreported. A run's recordedmodelis now the one its command line selects, falling back to
the one the agent declares, so a factory that fixes the model in its runner sees it in By
model. - Spend that nobody reported read as
$0.00. A workflow whose runs all reported nothing showed
$0.00on the route map's spend, 7d, with no sign that it was not a figure, and the cost
cards and breakdowns showed the same sum with only a small note beside it. A total built partly
from silence now carries a+, and one built wholly from it reads not reported. examples/planner.tomlran Copilot without--output-format json, the only output that
carries the AI credits a run used, so a factory started from it recorded every Copilot run as
reporting nothing. Every other example already had it.
Install layover-cli 1.7.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/KotkaZ/layover-project/releases/download/v1.7.0/layover-cli-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/KotkaZ/layover-project/releases/download/v1.7.0/layover-cli-installer.ps1 | iex"Install prebuilt binaries via Homebrew
brew install KotkaZ/tap/layoverInstall prebuilt binaries into your npm project
npm install @layover/layover-cli@1.7.0Download layover-cli 1.7.0
| File | Platform | Checksum |
|---|---|---|
| layover-cli-aarch64-apple-darwin.tar.xz | Apple Silicon macOS | checksum |
| layover-cli-x86_64-apple-darwin.tar.xz | Intel macOS | checksum |
| layover-cli-x86_64-pc-windows-msvc.zip | x64 Windows | checksum |
| layover-cli-aarch64-unknown-linux-gnu.tar.xz | ARM64 Linux | checksum |
| layover-cli-x86_64-unknown-linux-gnu.tar.xz | x64 Linux | checksum |
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo KotkaZ/layover-projectYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>