opencode-antigravity-auth 1.2.4 → 1.2.5-beta.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.
Files changed (63) hide show
  1. package/README.md +84 -1
  2. package/dist/src/constants.d.ts +7 -7
  3. package/dist/src/constants.js +7 -7
  4. package/dist/src/plugin/cache/index.d.ts +5 -0
  5. package/dist/src/plugin/cache/index.d.ts.map +1 -0
  6. package/dist/src/plugin/cache/index.js +5 -0
  7. package/dist/src/plugin/cache/index.js.map +1 -0
  8. package/dist/src/plugin/cache/signature-cache.d.ts +87 -0
  9. package/dist/src/plugin/cache/signature-cache.d.ts.map +1 -0
  10. package/dist/src/plugin/cache/signature-cache.js +325 -0
  11. package/dist/src/plugin/cache/signature-cache.js.map +1 -0
  12. package/dist/src/plugin/cache.d.ts +16 -0
  13. package/dist/src/plugin/cache.d.ts.map +1 -1
  14. package/dist/src/plugin/cache.js +85 -23
  15. package/dist/src/plugin/cache.js.map +1 -1
  16. package/dist/src/plugin/config/index.d.ts +16 -0
  17. package/dist/src/plugin/config/index.d.ts.map +1 -0
  18. package/dist/src/plugin/config/index.js +16 -0
  19. package/dist/src/plugin/config/index.js.map +1 -0
  20. package/dist/src/plugin/config/loader.d.ts +35 -0
  21. package/dist/src/plugin/config/loader.d.ts.map +1 -0
  22. package/dist/src/plugin/config/loader.js +173 -0
  23. package/dist/src/plugin/config/loader.js.map +1 -0
  24. package/dist/src/plugin/config/schema.d.ts +162 -0
  25. package/dist/src/plugin/config/schema.d.ts.map +1 -0
  26. package/dist/src/plugin/config/schema.js +128 -0
  27. package/dist/src/plugin/config/schema.js.map +1 -0
  28. package/dist/src/plugin/debug.d.ts +8 -2
  29. package/dist/src/plugin/debug.d.ts.map +1 -1
  30. package/dist/src/plugin/debug.js +121 -70
  31. package/dist/src/plugin/debug.js.map +1 -1
  32. package/dist/src/plugin/recovery/constants.d.ts +22 -0
  33. package/dist/src/plugin/recovery/constants.d.ts.map +1 -0
  34. package/dist/src/plugin/recovery/constants.js +43 -0
  35. package/dist/src/plugin/recovery/constants.js.map +1 -0
  36. package/dist/src/plugin/recovery/index.d.ts +12 -0
  37. package/dist/src/plugin/recovery/index.d.ts.map +1 -0
  38. package/dist/src/plugin/recovery/index.js +12 -0
  39. package/dist/src/plugin/recovery/index.js.map +1 -0
  40. package/dist/src/plugin/recovery/storage.d.ts +24 -0
  41. package/dist/src/plugin/recovery/storage.d.ts.map +1 -0
  42. package/dist/src/plugin/recovery/storage.js +354 -0
  43. package/dist/src/plugin/recovery/storage.js.map +1 -0
  44. package/dist/src/plugin/recovery/types.d.ts +116 -0
  45. package/dist/src/plugin/recovery/types.d.ts.map +1 -0
  46. package/dist/src/plugin/recovery/types.js +6 -0
  47. package/dist/src/plugin/recovery/types.js.map +1 -0
  48. package/dist/src/plugin/recovery.d.ts +61 -0
  49. package/dist/src/plugin/recovery.d.ts.map +1 -0
  50. package/dist/src/plugin/recovery.js +347 -0
  51. package/dist/src/plugin/recovery.js.map +1 -0
  52. package/dist/src/plugin/request.d.ts +1 -0
  53. package/dist/src/plugin/request.d.ts.map +1 -1
  54. package/dist/src/plugin/request.js +37 -0
  55. package/dist/src/plugin/request.js.map +1 -1
  56. package/dist/src/plugin/thinking-recovery.d.ts +64 -0
  57. package/dist/src/plugin/thinking-recovery.d.ts.map +1 -0
  58. package/dist/src/plugin/thinking-recovery.js +245 -0
  59. package/dist/src/plugin/thinking-recovery.js.map +1 -0
  60. package/dist/src/plugin.d.ts.map +1 -1
  61. package/dist/src/plugin.js +80 -4
  62. package/dist/src/plugin.js.map +1 -1
  63. package/package.json +4 -2
