@cortexkit/opencode-openai-auth 0.7.2 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -5
- package/dist/index-301y4qa1.js +2 -0
- package/dist/index-338z7171.js +211 -0
- package/dist/index-5y4vzdf8.js +2 -0
- package/dist/{index-zxqb5ydj.js → index-9ehhb051.js} +1 -1
- package/dist/{index-zg1x8sty.js → index-jwn4r3sw.js} +1 -1
- package/dist/{index-9jpc8yct.js → index-sdt2d2ra.js} +1 -1
- package/dist/index-w42s0g6m.js +2 -0
- package/dist/index.d.ts +213 -36
- package/dist/index.js +59 -154
- package/dist/internal-Y7QNVDJT.d.ts +908 -0
- package/dist/quota-normalize-3qffywcm.js +1 -0
- package/dist/rpc/port-file.d.ts +11 -9
- package/dist/rpc/port-file.js +1 -1
- package/dist/rpc/protocol.d.ts +2 -21
- package/dist/rpc/rpc-client.d.ts +7 -4
- package/dist/rpc/rpc-client.js +1 -1
- package/dist/rpc/rpc-dir.d.ts +7 -5
- package/dist/rpc/rpc-dir.js +1 -1
- package/dist/sidebar-state-B98sERYt.d.ts +219 -0
- package/dist/sidebar-state.d.ts +2 -171
- package/dist/sidebar-state.js +1 -1
- package/dist/{token-bvp0y166.js → token-9823y0pc.js} +1 -1
- package/dist/token-util-ypgz7rge.js +1 -0
- package/dist/tui-preferences.d.ts +27 -26
- package/dist/tui-preferences.js +1 -1
- package/dist/tui.d.ts +42 -19
- package/package.json +8 -14
- package/src/tui/entry.mjs +2 -2
- package/src/tui-compiled/{core/account-paths.ts → raw/core-account-paths.ts} +29 -18
- package/src/tui-compiled/raw/core-custody-state.ts +243 -0
- package/src/tui-compiled/raw/logger.ts +53 -0
- package/src/tui-compiled/{rpc/port-file.ts → raw/rpc-port-file.ts} +1 -1
- package/src/tui-compiled/raw/rpc-protocol.ts +12 -0
- package/src/{rpc/rpc-client.ts → tui-compiled/raw/rpc-rpc-client.ts} +2 -2
- package/src/{sidebar-state.ts → tui-compiled/raw/sidebar-state.ts} +142 -13
- package/src/{tui/command-dialogs.tsx → tui-compiled/raw/tui-command-dialogs.tsx} +94 -44
- package/src/{tui.tsx → tui-compiled/raw/tui.tsx} +149 -28
- package/src/{core/account-paths.ts → tui-compiled/runtime/core-account-paths.ts} +29 -18
- package/src/tui-compiled/runtime/core-custody-state.ts +243 -0
- package/src/tui-compiled/runtime/logger.ts +53 -0
- package/src/{rpc/port-file.ts → tui-compiled/runtime/rpc-port-file.ts} +1 -1
- package/src/tui-compiled/runtime/rpc-protocol.ts +12 -0
- package/src/tui-compiled/{rpc/rpc-client.ts → runtime/rpc-rpc-client.ts} +2 -2
- package/src/tui-compiled/{sidebar-state.ts → runtime/sidebar-state.ts} +142 -13
- package/src/tui-compiled/{tui/command-dialogs.tsx → runtime/tui-command-dialogs.tsx} +73 -37
- package/src/tui-compiled/{tui.tsx → runtime/tui.tsx} +251 -153
- package/src/tui-compiled/shared/internal.ts +6 -0
- package/src/{logger.ts → tui-compiled/shared/logger.ts} +91 -23
- package/src/tui-compiled/shared/paths.ts +33 -0
- package/src/{core → tui-compiled/shared}/refresh-file-lock.ts +7 -4
- package/dist/cli.d.ts +0 -2
- package/dist/cli.js +0 -15
- package/dist/codex-http.d.ts +0 -3
- package/dist/commands.d.ts +0 -88
- package/dist/config.d.ts +0 -47
- package/dist/core/account-paths.d.ts +0 -25
- package/dist/core/accounts.d.ts +0 -330
- package/dist/core/atomic-write.d.ts +0 -1
- package/dist/core/background-quota-refresh.d.ts +0 -46
- package/dist/core/backoff.d.ts +0 -53
- package/dist/core/cachekeep.d.ts +0 -118
- package/dist/core/oauth.d.ts +0 -138
- package/dist/core/provider.d.ts +0 -70
- package/dist/core/quota-manager.d.ts +0 -192
- package/dist/core/refresh-all-quota.d.ts +0 -86
- package/dist/core/refresh-file-lock.d.ts +0 -12
- package/dist/core/reset-credits.d.ts +0 -116
- package/dist/core/sticky-routing.d.ts +0 -43
- package/dist/dump.d.ts +0 -20
- package/dist/hosted-web-search.d.ts +0 -5
- package/dist/index-87145jkw.js +0 -2
- package/dist/index-8f1200qx.js +0 -6
- package/dist/index-cfjed1st.js +0 -89
- package/dist/index-nrvjr97q.js +0 -3
- package/dist/index-qaggaze1.js +0 -2
- package/dist/index-sdcpzbnk.js +0 -2
- package/dist/logger.d.ts +0 -22
- package/dist/model-costs.d.ts +0 -29
- package/dist/prompt-context.d.ts +0 -19
- package/dist/quota-normalize-dvwtmy7f.js +0 -1
- package/dist/quota-normalize.d.ts +0 -43
- package/dist/raw-ws-bun.d.ts +0 -40
- package/dist/raw-ws-node.d.ts +0 -37
- package/dist/raw-ws-upgrade.d.ts +0 -2
- package/dist/raw-ws.d.ts +0 -3
- package/dist/response-stream-error.d.ts +0 -12
- package/dist/rpc/notifications.d.ts +0 -5
- package/dist/rpc/rpc-server.d.ts +0 -17
- package/dist/token-util-jcj7k7pa.js +0 -1
- package/dist/tui/command-dialogs.d.ts +0 -21
- package/dist/util/error.d.ts +0 -1
- package/dist/util/open-url.d.ts +0 -6
- package/dist/util/proxy-env.d.ts +0 -4
- package/dist/util/record.d.ts +0 -1
- package/dist/util/stable-json.d.ts +0 -1
- package/dist/util/uuid-v7.d.ts +0 -1
- package/dist/version.d.ts +0 -1
- package/dist/ws-pool.d.ts +0 -57
- package/dist/ws.d.ts +0 -71
- package/src/rpc/notifications.ts +0 -54
- package/src/rpc/protocol.ts +0 -33
- package/src/rpc/rpc-server.ts +0 -172
- package/src/tui-compiled/core/refresh-file-lock.ts +0 -381
- package/src/tui-compiled/logger.ts +0 -196
- package/src/tui-compiled/rpc/protocol.ts +0 -33
- package/src/util/error.ts +0 -9
- package/src/util/open-url.ts +0 -30
- package/src/util/proxy-env.ts +0 -42
- package/src/util/record.ts +0 -3
- package/src/util/stable-json.ts +0 -15
- package/src/util/uuid-v7.ts +0 -18
- /package/src/{rpc/rpc-dir.ts → tui-compiled/raw/rpc-rpc-dir.ts} +0 -0
- /package/src/tui-compiled/{tui-preferences.ts → raw/tui-preferences.ts} +0 -0
- /package/src/tui-compiled/{rpc/rpc-dir.ts → runtime/rpc-rpc-dir.ts} +0 -0
- /package/src/{tui-preferences.ts → tui-compiled/runtime/tui-preferences.ts} +0 -0
- /package/src/tui-compiled/{util → shared/util}/error.ts +0 -0
- /package/src/tui-compiled/{util → shared/util}/open-url.ts +0 -0
package/README.md
CHANGED
|
@@ -30,7 +30,7 @@ Restart OpenCode after changing plugin config, then authenticate:
|
|
|
30
30
|
- Per-turn quota tracking (5-hour + weekly windows) on both transports, with a sidebar readout and an explicit all-accounts refresh.
|
|
31
31
|
- Idle prompt-cache keep-warm, with an optional subagent mode and main-only sustain mode.
|
|
32
32
|
- Leveled, secret-redacting, rotating log file.
|
|
33
|
-
- Interactive in-TUI control surfaces for every command,
|
|
33
|
+
- Interactive in-TUI control surfaces for every command, including fallback account management and headless device-code authentication.
|
|
34
34
|
- Optional OpenAI Responses WebSocket transport (HTTP is the default).
|
|
35
35
|
|
|
36
36
|
## Commands
|
|
@@ -48,14 +48,18 @@ Each opens an interactive dialog in the TUI. Commands with listed arguments also
|
|
|
48
48
|
| `/openai-logging` | `<level>` | Set log level live. |
|
|
49
49
|
| `/openai-dump` | `on` · `off` | Toggle transport request dumps. |
|
|
50
50
|
|
|
51
|
-
|
|
51
|
+
Account management (fallback accounts; the main account comes from `/login openai`):
|
|
52
52
|
|
|
53
53
|
```text
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
/openai-account add [--headless] [label]
|
|
55
|
+
/openai-account
|
|
56
|
+
/openai-account remove <id>
|
|
57
57
|
```
|
|
58
58
|
|
|
59
|
+
All account operations can also be performed interactively via the `/openai-account` TUI dialog.
|
|
60
|
+
|
|
61
|
+
On a headless machine, where the slash commands are out of reach, `opencode auth login` offers the same account actions — add, re-authenticate the main account, force a quota check, diagnose and repair the stored credentials, or delete every fallback. It prints `Failed to authorize` on return even when the action succeeded, because the menu writes its own changes and reports none of them as a sign-in; confirm with `/openai-account`.
|
|
62
|
+
|
|
59
63
|
## Configuration
|
|
60
64
|
|
|
61
65
|
Settings resolve as environment variable → config file (`~/.config/opencode/openai-auth.json`) → default.
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function Z(k){if(k==null||k==="")return;let q=typeof k==="number"?k:Number(k);if(Number.isFinite(q)){let B=q<100000000000?q*1000:q,J=new Date(B);return Number.isNaN(J.getTime())?void 0:J.toISOString()}let z=new Date(k);return Number.isNaN(z.getTime())?void 0:z.toISOString()}function $(k){let q=Number(k);return Number.isFinite(q)&&q>0?q:void 0}function D(k){return typeof k==="number"&&Number.isFinite(k)&&k>=0?k:void 0}function I(k,q){let z=k.get(q);if(z===null||z.trim()==="")return;let B=Number(z);if(!Number.isFinite(B)||B<0||B>100)return;let J=q.slice(0,-13),X=$(k.get(`${J}-window-minutes`)),G=Z(k.get(`${J}-reset-at`)??void 0);if(B===0&&k.get(`${J}-window-minutes`)==="0"&&!G)return;return{usedPercent:B,remainingPercent:100-B,resetsAt:G,checkedAt:Date.now(),...X!==void 0?{windowMinutes:X}:{}}}var W=["x-codex-primary-used-percent","x-codex-secondary-used-percent"];function M(k,q){let z=k.get(q);if(z===null)return"absent";if(z.trim()==="")return"invalid";let B=Number(z);return Number.isFinite(B)&&B>=0&&B<=100?"valid":"invalid"}function C(k){if(W.some((J)=>M(k,J)==="invalid"))return{};let q={},z=I(k,"x-codex-primary-used-percent");if(z)q.primary=z;let B=I(k,"x-codex-secondary-used-percent");if(B)q.secondary=B;return q}function H(k){let q=W.map((z)=>M(k,z));return q.includes("valid")&&!q.includes("invalid")}function T(k){if(!k)return;if(!Number.isFinite(k.used_percent)||k.used_percent<0||k.used_percent>100)return;let q=$(k.window_minutes),z=Z(k.reset_at);if(k.used_percent===0&&q===void 0&&!z)return;return{usedPercent:k.used_percent,remainingPercent:100-k.used_percent,resetsAt:z,checkedAt:Date.now(),...q!==void 0?{windowMinutes:q}:{}}}function _(k){let q={},z=T(k.rate_limits?.primary);if(z)q.primary=z;let B=T(k.rate_limits?.secondary);if(B)q.secondary=B;return q}function V(k){if(k==null||k==="")return;let q=Number(k);return Number.isFinite(q)&&q>=0?q:void 0}function U(k){if(!k)return;if(!Number.isFinite(k.used_percent)||k.used_percent<0||k.used_percent>100)return;let q=$(k.limit_window_seconds),z=Z(k.reset_at);if(k.used_percent===0&&q===void 0&&!z)return;return{usedPercent:k.used_percent,remainingPercent:100-k.used_percent,resetsAt:z,checkedAt:Date.now(),...q!==void 0?{windowMinutes:q/60}:{}}}function R(k){let q={},z=U(k.rate_limit?.primary_window);if(z)q.primary=z;let B=U(k.rate_limit?.secondary_window);if(B)q.secondary=B;let J=D(k.rate_limit_reset_credits?.available_count);if(J!==void 0)q.resetCreditsAvailable=J;let X=D(k.rate_limit_reset_credits?.applicable_available_count);if(X!==void 0)q.resetCreditsApplicable=X;let G=k.spend_control?.individual_limit;if(G&&typeof k.spend_control?.reached==="boolean"){let Y=V(G.limit),O=V(G.used),Q=V(G.remaining),f=V(G.used_percent),x=V(G.remaining_percent);if(Y!==void 0&&O!==void 0&&Q!==void 0&&f!==void 0&&x!==void 0)q.spendControl={limit:Y,used:O,remaining:Q,usedPercent:f,remainingPercent:x,resetsAt:Z(G.reset_at),unit:G.unit,source:G.source,reached:k.spend_control.reached}}let K=k.credits;if(K&&typeof K.has_credits==="boolean"&&typeof K.unlimited==="boolean"&&typeof K.overage_limit_reached==="boolean"){let Y=V(K.balance);q.credits={hasCredits:K.has_credits,unlimited:K.unlimited,overageLimitReached:K.overage_limit_reached,...Y!==void 0?{balance:Y}:{}}}return q}
|
|
2
|
+
export{Z as lb,C as mb,H as nb,_ as ob,R as pb};
|