@kenkaiiii/ggcoder 4.3.242 → 4.4.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.
Files changed (87) hide show
  1. package/dist/cli/shared.d.ts.map +1 -1
  2. package/dist/cli/shared.js +27 -5
  3. package/dist/cli/shared.js.map +1 -1
  4. package/dist/config.d.ts +3 -14
  5. package/dist/config.d.ts.map +1 -1
  6. package/dist/config.js +4 -17
  7. package/dist/config.js.map +1 -1
  8. package/dist/core/auth-storage.d.ts +1 -40
  9. package/dist/core/auth-storage.d.ts.map +1 -1
  10. package/dist/core/auth-storage.js +3 -200
  11. package/dist/core/auth-storage.js.map +1 -1
  12. package/dist/core/auto-update.d.ts +4 -26
  13. package/dist/core/auto-update.d.ts.map +1 -1
  14. package/dist/core/auto-update.js +12 -237
  15. package/dist/core/auto-update.js.map +1 -1
  16. package/dist/core/claude-code-version.d.ts +1 -9
  17. package/dist/core/claude-code-version.d.ts.map +1 -1
  18. package/dist/core/claude-code-version.js +2 -105
  19. package/dist/core/claude-code-version.js.map +1 -1
  20. package/dist/core/file-lock.d.ts +1 -5
  21. package/dist/core/file-lock.d.ts.map +1 -1
  22. package/dist/core/file-lock.js +2 -75
  23. package/dist/core/file-lock.js.map +1 -1
  24. package/dist/core/logger.d.ts +4 -17
  25. package/dist/core/logger.d.ts.map +1 -1
  26. package/dist/core/logger.js +21 -110
  27. package/dist/core/logger.js.map +1 -1
  28. package/dist/core/model-registry.d.ts +1 -54
  29. package/dist/core/model-registry.d.ts.map +1 -1
  30. package/dist/core/model-registry.js +4 -296
  31. package/dist/core/model-registry.js.map +1 -1
  32. package/dist/core/oauth/anthropic.d.ts +1 -3
  33. package/dist/core/oauth/anthropic.d.ts.map +1 -1
  34. package/dist/core/oauth/anthropic.js +2 -96
  35. package/dist/core/oauth/anthropic.js.map +1 -1
  36. package/dist/core/oauth/gemini.d.ts +1 -3
  37. package/dist/core/oauth/gemini.d.ts.map +1 -1
  38. package/dist/core/oauth/gemini.js +2 -379
  39. package/dist/core/oauth/gemini.js.map +1 -1
  40. package/dist/core/oauth/openai.d.ts +1 -3
  41. package/dist/core/oauth/openai.d.ts.map +1 -1
  42. package/dist/core/oauth/openai.js +2 -187
  43. package/dist/core/oauth/openai.js.map +1 -1
  44. package/dist/core/oauth/pkce.d.ts +1 -4
  45. package/dist/core/oauth/pkce.d.ts.map +1 -1
  46. package/dist/core/oauth/pkce.js +2 -16
  47. package/dist/core/oauth/pkce.js.map +1 -1
  48. package/dist/core/oauth/types.d.ts +1 -13
  49. package/dist/core/oauth/types.d.ts.map +1 -1
  50. package/dist/core/telegram.d.ts +1 -112
  51. package/dist/core/telegram.d.ts.map +1 -1
  52. package/dist/core/telegram.js +2 -251
  53. package/dist/core/telegram.js.map +1 -1
  54. package/dist/core/thinking-level.d.ts +1 -4
  55. package/dist/core/thinking-level.d.ts.map +1 -1
  56. package/dist/core/thinking-level.js +3 -58
  57. package/dist/core/thinking-level.js.map +1 -1
  58. package/dist/core/voice-transcriber.d.ts +1 -32
  59. package/dist/core/voice-transcriber.d.ts.map +1 -1
  60. package/dist/core/voice-transcriber.js +3 -112
  61. package/dist/core/voice-transcriber.js.map +1 -1
  62. package/dist/ui/App.d.ts.map +1 -1
  63. package/dist/ui/App.js +27 -5
  64. package/dist/ui/App.js.map +1 -1
  65. package/dist/utils/plan-steps.d.ts +18 -0
  66. package/dist/utils/plan-steps.d.ts.map +1 -1
  67. package/dist/utils/plan-steps.js +32 -0
  68. package/dist/utils/plan-steps.js.map +1 -1
  69. package/dist/utils/plan-steps.test.js +57 -1
  70. package/dist/utils/plan-steps.test.js.map +1 -1
  71. package/package.json +4 -3
  72. package/dist/core/model-registry.test.d.ts +0 -2
  73. package/dist/core/model-registry.test.d.ts.map +0 -1
  74. package/dist/core/model-registry.test.js +0 -95
  75. package/dist/core/model-registry.test.js.map +0 -1
  76. package/dist/core/oauth/gemini.test.d.ts +0 -2
  77. package/dist/core/oauth/gemini.test.d.ts.map +0 -1
  78. package/dist/core/oauth/gemini.test.js +0 -154
  79. package/dist/core/oauth/gemini.test.js.map +0 -1
  80. package/dist/core/thinking-level.test.d.ts +0 -2
  81. package/dist/core/thinking-level.test.d.ts.map +0 -1
  82. package/dist/core/thinking-level.test.js +0 -38
  83. package/dist/core/thinking-level.test.js.map +0 -1
  84. package/dist/core/voice-transcriber.test.d.ts +0 -2
  85. package/dist/core/voice-transcriber.test.d.ts.map +0 -1
  86. package/dist/core/voice-transcriber.test.js +0 -88
  87. package/dist/core/voice-transcriber.test.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/cli/shared.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAKjD,eAAO,MAAM,WAAW,QAAkE,CAAC;AAG3F,eAAO,MAAM,UAAU,UAOtB,CAAC;AAGF,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,eAAO,MAAM,QAAQ,QAAQ,CAAC;AAG9B,eAAO,MAAM,qBAAqB,IAAI,CAAC;AAiBvC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAclF;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GACzC,MAAM,EAAE,CASV;AAED,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAU5C;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAUtD;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAO7C"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/cli/shared.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAyBjD,eAAO,MAAM,WAAW,QAAsB,CAAC;AAG/C,eAAO,MAAM,UAAU,UAOtB,CAAC;AAGF,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,eAAO,MAAM,QAAQ,QAAQ,CAAC;AAG9B,eAAO,MAAM,qBAAqB,IAAI,CAAC;AAiBvC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAclF;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GACzC,MAAM,EAAE,CASV;AAED,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAU5C;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAUtD;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAO7C"}
