Skip to content

v0.6.0 — the four-concept model, made legible

Choose a tag to compare

@jellologic jellologic released this 24 Jul 22:33
· 48 commits to main since this release

A user logged in a subscription, typed swisscode <account-name>, and watched the name go to Claude Code as a prompt. This release is the fix for the confusion behind that — the account model now explains itself, and the traps that used to fail silently are caught.

Highlights

  • Setups — agentProfiles is renamed to setups (schema v4). Only the concept nobody types was renamed; profiles — what swisscode <name> launches — keeps its name. Existing configs migrate on first read and a config.v3.bak.json is written. config agents still works as a deprecated alias.
  • No more orphan accounts — config accounts login now creates a launchable profile alongside the account, so a fresh login is immediately usable. --no-profile opts out; the doctor grows an accounts reachable check.
  • The wizard learned subscriptions — picking Anthropic in swisscode config <name> asks how the account pays: a subscription kept separate, the login you already use, or an API key. Subscription users no longer have to assemble it by hand.
  • Duplicate-subscription guard — two accounts that are secretly one login (a fresh CLAUDE_CONFIG_DIR starts cloned from your current one) are flagged in the listing, the doctor, and the web UI, so a usage profile can't count one quota twice.
  • A positional that names an account or setup is refused instead of being sent to the agent as a prompt.
  • The concept map — provider / account / setup / profile — now appears in the README, config help, and a collapsible panel in the web UI.

Compatibility

Schema v4 migrates v1/v2/v3 on first read (backup written). No config edits required.

Published with SLSA build provenance. 806 tests green.