Nanako0129

Syrtis Windows — AI skill for Claude Code

AI community

Windows port of TokenBar — a tray monitor for AI coding-agent token usage, cost, and subscription quota.

How to install Syrtis Windows

This entry records only its repository, not the path inside it, so there is no exact command to give. Open Nanako0129/Syrtis-Windows and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Syrtis Windows does

Windows port of TokenBar — a tray monitor for AI coding-agent token usage, cost, and subscription quota. WinUI 3 shell on the same Rust parsing core.

Alternatives in AI

  • Ante — Ghost in your shell 1.9k ★
  • Claudexor — Multi-harness control plane for Claude Code, Codex, Cursor, and OpenCode: quota-aware rotation across multiple 425 ★
  • onWatch — Open-source Go CLI that tracks AI API quota usage across 7 providers (Synthetic, Z.ai, Anthropic, Codex, GitHu 397 ★

README

TokenBar for Windows

Windows port of [TokenBar](https://github.com/Nanako0129/TokenBar) — the menu-bar/tray AI coding-agent token-usage monitor. Same Rust parsing core, a native WinUI 3 shell.

**Status: [`v0.2.2`](https://github.com/Nanako0129/Syrtis-Windows/releases/tag/v0.2.2) is the latest release** — the first installed build produced by CI, across four channels. See [`docs/release-velopack.md`](docs/release-velopack.md) for the packaging contract, [`docs/release.md`](docs/release.md) for the earlier portable one, and the [release list](https://github.com/Nanako0129/Syrtis-Windows/releases) for history.

**Unreleased since v0.2.2:** the Quota lens and the usage-attribution subsystem, the equivalence denominator fix, and an engine pin advance that corrects the engine's own cost and token calculations — Codex reasoning tokens were priced twice, Claude `tool_result` input was char-estimated, and 1-hour cache writes were billed at the 5-minute rate. Presentation defects above that layer are **not** all fixed; Phase 13 below records what shipped into `main`, and "Before the next release" lists the figures still wrong on screen.

Architecture

Layer Path Notes
Rust core crates/tb_core_ffi + vendor/tokscale-core Public shared engine pinned as a Git submodule; consumer provenance is recorded in vendor/ENGINE.md. C ABI, JSON envelope, built as cdylib for P/Invoke
C ABI contract include/ctb.h 11 entry points, {"ok":true,"data":…} / {"ok":false,"err":…}
Interop src/TokenBar.Interop net10.0, platform-neutral — P/Invoke facade + envelope decode
Logic src/TokenBar.Core net10.0, platform-neutral — C# port of the macOS TokenBarCore
Shell src/TokenBar.App WinUI 3, unpackaged. Windows-only build (not in the slnx): dotnet build src/TokenBar.App/TokenBar.App.csproj -c Release -p:Platform=x64 -p:RuntimeIdentifier=win-x64
Windows native packaging `src/Director