@@ -0,0 +1,128 @@
1
+ /**
2
+ * Configuration schema for opencode-antigravity-auth plugin.
3
+ *
4
+ * Config file locations (in priority order, highest wins):
5
+ * - Project: .opencode/antigravity.json
6
+ * - User: ~/.config/opencode/antigravity.json (Linux/Mac)
7
+ * %APPDATA%\opencode\antigravity.json (Windows)
8
+ *
9
+ * Environment variables always override config file values.
10
+ */
11
+ import { z } from "zod";
12
+ /**
13
+ * Signature cache configuration for persisting thinking block signatures to disk.
14
+ */
15
+ export const SignatureCacheConfigSchema = z.object({
16
+ /** Enable disk caching of signatures (default: true) */
17
+ enabled: z.boolean().default(true),
18
+ /** In-memory TTL in seconds (default: 3600 = 1 hour) */
19
+ memory_ttl_seconds: z.number().min(60).max(86400).default(3600),
20
+ /** Disk TTL in seconds (default: 172800 = 48 hours) */
21
+ disk_ttl_seconds: z.number().min(3600).max(604800).default(172800),
22
+ /** Background write interval in seconds (default: 60) */
23
+ write_interval_seconds: z.number().min(10).max(600).default(60),
24
+ });
25
+ /**
26
+ * Main configuration schema for the Antigravity OAuth plugin.
27
+ */
28
+ export const AntigravityConfigSchema = z.object({
29
+ /** JSON Schema reference for IDE support */
30
+ $schema: z.string().optional(),
31
+ // =========================================================================
32
+ // General Settings
33
+ // =========================================================================
34
+ /**
35
+ * Suppress most toast notifications (rate limit, account switching, etc.)
36
+ * Recovery toasts are always shown regardless of this setting.
37
+ * Env override: OPENCODE_ANTIGRAVITY_QUIET=1
38
+ * @default false
39
+ */
40
+ quiet_mode: z.boolean().default(false),
41
+ /**
42
+ * Enable debug logging to file.
43
+ * Env override: OPENCODE_ANTIGRAVITY_DEBUG=1
44
+ * @default false
45
+ */
46
+ debug: z.boolean().default(false),
47
+ /**
48
+ * Custom directory for debug logs.
49
+ * Env override: OPENCODE_ANTIGRAVITY_LOG_DIR=/path/to/logs
50
+ * @default OS-specific config dir + "/antigravity-logs"
51
+ */
52
+ log_dir: z.string().optional(),
53
+ // =========================================================================
54
+ // Thinking Blocks
55
+ // =========================================================================
56
+ /**
57
+ * Preserve thinking blocks for Claude models using signature caching.
58
+ *
59
+ * When false (default): Thinking blocks are stripped for reliability.
60
+ * When true: Full context preserved, but may encounter signature errors.
61
+ *
62
+ * Env override: OPENCODE_ANTIGRAVITY_KEEP_THINKING=1
63
+ * @default false
64
+ */
65
+ keep_thinking: z.boolean().default(false),
66
+ // =========================================================================
67
+ // Session Recovery
68
+ // =========================================================================
69
+ /**
70
+ * Enable automatic session recovery from tool_result_missing errors.
71
+ * When enabled, shows a toast notification when recoverable errors occur.
72
+ *
73
+ * @default true
74
+ */
75
+ session_recovery: z.boolean().default(true),
76
+ /**
77
+ * Automatically send a "continue" prompt after successful recovery.
78
+ * Only applies when session_recovery is enabled.
79
+ *
80
+ * When false: Only shows toast notification, user must manually continue.
81
+ * When true: Automatically sends "continue" to resume the session.
82
+ *
83
+ * @default true
84
+ */
85
+ auto_resume: z.boolean().default(true),
86
+ /**
87
+ * Custom text to send when auto-resuming after recovery.
88
+ * Only used when auto_resume is enabled.
89
+ *
90
+ * @default "continue"
91
+ */
92
+ resume_text: z.string().default("continue"),
93
+ // =========================================================================
94
+ // Signature Caching
95
+ // =========================================================================
96
+ /**
97
+ * Signature cache configuration for persisting thinking block signatures.
98
+ * Only used when keep_thinking is enabled.
99
+ */
100
+ signature_cache: SignatureCacheConfigSchema.optional(),
101
+ // =========================================================================
102
+ // Auto-Update
103
+ // =========================================================================
104
+ /**
105
+ * Enable automatic plugin updates.
106
+ * @default true
107
+ */
108
+ auto_update: z.boolean().default(true),
109
+ });
110
+ /**
111
+ * Default configuration values.
112
+ */
113
+ export const DEFAULT_CONFIG = {
114
+ quiet_mode: false,
115
+ debug: false,
116
+ keep_thinking: false,
117
+ session_recovery: true,
118
+ auto_resume: true,
119
+ resume_text: "continue",
120
+ auto_update: true,
121
+ signature_cache: {
122
+ enabled: true,
123
+ memory_ttl_seconds: 3600,
124
+ disk_ttl_seconds: 172800,
125
+ write_interval_seconds: 60,
126
+ },
127
+ };
128
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/plugin/config/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,wDAAwD;IACxD,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAElC,wDAAwD;IACxD,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IAE/D,uDAAuD;IACvD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAElE,yDAAyD;IACzD,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CAChE,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,4CAA4C;IAC5C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE9B,4EAA4E;IAC5E,mBAAmB;IACnB,4EAA4E;IAE5E;;;;;OAKG;IACH,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAEtC;;;;OAIG;IACH,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAEjC;;;;OAIG;IACH,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE9B,4EAA4E;IAC5E,kBAAkB;IAClB,4EAA4E;IAE5E;;;;;;;;OAQG;IACH,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAEzC,4EAA4E;IAC5E,mBAAmB;IACnB,4EAA4E;IAE5E;;;;;OAKG;IACH,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAE3C;;;;;;;;OAQG;IACH,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAEtC;;;;;OAKG;IACH,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;IAE3C,4EAA4E;IAC5E,oBAAoB;IACpB,4EAA4E;IAE5E;;;OAGG;IACH,eAAe,EAAE,0BAA0B,CAAC,QAAQ,EAAE;IAEtD,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAE5E;;;OAGG;IACH,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CACvC,CAAC,CAAC;AAKH;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAsB;IAC/C,UAAU,EAAE,KAAK;IACjB,KAAK,EAAE,KAAK;IACZ,aAAa,EAAE,KAAK;IACpB,gBAAgB,EAAE,IAAI;IACtB,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,UAAU;IACvB,WAAW,EAAE,IAAI;IACjB,eAAe,EAAE;QACf,OAAO,EAAE,IAAI;QACb,kBAAkB,EAAE,IAAI;QACxB,gBAAgB,EAAE,MAAM;QACxB,sBAAsB,EAAE,EAAE;KAC3B;CACF,CAAC"}
@@ -1,4 +1,10 @@
1
+ import type { AntigravityConfig } from "./config";
1
2
  export declare const DEBUG_MESSAGE_PREFIX = "[opencode-antigravity-auth debug]";