@@ -1,10 +1,32 @@
1
- import { createRequire } from "node:module";
2
1
  import { execFile } from "node:child_process";
2
+ import { readFileSync } from "node:fs";
3
+ import { dirname, join } from "node:path";
4
+ import { fileURLToPath } from "node:url";
3
5
  import chalk from "chalk";
4
- const _require = createRequire(import.meta.url);
5
- // This module lives one directory deeper than cli.ts (src/cli/ → dist/cli/),
6
- // so the package manifest is two levels up rather than one.
7
- export const CLI_VERSION = _require("../../package.json").version;
6
+ // Resolve the package version by walking up from this module to the nearest
7
+ // package.json. A bare `require("../../package.json")` breaks when this module
8
+ // is re-bundled into a sibling package (e.g. gg-boss), where the relative path
9
+ // no longer points at ggcoder's manifest — so it crashes the CLI. Walking up
10
+ // from import.meta.url always finds a valid manifest and never throws.
11
+ function resolveCliVersion() {
12
+ let dir = dirname(fileURLToPath(import.meta.url));
13
+ for (let i = 0; i < 6; i++) {
14
+ try {
15
+ const manifest = JSON.parse(readFileSync(join(dir, "package.json"), "utf8"));
16
+ if (manifest.version)
17
+ return manifest.version;
18
+ }
19
+ catch {
20
+ // no package.json at this level — keep walking up
21
+ }
22
+ const parent = dirname(dir);
23
+ if (parent === dir)
24
+ break;
25
+ dir = parent;
26
+ }
27
+ return "0.0.0";
28
+ }
29
+ export const CLI_VERSION = resolveCliVersion();
8
30
  // ── Logo + gradient (mirrors terminal-history.ts banner) ────────────
