opencode-enhancer 1.2.1 → 1.2.3

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 CHANGED
@@ -74,42 +74,75 @@ Default paths:
74
74
 
75
75
  Legacy `opencode-multi-auth` paths are migrated automatically.
76
76
 
77
- ## Environment Variables
77
+ ## Configuration Reference
78
78
 
79
- Primary variables now use the `OPENCODE_ENHANCER_*` prefix.
79
+ This section documents all user-facing configuration surfaces:
80
80
 
81
- Legacy `OPENCODE_MULTI_AUTH_*` and `CODEX_SOFT_*` variables still work as fallback compatibility aliases.
81
+ 1. OpenCode `config.json` (runtime plugin config)
82
+ 2. persisted enhancer store (`settings.json`)
83
+ 3. environment variables
82
84
 
83
- Examples:
84
-
85
- - `OPENCODE_ENHANCER_STORE_DIR`
86
- - `OPENCODE_ENHANCER_STORE_FILE`
87
- - `OPENCODE_ENHANCER_STORE_PASSPHRASE`
88
- - `OPENCODE_ENHANCER_CACHE_DIR`
89
- - `OPENCODE_ENHANCER_LOG_PATH`
90
- - `OPENCODE_ENHANCER_CODEX_AUTH_FILE`
91
- - `OPENCODE_ENHANCER_DEBUG`
92
- - `OPENCODE_ENHANCER_USAGE_BASE_URL`
93
- - `OPENCODE_ENHANCER_REFRESH_QUEUE_CONCURRENCY`
85
+ ### 1) OpenCode `config.json`
94
86
 
95
- Notification-specific examples:
87
+ Currently supported plugin option:
96
88
 
97
- - `OPENCODE_ENHANCER_NOTIFY=1`
98
- - `OPENCODE_ENHANCER_NOTIFY_BACKEND=auto`
99
- - `OPENCODE_ENHANCER_NOTIFY_BACKEND=terminal`
100
- - `OPENCODE_ENHANCER_NOTIFY_BACKEND=system`
101
- - `OPENCODE_ENHANCER_NOTIFY_NTFY_URL=...`
89
+ - `autoSwitchThreshold` (`0..100`, default `95`) — trigger for automatic switching when current account reaches **5h used >= threshold**.
102
90
 
103
- ## Notification Settings JSON
91
+ Recognized locations (checked in this order):
104
92
 
105
- Per-event notification toggles live in the persisted store JSON (`~/.config/opencode-enhancer/settings.json`, key `settings.notifications`).
93
+ 1. `provider.openai.enhancer.autoSwitchThreshold`
94
+ 2. `provider.openai.autoSwitchThreshold`
95
+ 3. `opencodeEnhancer.autoSwitchThreshold`
106
96
 
107
- Default values:
97
+ Example:
108
98
 
109
99
  ```json
100
+ {
101
+ "provider": {
102
+ "openai": {
103
+ "enhancer": {
104
+ "autoSwitchThreshold": 92
105
+ }
106
+ }
107
+ }
108
+ }
109
+ ```
110
+
111
+ ### 2) Persisted settings (`~/.config/opencode-enhancer/settings.json`)
112
+
113
+ Enhancer stores runtime settings under top-level `settings`:
114
+
115
+ ```jsonc
110
116
  {
111
117
  "settings": {
118
+ // rotationStrategy:
119
+ // - round-robin: cyklicznie przechodzi po zdrowych kontach (A -> B -> C -> A...)
120
+ // - least-used: wybiera konto z najmniejszym usageCount (potem najdłużej nieużywane)
121
+ // - random: losuje konto z górnej połowy rankingu zdrowia
122
+ // - weighted-round-robin: wybór ważony wg accountWeights; brak wag => fallback do round-robin
123
+ // - usage-priority: wybiera konto z największym remaining (najpierw weekly, potem 5h)
124
+ "rotationStrategy": "usage-priority",
125
+
126
+ // number 0..100 (must be < lowThreshold)
127
+ "criticalThreshold": 10,
128
+
129
+ // number 0..100 (must be > criticalThreshold)
130
+ "lowThreshold": 30,
131
+
132
+ // map { alias: weight }, each weight in (0, 1], sum should be ~1.0
133
+ "accountWeights": {},
134
+
135
+ "featureFlags": {
136
+ // boolean
137
+ "antigravityEnabled": false,
138
+
139
+ // boolean
140
+ "autoSwitch": true
141
+ },
142
+
112
143
  "notifications": {
144
+ // booleans; controls notifications when the agent
145
+ // asks for permissions, finishes a task, emits an error, or asks a question
113
146
  "permissionRequest": true,
114
147
  "taskComplete": true,
115
148
  "error": true,
@@ -119,12 +152,61 @@ Default values:
119
152
  }
120
153
  ```
