Skip to content

Releases: ndycode/oc-codex-multi-auth

v4.11.2

30 Jan 04:01

Choose a tag to compare

Minor Compatibility and Stability Release

This release carries bug fixes and follow-up hardening. Read the summary below before upgrading or publishing.

  • windows account persistence: fixed silent failure when saving accounts on Windows. errors are now logged at WARN level with storage path in message, and a toast notification appears if persistence fails.

Commit Summary

  • 86b6f6c fix: show warning when account persistence fails (closes #18)
  • e9813d8 v4.11.2

v4.11.1

29 Jan 09:18

Choose a tag to compare

Minor Compatibility and Stability Release

This release carries bug fixes and operational hardening. Read the summary below before upgrading or publishing.

  • This plugin provides 6 built-in tools for managing your OpenAI accounts. Just ask the agent or type the tool name directly.
  • Zod validation error - Fixed crash when calling openai-accounts-status with no accounts configured

Commit Summary

  • 4bc1b40 docs: add full account management tools tutorial to README
  • bf58b9f fix: remove optional json arg from openai-accounts-status to fix Zod validation error

v4.11.0

29 Jan 08:48

Choose a tag to compare

Minor Compatibility and Stability Release

This release carries feature additions and follow-up hardening. Read the summary below before upgrading or publishing.

  • Subdirectory detection - Per-project accounts now work from subdirectories. The plugin walks up the directory tree to find the project root (identified by .git, package.json, pyproject.toml, etc.)
  • Live countdown timer - Rate limit waits now show a live countdown that updates every 5 seconds: Waiting for rate limit reset (2m 35s remaining)
  • Auto-remove on auth failure - Accounts are automatically removed after 3 consecutive auth failures, with a notification explaining what happened. No more manual cleanup of dead accounts.
  • openai-accounts-refresh tool - Manually refresh all OAuth tokens to verify they're still valid

Commit Summary

  • 339d80a feat: v4.11.0 - subdirectory detection, countdown timer, auto-remove, refresh tool

v4.10.0

29 Jan 08:32

Choose a tag to compare

Minor Compatibility and Stability Release

This release carries feature additions, bug fixes, and operational hardening. Read the summary below before upgrading or publishing.

  • per-project accounts: each project gets its own account storage now. no more conflicts when working across different repos with different chatgpt accounts. auto-detects project directories (looks for .git, package.json, etc). falls back to global storage if you're not in a project folder.
  • configurable toast duration: rate limit notifications stick around longer now (5s default). set toastDurationMs in config if you want them longer/shorter.
  • account removal tool: new openai-accounts-remove tool to delete accounts by index. finally.
  • token masking in logs: all tokens, api keys, and bearer headers are now masked in debug logs. no more accidentally leaking creds.

Commit Summary

  • 29b96d4 feat: v4.10.0 - per-project accounts, toast duration, account removal

v4.9.7

29 Jan 03:22

Choose a tag to compare

Minor Compatibility and Stability Release

This release carries feature additions, bug fixes, and operational hardening. Read the summary below before upgrading or publishing.

  • CODEX_AUTH_ACCOUNT_ID override to force a specific workspace id (non-interactive login).
  • troubleshooting guidance for "usage not included in your plan".
  • business/team workspace selection: detect multiple workspace account IDs from oauth tokens and prompt for the correct one.
  • prevent refresh/hydration from overwriting selected workspace ids (org/manual choices remain stable).

Commit Summary

  • 4514b27 Fix workspace account selection for Business plans
  • edb9a58 Bump version to 4.9.7
  • bf9517f fix: route logs to TUI app panel to prevent message overlap

v4.9.5

28 Jan 22:07

Choose a tag to compare

Minor Compatibility and Stability Release

This release carries bug fixes and operational hardening. Read the summary below before upgrading or publishing.

  • When your ChatGPT subscription didn't include Codex access, the plugin kept rotating through all accounts and retrying forever because it thought it was a temporary rate limit.
  • You get an immediate, clear error: "This model is not included in your ChatGPT subscription."
  • Account error handling - Fixes infinite retry loop when account doesn't have access to Codex models. usage_not_included errors now return 403 Forbidden instead of being treated as rate limits. Clear error message explaining the subscription issue. Prevents pointless account rotation for non-recoverable errors. (#16, thanks @rainmeter33-jpg!)

Commit Summary

  • f06fa3b fix: revert TUI disable logic (caused UI lockup)
  • 1a7eea1 fix: update remaining occurrences of old package name
  • 0a813ea Merge pull request #15 from rainmeter33-jpg/fix/rename-remnants
  • 5aa941f fix: separate entitlement errors from rate limits to prevent infinite retry loops

Thank you to 1 community contributors:

  • @rainmeter33-jpg:
    • Account error handling - Fixes infinite retry loop when account doesn't have access to Codex models. usage_not_included errors now return 403 Forbidden instead of being treated as rate limits. Clear error message explaining the subscription issue. Prevents pointless account rotation for non-recoverable errors.

v4.9.6

08 Feb 10:40

Choose a tag to compare

Minor Compatibility and Stability Release

This release carries compatibility-facing behavior changes and operational hardening. Read the summary below before upgrading or publishing.

  • tui auth gating: non-tty/ui auth attempts now return a clear instruction to run opencode auth login in a terminal shell.
  • error-mapping simplification: consolidated entitlement/rate-limit mapping in fetch helpers for a single handling path.

Commit Summary

  • b896928 feat(auth): disable TUI authentication flow
  • b02df6e docs: update features and troubleshooting guide
  • 254b460 chore: consolidate version to 4.9.3
  • 134343e feat(tools): implement comprehensive schema normalization
  • 5260fe7 feat(tools): implement strict schema cleaning and validation
  • da8f1b1 fix(auth): resolve account switching/manual auth issues (#13) and enable apply_patch
  • c7e14bd chore: bump version to 4.9.2
  • d98a574 fix: normalize error payloads for rate-limit handling
  • dcdb61e fix: move auth prompts into OpenCode TUI
  • 19bf109 fix: multi-account auth flow always runs regardless of inputs parameter
  • 269654b feat: rename to oc-chatgpt-multi-auth to bypass OpenCode plugin blocking
  • aa3fd72 docs: document OpenCode plugin blocking issue (#11)

v4.9.4

27 Jan 11:22

Choose a tag to compare

Minor Compatibility and Stability Release

This release carries feature additions, bug fixes, and operational hardening. Read the summary below before upgrading or publishing.

  • TUI auth flow disabled - We now strictly enforce using opencode auth login in the terminal for authentication. The UI-based 'Connect' flow is disabled with a clear message to prevent issues with non-interactive environments.
  • Strict tool schema validation - Added filtering of required fields, flattening enums for compatibility with strict models like Claude/Gemini
  • Manual login fixed - Parsing of OAuth URLs with fragments (#code=) is fixed
  • Account switching - Manual selection is now strictly prioritized over rotation logic

Commit Summary

  • b02df6e docs: update features and troubleshooting guide
  • b896928 feat(auth): disable TUI authentication flow
  • 2c88357 chore: version 4.9.4

v4.9.3

27 Jan 11:08

Choose a tag to compare

Minor Compatibility and Stability Release

This release carries bug fixes and operational hardening. Read the summary below before upgrading or publishing.

  • Strict schema validation - Ported robust tool cleaning logic from antigravity-auth. Automatically normalizes tool definitions to prevent errors with strict models (like Claude or Gemini):
  • Filters out required fields that are not defined in properties
  • Flattens anyOf schemas with const values into standard enum arrays
  • Converts nullable array types into single types with a description note

Commit Summary

  • da8f1b1 fix(auth): resolve account switching/manual auth issues (#13) and enable apply_patch
  • 5260fe7 feat(tools): implement strict schema cleaning and validation
  • 134343e feat(tools): implement comprehensive schema normalization
  • 254b460 chore: consolidate version to 4.9.3

v4.9.2

27 Jan 00:12

Choose a tag to compare

Minor Compatibility and Stability Release

This release carries bug fixes and operational hardening. Read the summary below before upgrading or publishing.

  • npm publish status: not published on npm (tag/release only).
  • Auth prompts moved to TUI - Avoids readline input conflicts
  • Error payload normalization - Improves rate-limit handling and rotation

Commit Summary

  • dcdb61e fix: move auth prompts into OpenCode TUI
  • d98a574 fix: normalize error payloads for rate-limit handling
  • c7e14bd chore: bump version to 4.9.2