Feature Description
Add a supported way to disable the floating account-selection notification shown by the main auth plugin, for example:
Using Account 2 (Personal ... email ..., id: ...) (2/2)
The notification is rendered over the output rather than reserving layout space. During large code diffs it covers several lines of code, making that portion of the response unreadable until the notification disappears.
There is currently no option to disable this notification. The main plugin calls client.tui.showToast() after selecting an account (dist/index.js, around the Using ${accountLabel} message). Existing settings only control its duration and debounce:
CODEX_AUTH_TOAST_DURATION_MS has a minimum of 1000 ms and cannot disable toasts.
CODEX_AUTH_RATE_LIMIT_TOAST_DEBOUNCE_MS suppresses repeated notifications for the same account, but the first notification and account changes still appear.
- Removing
oc-codex-multi-auth@latest from tui.json does not help because this toast comes from the main auth plugin in opencode.json, not the optional TUI quota-status plugin.
Use Case
Code output and diffs must remain readable while accounts rotate or switch. A transient account notification should not obscure the content users are reviewing, especially when a diff is paused on screen or the terminal is narrow.
Users who can inspect account state with codex-status, codex-list, codex-limits, or codex-dashboard may also prefer not to display account-selection notifications at all.
Proposed Implementation
Add a durable opt-out such as CODEX_AUTH_ACCOUNT_TOASTS=0 (or a config equivalent such as accountToasts: false) that gates only this informational account-selection toast:
if (accountToastsEnabled && accountCount > 1 &&
accountManager.shouldShowAccountToast(account.index, rateLimitToastDebounceMs)) {
// existing account toast
}
Warnings and errors for rate limits, expired authentication, recovery, unsupported models, and retries should remain visible. Ideally, the installer should preserve the setting across upgrades.
As a separate layout improvement, OpenCode notifications could reserve space instead of overlaying output, but an explicit plugin-level off switch would still be useful.
Compliance Consideration
Alternatives Considered
- Remove the plugin from
tui.json: ineffective; this notification is emitted by the main auth plugin.
- Set the minimum toast duration: still obscures code for one second and affects other useful notifications.
- Increase the debounce: does not suppress the first toast or notifications when the selected account changes.
- Suppress matching
Using ... (N/N) calls locally: works, but requires a custom pre-plugin and should not be necessary for a common display preference.
Additional Context
- Plugin version: 6.9.1
- Source in 6.9.1: the account-selection branch calls
showToast(\Using ${accountLabel} (${account.index + 1}/${accountCount})`, "info")indist/index.js`.
- Observed during account rotation while reviewing multi-file code diffs.
- The notification occupied roughly half the terminal width and covered multiple code lines in the captured example.
Feature Description
Add a supported way to disable the floating account-selection notification shown by the main auth plugin, for example:
The notification is rendered over the output rather than reserving layout space. During large code diffs it covers several lines of code, making that portion of the response unreadable until the notification disappears.
There is currently no option to disable this notification. The main plugin calls
client.tui.showToast()after selecting an account (dist/index.js, around theUsing ${accountLabel}message). Existing settings only control its duration and debounce:CODEX_AUTH_TOAST_DURATION_MShas a minimum of 1000 ms and cannot disable toasts.CODEX_AUTH_RATE_LIMIT_TOAST_DEBOUNCE_MSsuppresses repeated notifications for the same account, but the first notification and account changes still appear.oc-codex-multi-auth@latestfromtui.jsondoes not help because this toast comes from the main auth plugin inopencode.json, not the optional TUI quota-status plugin.Use Case
Code output and diffs must remain readable while accounts rotate or switch. A transient account notification should not obscure the content users are reviewing, especially when a diff is paused on screen or the terminal is narrow.
Users who can inspect account state with
codex-status,codex-list,codex-limits, orcodex-dashboardmay also prefer not to display account-selection notifications at all.Proposed Implementation
Add a durable opt-out such as
CODEX_AUTH_ACCOUNT_TOASTS=0(or a config equivalent such asaccountToasts: false) that gates only this informational account-selection toast:Warnings and errors for rate limits, expired authentication, recovery, unsupported models, and retries should remain visible. Ideally, the installer should preserve the setting across upgrades.
As a separate layout improvement, OpenCode notifications could reserve space instead of overlaying output, but an explicit plugin-level off switch would still be useful.
Compliance Consideration
Alternatives Considered
tui.json: ineffective; this notification is emitted by the main auth plugin.Using ... (N/N)calls locally: works, but requires a custom pre-plugin and should not be necessary for a common display preference.Additional Context
showToast(\Using ${accountLabel} (${account.index + 1}/${accountCount})`, "info")indist/index.js`.