Releases: goosull/oh-my-subscriptions
Release list
oh-my-subscriptions 0.33.1
Fixes
- Pin each Pi request to its selected OMS core account, so concurrent Pi sessions cannot overwrite one shared global selection and trigger intermittent HTTP 409 errors.
- Re-enable Claude after its recorded quota reset passes, even when the last Claude status-line reading is stale.
- Preserve fail-closed exact-account routing and expose the underlying core error instead of masking every failure as the same generic 409.
Verified with concurrent-account routing tests, live Claude/Codex per-request pinning, Go race/vet, Pi extension tests, CLI selftests, TypeScript checks, and documentation checks.
oh-my-subscriptions 0.33.0
Highlights
- Interactive Pi TUI for global OMS account, model, and effort configuration
- Separate global defaults from explicit current-session switching
- Actual reset-time account ordering and clearer current/next account footer
- Google Gemini / Antigravity login recovery and model routing
- Full Claude model catalogue, including Opus and Fable, even while an account is blocked
- Larger core request limit for long Pi conversations
- Community health files, issue templates, searchable README, GitHub topics, and richer npm metadata
Safety and reliability
- Exact-account routing remains fail-closed
- Paid-overage guards remain enforced
- Core, Pi extension, CLI, docs, TypeScript, Bun, Go, race, and vet checks passed
Install or update with:
pi install npm:oh-my-subscriptions@0.33.0
oms core installv0.32.0 — Shared provider core and stable Pi routing
OMS 0.32.0
First stable Pi integration and shared provider core.
Install
pi install npm:oh-my-subscriptions
oms core installRestart Pi, then authenticate accounts through the shared core:
oms core login codex <oms-account>
oms core login claude <oms-account>
oms core login google <oms-account>Login now automatically binds the new credential, refreshes quota, and applies guards.
Highlights
- Shared CLIProxyAPI v7.3.4 OAuth/account core for Pi, Claude Code, and Codex adapters.
- Exact credential pinning: missing/disabled accounts fail closed without hidden fallback.
- Multi-account Claude, Codex, and Google/Antigravity OAuth with central refresh/storage.
- Runtime 429/cooldown circuit breaker overrides optimistic passive quota summaries.
- Persistent active selection survives core restarts and duplicate account emails.
- OpenAI Chat, Responses, Anthropic Messages, and SSE streaming facade.
- Pi provider auto-discovery/start, global automatic routing, and Current/Next Account footer.
- Verified SHA-256 platform binaries for macOS/Linux on arm64/amd64.
- OIDC npm publishing with provenance.
Safety
- Core binds to loopback and requires private bearer tokens.
- Provider token bytes remain inside the core.
- Unmapped, stale, unknown, blocked, or runtime-unavailable credentials are disabled.
- Account usage and routing settings remain global in
~/.oms/config.json.
The existing Claude Code plugin remains available and independent.
v0.32.0-beta.8 — Fix Pi footer ANSI rendering
Preserves Pi theme ANSI codes from MCP, ponytail, memory and other extension statuses instead of displaying raw [38;… sequences. The active OMS account remains right-aligned below the model. Global route bindings can now identify this machine’s current Codex login as codex-pro20; mappings still require explicit confirmation and live in ~/.oms/config.json. Install/update with pi install npm:oh-my-subscriptions@beta and restart Pi.
v0.32.0-beta.7 — Active account under Pi model status
Keeps Pi’s normal footer and adds only the current OMS account, right-aligned directly below provider/model/thinking. It updates on OMS route selection, Pi model changes, and account status refresh; risk markers become BLOCKED, STALE, or ?. Unmapped logins display unbound instead of guessing. The multi-account strip is now off by default and remains opt-in through usage_display. Install/update with pi install npm:oh-my-subscriptions@beta and restart Pi.
v0.32.0-beta.6 — Claude-style Pi account meters
Replaces the compact footer meter with the intended Claude-Code-style strip above Pi’s editor: active model/thinking/context remaining, then one aligned bar row per OMS account. Missing quota windows preserve column alignment. Blocked, stale, lower-bound and unknown readings remain explicit. Global usage_display defaults to widget; status and off remain available. Install/update with pi install npm:oh-my-subscriptions@beta and restart Pi.
v0.32.0-beta.5 — Compact Pi status-line meters
Moves OMS account usage from the multi-line editor widget into Pi’s compact bottom status line. Shows every account with compact markers: ! blocked, ~ stale, ≥ lower-bound, ? unknown; /oms opens full details. Shared global usage_display supports status (default), widget, and off. Refresh remains global and configurable via ~/.oms/config.json. Install/update with pi install npm:oh-my-subscriptions@beta and restart Pi.
v0.32.0-beta.4 — Account usage widget and global OMS settings
Adds an always-visible account usage widget at startup, periodic refresh (default 60 seconds), and post-run refresh. Shows every account, window usage, reading age, staleness and billing risk. Shared settings live in ~/.oms/config.json or OMS_HOME: usage_widget, usage_refresh_seconds and pi_auto. Pi route bindings now use the shared pi section; legacy Pi config is a fallback. Existing credentials and Claude plugin behavior are preserved. Install/update with pi install npm:oh-my-subscriptions@beta and restart Pi. Experimental routing and live billing limitations still apply.
v0.32.0-beta.3 — npm installation and trusted publishing
Install with pi install npm:oh-my-subscriptions@beta, then restart Pi. This release exercises GitHub Actions OIDC publishing with test gates and provenance. Automatic routing defaults off; configure confirmed account bindings as described in README. Existing Claude Code plugin is unchanged. Experimental: live subscription billing and concurrent subagents remain unverified.
v0.32.0-beta.1 — Native Pi integration
Experimental Pi integration
Install the pinned GitHub release (not an npm publication):
pi install git:github.com/goosull/oh-my-subscriptions@v0.32.0-beta.1Restart Pi after installation. Requires Pi 0.85.1+, Node.js 22+, Python 3.
/oms,/oms priority,/oms configuse the bundled OMS CLI.- Claude uses bundled
pi-claude-bridge@0.7.0; Codex uses Pi's nativeopenai-codexprovider. - Optional
/oms auto onselects an approved provider/model at user-turn boundaries; wrapped requests recheck OMS status. - Automatic routing defaults off. Follow README's
~/.pi/agent/oms.jsoninstructions only after confirming the actual provider login identities match the OMS accounts. - No OMP runtime, gateway, or separate auth database. Existing Claude Code plugin remains unchanged.
Beta limitations
Offline tests, TypeScript checks, Pi extension loading and GitHub CI pass. Live inference, subscription billing and concurrent subagents have NOT been verified.
One account binding per provider, not same-provider credential rotation. Operator-confirmed identity mapping is not automated identity verification. Missing/stale quota readings block selection; bridge calls do not refresh Claude's OMS usage snapshot. Provider re-registration can replace wrappers (reload after changing provider extensions). AskClaude is outside provider guards and should remain disabled. This is not a zero-overage guarantee.
Uninstall: pi remove git:github.com/goosull/oh-my-subscriptions@v0.32.0-beta.1, then restart Pi.