Skip to content

v0.6.0 — Kimi Code

Choose a tag to compare

@ankit-arora-369 ankit-arora-369 released this 29 Aug 07:44
· 64 commits to main since this release
Immutable release. Only release title and notes can be modified.

Kimi Code is now measured, alongside Claude Code, Codex CLI and OpenCode.

Read from ~/.kimi-code/sessions/*/*/agents/*/wire.jsonl. Like OpenCode it routes
to any provider, so it covers Moonshot's own models and anything you run locally.

What reading the real logs turned up

  • Only usage.record is billable. Every turn also writes two token_counting
    records carrying a tokens field that looks like usage and is not — across 6/6
    real turns it equals inputOther + output exactly. Summing them would have
    roughly doubled every figure. That identity now ships as the adapter's integrity
    check.
  • Usage is per turn, not cumulative. A three-turn session recorded outputs of
    276, 239 and 202 — falling, so not a running total. Checked because Codex looked
    identical and was cumulative.
  • Ollama truncates a prompt larger than num_ctx and reports the tokens it
    actually processed. 8,000 tokens against the default 4,096-token window are
    reported as 2,050; the same prompt at num_ctx=16384 reports 8,011. The figure
    is honest — it is what the model read — and Kimi records it faithfully. It just
    is not the size of what you typed.

Pricing

The packaged snapshot now carries 287 models from 16 vendors, up from 132 from
6. DEFAULT_VENDORS had been extended with Moonshot, Zhipu, Alibaba, MiniMax and
the inference hosts, but the file was never regenerated — so a fresh install could
not price Kimi, GLM, Qwen or MiniMax at all, while the docs said it could. Three
tests now hold the file to the vendor list, to pricing one model per supported
agent, and to the count printed in the docs.

deepseek-chat and deepseek-reasoner no longer carry a rate: models.dev dropped
both in favour of versioned names, and no stale figure was carried forward. Set
your own in ~/.burn-o-meter/pricing.toml if you need them.

Fixed

  • billing.<provider> now works for every agent, not just the two named as
    dataclass fields — doctor was printing advice to set a key the loader ignored.
  • A config.toml omitting any key could not be loaded at all, because the
    defaults were read off slots=True dataclasses, where the class attribute is a
    slot descriptor rather than the default value.
  • The network-egress table no longer lets a narrow terminal elide the one URL it
    exists to disclose.
  • Report tests no longer depend on the width of the terminal running them.

Full notes in CHANGELOG.md.

Install

brew tap devopsinside/burn-o-meter https://github.com/devopsinside/burn-o-meter
brew install devopsinside/burn-o-meter/burn-o-meter

The macOS app bundle is ad-hoc signed: it runs on the machine that builds it, and
distribution needs Developer ID notarisation, which this project does not yet have.