Skip to content

v0.4.0 — Claude subscription accounts

Choose a tag to compare

@jellologic jellologic released this 22 Jul 17:52
· 63 commits to main since this release

Adds Claude Pro/Max subscriptions as a first-class credential mode alongside API keys. Hold several logins, see how much of each is left, launch on whichever has the most capacity, and move one into a running session's directory without disturbing the others.

swisscode config accounts login work    # make a session dir, /login once inside
swisscode config accounts usage         # every subscription's real 5h/7d windows
swisscode config accounts swap --into work personal

A profile with "strategy": "usage" selects on the tighter of the two windows, never their average — an account at 5% of its 5-hour window and 95% of its weekly one has almost nothing left. config doctor gains a session-login check and now actually refreshes the usage snapshot, a promise core/resolve.ts had been making since the usage strategy shipped. The web UI's Accounts screen gains session mode and a measure button.

Read this before upgrading

The v3 config schema ships in this release, not in 0.3.0 as the PR body originally claimed. The v2→v3 migration runs automatically on first read and keeps your original as config.v2.bak.json, so upgrading is safe.

Downgrading is not. A 0.3.0 binary reading a v3 config reports provider undefined. It refuses to write over the newer file, so nothing is lost — but the tool looks broken. This matters in one specific case: bunx swisscode can serve a stale cached version. Measured against the live registry, npx swisscode resolved 0.4.0 while plain bunx swisscode kept running a cached 0.3.0. Use bunx swisscode@latest, or install globally.

Also

  • Half the download. 239.9 kB → 118.4 kB packed: comments stripped from emitted JS, dist/ui.js minified, and react-dom swapped for preact/compat in the browser bundle (237.9 → 69.8 kB), verified in a real browser.
  • Bun is supported, as runner and runtime. Verified by resolving a full launch plan under both runtimes and diffing — identical profile, agent, provider and environment.
  • Ranking never treats an unmeasurable account as full; it is passed over as unknown.

Published by CI via npm trusted publishing (OIDC) with a SLSA provenance attestation.