3
+ /**
4
+ * Initialize or reinitialize debug state with the given config.
5
+ * Call this once at plugin startup after loading config.
6
+ */
7
+ export declare function initializeDebug(config: AntigravityConfig): void;
2
8
  export declare function isDebugEnabled(): boolean;
3
9
  export declare function isVerboseEnabled(): boolean;
4
10
  export declare function getLogFilePath(): string | undefined;
@@ -23,11 +29,11 @@ interface AntigravityDebugResponseMeta {
23
29
  headersOverride?: HeadersInit;
24
30
  }
25
31
  /**
26
- * Begins a debug trace for an Antigravity request, logging request metadata when debugging is enabled.
32
+ * Begins a debug trace for an Antigravity request.
27
33
  */
28
34
  export declare function startAntigravityDebugRequest(meta: AntigravityDebugRequestMeta): AntigravityDebugContext | null;
29
35
  /**
30
- * Logs response details for a previously started debug trace when debugging is enabled.
36
+ * Logs response details for a previously started debug trace.
31
37
  */
32
38
  export declare function logAntigravityDebugResponse(context: AntigravityDebugContext | null | undefined, response: Response, meta?: AntigravityDebugResponseMeta): void;
33
39
  export interface AccountDebugInfo {
@@ -1 +1 @@
1
- {"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../../src/plugin/debug.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,oBAAoB,sCAAsC,CAAC;AAgBxE,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED,wBAAgB,cAAc,IAAI,MAAM,GAAG,SAAS,CAEnD;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,2BAA2B;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,4BAA4B;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,eAAe,CAAC,EAAE,WAAW,CAAC;CAC/B;AAID;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,2BAA2B,GAAG,uBAAuB,GAAG,IAAI,CAsB9G;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,uBAAuB,GAAG,IAAI,GAAG,SAAS,EACnD,QAAQ,EAAE,QAAQ,EAClB,IAAI,GAAE,4BAAiC,GACtC,IAAI,CA4BN;AAoID,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACvD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAc7E;AAED,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACrG,IAAI,CAgBN;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,GAC7G,IAAI,CAcN;AAED,wBAAsB,eAAe,CACnC,OAAO,EAAE,uBAAuB,GAAG,IAAI,GAAG,SAAS,EACnD,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAoB7B;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAG/F;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAGpD"}
1
+ {"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../../src/plugin/debug.ts"],"names":[],"mappings":"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"}
@@ -2,16 +2,14 @@ import { createWriteStream, mkdirSync } from "node:fs";
2
2
  import { join } from "node:path";
