@kenkaiiii/ggcoder 4.3.208 → 4.3.210

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 (85) hide show
  1. package/dist/core/compaction/compactor.d.ts +4 -0
  2. package/dist/core/compaction/compactor.d.ts.map +1 -1
  3. package/dist/core/compaction/compactor.js +34 -3
  4. package/dist/core/compaction/compactor.js.map +1 -1
  5. package/dist/core/compaction/compactor.test.js +20 -1
  6. package/dist/core/compaction/compactor.test.js.map +1 -1
  7. package/dist/core/goal-controller.js +9 -9
  8. package/dist/core/goal-controller.js.map +1 -1
  9. package/dist/core/goal-controller.test.js +76 -12
  10. package/dist/core/goal-controller.test.js.map +1 -1
  11. package/dist/core/goal-lifecycle-smoke.test.js +2 -3
  12. package/dist/core/goal-lifecycle-smoke.test.js.map +1 -1
  13. package/dist/core/goal-store.d.ts +1 -1
  14. package/dist/core/goal-store.d.ts.map +1 -1
  15. package/dist/core/goal-store.js +38 -2
  16. package/dist/core/goal-store.js.map +1 -1
  17. package/dist/core/goal-store.test.js +32 -0
  18. package/dist/core/goal-store.test.js.map +1 -1
  19. package/dist/core/process-manager-dev-server-repro.test.js +37 -1
  20. package/dist/core/process-manager-dev-server-repro.test.js.map +1 -1
  21. package/dist/core/process-manager.d.ts +9 -0
  22. package/dist/core/process-manager.d.ts.map +1 -1
  23. package/dist/core/process-manager.js +20 -6
  24. package/dist/core/process-manager.js.map +1 -1
  25. package/dist/core/prompt-commands.d.ts.map +1 -1
  26. package/dist/core/prompt-commands.js +41 -21
  27. package/dist/core/prompt-commands.js.map +1 -1
  28. package/dist/core/prompt-commands.test.js +87 -21
  29. package/dist/core/prompt-commands.test.js.map +1 -1
  30. package/dist/system-prompt.js +1 -1
  31. package/dist/system-prompt.js.map +1 -1
  32. package/dist/system-prompt.test.js +58 -0
  33. package/dist/system-prompt.test.js.map +1 -1
  34. package/dist/tools/bash.d.ts.map +1 -1
  35. package/dist/tools/bash.js +2 -51
  36. package/dist/tools/bash.js.map +1 -1
  37. package/dist/tools/goals.d.ts +1 -0
  38. package/dist/tools/goals.d.ts.map +1 -1
  39. package/dist/tools/goals.js +10 -2
  40. package/dist/tools/goals.js.map +1 -1
  41. package/dist/tools/goals.test.js +85 -0
  42. package/dist/tools/goals.test.js.map +1 -1
  43. package/dist/tools/grep.d.ts.map +1 -1
  44. package/dist/tools/grep.js +22 -5
  45. package/dist/tools/grep.js.map +1 -1
  46. package/dist/tools/grep.test.d.ts +2 -0
  47. package/dist/tools/grep.test.d.ts.map +1 -0
  48. package/dist/tools/grep.test.js +20 -0
  49. package/dist/tools/grep.test.js.map +1 -0
  50. package/dist/tools/safe-env.d.ts +2 -0
  51. package/dist/tools/safe-env.d.ts.map +1 -0
  52. package/dist/tools/safe-env.js +52 -0
  53. package/dist/tools/safe-env.js.map +1 -0
  54. package/dist/tools/web-fetch.d.ts +5 -0
  55. package/dist/tools/web-fetch.d.ts.map +1 -1
  56. package/dist/tools/web-fetch.js +12 -1
  57. package/dist/tools/web-fetch.js.map +1 -1
  58. package/dist/tools/web-fetch.test.js +9 -0
  59. package/dist/tools/web-fetch.test.js.map +1 -1
  60. package/dist/ui/App.d.ts +3 -0
  61. package/dist/ui/App.d.ts.map +1 -1
  62. package/dist/ui/App.js +171 -164
  63. package/dist/ui/App.js.map +1 -1
  64. package/dist/ui/app-state-persistence.test.js +56 -0
  65. package/dist/ui/app-state-persistence.test.js.map +1 -1
  66. package/dist/ui/components/GoalStatusBar.d.ts.map +1 -1
  67. package/dist/ui/components/GoalStatusBar.js +2 -1
  68. package/dist/ui/components/GoalStatusBar.js.map +1 -1
  69. package/dist/ui/goal-events.test.js +19 -0
  70. package/dist/ui/goal-events.test.js.map +1 -1
  71. package/dist/ui/goal-lifecycle-orchestration.test.d.ts +2 -0
  72. package/dist/ui/goal-lifecycle-orchestration.test.d.ts.map +1 -0
  73. package/dist/ui/goal-lifecycle-orchestration.test.js +445 -0
  74. package/dist/ui/goal-lifecycle-orchestration.test.js.map +1 -0
  75. package/dist/ui/goal-overlay.test.js +30 -0
  76. package/dist/ui/goal-overlay.test.js.map +1 -1
  77. package/dist/ui/goal-status-bar.test.js +29 -0
  78. package/dist/ui/goal-status-bar.test.js.map +1 -1
  79. package/dist/ui/queued-message.test.d.ts +2 -0
  80. package/dist/ui/queued-message.test.d.ts.map +1 -0
  81. package/dist/ui/queued-message.test.js +30 -0
  82. package/dist/ui/queued-message.test.js.map +1 -0
  83. package/dist/ui/slash-command-images.test.js +10 -0
  84. package/dist/ui/slash-command-images.test.js.map +1 -1
  85. package/package.json +6 -5