121
154
 
122
- These toggles control notifications when the agent:
155
+ ### 3) Environment variables (complete)
156
+
157
+ Primary prefix is `OPENCODE_ENHANCER_*`.
158
+
159
+ Most variables also accept legacy aliases with `OPENCODE_MULTI_AUTH_*`.
160
+ Additionally, `CODEX_SOFT_LOG_PATH` and `CODEX_SOFT_STORE_PASSPHRASE` are still supported for backward compatibility.
161
+
162
+ #### Core / request behavior
163
+
164
+ - `OPENCODE_ENHANCER_DEBUG` — verbose debug logs (`1` enables).
165
+ - `OPENCODE_ENHANCER_UPSTREAM_TIMEOUT_MS` — upstream request timeout in ms (default: `120000`).
166
+ - `OPENCODE_ENHANCER_TOKEN_FAILURE_COOLDOWN_MS` — cooldown when token refresh fails (default: `60000`).
167
+ - `OPENCODE_ENHANCER_TRUNCATION` — forces request `truncation` when payload does not specify it (`0|false|disabled` means no override).
168
+ - `OPENCODE_ENHANCER_USAGE_BASE_URL` — override usage API base URL (default: `https://chatgpt.com/backend-api`).
169
+
170
+ #### Model routing / injection
171
+
172
+ - `OPENCODE_ENHANCER_PREFER_CODEX_LATEST` — when `1|true`, maps older codex model ids to latest model.
173
+ - `OPENCODE_ENHANCER_CODEX_LATEST_MODEL` — target latest model id (default: `gpt-5.4`).
174
+ - `OPENCODE_ENHANCER_INJECT_MODELS` — runtime model injection toggle (`0|false` disables).
175
+
176
+ #### Store / cache / paths
177
+
178
+ - `OPENCODE_ENHANCER_STORE_DIR` — enhancer store directory.
179
+ - `OPENCODE_ENHANCER_STORE_FILE` — enhancer store file path.
180
+ - `OPENCODE_ENHANCER_STORE_PASSPHRASE` — passphrase for encrypted store.
181
+ - `OPENCODE_ENHANCER_CACHE_DIR` — usage cache directory.
182
+ - `OPENCODE_ENHANCER_LOG_PATH` — log file path.
183
+ - `OPENCODE_ENHANCER_CODEX_AUTH_FILE` — path to Codex auth file.
184
+ - `OPENCODE_ENHANCER_REFRESH_QUEUE_CONCURRENCY` — refresh queue concurrency (default `20`, max `20`).
185
+
186
+ #### Feature/settings overrides
187
+
188
+ - `OPENCODE_ENHANCER_ROTATION_STRATEGY` — `round-robin|least-used|random|weighted-round-robin|usage-priority`.
189
+ - `OPENCODE_ENHANCER_CRITICAL_THRESHOLD` — settings override `0..100`.
190
+ - `OPENCODE_ENHANCER_LOW_THRESHOLD` — settings override `0..100`.
191
+ - `OPENCODE_ENHANCER_ANTIGRAVITY_ENABLED` — feature flag override (`1|true`).
192
+ - `OPENCODE_ENHANCER_AUTOSWITCH_ENABLED` — feature flag override (`1|true`).
193
+
194
+ #### Notifications
195
+
196
+ - `OPENCODE_ENHANCER_NOTIFY` — global notifications toggle (`0|false` disables).
197
+ - `OPENCODE_ENHANCER_NOTIFY_BACKEND` — `auto|terminal|system`.
198
+ - `OPENCODE_ENHANCER_NOTIFY_SOUND` — sound path for macOS system notifications.
199
+ - `OPENCODE_ENHANCER_NOTIFY_MAC_OPEN` — macOS click-to-open support toggle (`0|false` disables).
200
+ - `OPENCODE_ENHANCER_NOTIFY_NTFY_URL` — optional ntfy endpoint.
201
+ - `OPENCODE_ENHANCER_NOTIFY_NTFY_TOKEN` — optional ntfy token.
202
+ - `OPENCODE_ENHANCER_NOTIFY_UI_BASE_URL` — base URL for session links in notifications.
203
+
204
+ #### Limits probing / provider auth (advanced)
123
205
 
