opencode-key-rotator 0.1.10 → 1.1.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 CHANGED
@@ -8,12 +8,12 @@
8
8
 
9
9
  Reactive OpenCode plugin that automatically rotates provider API keys on rate limits and quota errors, with built-in TUI key management.
10
10
 
11
- Automatically swaps to the next saved key when OpenCode encounters rate limits (429), quota exhaustion, or auth errors during sessions.
11
+ Automatically swaps to the next saved key when OpenCode encounters rate limits (429), quota exhaustion, or resource errors during sessions.
12
12
 
13
13
  ## Features
14
14
 
15
- - **Automatic rotation** — detects rate-limit and auth errors and swaps to the next available key on retry
16
- - **TUI key manager** — interactive terminal UI to manage provider keys with masked values and per-provider grouping
15
+ - **Automatic rotation** — detects rate-limit and quota errors and swaps to the next available key on retry
16
+ - **TUI key manager** — interactive terminal UI to manage provider keys with per-provider grouping
17
17
  - **OpenCode plugin** — integrates as a server plugin with no manual setup after initial configuration
18
18
  - **Persistent storage** — keys and rotation logs stored in the XDG data directory
19
19
  - **Configurable** — customize rotation patterns, dedup window, backups, and toast duration via sidecar config
@@ -39,31 +39,35 @@ opencode-key-rotator init
39
39
  Run the init command to register the plugin in your OpenCode config and create a default sidecar config:
40
40
 
41
41
  ```bash
42
- opencode-key-rotator init
42
+ npx -y opencode-key-rotator init
43
43
  ```
44
44
 
45
45
  ### Manual
46
46
 
47
- Add the plugin to your OpenCode `opencode.jsonc` config:
47
+ Add the plugin to **both** `opencode.json` and `tui.json` in your OpenCode config directory:
48
+
49
+ **opencode.json:**
50
+
51
+ ```jsonc
52
+ {
53
+ "plugin": ["opencode-key-rotator"],
54
+ }
55
+ ```
56
+
57
+ **tui.json:**
48
58
 
49
59
  ```jsonc
50
60
  {
51
- "plugins": [
52
- {
53
- "from": "opencode-key-rotator",
54
- "params": {
55
- "server": true,
56
- "tui": true,
57
- },
58
- },
59
- ],
61
+ "plugin": ["opencode-key-rotator"],
60
62
  }
61
63
  ```
62
64
 
65
+ Both files are required: `opencode.json` loads the server-side plugin (event handlers, key rotation pipeline), and `tui.json` loads the TUI-side plugin (slash commands `/key-save`, `/key-switch`, `/key-status`).
66
+
63
67
  ### Uninstall
64
68
 
65
69
  ```bash
66
- opencode-key-rotator remove
70
+ npx -y opencode-key-rotator remove
67
71
  ```
68
72
 
69
73
  Saved keys and rotation logs are preserved on removal.
@@ -115,8 +119,9 @@ The config file supports JSONC (comments and trailing commas). Resolution order:
115
119
  2. If rotation did not happen early, `session.error` acts as a fallback. The plugin rotates on HTTP 429 or matching messages.
116
120
  3. The provider is inferred from session messages first, then from the configured model.
117
121
  4. If at least two keys are saved for the provider, the plugin switches to the next alias in a round-robin cycle.
118
- 5. Before switching, the current credentials are saved under the previous alias so you can roll back.
119
- 6. Every decision is recorded in `~/.local/share/opencode/keys/rotation.log.jsonl`.
122
+ 5. If a rotated key fails on the next attempt, that alias enters a 2-minute cooldown and is skipped during subsequent rotations.
123
+ 6. Before switching, the current credentials are saved under the previous alias so you can roll back.
124
+ 7. Every decision is recorded in `~/.local/share/opencode/keys/rotation.log.jsonl`.
120
125
 
121
126
  ## Data layout
122
127
 
@@ -136,10 +141,11 @@ The config file supports JSONC (comments and trailing commas). Resolution order:
136
141
 
137
142
  | Symptom | Cause | Fix |