3
3
  import { homedir } from "node:os";
4
4
  import { env } from "node:process";
5
- const DEBUG_FLAG = env.OPENCODE_ANTIGRAVITY_DEBUG ?? "";
6
5
  const MAX_BODY_PREVIEW_CHARS = 12000;
7
6
  const MAX_BODY_VERBOSE_CHARS = 50000;
8
7
  export const DEBUG_MESSAGE_PREFIX = "[opencode-antigravity-auth debug]";
9
- // Debug levels: 0 = off, 1 = basic, 2 = verbose (full bodies)
10
- const debugLevel = parseDebugLevel(DEBUG_FLAG);
11
- const debugEnabled = debugLevel >= 1;
12
- const verboseEnabled = debugLevel >= 2;
13
- const logFilePath = debugEnabled ? defaultLogFilePath() : undefined;
14
- const logWriter = createLogWriter(logFilePath);
8
+ let debugState = null;
9
+ /**
10
+ * Parse debug level from a flag string.
11
+ * 0 = off, 1 = basic, 2 = verbose (full bodies)
12
+ */
15
13
  function parseDebugLevel(flag) {
16
14
  const trimmed = flag.trim();
17
15
  if (trimmed === "2" || trimmed === "verbose")
@@ -20,21 +18,119 @@ function parseDebugLevel(flag) {
20
18
  return 1;
21
19
  return 0;
22
20
  }
21
+ /**
22
+ * Get the OS-specific config directory.
23
+ */
24
+ function getConfigDir() {
25
+ const platform = process.platform;
26
+ if (platform === "win32") {
27
+ return join(env.APPDATA || join(homedir(), "AppData", "Roaming"), "opencode");
28
+ }
29
+ const xdgConfig = env.XDG_CONFIG_HOME || join(homedir(), ".config");
30
+ return join(xdgConfig, "opencode");
31
+ }
32
+ /**
33
+ * Returns the logs directory, creating it if needed.
34
+ */
35
+ function getLogsDir(customLogDir) {
36
+ const logsDir = customLogDir || join(getConfigDir(), "antigravity-logs");
37
+ try {
38
+ mkdirSync(logsDir, { recursive: true });
39
+ }
40
+ catch {
41
+ // Directory may already exist or we don't have permission
42
+ }
43
+ return logsDir;
44
+ }
45
+ /**
46
+ * Builds a timestamped log file path.
47
+ */
48
+ function createLogFilePath(customLogDir) {
49
+ const timestamp = new Date().toISOString().replace(/[:.]/g, "-");
50
+ return join(getLogsDir(customLogDir), `antigravity-debug-${timestamp}.log`);
51
+ }
52
+ /**
53
+ * Creates a log writer function that writes to a file.
54
+ */
55
+ function createLogWriter(filePath) {
56
+ if (!filePath) {
57
+ return () => { };
58
+ }
59
+ try {
60
+ const stream = createWriteStream(filePath, { flags: "a" });
61
+ stream.on("error", () => { });
62
+ return (line) => {
63
+ const timestamp = new Date().toISOString();
64
+ const formatted = `[${timestamp}] ${line}`;
65
+ stream.write(`${formatted}\n`);
66
+ };
67
+ }
68
+ catch {
69
+ return () => { };
70
+ }
71
+ }
72
+ /**
73
+ * Initialize or reinitialize debug state with the given config.
74
+ * Call this once at plugin startup after loading config.
75
+ */
76
+ export function initializeDebug(config) {
77
+ // Config takes precedence, but env var can force enable for debugging
78
+ const envDebugFlag = env.OPENCODE_ANTIGRAVITY_DEBUG ?? "";
79
+ const debugLevel = config.debug ? (envDebugFlag === "2" || envDebugFlag === "verbose" ? 2 : 1) : parseDebugLevel(envDebugFlag);
80
+ const debugEnabled = debugLevel >= 1;
81
+ const verboseEnabled = debugLevel >= 2;
82
+ const logFilePath = debugEnabled ? createLogFilePath(config.log_dir) : undefined;
83
+ const logWriter = createLogWriter(logFilePath);
84
+ debugState = {
85
+ debugLevel,
86
+ debugEnabled,
87
+ verboseEnabled,
88
+ logFilePath,
89
+ logWriter,
90
+ };
91
+ }
92
+ /**
93
+ * Get the current debug state, initializing with defaults if needed.
94
+ * This allows the module to work even before initializeDebug is called.
95
+ */
96
+ function getDebugState() {
97
+ if (!debugState) {
98
+ // Fallback to env-based initialization for backward compatibility
99
+ const envDebugFlag = env.OPENCODE_ANTIGRAVITY_DEBUG ?? "";
100
+ const debugLevel = parseDebugLevel(envDebugFlag);
101
+ const debugEnabled = debugLevel >= 1;
102
+ const verboseEnabled = debugLevel >= 2;
103
+ const logFilePath = debugEnabled ? createLogFilePath() : undefined;
104
+ const logWriter = createLogWriter(logFilePath);
105
+ debugState = {
106
+ debugLevel,
107
+ debugEnabled,
108
+ verboseEnabled,
109
+ logFilePath,
110
+ logWriter,
111
+ };
112
+ }
113
+ return debugState;
114
+ }
115
+ // =============================================================================
116
+ // Public API
117
+ // =============================================================================
23
118
  export function isDebugEnabled() {
24
- return debugEnabled;
119
+ return getDebugState().debugEnabled;
25
120
  }
26
121
  export function isVerboseEnabled() {
27
- return verboseEnabled;
122
+ return getDebugState().verboseEnabled;
28
123
  }
29
124
  export function getLogFilePath() {
30
- return logFilePath;
125
+ return getDebugState().logFilePath;
31
126
  }
32
127
  let requestCounter = 0;
33
128
  /**
34
- * Begins a debug trace for an Antigravity request, logging request metadata when debugging is enabled.
129
+ * Begins a debug trace for an Antigravity request.
35
130
  */
36
131
  export function startAntigravityDebugRequest(meta) {
37
- if (!debugEnabled) {
132
+ const state = getDebugState();
133
+ if (!state.debugEnabled) {
38
134
  return null;
39
135
  }
40
136
  const id = `ANTIGRAVITY-${++requestCounter}`;
@@ -55,10 +151,11 @@ export function startAntigravityDebugRequest(meta) {
55
151
  return { id, streaming: meta.streaming, startedAt: Date.now() };
56
152
  }
57
153
  /**
58
- * Logs response details for a previously started debug trace when debugging is enabled.
154
+ * Logs response details for a previously started debug trace.
59
155
  */
60
156
  export function logAntigravityDebugResponse(context, response, meta = {}) {
61
- if (!debugEnabled || !context) {
157
+ const state = getDebugState();
158
+ if (!state.debugEnabled || !context) {
62
159
  return;
63
160
  }
64
161
  const durationMs = Date.now() - context.startedAt;
@@ -127,7 +224,7 @@ function truncateForLog(text) {
127
224
  * Writes a single debug line using the configured writer.
128
225
  */
129
226
  function logDebug(line) {
130
- logWriter(line);
227
+ getDebugState().logWriter(line);
131
228
  }
132
229
  /**
133
230
  * Converts unknown error-like values into printable strings.
@@ -143,55 +240,8 @@ function formatError(error) {
143
240
  return String(error);
144
241
  }
145
242
  }
146
- /**
147
- * Returns the logs directory inside the opencode config folder.
148
- * Creates the directory if it doesn't exist.
149
- */
150
- function getLogsDir() {
151
- const platform = process.platform;
152
- let configDir;
153
- if (platform === "win32") {
154
- configDir = join(env.APPDATA || join(homedir(), "AppData", "Roaming"), "opencode");
155
- }
156
- else {
157
- const xdgConfig = env.XDG_CONFIG_HOME || join(homedir(), ".config");
158
- configDir = join(xdgConfig, "opencode");
159
- }
160
- const logsDir = env.OPENCODE_ANTIGRAVITY_LOG_DIR || join(configDir, "antigravity-logs");
161
- try {
162
- mkdirSync(logsDir, { recursive: true });
163
- }
164
- catch {
165
- // Directory may already exist or we don't have permission
166
- }
167
- return logsDir;
168
- }
169
- /**
170
- * Builds a timestamped log file path in the opencode logs directory.
171
- */
172
- function defaultLogFilePath() {
173
- const timestamp = new Date().toISOString().replace(/[:.]/g, "-");
174
- return join(getLogsDir(), `antigravity-debug-${timestamp}.log`);
175
- }
176
- function createLogWriter(filePath) {
177
- if (!filePath) {
178
- return () => { };
179
- }
180
- try {
181
- const stream = createWriteStream(filePath, { flags: "a" });
182
- stream.on("error", () => { });
183
- return (line) => {
184
- const timestamp = new Date().toISOString();
185
- const formatted = `[${timestamp}] ${line}`;
186
- stream.write(`${formatted}\n`);
187
- };
188
- }
189
- catch {
190
- return () => { };
191
- }
192
- }
193
243
  export function logAccountContext(label, info) {
194
- if (!debugEnabled)
244
+ if (!getDebugState().debugEnabled)
195
245
  return;
196
246
  const accountLabel = info.email
197
247
  ? info.email
@@ -203,7 +253,7 @@ export function logAccountContext(label, info) {
203
253
  logDebug(`[Account] ${label}: ${accountLabel} (${indexLabel}) family=${info.family}${rateLimitInfo}`);
204
254
  }
205
255
  export function logRateLimitEvent(accountIndex, email, family, status, retryAfterMs, bodyInfo) {
206
- if (!debugEnabled)
256
+ if (!getDebugState().debugEnabled)
207
257
  return;
208
258
  const accountLabel = email || `Account ${accountIndex + 1}`;
209
259
  logDebug(`[RateLimit] ${status} on ${accountLabel} family=${family} retryAfterMs=${retryAfterMs}`);
@@ -221,7 +271,7 @@ export function logRateLimitEvent(accountIndex, email, family, status, retryAfte
221
271
  }
222
272
  }
223
273
  export function logRateLimitSnapshot(family, accounts) {
224
- if (!debugEnabled)
274
+ if (!getDebugState().debugEnabled)
225
275
  return;
226
276
  const now = Date.now();
227
277
  const entries = accounts.map((account) => {
@@ -237,15 +287,16 @@ export function logRateLimitSnapshot(family, accounts) {
237
287
  logDebug(`[RateLimit] snapshot family=${family} ${entries.join(" | ")}`);
238
288
  }
239
289
  export async function logResponseBody(context, response, status) {
240
- if (!debugEnabled || !context)
290
+ const state = getDebugState();
291
+ if (!state.debugEnabled || !context)
241
292
  return undefined;
242
293
  const isError = status >= 400;
243
- const shouldLogBody = verboseEnabled || isError;
294
+ const shouldLogBody = state.verboseEnabled || isError;
244
295
  if (!shouldLogBody)
245
296
  return undefined;
246
297
  try {
247
298
  const text = await response.clone().text();
248
- const maxChars = verboseEnabled ? MAX_BODY_VERBOSE_CHARS : MAX_BODY_PREVIEW_CHARS;
299
+ const maxChars = state.verboseEnabled ? MAX_BODY_VERBOSE_CHARS : MAX_BODY_PREVIEW_CHARS;
249
300
  const preview = text.length <= maxChars
250
301
  ? text
251
302
  : `${text.slice(0, maxChars)}... (truncated ${text.length - maxChars} chars)`;
@@ -258,12 +309,12 @@ export async function logResponseBody(context, response, status) {
258
309
  }
259
310
  }
260
311
  export function logModelFamily(url, extractedModel, family) {
261
- if (!debugEnabled)
312
+ if (!getDebugState().debugEnabled)
262
313
  return;
263
314
  logDebug(`[ModelFamily] url=${url} model=${extractedModel ?? "unknown"} family=${family}`);
264
315
  }
265
316
  export function debugLogToFile(message) {
266
- if (!debugEnabled)
317
+ if (!getDebugState().debugEnabled)
267
318
  return;
268
319
  logDebug(message);
269
320
  }
@@ -1 +1 @@
1
- {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/plugin/debug.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/plugin/debug.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Constants for session recovery storage paths.
3
+ *
4
+ * Based on oh-my-opencode/src/hooks/session-recovery/constants.ts
5
+ */
6
+ /**
7
+ * Get the XDG config directory for Antigravity config.
8
+ * Falls back to ~/.config on Linux/Mac, or APPDATA on Windows.
9
+ */
10
+ export declare function getXdgConfig(): string;
11
+ /**
12
+ * Get the Antigravity config directory.
13
+ * Default: ~/.config/opencode/antigravity.json
14
+ */
15
+ export declare function getAntigravityConfigDir(): string;
16
+ export declare const OPENCODE_STORAGE: string;
17
+ export declare const MESSAGE_STORAGE: string;
18
+ export declare const PART_STORAGE: string;
19
+ export declare const THINKING_TYPES: Set<string>;
20
+ export declare const META_TYPES: Set<string>;
21
+ export declare const CONTENT_TYPES: Set<string>;
22
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/plugin/recovery/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAmBH;;;GAGG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAQrC;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD;AAED,eAAO,MAAM,gBAAgB,QAA4C,CAAC;AAC1E,eAAO,MAAM,eAAe,QAAoC,CAAC;AACjE,eAAO,MAAM,YAAY,QAAiC,CAAC;AAE3D,eAAO,MAAM,cAAc,aAA0D,CAAC;AACtF,eAAO,MAAM,UAAU,aAAyC,CAAC;AACjE,eAAO,MAAM,aAAa,aAAuD,CAAC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Constants for session recovery storage paths.
3
+ *
4
+ * Based on oh-my-opencode/src/hooks/session-recovery/constants.ts
5
+ */
6
+ import { join } from "node:path";
7
+ import { homedir } from "node:os";
8
+ /**
9
+ * Get the XDG data directory for OpenCode storage.
10
+ * Falls back to ~/.local/share on Linux/Mac, or APPDATA on Windows.
11
+ */
12
+ function getXdgData() {
13
+ const platform = process.platform;
14
+ if (platform === "win32") {
15
+ return process.env.APPDATA || join(homedir(), "AppData", "Roaming");
16
+ }
17
+ return process.env.XDG_DATA_HOME || join(homedir(), ".local", "share");
18
+ }
19
+ /**
20
+ * Get the XDG config directory for Antigravity config.
21
+ * Falls back to ~/.config on Linux/Mac, or APPDATA on Windows.
22
+ */
23
+ export function getXdgConfig() {
24
+ const platform = process.platform;
25
+ if (platform === "win32") {
26
+ return process.env.APPDATA || join(homedir(), "AppData", "Roaming");
27
+ }
28
+ return process.env.XDG_CONFIG_HOME || join(homedir(), ".config");
29
+ }
30
+ /**
31
+ * Get the Antigravity config directory.
32
+ * Default: ~/.config/opencode/antigravity.json
33
+ */
34
+ export function getAntigravityConfigDir() {
35
+ return join(getXdgConfig(), "opencode");
36
+ }
37
+ export const OPENCODE_STORAGE = join(getXdgData(), "opencode", "storage");
38
+ export const MESSAGE_STORAGE = join(OPENCODE_STORAGE, "message");
39
+ export const PART_STORAGE = join(OPENCODE_STORAGE, "part");
40
+ export const THINKING_TYPES = new Set(["thinking", "redacted_thinking", "reasoning"]);
41
+ export const META_TYPES = new Set(["step-start", "step-finish"]);
42
+ export const CONTENT_TYPES = new Set(["text", "tool", "tool_use", "tool_result"]);
43
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/plugin/recovery/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC;;;GAGG;AACH,SAAS,UAAU;IACjB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAElC,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACzE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY;IAC1B,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAElC,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;AACnE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB;IACrC,OAAO,IAAI,CAAC,YAAY,EAAE,EAAE,UAAU,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;AAC1E,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,mBAAmB,EAAE,WAAW,CAAC,CAAC,CAAC;AACtF,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Session recovery module for opencode-antigravity-auth.
3
+ *
4
+ * Provides recovery from:
5
+ * - tool_result_missing: Interrupted tool executions
6
+ * - thinking_block_order: Corrupted thinking blocks
7
+ * - thinking_disabled_violation: Thinking in non-thinking model
8
+ */
9
+ export * from "./types";
10
+ export * from "./constants";
11
+ export * from "./storage";
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/plugin/recovery/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Session recovery module for opencode-antigravity-auth.
3
+ *
4
+ * Provides recovery from:
5
+ * - tool_result_missing: Interrupted tool executions
6
+ * - thinking_block_order: Corrupted thinking blocks
7
+ * - thinking_disabled_violation: Thinking in non-thinking model
8
+ */
9
+ export * from "./types";
10
+ export * from "./constants";
11
+ export * from "./storage";
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugin/recovery/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Storage utilities for reading OpenCode's session data.
3
+ *
4
+ * Based on oh-my-opencode/src/hooks/session-recovery/storage.ts
5
+ */
6
+ import type { StoredMessageMeta, StoredPart } from "./types";
7
+ export declare function generatePartId(): string;
8
+ export declare function getMessageDir(sessionID: string): string;
9
+ export declare function readMessages(sessionID: string): StoredMessageMeta[];
10
+ export declare function readParts(messageID: string): StoredPart[];
11
+ export declare function hasContent(part: StoredPart): boolean;
12
+ export declare function messageHasContent(messageID: string): boolean;
13
+ export declare function injectTextPart(sessionID: string, messageID: string, text: string): boolean;
14
+ export declare function findMessagesWithThinkingBlocks(sessionID: string): string[];
15
+ export declare function findMessagesWithThinkingOnly(sessionID: string): string[];
16
+ export declare function findMessagesWithOrphanThinking(sessionID: string): string[];
17
+ export declare function prependThinkingPart(sessionID: string, messageID: string): boolean;
18
+ export declare function stripThinkingParts(messageID: string): boolean;
19
+ export declare function findEmptyMessages(sessionID: string): string[];
20
+ export declare function findEmptyMessageByIndex(sessionID: string, targetIndex: number): string | null;
21
+ export declare function findMessageByIndexNeedingThinking(sessionID: string, targetIndex: number): string | null;
22
+ export declare function replaceEmptyTextParts(messageID: string, replacementText: string): boolean;
23
+ export declare function findMessagesWithEmptyTextParts(sessionID: string): string[];
24
+ //# sourceMappingURL=storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../../src/plugin/recovery/storage.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAkB,MAAM,SAAS,CAAC;AAM7E,wBAAgB,cAAc,IAAI,MAAM,CAIvC;AAMD,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAqBvD;AAMD,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAyBnE;AAMD,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,EAAE,CAoBzD;AAMD,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAkBpD;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAG5D;AAMD,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAuB1F;AAMD,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAe1E;AAED,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAoBxE;AAED,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAwB1E;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAuBjF;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAyB7D;AAMD,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAW7D;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkB7F;AAED,wBAAgB,iCAAiC,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAsBvG;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CA+BzF;AAED,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAkB1E"}