124
- - asks for permissions
125
- - finishes a task
126
- - emits an error
127
- - asks the user a question
206
+ - `OPENCODE_ENHANCER_PROBE_EFFORT` `low|medium|high` (default: `low`).
207
+ - `OPENCODE_ENHANCER_LIMITS_PROBE_MODELS` comma-separated probe model list.
208
+ - `OPENCODE_ENHANCER_GOOGLE_CLIENT_ID` Gemini OAuth client id override.
209
+ - `OPENCODE_ENHANCER_GOOGLE_CLIENT_SECRET` Gemini OAuth client secret override.
128
210
 
129
211
  ## Terminal-native Notifications
130
212
 
@@ -1 +1 @@
1
- {"version":3,"file":"account-ranking.d.ts","sourceRoot":"","sources":["../src/account-ranking.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAmB,MAAM,YAAY,CAAC;AAQzF,wBAAgB,wBAAwB,CACtC,UAAU,CAAC,EAAE,iBAAiB,EAC9B,GAAG,GAAE,MAAmB,GACvB;IAAE,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAKtE;AAgBD,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,kBAAkB,EAC5B,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,CAAC,EAAE;IACR,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,GACA,MAAM,CAqBR"}
1
+ {"version":3,"file":"account-ranking.d.ts","sourceRoot":"","sources":["../src/account-ranking.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAmB,MAAM,YAAY,CAAC;AAQzF,wBAAgB,wBAAwB,CACtC,UAAU,CAAC,EAAE,iBAAiB,EAC9B,GAAG,GAAE,MAAmB,GACvB;IAAE,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAKtE;AAkBD,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,kBAAkB,EAC5B,QAAQ,EAAE,kBAAkB,EAC5B,OAAO,CAAC,EAAE;IACR,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,GACA,MAAM,CAqBR"}
@@ -19,22 +19,24 @@ function compareRemainingDescending(a, b) {
19
19
  return b - a;
20
20
  return 0;
21
21
  }
22
+ // Unknown remaining is usually less preferred than a known value,
23
+ // except when the known value is already exhausted (<= 0).
22
24
  if (aKnown)
23
- return -1;
25
+ return a <= 0 ? 1 : -1;
24
26
  if (bKnown)
25
- return 1;
27
+ return b <= 0 ? -1 : 1;
26
28
  return 0;
27
29
  }
28
30
  export function compareAccountsByUsagePriority(accountA, accountB, options) {
29
31
  const now = options?.now ?? Date.now();
30
32
  const usageA = getUsagePrioritySnapshot(accountA.rateLimits, now);
31
33
  const usageB = getUsagePrioritySnapshot(accountB.rateLimits, now);
32
- const fiveHourDiff = compareRemainingDescending(usageA.fiveHourRemaining, usageB.fiveHourRemaining);
33
- if (fiveHourDiff !== 0)
34
- return fiveHourDiff;
35
34
  const weeklyDiff = compareRemainingDescending(usageA.weeklyRemaining, usageB.weeklyRemaining);
36
35
  if (weeklyDiff !== 0)
37
36
  return weeklyDiff;
37
+ const fiveHourDiff = compareRemainingDescending(usageA.fiveHourRemaining, usageB.fiveHourRemaining);
38
+ if (fiveHourDiff !== 0)
39
+ return fiveHourDiff;
38
40
  const priorityDiff = (options?.healthPriorityB || 0) - (options?.healthPriorityA || 0);
39
41
  if (priorityDiff !== 0)
40
42
  return priorityDiff;
@@ -1 +1 @@
1
- {"version":3,"file":"account-ranking.js","sourceRoot":"","sources":["../src/account-ranking.ts"],"names":[],"mappings":"AAEA,SAAS,kBAAkB,CAAC,MAAwB,EAAE,MAAc,IAAI,CAAC,GAAG,EAAE;IAC5E,IAAI,OAAO,MAAM,EAAE,SAAS,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACvD,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,GAAG,GAAG;QAAE,OAAO,IAAI,CAAC;IAC5E,OAAO,MAAM,CAAC,SAAS,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,UAA8B,EAC9B,MAAc,IAAI,CAAC,GAAG,EAAE;IAExB,OAAO;QACL,iBAAiB,EAAE,kBAAkB,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,CAAC;QAChE,eAAe,EAAE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC;KAC7D,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,CAAgB,EAAE,CAAgB;IACpE,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC;IACrC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC;IAErC,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;QACrB,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,MAAM;QAAE,OAAO,CAAC,CAAC,CAAC;IACtB,IAAI,MAAM;QAAE,OAAO,CAAC,CAAC;IACrB,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,QAA4B,EAC5B,QAA4B,EAC5B,OAIC;IAED,MAAM,GAAG,GAAG,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IACvC,MAAM,MAAM,GAAG,wBAAwB,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,wBAAwB,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAElE,MAAM,YAAY,GAAG,0BAA0B,CAC7C,MAAM,CAAC,iBAAiB,EACxB,MAAM,CAAC,iBAAiB,CACzB,CAAC;IACF,IAAI,YAAY,KAAK,CAAC;QAAE,OAAO,YAAY,CAAC;IAE5C,MAAM,UAAU,GAAG,0BAA0B,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;IAC9F,IAAI,UAAU,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC;IAExC,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,eAAe,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,IAAI,CAAC,CAAC,CAAC;IACvF,IAAI,YAAY,KAAK,CAAC;QAAE,OAAO,YAAY,CAAC;IAE5C,MAAM,cAAc,GAAG,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;IAC/E,IAAI,cAAc,KAAK,CAAC;QAAE,OAAO,cAAc,CAAC;IAEhD,OAAO,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"account-ranking.js","sourceRoot":"","sources":["../src/account-ranking.ts"],"names":[],"mappings":"AAEA,SAAS,kBAAkB,CAAC,MAAwB,EAAE,MAAc,IAAI,CAAC,GAAG,EAAE;IAC5E,IAAI,OAAO,MAAM,EAAE,SAAS,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACvD,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,GAAG,GAAG;QAAE,OAAO,IAAI,CAAC;IAC5E,OAAO,MAAM,CAAC,SAAS,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,UAA8B,EAC9B,MAAc,IAAI,CAAC,GAAG,EAAE;IAExB,OAAO;QACL,iBAAiB,EAAE,kBAAkB,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,CAAC;QAChE,eAAe,EAAE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC;KAC7D,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,CAAgB,EAAE,CAAgB;IACpE,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC;IACrC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC;IAErC,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;QACrB,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,kEAAkE;IAClE,2DAA2D;IAC3D,IAAI,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,QAA4B,EAC5B,QAA4B,EAC5B,OAIC;IAED,MAAM,GAAG,GAAG,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IACvC,MAAM,MAAM,GAAG,wBAAwB,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,wBAAwB,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAElE,MAAM,UAAU,GAAG,0BAA0B,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;IAC9F,IAAI,UAAU,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC;IAExC,MAAM,YAAY,GAAG,0BAA0B,CAC7C,MAAM,CAAC,iBAAiB,EACxB,MAAM,CAAC,iBAAiB,CACzB,CAAC;IACF,IAAI,YAAY,KAAK,CAAC;QAAE,OAAO,YAAY,CAAC;IAE5C,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,eAAe,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,IAAI,CAAC,CAAC,CAAC;IACvF,IAAI,YAAY,KAAK,CAAC;QAAE,OAAO,YAAY,CAAC;IAE5C,MAAM,cAAc,GAAG,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;IAC/E,IAAI,cAAc,KAAK,CAAC;QAAE,OAAO,cAAc,CAAC;IAEhD,OAAO,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACtD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth-sync.d.ts","sourceRoot":"","sources":["../src/auth-sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAoD5C,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CA+DtF"}
1
+ {"version":3,"file":"auth-sync.d.ts","sourceRoot":"","sources":["../src/auth-sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAoD5C,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAkEtF"}
package/dist/auth-sync.js CHANGED
@@ -1,4 +1,4 @@
1
- import { addAccount, loadStore, updateAccount } from './store.js';
1
+ import { addAccount, loadStore, setActiveAlias, updateAccount } from './store.js';
2
2
  import { decodeJwtPayload } from './jwt.js';
3
3
  import { getAccountIdFromClaims, getEmailFromClaims, getNameFromClaims } from './codex-auth.js';
4
4
  const OPENAI_ISSUER = 'https://auth.openai.com';
@@ -80,6 +80,7 @@ export async function syncAuthFromOpenCode(getAuth) {
80
80
  name: derivedName,
81
81
  accountId: derivedAccountId
82
82
  });
83
+ setActiveAlias(existingAlias);
83
84
  return;
84
85
  }
85
86
  const store = loadStore();
@@ -96,6 +97,7 @@ export async function syncAuthFromOpenCode(getAuth) {
96
97
  email,
97
98
  name
98
99
  });
100
+ setActiveAlias(existingByEmail);
99
101
  return;
100
102
  }