138
143
  | ------------------------------------------------ | ----------------------------------------------------------------------------------- | ----------------------------------------------- |
139
- | `AUTH_MISSING` error | `auth.json` does not exist | Run `/connect` in OpenCode and then `/key-save` |
144
+ | `"OpenCode auth file was not found"` error | `auth.json` does not exist | Run `/connect` in OpenCode and then `/key-save` |
140
145
  | `active credentials changed outside key rotator` | The provider credentials in `auth.json` no longer match the saved alias fingerprint | Re-run `/key-save` for the active alias |
141
146
  | `Provider unknown` | The plugin could not infer the provider from session messages or config | Ensure the model is set (e.g. `openai/gpt-4`) |
142
147
  | `No fallback key` | Only one key is saved for the provider | Save at least two aliases with `/key-save` |
148
+ | `All keys cooling down` | All saved aliases are in cooldown after failed attempts | Wait 2 minutes or save additional aliases |
143
149
 
144
150
  ## Development
145
151
 
package/dist/key-store.js CHANGED
@@ -184,7 +184,7 @@ export function createKeyStore(dataDir, config) {
184
184
  throw new KeyStoreError("AUTH_MISSING", "Cannot back up auth.json because it does not exist");
185
185
  }
186
186
  const safeReason = reason.replace(/[^A-Za-z0-9._-]+/g, "-").replace(/^-+|-+$/g, "") || "auth-write";