@@ -3,58 +3,9 @@ import { killProcessTree } from "../utils/process.js";
3
3
  import { truncateTail } from "./truncate.js";
4
4
  import { writeOverflow } from "./overflow.js";
5
5
  import { localOperations } from "./operations.js";
6
+ import { getSafeToolEnv } from "./safe-env.js";
6
7
  const DEFAULT_TIMEOUT = 120_000; // 120 seconds
7
8
  const MAX_OUTPUT_BYTES = 10 * 1024 * 1024; // 10 MB — cap buffered output to prevent OOM
8
- /** Environment variables safe to inherit. Everything else is stripped to prevent leaking secrets to LLM. */
9
- const ENV_ALLOWLIST = new Set([
10
- "PATH",
11
- "HOME",
12
- "USER",
13
- "LOGNAME",
14
- "SHELL",
15
- "LANG",
16
- "LC_ALL",
17
- "LC_CTYPE",
18
- "TMPDIR",
19
- "XDG_CONFIG_HOME",
20
- "XDG_DATA_HOME",
21
- "XDG_CACHE_HOME",
22
- "XDG_RUNTIME_DIR",
23
- "EDITOR",
24
- "VISUAL",
25
- "PAGER",
26
- "CLICOLOR",
27
- "CLICOLOR_FORCE",
28
- "NO_COLOR",
29
- "FORCE_COLOR",
30
- // Development toolchains
31
- "NODE_PATH",
32
- "NVM_DIR",
33
- "NPM_CONFIG_PREFIX",
34
- "PNPM_HOME",
35
- "GOPATH",
36
- "GOROOT",
37
- "CARGO_HOME",
38
- "RUSTUP_HOME",
39
- "PYENV_ROOT",
40
- "VIRTUAL_ENV",
41
- "CONDA_DEFAULT_ENV",
42
- "CONDA_PREFIX",
43
- "JAVA_HOME",
44
- "ANDROID_HOME",
45
- "ANDROID_SDK_ROOT",
46
- "RUBY_VERSION",
47
- "GEM_HOME",
48
- "RBENV_ROOT",
49
- ]);
50
- function getSafeEnv() {
51
- const env = { TERM: "dumb", GG_CODER: "true" };
52
- for (const key of ENV_ALLOWLIST) {
53
- if (process.env[key])
54
- env[key] = process.env[key];
55
- }
56
- return env;
57
- }
58
9
  const BashParams = z.object({
59
10
  command: z.string().describe("The bash command to execute"),
60
11
  timeout: z
@@ -99,7 +50,7 @@ export function createBashTool(cwd, processManager, ops = localOperations, planM
99
50
  cwd,
100
51
  detached: true,
101
52
  stdio: ["ignore", "pipe", "pipe"],
102
- env: getSafeEnv(),
53
+ env: getSafeToolEnv(),
103
54
  });
104
55
  const chunks = [];
105
56
  let totalBytes = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"bash.js","sourceRoot":"","sources":["../../src/tools/bash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAuB,MAAM,iBAAiB,CAAC;AAEvE,MAAM,eAAe,GAAG,OAAO,CAAC,CAAC,cAAc;AAC/C,MAAM,gBAAgB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,6CAA6C;AAExF,4GAA4G;AAC5G,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC5B,MAAM;IACN,MAAM;IACN,MAAM;IACN,SAAS;IACT,OAAO;IACP,MAAM;IACN,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,iBAAiB;IACjB,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,UAAU;IACV,gBAAgB;IAChB,UAAU;IACV,aAAa;IACb,yBAAyB;IACzB,WAAW;IACX,SAAS;IACT,mBAAmB;IACnB,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,aAAa;IACb,mBAAmB;IACnB,cAAc;IACd,WAAW;IACX,cAAc;IACd,kBAAkB;IAClB,cAAc;IACd,UAAU;IACV,YAAY;CACb,CAAC,CAAC;AAEH,SAAS,UAAU;IACjB,MAAM,GAAG,GAA2B,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACvE,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;IACrD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IAC3D,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,IAAI,CAAC;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,2CAA2C,CAAC;IACxD,iBAAiB,EAAE,CAAC;SACjB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CACP,uEAAuE;QACrE,0DAA0D,CAC7D;CACJ,CAAC,CAAC;AAEH,MAAM,UAAU,cAAc,CAC5B,GAAW,EACX,cAA8B,EAC9B,MAAsB,eAAe,EACrC,WAAkC;IAElC,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,WAAW,EACT,6FAA6F;YAC7F,iFAAiF;YACjF,gDAAgD;YAChD,+DAA+D;YAC/D,wCAAwC;YACxC,iFAAiF;YACjF,kEAAkE;QACpE,UAAU,EAAE,UAAU;QACtB,aAAa,EAAE,YAAY;QAC3B,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE,OAAO;YACvE,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;gBACzB,OAAO,6GAA6G,CAAC;YACvH,CAAC;YACD,IAAI,iBAAiB,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBACxD,OAAO,CACL,+BAA+B;oBAC/B,OAAO,MAAM,CAAC,EAAE,IAAI;oBACpB,QAAQ,MAAM,CAAC,GAAG,IAAI;oBACtB,QAAQ,MAAM,CAAC,OAAO,IAAI;oBAC1B,4BAA4B,MAAM,CAAC,EAAE,mBAAmB,CACzD,CAAC;YACJ,CAAC;YAED,MAAM,gBAAgB,GAAG,SAAS,IAAI,eAAe,CAAC;YAEtD,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;gBACrC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;oBAC/C,GAAG;oBACH,QAAQ,EAAE,IAAI;oBACd,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;oBACjC,GAAG,EAAE,UAAU,EAAE;iBAClB,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,IAAI,UAAU,GAAG,CAAC,CAAC;gBACnB,IAAI,YAAY,GAAG,KAAK,CAAC;gBAEzB,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE;oBAC9B,IAAI,YAAY;wBAAE,OAAO;oBACzB,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC;oBAC1B,IAAI,UAAU,GAAG,gBAAgB,EAAE,CAAC;wBAClC,YAAY,GAAG,IAAI,CAAC;wBACpB,OAAO;oBACT,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAElB,gDAAgD;oBAChD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;wBACrB,OAAO,CAAC,QAAQ,CAAC;4BACf,IAAI,EAAE,eAAe;4BACrB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;4BAC9B,UAAU;yBACX,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC,CAAC;gBACF,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACjC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAEjC,IAAI,MAAM,GAAG,KAAK,CAAC;gBACnB,IAAI,QAAQ,GAAG,KAAK,CAAC;gBAErB,mBAAmB;gBACnB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC5B,QAAQ,GAAG,IAAI,CAAC;oBAChB,MAAM,GAAG,IAAI,CAAC;oBACd,IAAI,KAAK,CAAC,GAAG;wBAAE,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC5C,CAAC,EAAE,gBAAgB,CAAC,CAAC;gBAErB,wBAAwB;gBACxB,MAAM,OAAO,GAAG,GAAG,EAAE;oBACnB,MAAM,GAAG,IAAI,CAAC;oBACd,IAAI,KAAK,CAAC,GAAG;wBAAE,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC5C,CAAC,CAAC;gBACF,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBAElE,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;oBAC/B,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBAErD,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAC1D,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;oBAEvC,IAAI,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;oBAC5B,IAAI,YAAY,EAAE,CAAC;wBACjB,MAAM,GAAG,qBAAqB,gBAAgB,GAAG,IAAI,GAAG,IAAI,sCAAsC,MAAM,EAAE,CAAC;oBAC7G,CAAC;oBACD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;wBACrB,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;wBAC9E,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,iBAAiB,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC3E,MAAM,GAAG,4BAA4B,MAAM,CAAC,SAAS,OAAO,MAAM,CAAC,UAAU,UAAU,cAAc,MAAM,MAAM,EAAE,CAAC;oBACtH,CAAC;oBAED,MAAM,QAAQ,GAAG,QAAQ;wBACvB,CAAC,CAAC,YAAY,gBAAgB,KAAK;wBACnC,CAAC,CAAC,MAAM;4BACN,CAAC,CAAC,QAAQ;4BACV,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;oBAExB,OAAO,CAAC,cAAc,QAAQ,KAAK,MAAM,EAAE,CAAC,CAAC;gBAC/C,CAAC,CAAC,CAAC;gBAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;oBACxB,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBACrD,OAAO,CAAC,kCAAkC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC3D,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"bash.js","sourceRoot":"","sources":["../../src/tools/bash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAuB,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,eAAe,GAAG,OAAO,CAAC,CAAC,cAAc;AAC/C,MAAM,gBAAgB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,6CAA6C;AAExF,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IAC3D,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,IAAI,CAAC;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,2CAA2C,CAAC;IACxD,iBAAiB,EAAE,CAAC;SACjB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CACP,uEAAuE;QACrE,0DAA0D,CAC7D;CACJ,CAAC,CAAC;AAEH,MAAM,UAAU,cAAc,CAC5B,GAAW,EACX,cAA8B,EAC9B,MAAsB,eAAe,EACrC,WAAkC;IAElC,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,WAAW,EACT,6FAA6F;YAC7F,iFAAiF;YACjF,gDAAgD;YAChD,+DAA+D;YAC/D,wCAAwC;YACxC,iFAAiF;YACjF,kEAAkE;QACpE,UAAU,EAAE,UAAU;QACtB,aAAa,EAAE,YAAY;QAC3B,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE,OAAO;YACvE,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;gBACzB,OAAO,6GAA6G,CAAC;YACvH,CAAC;YACD,IAAI,iBAAiB,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBACxD,OAAO,CACL,+BAA+B;oBAC/B,OAAO,MAAM,CAAC,EAAE,IAAI;oBACpB,QAAQ,MAAM,CAAC,GAAG,IAAI;oBACtB,QAAQ,MAAM,CAAC,OAAO,IAAI;oBAC1B,4BAA4B,MAAM,CAAC,EAAE,mBAAmB,CACzD,CAAC;YACJ,CAAC;YAED,MAAM,gBAAgB,GAAG,SAAS,IAAI,eAAe,CAAC;YAEtD,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;gBACrC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;oBAC/C,GAAG;oBACH,QAAQ,EAAE,IAAI;oBACd,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;oBACjC,GAAG,EAAE,cAAc,EAAE;iBACtB,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,IAAI,UAAU,GAAG,CAAC,CAAC;gBACnB,IAAI,YAAY,GAAG,KAAK,CAAC;gBAEzB,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE;oBAC9B,IAAI,YAAY;wBAAE,OAAO;oBACzB,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC;oBAC1B,IAAI,UAAU,GAAG,gBAAgB,EAAE,CAAC;wBAClC,YAAY,GAAG,IAAI,CAAC;wBACpB,OAAO;oBACT,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAElB,gDAAgD;oBAChD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;wBACrB,OAAO,CAAC,QAAQ,CAAC;4BACf,IAAI,EAAE,eAAe;4BACrB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;4BAC9B,UAAU;yBACX,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC,CAAC;gBACF,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACjC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAEjC,IAAI,MAAM,GAAG,KAAK,CAAC;gBACnB,IAAI,QAAQ,GAAG,KAAK,CAAC;gBAErB,mBAAmB;gBACnB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC5B,QAAQ,GAAG,IAAI,CAAC;oBAChB,MAAM,GAAG,IAAI,CAAC;oBACd,IAAI,KAAK,CAAC,GAAG;wBAAE,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC5C,CAAC,EAAE,gBAAgB,CAAC,CAAC;gBAErB,wBAAwB;gBACxB,MAAM,OAAO,GAAG,GAAG,EAAE;oBACnB,MAAM,GAAG,IAAI,CAAC;oBACd,IAAI,KAAK,CAAC,GAAG;wBAAE,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC5C,CAAC,CAAC;gBACF,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBAElE,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;oBAC/B,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBAErD,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAC1D,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;oBAEvC,IAAI,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;oBAC5B,IAAI,YAAY,EAAE,CAAC;wBACjB,MAAM,GAAG,qBAAqB,gBAAgB,GAAG,IAAI,GAAG,IAAI,sCAAsC,MAAM,EAAE,CAAC;oBAC7G,CAAC;oBACD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;wBACrB,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;wBAC9E,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,iBAAiB,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC3E,MAAM,GAAG,4BAA4B,MAAM,CAAC,SAAS,OAAO,MAAM,CAAC,UAAU,UAAU,cAAc,MAAM,MAAM,EAAE,CAAC;oBACtH,CAAC;oBAED,MAAM,QAAQ,GAAG,QAAQ;wBACvB,CAAC,CAAC,YAAY,gBAAgB,KAAK;wBACnC,CAAC,CAAC,MAAM;4BACN,CAAC,CAAC,QAAQ;4BACV,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;oBAExB,OAAO,CAAC,cAAc,QAAQ,KAAK,MAAM,EAAE,CAAC,CAAC;gBAC/C,CAAC,CAAC,CAAC;gBAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;oBACxB,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBACrD,OAAO,CAAC,kCAAkC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC3D,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -48,6 +48,7 @@ declare const GoalsParams: z.ZodObject<{
48
48
  label: z.ZodString;
49
49
  mechanism: z.ZodEnum<{
50
50
  command: "command";
51
+ file: "file";
51
52
  script: "script";
52
53
  source: "source";
53
54
  video: "video";
@@ -1 +1 @@
1
- {"version":3,"file":"goals.d.ts","sourceRoot":"","sources":["../../src/tools/goals.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAmErD,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkEf,CAAC;AA0FH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,WAAW,CAAC,CA8T1E"}
1
+ {"version":3,"file":"goals.d.ts","sourceRoot":"","sources":["../../src/tools/goals.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAoErD,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkEf,CAAC;AA2FH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,WAAW,CAAC,CAoU1E"}
@@ -33,6 +33,7 @@ const EvidencePlanInput = z.object({
33
33
  "browser",
34
34
  "device",
35
35
  "source",
36
+ "file",
36
37
  "manual",
37
38
  ])
38
39
  .describe("How this proof will be gathered"),
@@ -147,6 +148,7 @@ function asEvidenceMechanism(value) {
147
148
  value === "browser" ||
148
149
  value === "device" ||
149
150
  value === "source" ||
151
+ value === "file" ||
150
152
  value === "manual") {
151
153
  return value;
152
154
  }
@@ -409,10 +411,16 @@ export function createGoalsTool(cwd) {
409
411
  status: result.status === "pass" && completion.ok
410
412
  ? "passed"
411
413
  : result.status === "pass"
412
- ? "ready"
414
+ ? goalHasBlockingPrerequisites(runWithVerifier)
415
+ ? "blocked"
416
+ : "ready"
413
417
  : result.status === "fail"
414
- ? "ready"
418
+ ? goalHasBlockingPrerequisites(runWithVerifier)
419
+ ? "blocked"
420
+ : "ready"
415
421
  : "verifying",
422
+ blockers: result.status === "pass" ? [] : run.blockers,
423
+ activeWorkerId: undefined,
416
424
  });
417
425
  return `Verifier recorded for "${updated.title}": ${result.status}.`;
418
426
  }
@@ -1 +1 @@
1
- {"version":3,"file":"goals.js","sourceRoot":"","sources":["../../src/tools/goals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"goals.js","sourceRoot":"","sources":["../../src/tools/goals.ts"],"names":[],"mappings":"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"}
@@ -138,6 +138,15 @@ describe("goals tool state guards", () => {
138
138
  description: "Run Playwright locally and capture screenshot/log evidence.",
139
139
  status: "planned",
140
140
  },
141
+ {
142
+ id: "file-proof",
143
+ label: "File artifact proof",
144
+ mechanism: "file",
145
+ description: "Inspect a durable generated artifact file.",
146
+ status: "ready",
147
+ path: "artifacts/proof.json",
148
+ evidence: "artifact schema captured",
149
+ },
141
150
  ],
142
151
  });
143
152
  await executeGoals({
@@ -156,6 +165,12 @@ describe("goals tool state guards", () => {
156
165
  mechanism: "browser",
157
166
  status: "planned",
158
167
  }),
168
+ expect.objectContaining({
169
+ id: "file-proof",
170
+ mechanism: "file",
171
+ status: "ready",
172
+ path: "artifacts/proof.json",
173
+ }),
159
174
  ]));
160
175
  expect(run?.verifier?.command).toBe("pnpm test:e2e");
161
176
  });
@@ -202,6 +217,76 @@ describe("goals tool state guards", () => {
202
217
  expect(run?.status).toBe("ready");
203
218
  expect(run?.verifier?.lastResult?.status).toBe("pass");
204
219
  });
220
+ it("clears stale transient blockers and marks passed when verifier pass satisfies planned evidence", async () => {
221
+ await executeGoals({
222
+ action: "create",
223
+ run_id: "goal-blocked-after-pass",
224
+ title: "Blocked after pass",
225
+ goal: "Recover from stale verifier interruption",
226
+ success_criteria: ["Verifier pass with durable evidence completes"],
227
+ prerequisites: [],
228
+ evidence_plan: [
229
+ {
230
+ id: "planned-command-proof",
231
+ label: "Targeted regression tests",
232
+ mechanism: "test",
233
+ description: "Run the focused local regression command.",
234
+ status: "planned",
235
+ command: "pnpm vitest run src/core/goal-controller.test.ts",
236
+ },
237
+ {
238
+ id: "planned-log-proof",
239
+ label: "Verifier log artifact",
240
+ mechanism: "log",
241
+ description: "Persist the verifier output log.",
242
+ status: "planned",
243
+ path: ".goal-evidence/blocked-after-pass.log",
244
+ },
245
+ ],
246
+ verifier_command: "pnpm vitest run src/core/goal-controller.test.ts",
247
+ });
248
+ await executeGoals({
249
+ action: "task",
250
+ run_id: "goal-blocked-after-pass",
251
+ task_id: "task-a",
252
+ task_title: "Done work",
253
+ task_prompt: "Do the work",
254
+ task_status: "done",
255
+ });
256
+ await upsertGoalRun(tmpProject, {
257
+ id: "goal-blocked-after-pass",
258
+ title: "Blocked after pass",
259
+ goal: "Recover from stale verifier interruption",
260
+ status: "blocked",
261
+ blockers: ["Verifier was interrupted; rerun or continue the Goal to verify again."],
262
+ });
263
+ await executeGoals({
264
+ action: "evidence",
265
+ run_id: "goal-blocked-after-pass",
266
+ evidence_kind: "log",
267
+ evidence_label: "Verifier log artifact",
268
+ evidence_path: ".goal-evidence/blocked-after-pass.log",
269
+ evidence_content: "Verifier passed after interruption.",
270
+ });
271
+ const result = await executeGoals({
272
+ action: "verify",
273
+ run_id: "goal-blocked-after-pass",
274
+ verification_status: "pass",
275
+ summary: "Targeted regression tests passed and wrote Verifier log artifact.",
276
+ verifier_command: "pnpm vitest run src/core/goal-controller.test.ts",
277
+ exit_code: 0,
278
+ output_path: ".goal-evidence/blocked-after-pass.log",
279
+ });
280
+ const run = await getGoalRun(tmpProject, "goal-blocked-after-pass");
281
+ expect(result).toBe('Verifier recorded for "Blocked after pass": pass.');
282
+ expect(run?.status).toBe("passed");
283
+ expect(run?.blockers).toEqual([]);
284
+ expect(run?.evidencePlan.map((item) => item.status)).toEqual(["planned", "planned"]);
285
+ expect(run ? decideGoalNextAction(run) : null).toEqual({
286
+ kind: "complete",
287
+ reason: "All tasks are done and verifier evidence passed.",
288
+ });
289
+ });
205
290
  it("records verifier failure as persisted command evidence and keeps the run recoverable", async () => {
206
291
  await executeGoals({
207
292
  action: "create",
@@ -1 +1 @@
1
- {"version":3,"file":"goals.test.js","sourceRoot":"","sources":["../../src/tools/goals.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"goals.test.js","sourceRoot":"","sources":["../../src/tools/goals.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEvE,QAAA,MAAM,UAAU;;;;;;iBAWd,CAAC;AAOH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,EACX,GAAG,GAAE,cAAgC,GACpC,SAAS,CAAC,OAAO,UAAU,CAAC,CA2D9B"}
1
+ {"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGrD,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEvE,QAAA,MAAM,UAAU;;;;;;iBAWd,CAAC;AAQH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,EACX,GAAG,GAAE,cAAgC,GACpC,SAAS,CAAC,OAAO,UAAU,CAAC,CAqE9B"}
@@ -20,6 +20,7 @@ const DEFAULT_MAX_RESULTS = 50;
20
20
  const MAX_LINE_LENGTH = 500;
21
21
  /** Skip files larger than 10 MB — single-line files (minified JS, data blobs) can OOM readline */
22
22
  const MAX_FILE_SIZE = 10 * 1024 * 1024;
23
+ const MAX_CANDIDATE_FILES = 10_000;
23
24
  export function createGrepTool(cwd, ops = localOperations) {
24
25
  return {
25
26
  name: "grep",
@@ -53,11 +54,21 @@ export function createGrepTool(cwd, ops = localOperations) {
53
54
  ignore: ["**/node_modules/**", "**/.git/**"],
54
55
  suppressErrors: true,
55
56
  followSymbolicLinks: false,
57
+ objectMode: true,
58
+ stats: false,
56
59
  });
57
60
  const results = [];
58
- for (const entry of entries) {
61
+ let scannedCandidates = 0;
62
+ let candidateLimitHit = false;
63
+ for (const item of entries) {
59
64
  if (results.length >= maxResults)
60
65
  break;
66
+ if (scannedCandidates >= MAX_CANDIDATE_FILES) {
67
+ candidateLimitHit = true;
68
+ break;
69
+ }
70
+ scannedCandidates += 1;
71
+ const entry = typeof item === "string" ? item : item.path;
61
72
  const ext = path.extname(entry).toLowerCase();
62
73
  if (BINARY_EXTENSIONS.has(ext))
63
74
  continue;
@@ -65,7 +76,7 @@ export function createGrepTool(cwd, ops = localOperations) {
65
76
  const fileResults = await searchFile(filePath, regex, cwd, maxResults - results.length, ops);
66
77
  results.push(...fileResults);
67
78
  }
68
- return formatResults(results, maxResults);
79
+ return formatResults(results, maxResults, candidateLimitHit);
69
80
  },
70
81
  };
71
82
  }
@@ -120,9 +131,12 @@ async function searchFile(filePath, regex, cwd, maxResults, ops) {
120
131
  }
121
132
  return results;
122
133
  }
123
- function formatResults(results, maxResults) {
124
- if (results.length === 0)
125
- return "No matches found.";
134
+ function formatResults(results, maxResults, candidateLimitHit = false) {
135
+ if (results.length === 0) {
136
+ return candidateLimitHit
137
+ ? `No matches found. [Stopped after scanning ${MAX_CANDIDATE_FILES} candidate files]`
138
+ : "No matches found.";
139
+ }
126
140
  let output = results.join("\n");
127
141
  if (results.length >= maxResults) {
128
142
  output += `\n\n[Truncated at ${maxResults} matches]`;
@@ -130,6 +144,9 @@ function formatResults(results, maxResults) {
130
144
  else {
131
145
  output += `\n\n${results.length} match(es) found`;
132
146
  }
147
+ if (candidateLimitHit) {
148
+ output += `\n[Stopped after scanning ${MAX_CANDIDATE_FILES} candidate files]`;
149
+ }
133
150
  return output;
134
151
  }
135
152
  //# sourceMappingURL=grep.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"grep.js","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grep.js","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=grep.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grep.test.d.ts","sourceRoot":"","sources":["../../src/tools/grep.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import fs from "node:fs/promises";
3
+ import os from "node:os";
4
+ import path from "node:path";
5
+ import { createGrepTool } from "./grep.js";
6
+ function context() {
7
+ return { signal: new AbortController().signal, toolCallId: "test" };
8
+ }
9
+ describe("createGrepTool", () => {
10
+ it("stops after max_results before scanning later files", async () => {
11
+ const tmpDir = await fs.mkdtemp(path.join(os.tmpdir(), "gg-grep-limit-"));
12
+ await fs.writeFile(path.join(tmpDir, "a.txt"), "needle\n");
13
+ await fs.writeFile(path.join(tmpDir, "z.txt"), "needle\n");
14
+ const result = await createGrepTool(tmpDir).execute({ pattern: "needle", include: "*.txt", max_results: 1 }, context());
15
+ expect(result).toContain("a.txt:1:needle");
16
+ expect(result).not.toContain("z.txt:1:needle");
17
+ expect(result).toContain("[Truncated at 1 matches]");
18
+ });
19
+ });
20
+ //# sourceMappingURL=grep.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grep.test.js","sourceRoot":"","sources":["../../src/tools/grep.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,SAAS,OAAO;IACd,OAAO,EAAE,MAAM,EAAE,IAAI,eAAe,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACtE,CAAC;AAED,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAC1E,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC;QAC3D,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC;QAE3D,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC,OAAO,CACjD,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,EAAE,EACvD,OAAO,EAAE,CACV,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC3C,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function getSafeToolEnv(sourceEnv?: NodeJS.ProcessEnv): Record<string, string>;
2
+ //# sourceMappingURL=safe-env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safe-env.d.ts","sourceRoot":"","sources":["../../src/tools/safe-env.ts"],"names":[],"mappings":"AA2CA,wBAAgB,cAAc,CAAC,SAAS,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOjG"}
@@ -0,0 +1,52 @@
1
+ /** Environment variables safe to inherit. Everything else is stripped to prevent leaking secrets to LLM/tool output. */
2
+ const ENV_ALLOWLIST = new Set([
3
+ "PATH",
4
+ "HOME",
5
+ "USER",
6
+ "LOGNAME",
7
+ "SHELL",
8
+ "LANG",
9
+ "LC_ALL",
10
+ "LC_CTYPE",
11
+ "TMPDIR",
12
+ "XDG_CONFIG_HOME",
13
+ "XDG_DATA_HOME",
14
+ "XDG_CACHE_HOME",
15
+ "XDG_RUNTIME_DIR",
16
+ "EDITOR",
17
+ "VISUAL",
18
+ "PAGER",
19
+ "CLICOLOR",
20
+ "CLICOLOR_FORCE",
21
+ "NO_COLOR",
22
+ "FORCE_COLOR",
23
+ // Development toolchains
24
+ "NODE_PATH",
25
+ "NVM_DIR",
26
+ "NPM_CONFIG_PREFIX",
27
+ "PNPM_HOME",
28
+ "GOPATH",
29
+ "GOROOT",
30
+ "CARGO_HOME",
31
+ "RUSTUP_HOME",
32
+ "PYENV_ROOT",
33
+ "VIRTUAL_ENV",
34
+ "CONDA_DEFAULT_ENV",
35
+ "CONDA_PREFIX",
36
+ "JAVA_HOME",
37
+ "ANDROID_HOME",
38
+ "ANDROID_SDK_ROOT",
39
+ "RUBY_VERSION",
40
+ "GEM_HOME",
41
+ "RBENV_ROOT",
42
+ ]);
43
+ export function getSafeToolEnv(sourceEnv = process.env) {
44
+ const env = { TERM: "dumb", GG_CODER: "true" };
45
+ for (const key of ENV_ALLOWLIST) {
46
+ const value = sourceEnv[key];
47
+ if (value)
48
+ env[key] = value;
49
+ }
50
+ return env;
51
+ }
52
+ //# sourceMappingURL=safe-env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safe-env.js","sourceRoot":"","sources":["../../src/tools/safe-env.ts"],"names":[],"mappings":"AAAA,wHAAwH;AACxH,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC5B,MAAM;IACN,MAAM;IACN,MAAM;IACN,SAAS;IACT,OAAO;IACP,MAAM;IACN,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,iBAAiB;IACjB,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,UAAU;IACV,gBAAgB;IAChB,UAAU;IACV,aAAa;IACb,yBAAyB;IACzB,WAAW;IACX,SAAS;IACT,mBAAmB;IACnB,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,aAAa;IACb,mBAAmB;IACnB,cAAc;IACd,WAAW;IACX,cAAc;IACd,kBAAkB;IAClB,cAAc;IACd,UAAU;IACV,YAAY;CACb,CAAC,CAAC;AAEH,MAAM,UAAU,cAAc,CAAC,YAA+B,OAAO,CAAC,GAAG;IACvE,MAAM,GAAG,GAA2B,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACvE,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,KAAK;YAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC9B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}