101
103
  }
@@ -109,5 +111,6 @@ export async function syncAuthFromOpenCode(getAuth) {
109
111
  accountId: derivedAccountId,
110
112
  source: 'opencode'
111
113
  });
114
+ setActiveAlias(alias);
112
115
  }
113
116
  //# sourceMappingURL=auth-sync.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-sync.js","sourceRoot":"","sources":["../src/auth-sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth-sync.js","sourceRoot":"","sources":["../src/auth-sync.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
- import { createInterface } from 'node:readline/promises';
3
- import { stdin as input, stdout as output } from 'node:process';
4
- import { loginAccount } from './auth.js';
5
- import { removeAccount, listAccounts, getStorePath, loadStore } from './store.js';
6
- import { runPluginsUpdateCommand } from './plugin-updates.js';
7
- import { runUsageCommand } from './usage-command.js';
2
+ import { createInterface } from "node:readline/promises";
3
+ import { stdin as input, stdout as output } from "node:process";
4
+ import { loginAccount } from "./auth.js";
5
+ import { removeAccount, listAccounts, getStorePath, loadStore } from "./store.js";
6
+ import { runPluginsUpdateCommand } from "./plugin-updates.js";
7
+ import { runUsageCommand } from "./usage-command.js";
8
8
  const args = process.argv.slice(2);