187
- const backupFile = path.join(paths.backupsDir, `auth-${timestampForFile()}-${process.pid}-${safeReason}.json`);
187
+ const backupFile = path.join(paths.backupsDir, `auth-${timestampForFile()}-${process.pid}-${process.hrtime.bigint()}-${safeReason}.json`);
188
188
  try {
189
189
  fs.copyFileSync(paths.authFile, backupFile, fs.constants.COPYFILE_EXCL);
190
190
  chmodIfExists(backupFile, 0o600);
@@ -1 +1 @@
1
- {"version":3,"file":"key-store.js","sourceRoot":"","sources":["../src/key-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"key-store.js","sourceRoot":"","sources":["../src/key-store.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { KeyStore } from "./key-store.js";
2
- export type RotationDecision = "rotated" | "rotated_on_retry" | "not_rotatable" | "no_alternative" | "provider_unknown" | "ignored" | "error" | "fingerprint_mismatch" | "all_keys_cooling_down";
2
+ export type RotationDecision = "rotated" | "rotated_on_retry" | "not_rotatable" | "no_alternative" | "provider_unknown" | "ignored" | "error" | "fingerprint_mismatch" | "all_keys_cooling_down" | "diagnostic";
3
3
  export type RotationLogEntry = {
4
4
  timestamp: string;
5
5
  sessionID?: string;
@@ -11,6 +11,11 @@ export type RotationLogEntry = {
11
11
  statusCode?: number;
12
12
  message?: string;
13
13
  rateLimitHeaders?: Record<string, string>;
14
+ eventType?: string;
15
+ propertyKeys?: string[];
16
+ errorKeys?: string[];
17
+ errorDataKeys?: string[];
18
+ payload?: unknown;
14
19
  decision: RotationDecision;
15
20
  reason: string;
16
21
  activeAlias?: string;
@@ -3,7 +3,11 @@ const MAX_MESSAGE_LENGTH = 500;
3
3
  export function writeRotationLog(store, entry) {
4
4
  try {
5
5
  store.ensureKeysDir();
6
- const line = JSON.stringify({ ...entry, message: sanitizeMessage(entry.message) });
6
+ const line = JSON.stringify({
7
+ ...entry,
8
+ message: sanitizeMessage(entry.message),
9
+ payload: sanitizePayload(entry.payload),
10
+ });
7
11
  fs.appendFileSync(store.paths.rotationLogFile, `${line}\n`, { mode: 0o600 });
8
12
  fs.chmodSync(store.paths.rotationLogFile, 0o600);
9
13
  }
@@ -47,4 +51,26 @@ export function sanitizeRateLimitHeaders(headers) {
47
51
  }
48
52
  return Object.keys(result).length > 0 ? result : undefined;
49
53
  }
54
+ function sanitizePayload(value, depth = 0) {
55
+ if (value === null || value === undefined)
56
+ return value;
57
+ if (typeof value === "string")
58
+ return sanitizeMessage(value);
59
+ if (typeof value === "number" || typeof value === "boolean")
60
+ return value;
61
+ if (typeof value === "bigint")
62
+ return String(value);
63
+ if (depth >= 6)
64
+ return "[truncated]";
65
+ if (Array.isArray(value))
66
+ return value.slice(0, 50).map((entry) => sanitizePayload(entry, depth + 1));
67
+ if (typeof value === "object") {
68
+ const result = {};
69
+ for (const [key, entry] of Object.entries(value).slice(0, 100)) {
70
+ result[key] = sanitizePayload(entry, depth + 1);
71
+ }
72
+ return result;
73
+ }
74
+ return String(value);
75
+ }
50
76
  //# sourceMappingURL=rotation-log.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rotation-log.js","sourceRoot":"","sources":["../src/rotation-log.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AA+B9B,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAE/B,MAAM,UAAU,gBAAgB,CAAC,KAAe,EAAE,KAAuB;IACvE,IAAI,CAAC;QACH,KAAK,CAAC,aAAa,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACnF,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7E,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,+CAA+C;IACjD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAe;IACtD,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC;YAAE,OAAO,SAAS,CAAC;QAClE,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACtG,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAqB,CAAC;YAC3D,IAAI,KAAK,CAAC,MAAM,KAAK,cAAc;gBAAE,OAAO,KAAK,CAAC;QACpD,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAA2B;IACzD,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,OAAO,OAAO;SACX,OAAO,CAAC,gCAAgC,EAAE,mBAAmB,CAAC;SAC9D,OAAO,CAAC,qFAAqF,EAAE,eAAe,CAAC;SAC/G,KAAK,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAAgB;IACvD,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC9D,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAkC,CAAC,EAAE,CAAC;QAC9E,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,UAAU,KAAK,aAAa,IAAI,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACzG,MAAM,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC"}
1
+ {"version":3,"file":"rotation-log.js","sourceRoot":"","sources":["../src/rotation-log.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAqC9B,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAE/B,MAAM,UAAU,gBAAgB,CAAC,KAAe,EAAE,KAAuB;IACvE,IAAI,CAAC;QACH,KAAK,CAAC,aAAa,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1B,GAAG,KAAK;YACR,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC;YACvC,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC;SACxC,CAAC,CAAC;QACH,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7E,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,+CAA+C;IACjD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAe;IACtD,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC;YAAE,OAAO,SAAS,CAAC;QAClE,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACtG,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAqB,CAAC;YAC3D,IAAI,KAAK,CAAC,MAAM,KAAK,cAAc;gBAAE,OAAO,KAAK,CAAC;QACpD,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAA2B;IACzD,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,OAAO,OAAO;SACX,OAAO,CAAC,gCAAgC,EAAE,mBAAmB,CAAC;SAC9D,OAAO,CAAC,qFAAqF,EAAE,eAAe,CAAC;SAC/G,KAAK,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAAgB;IACvD,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC9D,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAkC,CAAC,EAAE,CAAC;QAC9E,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,UAAU,KAAK,aAAa,IAAI,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACzG,MAAM,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC;AAED,SAAS,eAAe,CAAC,KAAc,EAAE,KAAK,GAAG,CAAC;IAChD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;IAC7D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAC1E,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACpD,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,aAAa,CAAC;IACrC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;IACtG,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;YAC1F,MAAM,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC"}
package/dist/server.js CHANGED
@@ -21,9 +21,15 @@ export const server = async ({ client }) => {
21
21
  await handleSessionNextRetried(client, config, genericEvent.properties);
22
22
  return;
23
23
  }
24
- if (genericEvent.type !== "session.error")
24
+ if (genericEvent.type === "session.status") {
25
+ await handleSessionStatus(client, config, genericEvent.properties);
25
26
  return;
26
- await handleSessionError(client, config, genericEvent.properties);
27
+ }
28
+ if (genericEvent.type === "session.error") {
29
+ await handleSessionError(client, config, genericEvent.properties);
30
+ return;
31
+ }
32
+ await writeDiagnosticLog(client, config, diagnosticInfoForEvent(genericEvent.type, genericEvent.properties), new Date().toISOString(), "unhandled_event");
27
33
  },
28
34
  };
29
35
  };
@@ -31,28 +37,73 @@ async function handleSessionNextRetried(client, config, properties) {
31
37
  const sessionID = typeof properties?.sessionID === "string" ? properties.sessionID : undefined;
32
38
  const attempt = typeof properties?.attempt === "number" ? properties.attempt : undefined;
33
39
  const error = properties?.error;
34
- const message = isRecord(error) && typeof error.message === "string" ? error.message : undefined;
40
+ const info = normalizeRetryError(error);
41
+ info.sessionID = sessionID;
42
+ info.attempt = attempt;
43
+ info.eventType = "session.next.retried";
44
+ info.propertyKeys = sortedKeys(properties);
45
+ info.payload = properties;
35
46
  if (!sessionID || attempt !== 1)
36
47
  return;
37
- if (!message || !isRotatableMessage(message, config))
48
+ if (!info.message || !isRotatableMessage(info.message, config)) {
49
+ await writeDiagnosticLog(client, config, info, new Date().toISOString(), "retry_error_did_not_match_rotation_patterns");
38
50
  return;
39
- if (wasRotatedRecently(config, sessionID))
51
+ }
52
+ if (wasRotatedRecently(config, sessionID)) {
53
+ await writeDiagnosticLog(client, config, info, new Date().toISOString(), "session_already_rotated_recently");
40
54
  return;
55
+ }
41
56
  const timestamp = new Date().toISOString();
42
57
  await rotateKeyForEvent(client, config, {
43
58
  sessionID,
44
- info: { message },
59
+ info,
45
60
  timestamp,
46
61
  decision: "rotated_on_retry",
47
62
  unknownProviderReason: "rotatable_retry_without_provider_id",
48
63
  toastOnSkip: false,
49
64
  });
50
65
  }
66
+ async function handleSessionStatus(client, config, properties) {
67
+ const sessionID = typeof properties?.sessionID === "string" ? properties.sessionID : undefined;
68
+ const status = isRecord(properties?.status) ? properties.status : undefined;
69
+ if (!status || status.type !== "retry")
70
+ return;
71
+ const attempt = typeof status.attempt === "number" ? status.attempt : undefined;
72
+ const info = normalizeStatusRetryError(status);
73
+ info.sessionID = sessionID;
74
+ info.attempt = attempt;
75
+ info.eventType = "session.status";
76
+ info.propertyKeys = sortedKeys(properties);
77
+ info.payload = properties;
78
+ if (!sessionID || attempt !== 1)
79
+ return;
80
+ if (!info.message || !isRotatableMessage(info.message, config)) {
81
+ await writeDiagnosticLog(client, config, info, new Date().toISOString(), "status_retry_did_not_match_rotation_patterns");
82
+ return;
83
+ }
84
+ if (wasRotatedRecently(config, sessionID)) {
85
+ await writeDiagnosticLog(client, config, info, new Date().toISOString(), "session_already_rotated_recently");
86
+ return;
87
+ }
88
+ const timestamp = new Date().toISOString();
89
+ await rotateKeyForEvent(client, config, {
90
+ sessionID,
91
+ info,
92
+ timestamp,
93
+ decision: "rotated_on_retry",
94
+ unknownProviderReason: "rotatable_status_retry_without_provider_id",
95
+ toastOnSkip: false,
96
+ });
97
+ }
51
98
  async function handleSessionError(client, config, properties) {
52
99
  const error = properties?.error;
100
+ const sessionID = typeof properties?.sessionID === "string" ? properties.sessionID : undefined;
53
101
  const info = normalizeError(error);
102
+ info.sessionID = sessionID;
103
+ info.eventType = "session.error";
104
+ info.propertyKeys = sortedKeys(properties);
105
+ info.payload = properties;
54
106
  const timestamp = new Date().toISOString();
55
- const sessionID = typeof properties?.sessionID === "string" ? properties.sessionID : undefined;
56
107
  const store = await createStoreForClient(client, config);
57
108
  if (!store) {
58
109
  await showToast(client, config, "Key rotation skipped", "OpenCode data path is unavailable.", "warning");
@@ -87,8 +138,15 @@ async function rotateKeyForEvent(client, config, request) {
87
138
  await showToast(client, config, "Key rotation skipped", "OpenCode data path is unavailable.", "warning");
88
139
  return;
89
140
  }
90
- if (request.sessionID && wasRotatedRecently(config, request.sessionID))
141
+ if (request.sessionID && wasRotatedRecently(config, request.sessionID)) {
142
+ writeRotationLog(store, {
143
+ ...baseLogEntry(request.info, request.timestamp),
144
+ sessionID: request.sessionID,
145
+ decision: "diagnostic",
146
+ reason: "session_already_rotated_recently",
147
+ });
91
148
  return;
149
+ }
92
150
  if (!request.info.providerID) {
93
151
  const inferred = await inferProvider(client, request.sessionID);
94
152
  if (inferred) {
@@ -119,9 +177,10 @@ async function rotateKeyForEvent(client, config, request) {
119
177
  return;
120
178
  }
121
179
  const currentAlias = store.readActiveAliases()[providerID];
180
+ const cooldownKey = providerCooldownKey(store, providerID);
122
181
  if (currentAlias)
123
- markAliasCoolingDown(providerID, currentAlias);
124
- const nextAlias = nextAvailableAlias(providerID, keys.map((key) => key.alias), currentAlias);
182
+ markAliasCoolingDown(cooldownKey, currentAlias);
183
+ const nextAlias = nextAvailableAlias(cooldownKey, keys.map((key) => key.alias), currentAlias);
125
184
  if (!nextAlias) {
126
185
  writeRotationLog(store, {
127
186
  ...baseLogEntry(request.info, request.timestamp),
@@ -150,16 +209,19 @@ async function rotateKeyForEvent(client, config, request) {
150
209
  await logRotationError(client, config, store, request.info.providerID, request.info.providerSource, request.info.message, request.timestamp, rotationError);
151
210
  }
152
211
  }
153
- function markAliasCoolingDown(providerID, alias) {
154
- let providerCooldowns = failedAliasCooldowns.get(providerID);
212
+ function providerCooldownKey(store, providerID) {
213
+ return `${store.paths.dataDir}\0${providerID}`;
214
+ }
215
+ function markAliasCoolingDown(cooldownKey, alias) {
216
+ let providerCooldowns = failedAliasCooldowns.get(cooldownKey);
155
217
  if (!providerCooldowns) {
156
218
  providerCooldowns = new Map();
157
- failedAliasCooldowns.set(providerID, providerCooldowns);
219
+ failedAliasCooldowns.set(cooldownKey, providerCooldowns);
158
220
  }
159
221
  providerCooldowns.set(alias, Date.now() + FAILED_ALIAS_COOLDOWN_MS);
160
222
  }
161
- function nextAvailableAlias(providerID, aliases, currentAlias) {
162
- const providerCooldowns = failedAliasCooldowns.get(providerID);
223
+ function nextAvailableAlias(cooldownKey, aliases, currentAlias) {
224
+ const providerCooldowns = failedAliasCooldowns.get(cooldownKey);
163
225
  const now = Date.now();
164
226
  if (providerCooldowns) {
165
227
  for (const [alias, cooldownUntil] of providerCooldowns) {
@@ -167,7 +229,7 @@ function nextAvailableAlias(providerID, aliases, currentAlias) {
167
229
  providerCooldowns.delete(alias);
168
230
  }
169
231
  if (providerCooldowns.size === 0)
170
- failedAliasCooldowns.delete(providerID);
232
+ failedAliasCooldowns.delete(cooldownKey);
171
233
  }
172
234
  const currentIndex = currentAlias ? aliases.indexOf(currentAlias) : -1;
173
235
  for (let offset = 1; offset <= aliases.length; offset += 1) {
@@ -180,6 +242,13 @@ function nextAvailableAlias(providerID, aliases, currentAlias) {
180
242
  function baseLogEntry(info, timestamp) {
181
243
  return {
182
244
  timestamp,
245
+ sessionID: info.sessionID,
246
+ attempt: info.attempt,
247
+ eventType: info.eventType,
248
+ propertyKeys: info.propertyKeys,
249
+ errorKeys: info.errorKeys,
250
+ errorDataKeys: info.errorDataKeys,
251
+ payload: info.payload,
183
252
  providerID: info.providerID,
184
253
  providerSource: info.providerSource,
185
254
  errorName: info.name,
@@ -188,6 +257,16 @@ function baseLogEntry(info, timestamp) {
188
257
  rateLimitHeaders: sanitizeRateLimitHeaders(info.headers),
189
258
  };
190
259
  }
260
+ async function writeDiagnosticLog(client, config, info, timestamp, reason) {
261
+ const store = await createStoreForClient(client, config);
262
+ if (!store)
263
+ return;
264
+ writeRotationLog(store, {
265
+ ...baseLogEntry(info, timestamp),
266
+ decision: "diagnostic",
267
+ reason,
268
+ });
269
+ }
191
270
  async function logRotationError(client, config, store, providerID, providerSource, message, timestamp, rotationError) {
192
271
  const errorMessage = rotationError instanceof Error ? rotationError.message : String(rotationError);
193
272
  const activeAlias = readActiveAliasSafely(store, providerID);
@@ -214,14 +293,67 @@ function normalizeError(error) {
214
293
  const name = typeof record.name === "string" ? record.name : undefined;
215
294
  const data = record.data && typeof record.data === "object" ? record.data : undefined;
216
295
  return {
296
+ errorKeys: sortedKeys(record),
297
+ errorDataKeys: sortedKeys(data),
217
298
  name,
218
299
  providerID: typeof data?.providerID === "string" ? data.providerID : undefined,
219
300
  providerSource: typeof data?.providerID === "string" ? "error" : undefined,
220
301
  statusCode: typeof data?.statusCode === "number" ? data.statusCode : undefined,
221
- message: typeof data?.message === "string" ? data.message : errorToMessage(error),
302
+ message: extractErrorMessage(record, data),
303
+ headers: data?.responseHeaders && typeof data.responseHeaders === "object" ? data.responseHeaders : undefined,
304
+ };
305
+ }
306
+ function normalizeRetryError(error) {
307
+ if (!error || typeof error !== "object")
308
+ return { message: String(error) };
309
+ const record = error;
310
+ const data = record.data && typeof record.data === "object" ? record.data : undefined;
311
+ return {
312
+ errorKeys: sortedKeys(record),
313
+ errorDataKeys: sortedKeys(data),
314
+ name: typeof record.name === "string" ? record.name : undefined,
315
+ providerID: typeof data?.providerID === "string" ? data.providerID : undefined,
316
+ providerSource: typeof data?.providerID === "string" ? "error" : undefined,
317
+ statusCode: typeof data?.statusCode === "number" ? data.statusCode : undefined,
318
+ message: extractErrorMessage(record, data),
222
319
  headers: data?.responseHeaders && typeof data.responseHeaders === "object" ? data.responseHeaders : undefined,
223
320
  };
224
321
  }
322
+ function normalizeStatusRetryError(status) {
323
+ return {
324
+ errorKeys: sortedKeys(status),
325
+ message: typeof status.message === "string" ? status.message : undefined,
326
+ };
327
+ }
328
+ function diagnosticInfoForEvent(eventType, properties) {
329
+ const sessionID = typeof properties?.sessionID === "string" ? properties.sessionID : undefined;
330
+ const attempt = typeof properties?.attempt === "number" ? properties.attempt : undefined;
331
+ const error = properties?.error;
332
+ const base = isRecord(error) ? normalizeRetryError(error) : {};
333
+ return {
334
+ ...base,
335
+ sessionID,
336
+ attempt,
337
+ eventType,
338
+ propertyKeys: sortedKeys(properties),
339
+ payload: properties,
340
+ };
341
+ }
342
+ function extractErrorMessage(record, data) {
343
+ if (typeof data?.message === "string")
344
+ return data.message;
345
+ if (typeof record.message === "string")
346
+ return record.message;
347
+ if (typeof record.error === "string")
348
+ return record.error;
349
+ return undefined;
350
+ }
351
+ function sortedKeys(record) {
352
+ if (!record)
353
+ return undefined;
354
+ const keys = Object.keys(record).sort();
355
+ return keys.length > 0 ? keys : undefined;
356
+ }
225
357
  async function inferProvider(client, sessionID) {
226
358
  const fromSession = sessionID ? await inferProviderFromMessages(client, sessionID) : undefined;
227
359
  if (fromSession)
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/dist/tui.js CHANGED
@@ -104,7 +104,7 @@ function openKeySwitch(api, config) {
104
104
  const store = getStore(api, config);
105
105
  if (!store)
106
106
  return;
107
- const providers = safeCall(() => store.getStatuses().filter((status) => status.aliases.length > 1), api, config);
107
+ const providers = safeCall(() => store.getStatuses().filter((status) => status.aliases.some((alias) => alias !== status.activeAlias)), api, config);
108
108
  if (!providers || providers.length === 0) {
109
109
  showAlert(api, "No saved keys", "No provider has multiple saved keys to switch between.");
110
110
  return;
@@ -114,22 +114,23 @@ function openKeySwitch(api, config) {
114
114
  placeholder: "Choose provider",
115
115
  options: providers.map((status) => ({
116
116
  title: status.providerID,
117
- value: status.providerID,
117
+ value: status,
118
118
  description: status.activeAlias ? `active: ${status.activeAlias}` : "no active alias",
119
119
  })),
120
- onSelect: (option) => chooseAlias(api, config, store, option.value),
120
+ onSelect: (option) => chooseAlias(api, config, store, option.value.providerID, option.value.activeAlias),
121
121
  }));
122
122
  }
123
- function chooseAlias(api, config, store, providerID) {
123
+ function chooseAlias(api, config, store, providerID, activeAlias) {
124
124
  const keys = safeCall(() => store.listKeys(providerID), api, config);
125
- if (!keys || keys.length === 0) {
126
- showAlert(api, "No saved keys", `${providerID} has no saved keys.`);
125
+ const switchableKeys = keys?.filter((key) => key.alias !== activeAlias);
126
+ if (!switchableKeys || switchableKeys.length === 0) {
127
+ showAlert(api, "No alternative keys", `${providerID} has no alternative saved keys.`);
127
128
  return;
128
129
  }
129
130
  api.ui.dialog.replace(() => api.ui.DialogSelect({
130
131
  title: `Switch ${providerID}`,
131
132
  placeholder: "Choose alias",
132
- options: keys.map((key) => ({ title: key.alias, value: key.alias })),
133
+ options: switchableKeys.map((key) => ({ title: key.alias, value: key.alias })),
133
134
  onSelect: (option) => {
134
135
  const result = safeCall(() => store.switchProviderKey(providerID, option.value), api, config);
135
136
  if (!result)
package/dist/tui.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tui.js","sourceRoot":"","sources":["../src/tui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tui.js","sourceRoot":"","sources":["../src/tui.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-key-rotator",
3
- "version": "0.1.10",
3
+ "version": "1.1.0",
4
4
  "description": "Reactive OpenCode plugin that automatically rotates provider API keys on rate limits and quota errors, with built-in TUI key management.",
5
5
  "author": "dmmop <2412013-dmmop@users.noreply.gitlab.com>",
6
6
  "license": "MIT",