oc-codex-multi-auth 6.9.1 → 6.10.1
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 +45 -14
- package/config/README.md +71 -22
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +35 -7
- package/dist/index.js.map +1 -1
- package/dist/lib/auth/server.d.ts.map +1 -1
- package/dist/lib/auth/server.js +7 -3
- package/dist/lib/auth/server.js.map +1 -1
- package/dist/lib/config.d.ts +6 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +9 -0
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/oauth-success.d.ts +1 -0
- package/dist/lib/oauth-success.d.ts.map +1 -1
- package/dist/lib/oauth-success.html +198 -707
- package/dist/lib/oauth-success.js +202 -708
- package/dist/lib/oauth-success.js.map +1 -1
- package/dist/lib/schemas.d.ts +1 -0
- package/dist/lib/schemas.d.ts.map +1 -1
- package/dist/lib/schemas.js +1 -0
- package/dist/lib/schemas.js.map +1 -1
- package/dist/lib/tools/codex-doctor.d.ts.map +1 -1
- package/dist/lib/tools/codex-doctor.js +168 -142
- package/dist/lib/tools/codex-doctor.js.map +1 -1
- package/dist/lib/tools/codex-health.d.ts.map +1 -1
- package/dist/lib/tools/codex-health.js +41 -38
- package/dist/lib/tools/codex-health.js.map +1 -1
- package/dist/lib/tools/codex-refresh.d.ts.map +1 -1
- package/dist/lib/tools/codex-refresh.js +24 -103
- package/dist/lib/tools/codex-refresh.js.map +1 -1
- package/dist/lib/tools/index.d.ts +1 -0
- package/dist/lib/tools/index.d.ts.map +1 -1
- package/dist/lib/tools/index.js.map +1 -1
- package/dist/lib/tools/refresh-account.d.ts +63 -0
- package/dist/lib/tools/refresh-account.d.ts.map +1 -0
- package/dist/lib/tools/refresh-account.js +159 -0
- package/dist/lib/tools/refresh-account.js.map +1 -0
- package/dist/lib/ui/beginner.d.ts +1 -0
- package/dist/lib/ui/beginner.d.ts.map +1 -1
- package/dist/lib/ui/beginner.js +12 -1
- package/dist/lib/ui/beginner.js.map +1 -1
- package/package.json +155 -155
- package/scripts/install-oc-codex-multi-auth-core.js +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"beginner.d.ts","sourceRoot":"","sources":["../../../lib/ui/beginner.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,0BAA0B,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC;AAEpE,MAAM,WAAW,uBAAuB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"beginner.d.ts","sourceRoot":"","sources":["../../../lib/ui/beginner.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,0BAA0B,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC;AAEpE,MAAM,WAAW,uBAAuB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,uBAAuB;IACvC,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,0BAA0B,EAAE,MAAM,CAAC;IACnC,0BAA0B,EAAE,MAAM,CAAC;IACnC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,qBAAqB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,yBAAyB;IACzC,QAAQ,EAAE,0BAA0B,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,sBAAsB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAK7E;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,IAAI,CACtD,uBAAuB,EACvB,4BAA4B,GAAG,4BAA4B,GAAG,oBAAoB,CAClF,GAAG,MAAM,CAET;AAED,wBAAgB,yBAAyB,CACxC,QAAQ,EAAE,uBAAuB,EAAE,EACnC,GAAG,EAAE,MAAM,GACT,sBAAsB,CA6CxB;AAED,wBAAgB,sBAAsB,CACrC,QAAQ,EAAE,uBAAuB,EAAE,EACnC,GAAG,EAAE,MAAM,GACT,qBAAqB,EAAE,CAuDzB;AAOD,wBAAgB,2BAA2B,CAC1C,QAAQ,EAAE,MAAM,GAAG,IAAI,GACrB,MAAM,GAAG,IAAI,CAgBf;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IAClD,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,uBAAuB,CAAC;CACjC,GAAG,yBAAyB,EAAE,CA2H9B;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IAClD,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,uBAAuB,CAAC;CACjC,GAAG,MAAM,CAwBT"}
|
package/dist/lib/ui/beginner.js
CHANGED
|
@@ -35,7 +35,10 @@ export function summarizeBeginnerAccounts(accounts, now) {
|
|
|
35
35
|
rateLimited += 1;
|
|
36
36
|
if (isCoolingDown)
|
|
37
37
|
coolingDown += 1;
|
|
38
|
-
const isBlocked = !account.enabled ||
|
|
38
|
+
const isBlocked = !account.enabled ||
|
|
39
|
+
isRateLimited ||
|
|
40
|
+
isCoolingDown ||
|
|
41
|
+
account.refreshVerificationFailed === true;
|
|
39
42
|
if (isBlocked)
|
|
40
43
|
blocked += 1;
|
|
41
44
|
else
|
|
@@ -172,6 +175,11 @@ export function buildBeginnerDoctorFindings(input) {
|
|
|
172
175
|
action: "Wait for cooldown expiry or rotate to another healthy account.",
|
|
173
176
|
});
|
|
174
177
|
}
|
|
178
|
+
// NOTE: the `refresh-verification-failed` finding is emitted by the
|
|
179
|
+
// codex-doctor fix path (with the affected slot numbers) via extraFindings.
|
|
180
|
+
// Do not also generate a generic copy here off `refreshVerificationFailed`,
|
|
181
|
+
// or `codex-doctor --fix` reports the same-coded finding twice. The flag is
|
|
182
|
+
// still consumed above (blocked count) and below (recommended next action).
|
|
175
183
|
if (input.runtime.authRefreshFailures > 0) {
|
|
176
184
|
findings.push({
|
|
177
185
|
severity: "warning",
|
|
@@ -242,6 +250,9 @@ export function recommendBeginnerNextAction(input) {
|
|
|
242
250
|
if (summary.healthy === 0) {
|
|
243
251
|
return "Run `codex-health`, then re-login or switch to a healthy account.";
|
|
244
252
|
}
|
|
253
|
+
if (input.accounts.some((account) => account.refreshVerificationFailed)) {
|
|
254
|
+
return "Re-authenticate the affected account(s) with `opencode auth login`.";
|
|
255
|
+
}
|
|
245
256
|
if (summary.rateLimited > 0) {
|
|
246
257
|
return "Use `codex-switch index=2` to move away from rate-limited accounts.";
|
|
247
258
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"beginner.js","sourceRoot":"","sources":["../../../lib/ui/beginner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"beginner.js","sourceRoot":"","sources":["../../../lib/ui/beginner.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,155 +1,155 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "oc-codex-multi-auth",
|
|
3
|
-
"version": "6.
|
|
4
|
-
"description": "OpenCode plugin for ChatGPT Plus/Pro OAuth with Codex/GPT-5 routing, multi-account rotation, account switching, health checks, diagnostics, and recovery tools",
|
|
5
|
-
"main": "./dist/index.js",
|
|
6
|
-
"types": "./dist/index.d.ts",
|
|
7
|
-
"exports": {
|
|
8
|
-
".": {
|
|
9
|
-
"types": "./dist/index.d.ts",
|
|
10
|
-
"import": "./dist/index.js"
|
|
11
|
-
},
|
|
12
|
-
"./tui": {
|
|
13
|
-
"types": "./dist/tui.d.ts",
|
|
14
|
-
"import": "./dist/tui.js"
|
|
15
|
-
}
|
|
16
|
-
},
|
|
17
|
-
"type": "module",
|
|
18
|
-
"license": "MIT",
|
|
19
|
-
"author": "ndycode",
|
|
20
|
-
"repository": {
|
|
21
|
-
"type": "git",
|
|
22
|
-
"url": "git+https://github.com/ndycode/oc-codex-multi-auth.git"
|
|
23
|
-
},
|
|
24
|
-
"keywords": [
|
|
25
|
-
"opencode",
|
|
26
|
-
"opencode-plugin",
|
|
27
|
-
"opencode-auth",
|
|
28
|
-
"openai",
|
|
29
|
-
"chatgpt",
|
|
30
|
-
"chatgpt-plus",
|
|
31
|
-
"chatgpt-pro",
|
|
32
|
-
"oauth",
|
|
33
|
-
"oauth2",
|
|
34
|
-
"oauth-login",
|
|
35
|
-
"pkce",
|
|
36
|
-
"codex",
|
|
37
|
-
"codex-auth",
|
|
38
|
-
"codex-oauth",
|
|
39
|
-
"gpt-5",
|
|
40
|
-
"gpt-5-5",
|
|
41
|
-
"multi-account",
|
|
42
|
-
"account-rotation",
|
|
43
|
-
"account-switching",
|
|
44
|
-
"account-health",
|
|
45
|
-
"health-checks",
|
|
46
|
-
"quota-management",
|
|
47
|
-
"diagnostics",
|
|
48
|
-
"recovery-tools",
|
|
49
|
-
"terminal-ui",
|
|
50
|
-
"developer-tools",
|
|
51
|
-
"typescript",
|
|
52
|
-
"nodejs"
|
|
53
|
-
],
|
|
54
|
-
"homepage": "https://github.com/ndycode/oc-codex-multi-auth#readme",
|
|
55
|
-
"bugs": {
|
|
56
|
-
"url": "https://github.com/ndycode/oc-codex-multi-auth/issues"
|
|
57
|
-
},
|
|
58
|
-
"scripts": {
|
|
59
|
-
"build": "node scripts/clean-dist.js && tsc && node scripts/copy-oauth-success.js",
|
|
60
|
-
"typecheck": "tsc --noEmit",
|
|
61
|
-
"lint": "npm run lint:ts && npm run lint:scripts",
|
|
62
|
-
"lint:ts": "eslint . --ext .ts",
|
|
63
|
-
"lint:scripts": "eslint scripts --ext .js",
|
|
64
|
-
"lint:fix": "npm run lint:ts:fix && npm run lint:scripts:fix",
|
|
65
|
-
"lint:ts:fix": "eslint . --ext .ts --fix",
|
|
66
|
-
"lint:scripts:fix": "eslint scripts --ext .js --fix",
|
|
67
|
-
"test": "vitest run",
|
|
68
|
-
"test:watch": "vitest",
|
|
69
|
-
"test:ui": "vitest --ui",
|
|
70
|
-
"test:coverage": "vitest run --coverage",
|
|
71
|
-
"coverage": "vitest run --coverage",
|
|
72
|
-
"audit:prod": "npm audit --omit=dev --audit-level=high",
|
|
73
|
-
"audit:all": "npm audit --audit-level=high",
|
|
74
|
-
"audit:dev:allowlist": "node scripts/audit-dev-allowlist.js",
|
|
75
|
-
"audit:ci": "npm run audit:prod && npm run audit:dev:allowlist",
|
|
76
|
-
"prepublishOnly": "npm run build",
|
|
77
|
-
"prepare": "husky"
|
|
78
|
-
},
|
|
79
|
-
"bin": {
|
|
80
|
-
"oc-codex-multi-auth": "scripts/install-oc-codex-multi-auth.js"
|
|
81
|
-
},
|
|
82
|
-
"files": [
|
|
83
|
-
"dist/",
|
|
84
|
-
"assets/",
|
|
85
|
-
"config/",
|
|
86
|
-
"scripts/",
|
|
87
|
-
"README.md",
|
|
88
|
-
"LICENSE"
|
|
89
|
-
],
|
|
90
|
-
"lint-staged": {
|
|
91
|
-
"*.ts": [
|
|
92
|
-
"eslint --max-warnings=0 --fix --no-warn-ignored"
|
|
93
|
-
],
|
|
94
|
-
"scripts/**/*.js": [
|
|
95
|
-
"eslint --max-warnings=0 --fix --no-warn-ignored"
|
|
96
|
-
]
|
|
97
|
-
},
|
|
98
|
-
"engines": {
|
|
99
|
-
"node": ">=18.0.0"
|
|
100
|
-
},
|
|
101
|
-
"peerDependencies": {
|
|
102
|
-
"typescript": "^5"
|
|
103
|
-
},
|
|
104
|
-
"devDependencies": {
|
|
105
|
-
"@fast-check/vitest": "^0.2.4",
|
|
106
|
-
"@opencode-ai/sdk": "^1.2.10",
|
|
107
|
-
"@types/node": "^25.3.0",
|
|
108
|
-
"@types/proper-lockfile": "^4.1.4",
|
|
109
|
-
"@typescript-eslint/eslint-plugin": "^8.56.0",
|
|
110
|
-
"@typescript-eslint/parser": "^8.56.0",
|
|
111
|
-
"@vitest/coverage-v8": "^4.0.18",
|
|
112
|
-
"@vitest/ui": "^4.0.18",
|
|
113
|
-
"eslint": "^10.0.0",
|
|
114
|
-
"fast-check": "^4.5.3",
|
|
115
|
-
"husky": "^9.1.7",
|
|
116
|
-
"lint-staged": "^16.2.7",
|
|
117
|
-
"typescript": "^5.9.3",
|
|
118
|
-
"typescript-language-server": "^5.1.3",
|
|
119
|
-
"vitest": "^4.0.18"
|
|
120
|
-
},
|
|
121
|
-
"dependencies": {
|
|
122
|
-
"@napi-rs/keyring": "~1.2.0",
|
|
123
|
-
"@openauthjs/openauth": "^0.4.3",
|
|
124
|
-
"@opencode-ai/plugin": "^1.14.22",
|
|
125
|
-
"@opentui/core": "0.2.6",
|
|
126
|
-
"@opentui/solid": "0.2.6",
|
|
127
|
-
"hono": "4.12.26",
|
|
128
|
-
"proper-lockfile": "^4.1.2",
|
|
129
|
-
"solid-js": "^1.9.11",
|
|
130
|
-
"web-tree-sitter": "^0.25.10",
|
|
131
|
-
"zod": "^4.3.6"
|
|
132
|
-
},
|
|
133
|
-
"overrides": {
|
|
134
|
-
"esbuild": "^0.28.1",
|
|
135
|
-
"flatted": "3.4.2",
|
|
136
|
-
"hono": "4.12.26",
|
|
137
|
-
"rollup": "4.60.0",
|
|
138
|
-
"vite": "^7.3.5",
|
|
139
|
-
"yaml": "^2.8.3",
|
|
140
|
-
"@babel/core": "^7.29.6",
|
|
141
|
-
"ajv@<6.14.0": "^6.14.0",
|
|
142
|
-
"brace-expansion@>=2.0.0 <=2.0.2": "^2.0.3",
|
|
143
|
-
"brace-expansion@>=5.0.0 <5.0.6": "^5.0.6",
|
|
144
|
-
"minimatch@<9.0.7": "^9.0.7",
|
|
145
|
-
"minimatch@>=10.0.0 <10.2.3": "^10.2.3",
|
|
146
|
-
"picomatch@<2.3.2": "^2.3.2",
|
|
147
|
-
"picomatch@>=4.0.0 <4.0.4": "^4.0.4",
|
|
148
|
-
"@typescript-eslint/typescript-estree": {
|
|
149
|
-
"minimatch": "^9.0.7"
|
|
150
|
-
},
|
|
151
|
-
"uuid": "13.0.1",
|
|
152
|
-
"diff": "8.0.3",
|
|
153
|
-
"file-type": "21.3.1"
|
|
154
|
-
}
|
|
155
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "oc-codex-multi-auth",
|
|
3
|
+
"version": "6.10.1",
|
|
4
|
+
"description": "OpenCode plugin for ChatGPT Plus/Pro OAuth with Codex/GPT-5 routing, multi-account rotation, account switching, health checks, diagnostics, and recovery tools",
|
|
5
|
+
"main": "./dist/index.js",
|
|
6
|
+
"types": "./dist/index.d.ts",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"import": "./dist/index.js"
|
|
11
|
+
},
|
|
12
|
+
"./tui": {
|
|
13
|
+
"types": "./dist/tui.d.ts",
|
|
14
|
+
"import": "./dist/tui.js"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"type": "module",
|
|
18
|
+
"license": "MIT",
|
|
19
|
+
"author": "ndycode",
|
|
20
|
+
"repository": {
|
|
21
|
+
"type": "git",
|
|
22
|
+
"url": "git+https://github.com/ndycode/oc-codex-multi-auth.git"
|
|
23
|
+
},
|
|
24
|
+
"keywords": [
|
|
25
|
+
"opencode",
|
|
26
|
+
"opencode-plugin",
|
|
27
|
+
"opencode-auth",
|
|
28
|
+
"openai",
|
|
29
|
+
"chatgpt",
|
|
30
|
+
"chatgpt-plus",
|
|
31
|
+
"chatgpt-pro",
|
|
32
|
+
"oauth",
|
|
33
|
+
"oauth2",
|
|
34
|
+
"oauth-login",
|
|
35
|
+
"pkce",
|
|
36
|
+
"codex",
|
|
37
|
+
"codex-auth",
|
|
38
|
+
"codex-oauth",
|
|
39
|
+
"gpt-5",
|
|
40
|
+
"gpt-5-5",
|
|
41
|
+
"multi-account",
|
|
42
|
+
"account-rotation",
|
|
43
|
+
"account-switching",
|
|
44
|
+
"account-health",
|
|
45
|
+
"health-checks",
|
|
46
|
+
"quota-management",
|
|
47
|
+
"diagnostics",
|
|
48
|
+
"recovery-tools",
|
|
49
|
+
"terminal-ui",
|
|
50
|
+
"developer-tools",
|
|
51
|
+
"typescript",
|
|
52
|
+
"nodejs"
|
|
53
|
+
],
|
|
54
|
+
"homepage": "https://github.com/ndycode/oc-codex-multi-auth#readme",
|
|
55
|
+
"bugs": {
|
|
56
|
+
"url": "https://github.com/ndycode/oc-codex-multi-auth/issues"
|
|
57
|
+
},
|
|
58
|
+
"scripts": {
|
|
59
|
+
"build": "node scripts/clean-dist.js && tsc && node scripts/copy-oauth-success.js",
|
|
60
|
+
"typecheck": "tsc --noEmit",
|
|
61
|
+
"lint": "npm run lint:ts && npm run lint:scripts",
|
|
62
|
+
"lint:ts": "eslint . --ext .ts",
|
|
63
|
+
"lint:scripts": "eslint scripts --ext .js",
|
|
64
|
+
"lint:fix": "npm run lint:ts:fix && npm run lint:scripts:fix",
|
|
65
|
+
"lint:ts:fix": "eslint . --ext .ts --fix",
|
|
66
|
+
"lint:scripts:fix": "eslint scripts --ext .js --fix",
|
|
67
|
+
"test": "vitest run",
|
|
68
|
+
"test:watch": "vitest",
|
|
69
|
+
"test:ui": "vitest --ui",
|
|
70
|
+
"test:coverage": "vitest run --coverage",
|
|
71
|
+
"coverage": "vitest run --coverage",
|
|
72
|
+
"audit:prod": "npm audit --omit=dev --audit-level=high",
|
|
73
|
+
"audit:all": "npm audit --audit-level=high",
|
|
74
|
+
"audit:dev:allowlist": "node scripts/audit-dev-allowlist.js",
|
|
75
|
+
"audit:ci": "npm run audit:prod && npm run audit:dev:allowlist",
|
|
76
|
+
"prepublishOnly": "npm run build",
|
|
77
|
+
"prepare": "husky"
|
|
78
|
+
},
|
|
79
|
+
"bin": {
|
|
80
|
+
"oc-codex-multi-auth": "scripts/install-oc-codex-multi-auth.js"
|
|
81
|
+
},
|
|
82
|
+
"files": [
|
|
83
|
+
"dist/",
|
|
84
|
+
"assets/",
|
|
85
|
+
"config/",
|
|
86
|
+
"scripts/",
|
|
87
|
+
"README.md",
|
|
88
|
+
"LICENSE"
|
|
89
|
+
],
|
|
90
|
+
"lint-staged": {
|
|
91
|
+
"*.ts": [
|
|
92
|
+
"eslint --max-warnings=0 --fix --no-warn-ignored"
|
|
93
|
+
],
|
|
94
|
+
"scripts/**/*.js": [
|
|
95
|
+
"eslint --max-warnings=0 --fix --no-warn-ignored"
|
|
96
|
+
]
|
|
97
|
+
},
|
|
98
|
+
"engines": {
|
|
99
|
+
"node": ">=18.0.0"
|
|
100
|
+
},
|
|
101
|
+
"peerDependencies": {
|
|
102
|
+
"typescript": "^5"
|
|
103
|
+
},
|
|
104
|
+
"devDependencies": {
|
|
105
|
+
"@fast-check/vitest": "^0.2.4",
|
|
106
|
+
"@opencode-ai/sdk": "^1.2.10",
|
|
107
|
+
"@types/node": "^25.3.0",
|
|
108
|
+
"@types/proper-lockfile": "^4.1.4",
|
|
109
|
+
"@typescript-eslint/eslint-plugin": "^8.56.0",
|
|
110
|
+
"@typescript-eslint/parser": "^8.56.0",
|
|
111
|
+
"@vitest/coverage-v8": "^4.0.18",
|
|
112
|
+
"@vitest/ui": "^4.0.18",
|
|
113
|
+
"eslint": "^10.0.0",
|
|
114
|
+
"fast-check": "^4.5.3",
|
|
115
|
+
"husky": "^9.1.7",
|
|
116
|
+
"lint-staged": "^16.2.7",
|
|
117
|
+
"typescript": "^5.9.3",
|
|
118
|
+
"typescript-language-server": "^5.1.3",
|
|
119
|
+
"vitest": "^4.0.18"
|
|
120
|
+
},
|
|
121
|
+
"dependencies": {
|
|
122
|
+
"@napi-rs/keyring": "~1.2.0",
|
|
123
|
+
"@openauthjs/openauth": "^0.4.3",
|
|
124
|
+
"@opencode-ai/plugin": "^1.14.22",
|
|
125
|
+
"@opentui/core": "0.2.6",
|
|
126
|
+
"@opentui/solid": "0.2.6",
|
|
127
|
+
"hono": "4.12.26",
|
|
128
|
+
"proper-lockfile": "^4.1.2",
|
|
129
|
+
"solid-js": "^1.9.11",
|
|
130
|
+
"web-tree-sitter": "^0.25.10",
|
|
131
|
+
"zod": "^4.3.6"
|
|
132
|
+
},
|
|
133
|
+
"overrides": {
|
|
134
|
+
"esbuild": "^0.28.1",
|
|
135
|
+
"flatted": "3.4.2",
|
|
136
|
+
"hono": "4.12.26",
|
|
137
|
+
"rollup": "4.60.0",
|
|
138
|
+
"vite": "^7.3.5",
|
|
139
|
+
"yaml": "^2.8.3",
|
|
140
|
+
"@babel/core": "^7.29.6",
|
|
141
|
+
"ajv@<6.14.0": "^6.14.0",
|
|
142
|
+
"brace-expansion@>=2.0.0 <=2.0.2": "^2.0.3",
|
|
143
|
+
"brace-expansion@>=5.0.0 <5.0.6": "^5.0.6",
|
|
144
|
+
"minimatch@<9.0.7": "^9.0.7",
|
|
145
|
+
"minimatch@>=10.0.0 <10.2.3": "^10.2.3",
|
|
146
|
+
"picomatch@<2.3.2": "^2.3.2",
|
|
147
|
+
"picomatch@>=4.0.0 <4.0.4": "^4.0.4",
|
|
148
|
+
"@typescript-eslint/typescript-estree": {
|
|
149
|
+
"minimatch": "^9.0.7"
|
|
150
|
+
},
|
|
151
|
+
"uuid": "13.0.1",
|
|
152
|
+
"diff": "8.0.3",
|
|
153
|
+
"file-type": "21.3.1"
|
|
154
|
+
}
|
|
155
|
+
}
|
|
@@ -89,13 +89,13 @@ function printHelp() {
|
|
|
89
89
|
"Default behavior:\n" +
|
|
90
90
|
" - Installs/updates global config at ~/.config/opencode/opencode.json\n" +
|
|
91
91
|
" - Enables the prompt status bar TUI plugin at ~/.config/opencode/tui.json\n" +
|
|
92
|
-
" - Uses compact UI config by default (
|
|
92
|
+
" - Uses compact UI config by default (12 base OAuth models + variant picker presets)\n" +
|
|
93
93
|
" - Ensures plugin is unpinned (latest)\n" +
|
|
94
94
|
" - Clears OpenCode plugin cache\n\n" +
|
|
95
95
|
"Options:\n" +
|
|
96
|
-
" --modern Force compact modern config (
|
|
97
|
-
" --full Install compact base models plus
|
|
98
|
-
" --legacy Force explicit legacy config (
|
|
96
|
+
" --modern Force compact modern config (12 base OAuth models + --variant presets)\n" +
|
|
97
|
+
" --full Install compact base models plus 53 explicit selector entries\n" +
|
|
98
|
+
" --legacy Force explicit legacy config (53 preset model entries)\n" +
|
|
99
99
|
" --dry-run Show actions without writing\n" +
|
|
100
100
|
" --no-cache-clear Skip clearing OpenCode cache\n"
|
|
101
101
|
);
|
|
@@ -907,10 +907,10 @@ export async function runInstaller(argv = process.argv.slice(2), options = {}) {
|
|
|
907
907
|
log("\nDone. Restart OpenCode to (re)install the plugin.");
|
|
908
908
|
log("Example: opencode");
|
|
909
909
|
if (configMode === "modern") {
|
|
910
|
-
log("Note: Modern config intentionally shows
|
|
910
|
+
log("Note: Modern config intentionally shows 12 base OAuth model entries; use the variant picker for reasoning presets.");
|
|
911
911
|
}
|
|
912
912
|
if (configMode === "legacy") {
|
|
913
|
-
log("Note: Legacy config writes
|
|
913
|
+
log("Note: Legacy config writes 53 explicit preset entries and is also safe for older OpenCode versions.");
|
|
914
914
|
}
|
|
915
915
|
if (configMode === "full") {
|
|
916
916
|
log("Note: Full config installs both compact base models and explicit preset entries for direct selector IDs.");
|