9
9
  const command = args[0];
10
10
  const alias = args[1];
@@ -20,8 +20,8 @@ function hasFlag(flag) {
20
20
  function formatAccountUsageHint(account) {
21
21
  const parts = [];
22
22
  const fiveHour = account.rateLimits?.fiveHour;
23
- if (typeof fiveHour?.remaining === 'number') {
24
- if (typeof fiveHour.limit === 'number' && fiveHour.limit !== 100) {
23
+ if (typeof fiveHour?.remaining === "number") {
24
+ if (typeof fiveHour.limit === "number" && fiveHour.limit !== 100) {
25
25
  parts.push(`5h ${fiveHour.remaining}/${fiveHour.limit} left`);
26
26
  }
27
27
  else {
@@ -29,49 +29,49 @@ function formatAccountUsageHint(account) {
29
29
  }
30
30
  }
31
31
  const weekly = account.rateLimits?.weekly;
32
- if (typeof weekly?.remaining === 'number') {
33
- if (typeof weekly.limit === 'number' && weekly.limit !== 100) {
32
+ if (typeof weekly?.remaining === "number") {
33
+ if (typeof weekly.limit === "number" && weekly.limit !== 100) {
34
34
  parts.push(`weekly ${weekly.remaining}/${weekly.limit} left`);
35
35
  }
36
36
  else {
37
37
  parts.push(`weekly ${weekly.remaining}% left`);
38
38
  }
39
39
  }
40
- return parts.join(' · ');
40
+ return parts.join(" · ");
41
41
  }
42
42
  function formatAccountOption(account, activeAlias) {
43
43
  const primary = account.email?.trim() || account.alias;
44
- const secondary = primary === account.alias ? '' : ` (${account.alias})`;
45
- const active = account.alias === activeAlias ? ' [active]' : '';
44
+ const secondary = primary === account.alias ? "" : ` (${account.alias})`;
45
+ const active = account.alias === activeAlias ? " [active]" : "";
46
46
  const usage = formatAccountUsageHint(account);
47
47
  return usage ? `${primary}${secondary}${active} - ${usage}` : `${primary}${secondary}${active}`;
48
48
  }
49
49
  async function selectAccountAliasForRemoval() {
50
50
  const accounts = listAccounts();
51
51
  if (accounts.length === 0) {
52
- console.log('No accounts configured.');
52
+ console.log("No accounts configured.");
53
53
  return null;
54
54
  }
55
55
  if (!input.isTTY || !output.isTTY) {
56
- throw new Error('Interactive account selection requires a TTY.');
56
+ throw new Error("Interactive account selection requires a TTY.");
57
57
  }
58
58
  const store = loadStore();
59
- console.log('\nSelect account to remove:\n');
59
+ console.log("\nSelect account to remove:\n");
60
60
  for (const [index, account] of accounts.entries()) {
61
61
  console.log(` ${index + 1}. ${formatAccountOption(account, store.activeAlias)}`);
62
62
  }
63
- console.log(' 0. Cancel\n');
63
+ console.log(" 0. Cancel\n");
64
64
  const rl = createInterface({ input, output });
65
65
  try {
66
66
  while (true) {
67
- const answer = (await rl.question('Choose account: ')).trim();
67
+ const answer = (await rl.question("Choose account: ")).trim();
68
68
  const choice = Number.parseInt(answer, 10);
69
69
  if (Number.isNaN(choice)) {
70
- console.log('Enter a number from the list.');
70
+ console.log("Enter a number from the list.");
71
71
  continue;
72
72
  }
73
73
  if (choice === 0) {
74
- console.log('Removal cancelled.');
74
+ console.log("Removal cancelled.");
75
75
  return null;
76
76
  }
77
77
  const selected = accounts[choice - 1];
@@ -87,17 +87,17 @@ async function selectAccountAliasForRemoval() {
87
87
  }
88
88
  async function main() {
89
89
  switch (command) {
90
- case 'add':
91
- case 'login': {
90
+ case "add":
91
+ case "login": {
92
92
  if (!alias) {
93
- console.error('Usage: opencode-enhancer add <alias>');
94
- console.error('Example: opencode-enhancer add work');
93
+ console.error("Usage: opencode-enhancer add <alias>");
94
+ console.error("Example: opencode-enhancer add work");
95
95
  process.exit(1);
96
96
  }
97
97
  try {
98
98
  const account = await loginAccount(alias);
99
99
  console.log(`\nAccount "${alias}" added successfully!`);
100
- console.log(`Email: ${account.email || 'unknown'}`);
100
+ console.log(`Email: ${account.email || "unknown"}`);
101
101
  }
102
102
  catch (err) {
103
103
  console.error(`Failed to add account: ${err}`);
@@ -105,10 +105,10 @@ async function main() {
105
105
  }
106
106
  break;
107
107
  }
108
- case 'remove':
109
- case 'rm': {
108
+ case "remove":
109
+ case "rm": {
110
110
  if (alias) {
111
- console.error('Usage: opencode-enhancer remove');
111
+ console.error("Usage: opencode-enhancer remove");
112
112
  process.exit(1);
113
113
  }
114
114
  try {
@@ -125,79 +125,85 @@ async function main() {
125
125
  }
126
126
  break;
127
127
  }
128
- case 'list':
129
- case 'ls': {
128
+ case "list":
129
+ case "ls": {
130
130
  const accounts = listAccounts();
131
131
  if (accounts.length === 0) {
132
- console.log('No accounts configured.');
133
- console.log('Add one with: opencode-enhancer add <alias>');
132
+ console.log("No accounts configured.");
133
+ console.log("Add one with: opencode-enhancer add <alias>");
134
134
  }
135
135
  else {
136
- console.log('\nConfigured accounts:\n');
136
+ console.log("\nConfigured accounts:\n");
137
137
  for (const acc of accounts) {
138
- console.log(` ${acc.alias}: ${acc.email || 'unknown email'} (uses: ${acc.usageCount})`);
138
+ console.log(` ${acc.alias}: ${acc.email || "unknown email"} (uses: ${acc.usageCount})`);
139
139
  }
140
140
  console.log();
141
141
  }
142
142
  break;
143
143
  }
144
- case 'status': {
144
+ case "status": {
145
145
  const store = loadStore();
146
146
  const accounts = Object.values(store.accounts);
147
- console.log('\n[enhancer] Account Status\n');
148
- console.log('Strategy: round-robin');
147
+ const strategy = store.settings?.rotationStrategy || store.rotationStrategy || "usage-priority";
148
+ console.log("\n[enhancer] Account Status\n");
149
+ console.log(`Strategy: ${strategy}`);
149
150
  console.log(`Accounts: ${accounts.length}`);
150
- console.log(`Active: ${store.activeAlias || 'none'}\n`);
151
+ console.log(`Active: ${store.activeAlias || "none"}\n`);
151
152
  if (accounts.length === 0) {
152
- console.log('No accounts configured. Run: opencode-enhancer add <alias>\n');
153
+ console.log("No accounts configured. Run: opencode-enhancer add <alias>\n");
153
154
  return;
154
155
  }
155
156
  for (const acc of accounts) {
156
- const isActive = acc.alias === store.activeAlias ? ' (active)' : '';
157
+ const isActive = acc.alias === store.activeAlias ? " (active)" : "";
157
158
  const isRateLimited = acc.rateLimitedUntil && acc.rateLimitedUntil > Date.now()
158
159
  ? ` [RATE LIMITED until ${new Date(acc.rateLimitedUntil).toLocaleTimeString()}]`
159
- : '';
160
+ : "";
160
161
  const expiry = new Date(acc.expiresAt).toLocaleString();
161
162
  console.log(` ${acc.alias}${isActive}${isRateLimited}`);
162
- console.log(` Email: ${acc.email || 'unknown'}`);
163
+ console.log(` Email: ${acc.email || "unknown"}`);
163
164
  console.log(` Uses: ${acc.usageCount}`);
164
165
  console.log(` Token expires: ${expiry}`);
165
166
  console.log();
166
167
  }
167
168
  break;
168
169
  }
169
- case 'path': {
170
+ case "path": {
170
171
  console.log(getStorePath());
171
172
  break;
172
173
  }
173
- case 'usage': {
174
- const providerArg = getFlagValue('--provider');
175
- const jsonFlag = args.includes('--json');
176
- const verboseFlag = args.includes('--verbose') || args.includes('-v');
177
- const noCacheFlag = args.includes('--no-cache');
178
- await runUsageCommand({ provider: providerArg || undefined, json: jsonFlag, verbose: verboseFlag, noCache: noCacheFlag });
174
+ case "usage": {
175
+ const providerArg = getFlagValue("--provider");
176
+ const jsonFlag = args.includes("--json");
177
+ const verboseFlag = args.includes("--verbose") || args.includes("-v");
178
+ const noCacheFlag = args.includes("--no-cache");
179
+ await runUsageCommand({
180
+ provider: providerArg || undefined,
181
+ json: jsonFlag,
182
+ verbose: verboseFlag,
183
+ noCache: noCacheFlag,
184
+ });
179
185
  break;
180
186
  }
181
- case 'plugins': {
182
- const action = args[1] || 'help';
183
- if (action !== 'update') {
184
- console.error('Usage: opencode-enhancer plugins update [--dry-run] [--include-pinned] [--exclude name1,name2]');
187
+ case "plugins": {
188
+ const action = args[1] || "help";
189
+ if (action !== "update") {
190
+ console.error("Usage: opencode-enhancer plugins update [--dry-run] [--include-pinned] [--exclude name1,name2]");
185
191
  process.exit(1);
186
192
  }
187
- const exclude = (getFlagValue('--exclude') || '')
188
- .split(',')
193
+ const exclude = (getFlagValue("--exclude") || "")
194
+ .split(",")
189
195
  .map((item) => item.trim())
190
196
  .filter(Boolean);
191
197
  await runPluginsUpdateCommand({
192
- dryRun: hasFlag('--dry-run'),
193
- includePinned: hasFlag('--include-pinned'),
198
+ dryRun: hasFlag("--dry-run"),
199
+ includePinned: hasFlag("--include-pinned"),
194
200
  exclude,
195
201
  });
196
202
  break;
197
203
  }
198
- case 'help':
199
- case '--help':
200
- case '-h':
204
+ case "help":
205
+ case "--help":
206
+ case "-h":
201
207
  default: {
202
208
  console.log(`
203
209
  opencode-enhancer - OpenCode enhancer for Codex accounts, usage, plugin updates, and automation
@@ -239,8 +245,8 @@ After adding accounts, the plugin auto-rotates between them.
239
245
  }
240
246
  }
241
247
  }
242
- main().catch(err => {
243
- console.error('Fatal error:', err);
248
+ main().catch((err) => {
249
+ console.error("Fatal error:", err);
244
250
  process.exit(1);
245
251
  });
246
252
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,9 @@ export declare function getAccountIdFromClaims(claims: Record<string, any> | nul
31
31
  export declare function getExpiryFromClaims(claims: Record<string, any> | null): number | undefined;
32
32
  export declare function getCodexAuthSummary(): CodexAuthSummary;
33
33
  export declare function resolveAliasForCurrentAuth(store?: ReturnType<typeof loadStore>): string | null;
34
- export declare function syncCodexAuthFile(): {
34
+ export declare function syncCodexAuthFile(options?: {
35
+ setActiveAlias?: boolean;
36
+ }): {
35
37
  alias: string | null;
36
38
  added: boolean;
37
39
  updated: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"codex-auth.d.ts","sourceRoot":"","sources":["../src/codex-auth.ts"],"names":[],"mappings":"AAGA,OAAO,EAAc,SAAS,EAAiB,MAAM,YAAY,CAAA;AAIjE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAiBD,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,OAAO,CAAA;IACvB,eAAe,EAAE,OAAO,CAAA;IACxB,UAAU,EAAE,OAAO,CAAA;CACpB;AASD,wBAAgB,iBAAiB,IAAI,aAAa,GAAG,IAAI,CAWxD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAK5D;AAqDD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAMzF;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAUxF;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAI7F;AAwBD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAK1F;AAmDD,wBAAgB,mBAAmB,IAAI,gBAAgB,CA0BtD;AAED,wBAAgB,0BAA0B,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,OAAO,SAAS,CAAC,GAAG,MAAM,GAAG,IAAI,CAuB9F;AAED,wBAAgB,iBAAiB,IAAI;IACnC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,KAAK,EAAE,OAAO,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,CAqEA;AAED,wBAAgB,kBAAkB,IAAI;IAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAE7D;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAkC1D"}
1
+ {"version":3,"file":"codex-auth.d.ts","sourceRoot":"","sources":["../src/codex-auth.ts"],"names":[],"mappings":"AAGA,OAAO,EAAc,SAAS,EAAiC,MAAM,YAAY,CAAA;AAIjF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAiBD,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,OAAO,CAAA;IACvB,eAAe,EAAE,OAAO,CAAA;IACxB,UAAU,EAAE,OAAO,CAAA;CACpB;AASD,wBAAgB,iBAAiB,IAAI,aAAa,GAAG,IAAI,CAWxD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAK5D;AAqDD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAMzF;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAUxF;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAI7F;AAwBD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAK1F;AAmDD,wBAAgB,mBAAmB,IAAI,gBAAgB,CA0BtD;AAED,wBAAgB,0BAA0B,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,OAAO,SAAS,CAAC,GAAG,MAAM,GAAG,IAAI,CAuB9F;AAED,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG;IACzE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,KAAK,EAAE,OAAO,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,CA4EA;AAED,wBAAgB,kBAAkB,IAAI;IAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAE7D;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAkC1D"}
@@ -1,7 +1,7 @@
1
1
  import * as fs from 'fs';
2
2
  import * as os from 'os';
3
3
  import * as path from 'path';
4
- import { addAccount, loadStore, updateAccount } from './store.js';
4
+ import { addAccount, loadStore, setActiveAlias, updateAccount } from './store.js';
5
5
  import { decodeJwtPayload } from './jwt.js';
6
6
  const CODEX_AUTH_FILE_ENV = 'OPENCODE_ENHANCER_CODEX_AUTH_FILE';
7
7
  const LEGACY_CODEX_AUTH_FILE_ENV = 'OPENCODE_MULTI_AUTH_CODEX_AUTH_FILE';
@@ -235,7 +235,8 @@ export function resolveAliasForCurrentAuth(store) {
235
235
  id_token: normalized.idToken
236
236
  }, accountId, accountUserId, userId, email, targetStore);
237
237
  }
238
- export function syncCodexAuthFile() {
238
+ export function syncCodexAuthFile(options) {
239
+ const shouldSetActiveAlias = options?.setActiveAlias !== false;
239
240
  const auth = loadCodexAuthFile();
240
241
  const normalized = normalizeTokens(auth);
241
242
  if (!normalized?.accessToken || !normalized.refreshToken) {
@@ -294,10 +295,16 @@ export function syncCodexAuthFile() {
294
295
  }
295
296
  if (alias) {
296
297
  updateAccount(alias, update);
298
+ if (shouldSetActiveAlias) {
299
+ setActiveAlias(alias);
300
+ }
297
301
  return { alias, added: false, updated: true, authEmail: email, authAccountId: accountId };
298
302
  }
299
303
  const newAlias = buildAlias(email, accountId, store);
300
304
  addAccount(newAlias, update);
305
+ if (shouldSetActiveAlias) {
306
+ setActiveAlias(newAlias);
307
+ }
301
308
  return { alias: newAlias, added: true, updated: true, authEmail: email, authAccountId: accountId };
302
309
  }
303
310
  export function getCodexAuthStatus() {