9
31
  export const LOGO_LINES = [
10
32
  " \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557 ",
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/cli/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/cli/shared.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -1,21 +1,10 @@
1
1
  import type { Provider, ThinkingLevel } from "@kenkaiiii/gg-ai";
2
+ import { getAppPaths, type AppPaths } from "@kenkaiiii/gg-core";
2
3
  import type { ThemeName } from "./ui/theme/theme.js";
3
4
  export declare const APP_NAME = "ggcoder";
4
5
  export declare const VERSION = "0.0.1";
5
- export interface AppPaths {
6
- agentDir: string;
7
- sessionsDir: string;
8
- settingsFile: string;
9
- authFile: string;
10
- telegramFile: string;
11
- agentHomeFile: string;
12
- mcpFile: string;
13
- logFile: string;
14
- skillsDir: string;
15
- extensionsDir: string;
16
- agentsDir: string;
17
- }
18
- export declare function getAppPaths(): AppPaths;
6
+ export { getAppPaths };
7
+ export type { AppPaths };
19
8
  export declare function ensureAppDirs(): Promise<AppPaths>;
20
9
  export interface SavedSettings {
21
10
  provider?: Provider;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,eAAO,MAAM,QAAQ,YAAY,CAAC;AAClC,eAAO,MAAM,OAAO,UAAU,CAAC;AAE/B,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,WAAW,IAAI,QAAQ,CAetC;AAED,wBAAsB,aAAa,IAAI,OAAO,CAAC,QAAQ,CAAC,CAUvD;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAkBD,4FAA4F;AAC5F,wBAAgB,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,aAAa,CA0B1E"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,eAAO,MAAM,QAAQ,YAAY,CAAC;AAClC,eAAO,MAAM,OAAO,UAAU,CAAC;AAI/B,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,YAAY,EAAE,QAAQ,EAAE,CAAC;AAEzB,wBAAsB,aAAa,IAAI,OAAO,CAAC,QAAQ,CAAC,CAUvD;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAkBD,4FAA4F;AAC5F,wBAAgB,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,aAAa,CA0B1E"}
package/dist/config.js CHANGED
@@ -1,25 +1,12 @@
1
1
  import path from "node:path";
2
- import os from "node:os";
3
2
  import fs from "node:fs/promises";
4
3
  import fsSync from "node:fs";
4
+ import { getAppPaths } from "@kenkaiiii/gg-core";
5
5
  export const APP_NAME = "ggcoder";
6
6
  export const VERSION = "0.0.1";
7
- export function getAppPaths() {
8
- const agentDir = path.join(os.homedir(), ".gg");
9
- return {
10
- agentDir,
11
- sessionsDir: path.join(agentDir, "sessions"),
12
- settingsFile: path.join(agentDir, "settings.json"),
13
- authFile: path.join(agentDir, "auth.json"),
14
- telegramFile: path.join(agentDir, "telegram.json"),
15
- agentHomeFile: path.join(agentDir, "agent-home.json"),
16
- mcpFile: path.join(agentDir, "mcp.json"),
17
- logFile: path.join(agentDir, "debug.log"),
18
- skillsDir: path.join(agentDir, "skills"),
19
- extensionsDir: path.join(agentDir, "extensions"),
20
- agentsDir: path.join(agentDir, "agents"),
21
- };
22
- }
7
+ // getAppPaths + AppPaths now live in @kenkaiiii/gg-core. Re-exported here so the
8
+ // many `./config.js` importers keep resolving them unchanged.
9
+ export { getAppPaths };
23
10
  export async function ensureAppDirs() {
24
11
  const paths = getAppPaths();
25
12
  await fs.mkdir(paths.agentDir, { recursive: true, mode: 0o700 });
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,MAAM,MAAM,SAAS,CAAC;AAI7B,MAAM,CAAC,MAAM,QAAQ,GAAG,SAAS,CAAC;AAClC,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAgB/B,MAAM,UAAU,WAAW;IACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;IAChD,OAAO;QACL,QAAQ;QACR,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC;QAC5C,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC;QAClD,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC;QAC1C,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC;QAClD,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC;QACrD,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC;QACxC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC;QACzC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC;QACxC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC;QAChD,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC;KACzC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;IAC5B,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACjE,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACpE,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAClE,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACtE,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAClE,MAAM,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACzC,MAAM,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACzC,OAAO,KAAK,CAAC;AACf,CAAC;AAWD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAW;IACxC,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,KAAK;IACL,UAAU;IACV,SAAS;IACT,UAAU;IACV,YAAY;CACb,CAAC,CAAC;AAEH,SAAS,eAAe,CAAC,KAAc;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,eAAe,CAAC,GAAG,CAAC,KAAiB,CAAC,CAAC;AAC7E,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,iBAAiB,CAAC,gBAAyB;IACzD,MAAM,QAAQ,GAAG,gBAAgB,IAAI,WAAW,EAAE,CAAC,YAAY,CAAC;IAChE,MAAM,MAAM,GAAkB;QAC5B,eAAe,EAAE,KAAK;QACtB,KAAK,EAAE,MAAM;QACb,kBAAkB,EAAE,IAAI;KACzB,CAAC;IACF,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAC/D,qEAAqE;QACrE,wEAAwE;QACxE,uEAAuE;QACvE,IAAI,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;YACzC,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,eAAe,CAAC;YACtC,mEAAmE;YACnE,kEAAkE;YAClE,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ;gBAAE,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC;QAC5E,CAAC;QACD,IAAI,GAAG,CAAC,eAAe,KAAK,IAAI;YAAE,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC;QAChE,IAAI,oBAAoB,CAAC,GAAG,CAAC,aAAa,CAAC;YAAE,MAAM,CAAC,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;QACtF,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;QAC9F,IAAI,GAAG,CAAC,kBAAkB,KAAK,KAAK;YAAE,MAAM,CAAC,kBAAkB,GAAG,KAAK,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,kDAAkD;IACpD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;AAEhG,SAAS,oBAAoB,CAAC,KAAc;IAC1C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,qBAAqB,CAAC,GAAG,CAAC,KAAsB,CAAC,CAAC;AACxF,CAAC;AAED,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAS;IAC3C,MAAM;IACN,MAAM;IACN,OAAO;IACP,WAAW;IACX,YAAY;IACZ,iBAAiB;IACjB,kBAAkB;CACnB,CAAC,CAAC;AAEH,SAAS,mBAAmB,CAAC,KAAa;IACxC,OAAO,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACzC,CAAC;AAED,iFAAiF;AACjF,KAAK,UAAU,iBAAiB,CAAC,SAAiB;IAChD,MAAM,QAAQ,GAA2B;QACvC,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;CAwBb;QACG,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;CAsBb;KACE,CAAC;IAEF,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC1B,2CAA2C;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;AACH,CAAC;AAED,iFAAiF;AACjF,KAAK,UAAU,iBAAiB,CAAC,SAAiB;IAChD,MAAM,QAAQ,GAA2B;QACvC,gBAAgB,EAAE,cAAc;KACjC,CAAC;IAEF,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC1B,2CAA2C;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmFtB,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -1,41 +1,2 @@
1
- import type { OAuthCredentials } from "./oauth/types.js";
2
- export declare class AuthStorage {
3
- private data;
4
- private filePath;
5
- private loaded;
6
- /** Per-provider lock to serialize concurrent refresh calls. */
7
- private refreshLocks;
8
- constructor(filePath?: string);
9
- /** Path to the on-disk auth file. Useful for status output. */
10
- get path(): string;
11
- /** List provider keys with stored credentials. */
12
- listProviders(): Promise<string[]>;
13
- /** True if credentials exist for `provider`. */
14
- hasCredentials(provider: string): Promise<boolean>;
15
- load(): Promise<void>;
16
- private ensureLoaded;
17
- getCredentials(provider: string): Promise<OAuthCredentials | undefined>;
18
- setCredentials(provider: string, creds: OAuthCredentials): Promise<void>;
19
- clearCredentials(provider: string): Promise<void>;
20
- clearAll(): Promise<void>;
21
- /**
22
- * Returns valid credentials, auto-refreshing if expired.
23
- * If `forceRefresh` is true, refreshes even if the token hasn't expired
24
- * (useful when the provider rejects a token with 401 before its stored expiry).
25
- * Throws if not logged in.
26
- */
27
- resolveCredentials(provider: string, opts?: {
28
- forceRefresh?: boolean;
29
- }): Promise<OAuthCredentials>;
30
- /**
31
- * Returns a valid access token, auto-refreshing if expired.
32
- * Throws if not logged in.
33
- */
34
- resolveToken(provider: string): Promise<string>;
35
- private save;
36
- }
37
- export declare class NotLoggedInError extends Error {
38
- provider: string;
39
- constructor(provider: string);
40
- }
1
+ export { AuthStorage, NotLoggedInError } from "@kenkaiiii/gg-core";
41
2
  //# sourceMappingURL=auth-storage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-storage.d.ts","sourceRoot":"","sources":["../../src/core/auth-storage.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AASzD,qBAAa,WAAW;IACtB,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,+DAA+D;IAC/D,OAAO,CAAC,YAAY,CAAgD;gBAExD,QAAQ,CAAC,EAAE,MAAM;IAI7B,+DAA+D;IAC/D,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,kDAAkD;IAC5C,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAKxC,gDAAgD;IAC1C,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKlD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YA0Bb,YAAY;IAIpB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAKvE,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMjD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAK/B;;;;;OAKG;IACG,kBAAkB,CACtB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GAChC,OAAO,CAAC,gBAAgB,CAAC;IAyF5B;;;OAGG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAKvC,IAAI;CAKnB;AAiBD,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,QAAQ,EAAE,MAAM,CAAC;gBACL,QAAQ,EAAE,MAAM;CAK7B"}
1
+ {"version":3,"file":"auth-storage.d.ts","sourceRoot":"","sources":["../../src/core/auth-storage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,201 +1,4 @@
1
- import fs from "node:fs/promises";
2
- import crypto from "node:crypto";
3
- import { getAppPaths } from "../config.js";
4
- import { refreshAnthropicToken } from "./oauth/anthropic.js";
5
- import { refreshOpenAIToken } from "./oauth/openai.js";
6
- import { refreshGeminiToken } from "./oauth/gemini.js";
7
- import { withFileLock } from "./file-lock.js";
8
- import { log } from "./logger.js";
9
- export class AuthStorage {
10
- data = {};
11
- filePath;
12
- loaded = false;
13
- /** Per-provider lock to serialize concurrent refresh calls. */
14
- refreshLocks = new Map();
15
- constructor(filePath) {
16
- this.filePath = filePath ?? getAppPaths().authFile;
17
- }
18
- /** Path to the on-disk auth file. Useful for status output. */
19
- get path() {
20
- return this.filePath;
21
- }
22
- /** List provider keys with stored credentials. */
23
- async listProviders() {
24
- await this.ensureLoaded();
25
- return Object.keys(this.data);
26
- }
27
- /** True if credentials exist for `provider`. */
28
- async hasCredentials(provider) {
29
- await this.ensureLoaded();
30
- return Boolean(this.data[provider]);
31
- }
32
- async load() {
33
- await withFileLock(this.filePath, async () => {
34
- try {
35
- const content = await fs.readFile(this.filePath, "utf-8");
36
- this.data = JSON.parse(content);
37
- log("INFO", "auth", `Loaded credentials from ${this.filePath}`, {
38
- providers: Object.keys(this.data).join(",") || "(none)",
39
- });
40
- }
41
- catch (err) {
42
- this.data = {};
43
- const code = err.code;
44
- if (code === "ENOENT") {
45
- log("INFO", "auth", `No auth file found at ${this.filePath} (first run)`);
46
- }
47
- else {
48
- log("ERROR", "auth", `Failed to load auth file: ${err instanceof Error ? err.message : String(err)}`, { path: this.filePath, code: code ?? "unknown" });
49
- }
50
- }
51
- });
52
- this.loaded = true;
53
- }
54
- async ensureLoaded() {
55
- if (!this.loaded)
56
- await this.load();
57
- }
58
- async getCredentials(provider) {
59
- await this.ensureLoaded();
60
- return this.data[provider];
61
- }
62
- async setCredentials(provider, creds) {
63
- await this.ensureLoaded();
64
- this.data[provider] = creds;
65
- await this.save();
66
- }
67
- async clearCredentials(provider) {
68
- await this.ensureLoaded();
69
- delete this.data[provider];
70
- await this.save();
71
- }
72
- async clearAll() {
73
- this.data = {};
74
- await this.save();
75
- }
76
- /**
77
- * Returns valid credentials, auto-refreshing if expired.
78
- * If `forceRefresh` is true, refreshes even if the token hasn't expired
79
- * (useful when the provider rejects a token with 401 before its stored expiry).
80
- * Throws if not logged in.
81
- */
82
- async resolveCredentials(provider, opts) {
83
- await this.ensureLoaded();
84
- const creds = this.data[provider];
85
- if (!creds) {
86
- throw new NotLoggedInError(provider);
87
- }
88
- // GLM and Moonshot use static API keys — no refresh needed
89
- if (provider === "glm" ||
90
- provider === "moonshot" ||
91
- provider === "xiaomi" ||
92
- provider === "minimax" ||
93
- provider === "deepseek" ||
94
- provider === "openrouter") {
95
- return creds;
96
- }
97
- // Return if not expired and not force-refreshing
98
- if (!opts?.forceRefresh && Date.now() < creds.expiresAt) {
99
- return creds;
100
- }
101
- // Serialize concurrent refresh calls per provider to avoid races
102
- const existing = this.refreshLocks.get(provider);
103
- if (existing)
104
- return existing;
105
- const refreshPromise = withFileLock(this.filePath, async () => {
106
- // Re-read from disk in case another process refreshed while we waited for the lock
107
- try {
108
- const content = await fs.readFile(this.filePath, "utf-8");
109
- const freshData = JSON.parse(content);
110
- const freshCreds = freshData[provider];
111
- if (freshCreds && !opts?.forceRefresh && Date.now() < freshCreds.expiresAt) {
112
- // Another process already refreshed — use their token
113
- this.data[provider] = freshCreds;
114
- return freshCreds;
115
- }
116
- }
117
- catch {
118
- // Fall through to refresh
119
- }
120
- const refreshFn = provider === "anthropic"
121
- ? refreshAnthropicToken
122
- : provider === "gemini"
123
- ? refreshGeminiToken
124
- : refreshOpenAIToken;
125
- let refreshed;
126
- try {
127
- refreshed = await refreshFn(creds.refreshToken);
128
- }
129
- catch (err) {
130
- // Refresh token revoked / expired / invalid → the stored creds are
131
- // unusable. Wipe them so the next launch surfaces a clean
132
- // NotLoggedInError instead of hitting the same dead refresh path
133
- // every time. The user must re-login.
134
- const msg = err instanceof Error ? err.message : String(err);
135
- const isAuthFailure = /\((401|400)\)/.test(msg) ||
136
- /invalid_grant|invalid_token|invalid.*refresh/i.test(msg) ||
137
- /unauthorized/i.test(msg);
138
- if (isAuthFailure) {
139
- delete this.data[provider];
140
- await atomicWriteFile(this.filePath, JSON.stringify(this.data, null, 2));
141
- throw new NotLoggedInError(provider);
142
- }
143
- throw err;
144
- }
145
- if (!refreshed.accountId && creds.accountId) {
146
- refreshed.accountId = creds.accountId;
147
- }
148
- if (!refreshed.projectId && creds.projectId) {
149
- refreshed.projectId = creds.projectId;
150
- }
151
- this.data[provider] = refreshed;
152
- // Write atomically (we already hold the file lock)
153
- await atomicWriteFile(this.filePath, JSON.stringify(this.data, null, 2));
154
- return refreshed;
155
- });
156
- this.refreshLocks.set(provider, refreshPromise);
157
- try {
158
- return await refreshPromise;
159
- }
160
- finally {
161
- this.refreshLocks.delete(provider);
162
- }
163
- }
164
- /**
165
- * Returns a valid access token, auto-refreshing if expired.
166
- * Throws if not logged in.
167
- */
168
- async resolveToken(provider) {
169
- const creds = await this.resolveCredentials(provider);
170
- return creds.accessToken;
171
- }
172
- async save() {
173
- await withFileLock(this.filePath, async () => {
174
- await atomicWriteFile(this.filePath, JSON.stringify(this.data, null, 2));
175
- });
176
- }
177
- }
178
- /**
179
- * Atomic file write using temp file + rename pattern.
180
- * Prevents partial/corrupt data if the process crashes mid-write.
181
- */
182
- async function atomicWriteFile(filePath, content) {
183
- const tmpPath = `${filePath}.${process.pid}.${Date.now()}.${crypto.randomUUID().slice(0, 8)}.tmp`;
184
- try {
185
- await fs.writeFile(tmpPath, content, { encoding: "utf-8", mode: 0o600 });
186
- await fs.rename(tmpPath, filePath);
187
- }
188
- catch (err) {
189
- await fs.unlink(tmpPath).catch(() => { });
190
- throw err;
191
- }
192
- }
193
- export class NotLoggedInError extends Error {
194
- provider;
195
- constructor(provider) {
196
- super(`Not logged in to ${provider}. Run "ggcoder login" to authenticate.`);
197
- this.name = "NotLoggedInError";
198
- this.provider = provider;
199
- }
200
- }
1
+ // Moved to @kenkaiiii/gg-core. Shim keeps relative imports + the
2
+ // `@kenkaiiii/ggcoder/auth` subpath export resolving unchanged.
3
+ export { AuthStorage, NotLoggedInError } from "@kenkaiiii/gg-core";
201
4
  //# sourceMappingURL=auth-storage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-storage.js","sourceRoot":"","sources":["../../src/core/auth-storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth-storage.js","sourceRoot":"","sources":["../../src/core/auth-storage.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,gEAAgE;AAChE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,29 +1,7 @@
1
- /**
2
- * Check for updates at CLI startup. Two-phase approach:
3
- *
4
- * Phase 1 (instant): If a previous background check found a newer version,
5
- * kick off a background update now. Non-blocking.
6
- *
7
- * Phase 2 (async): Fire off a background version check for the *next* startup.
8
- *
9
- * Returns a message to display, or null.
10
- */
11
- export declare function checkAndAutoUpdate(currentVersion: string): string | null;
12
- /**
13
- * Read the current state file and report whether a newer version has been
14
- * downloaded / is pending install. Used by the TUI to show a persistent
15
- * "update ready" indicator in the status row.
16
- */
17
- export declare function getPendingUpdate(currentVersion: string): {
1
+ export declare const checkAndAutoUpdate: (currentVersion: string) => string | null;
2
+ export declare const getPendingUpdate: (currentVersion: string) => {
18
3
  latestVersion: string;
19
4
  } | null;
20
- /**
21
- * Start periodic update checks during a long-running session.
22
- * Checks every hour. If an update is found, calls `onUpdate` with a message.
23
- */
24
- export declare function startPeriodicUpdateCheck(currentVersion: string, onUpdate: (message: string) => void): void;
25
- /**
26
- * Stop periodic update checks.
27
- */
28
- export declare function stopPeriodicUpdateCheck(): void;
5
+ export declare const startPeriodicUpdateCheck: (currentVersion: string, onUpdate: (message: string) => void) => void;
6
+ export declare const stopPeriodicUpdateCheck: () => void;
29
7
  //# sourceMappingURL=auto-update.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auto-update.d.ts","sourceRoot":"","sources":["../../src/core/auto-update.ts"],"names":[],"mappings":"AAkIA;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqCxE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,MAAM,GAAG;IAAE,aAAa,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CASzF;AA8BD;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAClC,IAAI,CAiCN;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,IAAI,CAK9C"}
1
+ {"version":3,"file":"auto-update.d.ts","sourceRoot":"","sources":["../../src/core/auto-update.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,kBAAkB,2CAA6B,CAAC;AAC7D,eAAO,MAAM,gBAAgB;;QAA2B,CAAC;AACzD,eAAO,MAAM,wBAAwB,uEAAmC,CAAC;AACzE,eAAO,MAAM,uBAAuB,YAAkC,CAAC"}