@llm4ts/runner 2.35.2 → 2.35.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"NodeGeminiCliExecutor.d.ts","sourceRoot":"","sources":["../src/NodeGeminiCliExecutor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACtE,OAAO,EACL,iBAAiB,EAQjB,KAAK,sBAAsB,EAC5B,MAAM,0CAA0C,CAAA;AAMjD,eAAO,MAAM,yBAAyB,GACpC,UAAU,oBAAoB,EAC9B,gBAAgB,mBAAmB,KAClC,sBA2DF,CAAA;AAED,eAAO,MAAM,qBAAqB,wBAGjC,CAAA;AAED,eAAO,MAAM,yBAAyB,8CAA0D,CAAA"}
1
+ {"version":3,"file":"NodeGeminiCliExecutor.d.ts","sourceRoot":"","sources":["../src/NodeGeminiCliExecutor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACtE,OAAO,EACL,iBAAiB,EAUjB,KAAK,sBAAsB,EAC5B,MAAM,0CAA0C,CAAA;AAMjD,eAAO,MAAM,yBAAyB,GACpC,UAAU,oBAAoB,EAC9B,gBAAgB,mBAAmB,KAClC,sBAgGF,CAAA;AAED,eAAO,MAAM,qBAAqB,wBAGjC,CAAA;AAED,eAAO,MAAM,yBAAyB,8CAA0D,CAAA"}
@@ -2,7 +2,7 @@ import * as Effect from "effect/Effect";
2
2
  import * as Layer from "effect/Layer";
3
3
  import * as Stream from "effect/Stream";
4
4
  import { ProviderError } from "@llm4ts/core/Errors";
5
- import { GeminiCliExecutor, buildGeminiArgs, extractGeminiCliResponse, geminiProcessEnv, geminiTurnLimitSettingsJson, parseGeminiCliStreamEvent, validateGeminiExitCode } from "@llm4ts/core/providers/GeminiCliProvider";
5
+ import { GeminiCliExecutor, buildGeminiArgs, extractGeminiCliResponse, geminiHarnessPolicyToml, geminiProcessEnv, geminiSupportsAdminPolicy, geminiTurnLimitSettingsJson, parseGeminiCliStreamEvent, validateGeminiExitCode } from "@llm4ts/core/providers/GeminiCliProvider";
6
6
  import { nodeProcessExecutor } from "./NodeProcessExecutor.js";
7
7
  import { nodeTemporaryFiles } from "./NodeTemporaryFiles.js";
8
8
  const failure = (message) => ProviderError.make({ message });
@@ -12,6 +12,20 @@ export const makeNodeGeminiCliExecutor = (executor, temporaryFiles) => {
12
12
  const environmentFor = (context) => context.turnLimit === undefined
13
13
  ? Effect.succeed(geminiProcessEnv(context))
14
14
  : Effect.map(temporaryFiles.write("gemini-settings-", ".json", geminiTurnLimitSettingsJson(context.turnLimit)), (path) => geminiProcessEnv(context, path));
15
+ // The harness policy (`geminiHarnessPolicyToml`) goes in with
16
+ // `--admin-policy` on a CLI that lists the flag: `gemini --help` is asked
17
+ // once, and an older CLI simply runs without it — an unknown flag would
18
+ // fail every turn.
19
+ let adminPolicy;
20
+ const supportsAdminPolicy = Effect.suspend(() => adminPolicy !== undefined
21
+ ? Effect.succeed(adminPolicy)
22
+ : executor.run(["gemini", "--help"], process.cwd(), {}).pipe(Effect.map((result) => geminiSupportsAdminPolicy([...result.stdout, ...result.stderr].join("\n"))), Effect.catch(() => Effect.succeed(false)), Effect.tap((supported) => Effect.sync(() => {
23
+ adminPolicy = supported;
24
+ }))));
25
+ /** The turn's arguments: the policy file, written for the turn, when the CLI takes it. */
26
+ const argsFor = (config, context, outputFormat) => Effect.flatMap(supportsAdminPolicy, (supported) => supported
27
+ ? Effect.map(temporaryFiles.write("gemini-policy-", ".toml", geminiHarnessPolicyToml), (path) => buildGeminiArgs(config, context, outputFormat, path))
28
+ : Effect.succeed(buildGeminiArgs(config, context, outputFormat)));
15
29
  return {
16
30
  checkGeminiInstalled: executor
17
31
  .run(["gemini", "--version"], process.cwd(), {})
@@ -20,13 +34,14 @@ export const makeNodeGeminiCliExecutor = (executor, temporaryFiles) => {
20
34
  : Effect.fail(failure(`Gemini CLI is unavailable: ${result.stderr.join("\n")}`)))),
21
35
  runGeminiProcess: (prompt, config, context) => Effect.scoped(Effect.gen(function* () {
22
36
  const environment = yield* environmentFor(context);
23
- const result = yield* executor.runWithStdin(["gemini", ...buildGeminiArgs(config, context, "json")], context.cwd ?? process.cwd(), environment, prompt);
37
+ const args = yield* argsFor(config, context, "json");
38
+ const result = yield* executor.runWithStdin(["gemini", ...args], context.cwd ?? process.cwd(), environment, prompt);
24
39
  yield* validateGeminiExitCode(result.exitCode, result.stderr.join("\n"), context.turnLimit);
25
40
  const extracted = extractGeminiCliResponse(result.stdout.join("\n"));
26
41
  return extracted.ok ? extracted.value : yield* failure(extracted.error);
27
42
  })),
28
- runGeminiProcessStream: (prompt, config, context) => Stream.scoped(Stream.unwrap(Effect.map(environmentFor(context), (environment) => executor
29
- .runStreamingWithStdin(["gemini", ...buildGeminiArgs(config, context, "stream-json")], context.cwd ?? process.cwd(), environment, prompt)
43
+ runGeminiProcessStream: (prompt, config, context) => Stream.scoped(Stream.unwrap(Effect.map(Effect.all([environmentFor(context), argsFor(config, context, "stream-json")]), ([environment, args]) => executor
44
+ .runStreamingWithStdin(["gemini", ...args], context.cwd ?? process.cwd(), environment, prompt)
30
45
  .pipe(Stream.map(parseGeminiCliStreamEvent)))))
31
46
  };
32
47
  };
@@ -1 +1 @@
1
- {"version":3,"file":"NodeGeminiCliExecutor.js","sourceRoot":"","sources":["../src/NodeGeminiCliExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NodeGeminiCliExecutor.js","sourceRoot":"","sources":["../src/NodeGeminiCliExecutor.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,12 @@
1
1
  import * as Layer from "effect/Layer";
2
2
  import { ProcessExecutor, type ProcessExecutorShape } from "@llm4ts/core/ProcessExecutor";
3
+ /**
4
+ * What a child process inherits: this process's environment without the
5
+ * orchestrator's own variables, then `envVars`. A coding agent, a gate or a
6
+ * setup command has no use for llm4ts's knobs, and an agent that lists its
7
+ * environment should not be pointed at the tool running it.
8
+ */
9
+ export declare const childEnvironment: (parent: Readonly<Record<string, string | undefined>>, envVars: Readonly<Record<string, string>>) => Record<string, string>;
3
10
  export declare const nodeProcessExecutor: ProcessExecutorShape;
4
11
  export declare const NodeProcessExecutorLive: Layer.Layer<ProcessExecutor, never, never>;
5
12
  //# sourceMappingURL=NodeProcessExecutor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NodeProcessExecutor.d.ts","sourceRoot":"","sources":["../src/NodeProcessExecutor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,EACL,eAAe,EAIf,KAAK,oBAAoB,EAC1B,MAAM,8BAA8B,CAAA;AA+TrC,eAAO,MAAM,mBAAmB,EAAE,oBAMhC,CAAA;AAEF,eAAO,MAAM,uBAAuB,4CAAsD,CAAA"}
1
+ {"version":3,"file":"NodeProcessExecutor.d.ts","sourceRoot":"","sources":["../src/NodeProcessExecutor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,EACL,eAAe,EAIf,KAAK,oBAAoB,EAC1B,MAAM,8BAA8B,CAAA;AA4BrC;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC3B,QAAQ,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,EACpD,SAAS,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,KACxC,MAAM,CAAC,MAAM,EAAE,MAAM,CAQvB,CAAA;AAySD,eAAO,MAAM,mBAAmB,EAAE,oBAMhC,CAAA;AAEF,eAAO,MAAM,uBAAuB,4CAAsD,CAAA"}
@@ -18,6 +18,27 @@ const processFailure = (argv, detail) => ProviderError.make({
18
18
  ` (coding-agent CLIs can be switched with LLM4TS_CODER)`
19
19
  : `${commandName(argv)} failed: ${detail}`
20
20
  });
21
+ /**
22
+ * The orchestrator's own variables: its `LLM4TS_*` knobs and `_`, the path
23
+ * of the binary the shell started. The standard `OTEL_*` variables stay:
24
+ * other OpenTelemetry-aware tools (a CLI's own telemetry) read them too.
25
+ */
26
+ const orchestratorOwn = (name) => name === "_" || name.startsWith("LLM4TS_");
27
+ /**
28
+ * What a child process inherits: this process's environment without the
29
+ * orchestrator's own variables, then `envVars`. A coding agent, a gate or a
30
+ * setup command has no use for llm4ts's knobs, and an agent that lists its
31
+ * environment should not be pointed at the tool running it.
32
+ */
33
+ export const childEnvironment = (parent, envVars) => {
34
+ const inherited = {};
35
+ for (const [name, value] of Object.entries(parent)) {
36
+ if (value !== undefined && !orchestratorOwn(name)) {
37
+ inherited[name] = value;
38
+ }
39
+ }
40
+ return { ...inherited, ...envVars };
41
+ };
21
42
  const spawnChild = (argv, cwd, envVars) => {
22
43
  const [command, ...args] = argv;
23
44
  if (command === undefined) {
@@ -35,10 +56,7 @@ const spawnChild = (argv, cwd, envVars) => {
35
56
  return Effect.try({
36
57
  try: () => spawn(file, spawnArgs, {
37
58
  cwd,
38
- env: {
39
- ...process.env,
40
- ...envVars
41
- },
59
+ env: childEnvironment(process.env, envVars),
42
60
  stdio: "pipe",
43
61
  ...(windows === undefined ? {} : { windowsVerbatimArguments: windows.verbatim })
44
62
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"NodeProcessExecutor.js","sourceRoot":"","sources":["../src/NodeProcessExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NodeProcessExecutor.js","sourceRoot":"","sources":["../src/NodeProcessExecutor.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@llm4ts/runner",
3
- "version": "2.35.2",
3
+ "version": "2.35.4",
4
4
  "description": "Node runner, CLI, terminal, and MCP composition for llm4ts",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -69,8 +69,8 @@
69
69
  "typescript"
70
70
  ],
71
71
  "dependencies": {
72
- "@llm4ts/flow": "2.35.2",
73
- "@llm4ts/core": "2.35.2"
72
+ "@llm4ts/core": "2.35.4",
73
+ "@llm4ts/flow": "2.35.4"
74
74
  },
75
75
  "peerDependencies": {
76
76
  "effect": "4.0.0"
@@ -8,7 +8,9 @@ import {
8
8
  GeminiCliExecutor,
9
9
  buildGeminiArgs,
10
10
  extractGeminiCliResponse,
11
+ geminiHarnessPolicyToml,
11
12
  geminiProcessEnv,
13
+ geminiSupportsAdminPolicy,
12
14
  geminiTurnLimitSettingsJson,
13
15
  parseGeminiCliStreamEvent,
14
16
  validateGeminiExitCode,
@@ -37,6 +39,40 @@ export const makeNodeGeminiCliExecutor = (
37
39
  ),
38
40
  (path) => geminiProcessEnv(context, path)
39
41
  )
42
+ // The harness policy (`geminiHarnessPolicyToml`) goes in with
43
+ // `--admin-policy` on a CLI that lists the flag: `gemini --help` is asked
44
+ // once, and an older CLI simply runs without it — an unknown flag would
45
+ // fail every turn.
46
+ let adminPolicy: boolean | undefined
47
+ const supportsAdminPolicy: Effect.Effect<boolean> = Effect.suspend(() =>
48
+ adminPolicy !== undefined
49
+ ? Effect.succeed(adminPolicy)
50
+ : executor.run(["gemini", "--help"], process.cwd(), {}).pipe(
51
+ Effect.map((result) =>
52
+ geminiSupportsAdminPolicy([...result.stdout, ...result.stderr].join("\n"))
53
+ ),
54
+ Effect.catch(() => Effect.succeed(false)),
55
+ Effect.tap((supported) =>
56
+ Effect.sync(() => {
57
+ adminPolicy = supported
58
+ })
59
+ )
60
+ )
61
+ )
62
+ /** The turn's arguments: the policy file, written for the turn, when the CLI takes it. */
63
+ const argsFor = (
64
+ config: Parameters<typeof buildGeminiArgs>[0],
65
+ context: GeminiCliExecutionContext,
66
+ outputFormat: string
67
+ ) =>
68
+ Effect.flatMap(supportsAdminPolicy, (supported) =>
69
+ supported
70
+ ? Effect.map(
71
+ temporaryFiles.write("gemini-policy-", ".toml", geminiHarnessPolicyToml),
72
+ (path) => buildGeminiArgs(config, context, outputFormat, path)
73
+ )
74
+ : Effect.succeed(buildGeminiArgs(config, context, outputFormat))
75
+ )
40
76
  return {
41
77
  checkGeminiInstalled: executor
42
78
  .run(["gemini", "--version"], process.cwd(), {})
@@ -51,8 +87,9 @@ export const makeNodeGeminiCliExecutor = (
51
87
  Effect.scoped(
52
88
  Effect.gen(function* () {
53
89
  const environment = yield* environmentFor(context)
90
+ const args = yield* argsFor(config, context, "json")
54
91
  const result = yield* executor.runWithStdin(
55
- ["gemini", ...buildGeminiArgs(config, context, "json")],
92
+ ["gemini", ...args],
56
93
  context.cwd ?? process.cwd(),
57
94
  environment,
58
95
  prompt
@@ -69,15 +106,17 @@ export const makeNodeGeminiCliExecutor = (
69
106
  runGeminiProcessStream: (prompt, config, context) =>
70
107
  Stream.scoped(
71
108
  Stream.unwrap(
72
- Effect.map(environmentFor(context), (environment) =>
73
- executor
74
- .runStreamingWithStdin(
75
- ["gemini", ...buildGeminiArgs(config, context, "stream-json")],
76
- context.cwd ?? process.cwd(),
77
- environment,
78
- prompt
79
- )
80
- .pipe(Stream.map(parseGeminiCliStreamEvent))
109
+ Effect.map(
110
+ Effect.all([environmentFor(context), argsFor(config, context, "stream-json")]),
111
+ ([environment, args]) =>
112
+ executor
113
+ .runStreamingWithStdin(
114
+ ["gemini", ...args],
115
+ context.cwd ?? process.cwd(),
116
+ environment,
117
+ prompt
118
+ )
119
+ .pipe(Stream.map(parseGeminiCliStreamEvent))
81
120
  )
82
121
  )
83
122
  )
@@ -32,6 +32,32 @@ const processFailure = (argv: ReadonlyArray<string>, detail: string): ProviderEr
32
32
  : `${commandName(argv)} failed: ${detail}`
33
33
  })
34
34
 
35
+ /**
36
+ * The orchestrator's own variables: its `LLM4TS_*` knobs and `_`, the path
37
+ * of the binary the shell started. The standard `OTEL_*` variables stay:
38
+ * other OpenTelemetry-aware tools (a CLI's own telemetry) read them too.
39
+ */
40
+ const orchestratorOwn = (name: string): boolean => name === "_" || name.startsWith("LLM4TS_")
41
+
42
+ /**
43
+ * What a child process inherits: this process's environment without the
44
+ * orchestrator's own variables, then `envVars`. A coding agent, a gate or a
45
+ * setup command has no use for llm4ts's knobs, and an agent that lists its
46
+ * environment should not be pointed at the tool running it.
47
+ */
48
+ export const childEnvironment = (
49
+ parent: Readonly<Record<string, string | undefined>>,
50
+ envVars: Readonly<Record<string, string>>
51
+ ): Record<string, string> => {
52
+ const inherited: Record<string, string> = {}
53
+ for (const [name, value] of Object.entries(parent)) {
54
+ if (value !== undefined && !orchestratorOwn(name)) {
55
+ inherited[name] = value
56
+ }
57
+ }
58
+ return { ...inherited, ...envVars }
59
+ }
60
+
35
61
  const spawnChild = (
36
62
  argv: ReadonlyArray<string>,
37
63
  cwd: string,
@@ -58,10 +84,7 @@ const spawnChild = (
58
84
  try: () =>
59
85
  spawn(file, spawnArgs, {
60
86
  cwd,
61
- env: {
62
- ...process.env,
63
- ...envVars
64
- },
87
+ env: childEnvironment(process.env, envVars),
65
88
  stdio: "pipe",
66
89
  ...(windows === undefined ? {} : { windowsVerbatimArguments: windows.verbatim })
67
90
  }),