@llm4ts/runner 2.3.0 → 2.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.
- package/dist/Doctor.d.ts +3 -7
- package/dist/Doctor.d.ts.map +1 -1
- package/dist/Doctor.js +74 -37
- package/dist/Doctor.js.map +1 -1
- package/dist/FlowRunner.d.ts +2 -0
- package/dist/FlowRunner.d.ts.map +1 -1
- package/dist/FlowRunner.js +53 -3
- package/dist/FlowRunner.js.map +1 -1
- package/dist/NodeGeminiAcpBridge.d.ts +41 -2
- package/dist/NodeGeminiAcpBridge.d.ts.map +1 -1
- package/dist/NodeGeminiAcpBridge.js +155 -9
- package/dist/NodeGeminiAcpBridge.js.map +1 -1
- package/dist/PiModels.d.ts +65 -0
- package/dist/PiModels.d.ts.map +1 -0
- package/dist/PiModels.js +148 -0
- package/dist/PiModels.js.map +1 -0
- package/package.json +4 -3
- package/src/Doctor.ts +97 -40
- package/src/FlowRunner.ts +85 -3
- package/src/NodeGeminiAcpBridge.ts +195 -14
- package/src/PiModels.ts +222 -0
package/dist/Doctor.d.ts
CHANGED
|
@@ -4,6 +4,8 @@ export interface PrerequisiteReport {
|
|
|
4
4
|
readonly satisfied: boolean;
|
|
5
5
|
readonly summary: string;
|
|
6
6
|
readonly hint?: string;
|
|
7
|
+
/** Extra lines rendered under the summary, already indented relative to it. */
|
|
8
|
+
readonly detail?: ReadonlyArray<string>;
|
|
7
9
|
}
|
|
8
10
|
/**
|
|
9
11
|
* The Gemini CLI resolves credentials from the environment before it ever
|
|
@@ -22,13 +24,7 @@ export interface PrerequisiteReport {
|
|
|
22
24
|
* environment is reported as a caveat rather than a failure.
|
|
23
25
|
*/
|
|
24
26
|
export declare const geminiPrerequisites: (environment: Readonly<Record<string, string | undefined>>) => PrerequisiteReport;
|
|
25
|
-
export
|
|
26
|
-
/**
|
|
27
|
-
* `~/.pi/agent/models.json` (ADR 0016). Read for reporting only — this file
|
|
28
|
-
* belongs to `pi`, outside llm4ts's package graph, and llm4ts never writes
|
|
29
|
-
* it. Missing is not an error here: the file simply doesn't exist yet.
|
|
30
|
-
*/
|
|
31
|
-
export declare const defaultReadPiModelsJson: () => string | undefined;
|
|
27
|
+
export { bridgeModelProblem, bridgeModelRefs, defaultGeminiBridgePort, defaultReadPiModelsJson, geminiBridgePort, piModelRefs, piModelsConfig, resolveBridgeModel, type BridgeModelResolution, type PiModelRef, type PiModelsConfig } from "./PiModels.ts";
|
|
32
28
|
/**
|
|
33
29
|
* Whether pi's custom-provider config points at this machine's Gemini ACP
|
|
34
30
|
* bridge — detect-and-report only, never auto-fixed (ADR 0016). `undefined`
|
package/dist/Doctor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Doctor.d.ts","sourceRoot":"","sources":["../src/Doctor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Doctor.d.ts","sourceRoot":"","sources":["../src/Doctor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AA4B5E,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,+EAA+E;IAC/E,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;CACxC;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,mBAAmB,GAC9B,aAAa,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,KACxD,kBA0BF,CAAA;AA2BD,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACvB,uBAAuB,EACvB,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,cAAc,EACpB,MAAM,eAAe,CAAA;AAEtB;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,GACpC,aAAa,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,EACzD,YAAY,MAAM,GAAG,SAAS,KAC7B,kBAAkB,GAAG,SA0EvB,CAAA;AAED,eAAO,MAAM,iBAAiB,GAC5B,WAAU,sBAA8D,EACxE,cAAa,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAe,EACvE,mBAAkB,MAAM,MAAM,GAAG,SAAwB,KACxD,MAAM,CAAC,MAAM,CAAC,MAAM,CAmDnB,CAAA"}
|
package/dist/Doctor.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { readFileSync } from "node:fs";
|
|
2
|
-
import { homedir } from "node:os";
|
|
3
|
-
import { join } from "node:path";
|
|
4
1
|
import * as Effect from "effect/Effect";
|
|
5
2
|
import { ConnectorIds } from "@llm4ts/core/Models";
|
|
6
3
|
import { nodeFlowRunnerDependencies } from "./FlowRunner.js";
|
|
4
|
+
import { defaultReadPiModelsJson as readPiModels, geminiBridgePort as bridgePort, piModelsConfig as parsePiModels } from "./PiModels.js";
|
|
7
5
|
const credentialKeys = [
|
|
8
6
|
"OPENAI_API_KEY",
|
|
9
7
|
"ANTHROPIC_API_KEY",
|
|
@@ -79,20 +77,10 @@ const wrap = (text, width, indent) => {
|
|
|
79
77
|
return out;
|
|
80
78
|
};
|
|
81
79
|
const selectedCoder = (environment) => environment.LLM4TS_CODER ?? "claude (default)";
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
* it. Missing is not an error here: the file simply doesn't exist yet.
|
|
87
|
-
*/
|
|
88
|
-
export const defaultReadPiModelsJson = () => {
|
|
89
|
-
try {
|
|
90
|
-
return readFileSync(join(homedir(), ".pi", "agent", "models.json"), "utf8");
|
|
91
|
-
}
|
|
92
|
-
catch {
|
|
93
|
-
return undefined;
|
|
94
|
-
}
|
|
95
|
-
};
|
|
80
|
+
// Re-exported so `@llm4ts/runner/Doctor` stays the one place callers look
|
|
81
|
+
// for pi-config questions, while the parsing itself has no dependency on
|
|
82
|
+
// this module (the flow runner needs it, and Doctor imports the runner).
|
|
83
|
+
export { bridgeModelProblem, bridgeModelRefs, defaultGeminiBridgePort, defaultReadPiModelsJson, geminiBridgePort, piModelRefs, piModelsConfig, resolveBridgeModel } from "./PiModels.js";
|
|
96
84
|
/**
|
|
97
85
|
* Whether pi's custom-provider config points at this machine's Gemini ACP
|
|
98
86
|
* bridge — detect-and-report only, never auto-fixed (ADR 0016). `undefined`
|
|
@@ -102,9 +90,7 @@ export const geminiBridgePrerequisites = (environment, modelsJson) => {
|
|
|
102
90
|
if (!truthy(environment.LLM4TS_GEMINI_BRIDGE)) {
|
|
103
91
|
return undefined;
|
|
104
92
|
}
|
|
105
|
-
const port =
|
|
106
|
-
? environment.LLM4TS_GEMINI_BRIDGE_PORT.trim()
|
|
107
|
-
: defaultGeminiBridgePort;
|
|
93
|
+
const port = bridgePort(environment);
|
|
108
94
|
const needle = `127.0.0.1:${port}`;
|
|
109
95
|
const hint = `add a custom provider to ~/.pi/agent/models.json with baseUrl ` +
|
|
110
96
|
`"http://${needle}" so pi draws inference from the gemini-cli bridge instead ` +
|
|
@@ -112,18 +98,67 @@ export const geminiBridgePrerequisites = (environment, modelsJson) => {
|
|
|
112
98
|
if (modelsJson === undefined) {
|
|
113
99
|
return { satisfied: false, summary: "~/.pi/agent/models.json not found", hint };
|
|
114
100
|
}
|
|
115
|
-
|
|
116
|
-
|
|
101
|
+
const { refs, problems } = parsePiModels(modelsJson, port);
|
|
102
|
+
// pi rejects the whole file on any schema error, so a well-formed bridge
|
|
103
|
+
// entry sitting beside a bad one is still not loaded. Report that first:
|
|
104
|
+
// every model below would otherwise look available while pi sees none.
|
|
105
|
+
if (problems.length > 0) {
|
|
106
|
+
return {
|
|
107
|
+
satisfied: false,
|
|
108
|
+
summary: "~/.pi/agent/models.json fails pi's schema, so pi loads none of it",
|
|
109
|
+
hint: `fix the errors below and re-check with \`pi --list-models\`. Each models ` +
|
|
110
|
+
`entry must be an object with a string id ({ "id": "gemini-2.5-pro" }), not ` +
|
|
111
|
+
`a bare string.`,
|
|
112
|
+
detail: problems.map((problem) => ` ${problem}`)
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
const bridged = refs.filter((entry) => entry.bridged);
|
|
116
|
+
const usable = bridged.filter((entry) => entry.authConfigured).map((entry) => entry.ref);
|
|
117
|
+
if (usable.length > 0) {
|
|
118
|
+
return {
|
|
117
119
|
satisfied: true,
|
|
118
|
-
summary: `a provider in ~/.pi/agent/models.json points at ${needle}
|
|
119
|
-
|
|
120
|
-
|
|
120
|
+
summary: `a provider in ~/.pi/agent/models.json points at ${needle}`,
|
|
121
|
+
detail: [
|
|
122
|
+
"bridge models — pass one as LLM4TS_GEMINI_BRIDGE_MODEL (pi's --model):",
|
|
123
|
+
...usable.map((ref) => ` ${ref}`)
|
|
124
|
+
]
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
// Loaded but hidden: pi keeps a keyless provider's models out of `--model`
|
|
128
|
+
// and `--list-models`. The bridge authenticates as gemini, not as pi, so
|
|
129
|
+
// any placeholder satisfies this.
|
|
130
|
+
if (bridged.length > 0) {
|
|
131
|
+
return {
|
|
121
132
|
satisfied: false,
|
|
122
|
-
summary: `
|
|
123
|
-
hint
|
|
133
|
+
summary: `the provider pointing at ${needle} configures no apiKey, so pi hides its models`,
|
|
134
|
+
hint: `give that provider any placeholder apiKey (the bridge never checks it — ` +
|
|
135
|
+
`gemini's own OAuth session supplies the credential), or run \`pi /login\` ` +
|
|
136
|
+
`for it.`,
|
|
137
|
+
detail: bridged.map((entry) => ` ${entry.ref}`)
|
|
124
138
|
};
|
|
139
|
+
}
|
|
140
|
+
// A provider can point at the bridge and still list no models: pi resolves
|
|
141
|
+
// `--model` against that list, so the run fails with "Model not found"
|
|
142
|
+
// while a check that only greps for the port reports success.
|
|
143
|
+
const pointed = modelsJson.includes(needle);
|
|
144
|
+
const others = refs.map((entry) => entry.ref);
|
|
145
|
+
return {
|
|
146
|
+
satisfied: false,
|
|
147
|
+
summary: pointed
|
|
148
|
+
? `a provider in ~/.pi/agent/models.json points at ${needle} but lists no models`
|
|
149
|
+
: `no provider in ~/.pi/agent/models.json points at ${needle}`,
|
|
150
|
+
hint,
|
|
151
|
+
...(others.length === 0
|
|
152
|
+
? {}
|
|
153
|
+
: {
|
|
154
|
+
detail: [
|
|
155
|
+
"models pi can resolve today, none of them bridged:",
|
|
156
|
+
...others.map((ref) => ` ${ref}`)
|
|
157
|
+
]
|
|
158
|
+
})
|
|
159
|
+
};
|
|
125
160
|
};
|
|
126
|
-
export const makeDoctorProgram = (registry = nodeFlowRunnerDependencies().registry, environment = process.env, readPiModelsJson =
|
|
161
|
+
export const makeDoctorProgram = (registry = nodeFlowRunnerDependencies().registry, environment = process.env, readPiModelsJson = readPiModels) => Effect.map(registry.healthCheckAll, (statuses) => {
|
|
127
162
|
const lines = [];
|
|
128
163
|
lines.push("llm4ts doctor");
|
|
129
164
|
lines.push("");
|
|
@@ -148,18 +183,20 @@ export const makeDoctorProgram = (registry = nodeFlowRunnerDependencies().regist
|
|
|
148
183
|
if (geminiRelevant || bridge !== undefined) {
|
|
149
184
|
lines.push("");
|
|
150
185
|
lines.push("prerequisites:");
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
186
|
+
const pushReport = (label, report) => {
|
|
187
|
+
lines.push(` ${report.satisfied ? "✔" : "?"} ${label}: ${report.summary}`);
|
|
188
|
+
if (report.hint !== undefined) {
|
|
189
|
+
lines.push(...wrap(report.hint, 78, " "));
|
|
190
|
+
}
|
|
191
|
+
for (const line of report.detail ?? []) {
|
|
192
|
+
lines.push(` ${line}`);
|
|
156
193
|
}
|
|
194
|
+
};
|
|
195
|
+
if (geminiRelevant) {
|
|
196
|
+
pushReport("gemini", geminiPrerequisites(environment));
|
|
157
197
|
}
|
|
158
198
|
if (bridge !== undefined) {
|
|
159
|
-
|
|
160
|
-
if (bridge.hint !== undefined) {
|
|
161
|
-
lines.push(...wrap(bridge.hint, 78, " "));
|
|
162
|
-
}
|
|
199
|
+
pushReport("pi-gemini-bridge", bridge);
|
|
163
200
|
}
|
|
164
201
|
}
|
|
165
202
|
lines.push("");
|
package/dist/Doctor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Doctor.js","sourceRoot":"","sources":["../src/Doctor.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"Doctor.js","sourceRoot":"","sources":["../src/Doctor.ts"],"names":[],"mappings":"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"}
|
package/dist/FlowRunner.d.ts
CHANGED
|
@@ -17,6 +17,8 @@ export interface FlowRunnerDependencies {
|
|
|
17
17
|
readonly registry: ConnectorRegistryShape;
|
|
18
18
|
readonly process: ProcessExecutorShape;
|
|
19
19
|
readonly files: PlainFileStoreShape;
|
|
20
|
+
/** pi's own model config (ADR 0016), injectable so a test never reads $HOME. */
|
|
21
|
+
readonly readPiModelsJson?: () => string | undefined;
|
|
20
22
|
}
|
|
21
23
|
export interface NodeConnectorDependencies {
|
|
22
24
|
readonly http: HttpClientShape;
|
package/dist/FlowRunner.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowRunner.d.ts","sourceRoot":"","sources":["../src/FlowRunner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAEnE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAG9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACtE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAA;
|
|
1
|
+
{"version":3,"file":"FlowRunner.d.ts","sourceRoot":"","sources":["../src/FlowRunner.ts"],"names":[],"mappings":"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"}
|
package/dist/FlowRunner.js
CHANGED
|
@@ -2,7 +2,11 @@ import * as Clock from "effect/Clock";
|
|
|
2
2
|
import * as Effect from "effect/Effect";
|
|
3
3
|
import { CliConnectorConfig, defaultReasoningConfig } from "@llm4ts/core/ConnectorConfig";
|
|
4
4
|
import { createConnectorRegistry } from "@llm4ts/core/providers/ConnectorFactories";
|
|
5
|
+
import { ConnectorIds } from "@llm4ts/core/Models";
|
|
6
|
+
import { ProviderError } from "@llm4ts/core/Errors";
|
|
5
7
|
import { makeCostTracker } from "@llm4ts/flow/CostTracker";
|
|
8
|
+
import { runGeminiAcpBridge } from "./NodeGeminiAcpBridge.js";
|
|
9
|
+
import { bridgeModelProblem, defaultReadPiModelsJson, geminiBridgePort, resolveBridgeModel } from "./PiModels.js";
|
|
6
10
|
import { checkCostBudget, makeCostRecord } from "@llm4ts/flow/CostLedger";
|
|
7
11
|
import { FlowLlmError, describeFlowError } from "@llm4ts/flow/FlowError";
|
|
8
12
|
import { FlowEvents, FlowEventsValues, makeFlowEventHub } from "@llm4ts/flow/FlowEvents";
|
|
@@ -33,11 +37,57 @@ export const nodeFlowRunnerDependencies = () => ({
|
|
|
33
37
|
geminiCli: nodeGeminiCliExecutor
|
|
34
38
|
})
|
|
35
39
|
});
|
|
40
|
+
const truthy = (value) => value !== undefined && ["1", "true", "yes"].includes(value.trim().toLowerCase());
|
|
41
|
+
const isPiSeat = (config) => config instanceof CliConnectorConfig && config.connectorId.value === ConnectorIds.Pi.value;
|
|
42
|
+
/**
|
|
43
|
+
* Start the ADR 0016 bridge for a `pi`-coder run, scoped to that run, and
|
|
44
|
+
* return the mapping that points pi's seats at it.
|
|
45
|
+
*
|
|
46
|
+
* Opting in with `LLM4TS_GEMINI_BRIDGE` but leaving pi unable to reach the
|
|
47
|
+
* bridge is the failure this whole feature exists to avoid, so an
|
|
48
|
+
* unresolvable model fails the run here rather than surfacing as pi's own
|
|
49
|
+
* "No API key found" several layers down. A seat that already names a model
|
|
50
|
+
* is left alone: an explicit choice outranks the default.
|
|
51
|
+
*/
|
|
52
|
+
const geminiBridgeSeats = Effect.fn("@llm4ts/runner/FlowRunner.geminiBridgeSeats")(function* (options, dependencies, environment) {
|
|
53
|
+
const identity = (config) => config;
|
|
54
|
+
if (!truthy(environment.LLM4TS_GEMINI_BRIDGE)) {
|
|
55
|
+
return identity;
|
|
56
|
+
}
|
|
57
|
+
// The reasoning seat defaults to the coder, so a pi coder makes this a pi
|
|
58
|
+
// run even when nothing else names pi.
|
|
59
|
+
const seats = [options.coder, options.reasoning, ...(options.reviewers ?? [])];
|
|
60
|
+
if (!seats.some(isPiSeat)) {
|
|
61
|
+
return identity;
|
|
62
|
+
}
|
|
63
|
+
const port = geminiBridgePort(environment);
|
|
64
|
+
const readPiModelsJson = dependencies.readPiModelsJson ?? defaultReadPiModelsJson;
|
|
65
|
+
const resolution = resolveBridgeModel(readPiModelsJson(), port, environment.LLM4TS_GEMINI_BRIDGE_MODEL);
|
|
66
|
+
const problem = bridgeModelProblem(resolution, port);
|
|
67
|
+
if (problem !== undefined || resolution._tag !== "Resolved") {
|
|
68
|
+
return yield* FlowLlmError.from(ProviderError.make({ message: problem ?? "no bridge model available" }));
|
|
69
|
+
}
|
|
70
|
+
const model = resolution.model;
|
|
71
|
+
yield* runGeminiAcpBridge({
|
|
72
|
+
port: Number(port),
|
|
73
|
+
cwd: options.workDir,
|
|
74
|
+
executor: dependencies.process,
|
|
75
|
+
...(environment.LLM4TS_GEMINI_MODEL === undefined
|
|
76
|
+
? {}
|
|
77
|
+
: { model: environment.LLM4TS_GEMINI_MODEL })
|
|
78
|
+
}).pipe(Effect.mapError(FlowLlmError.from));
|
|
79
|
+
return (config) => isPiSeat(config) && config.model === undefined
|
|
80
|
+
? CliConnectorConfig.make({ ...config, model })
|
|
81
|
+
: config;
|
|
82
|
+
});
|
|
36
83
|
export const makeFlowRunnerContext = Effect.fn("@llm4ts/runner/FlowRunner.makeContext")(function* (options, dependencies) {
|
|
37
84
|
const events = yield* makeFlowEventHub();
|
|
38
85
|
const tracker = yield* makeCostTracker();
|
|
39
86
|
yield* tracker.consume(events);
|
|
40
87
|
const reasoning = defaultReasoningConfig(options.coder, options.reasoning);
|
|
88
|
+
// Bound to this run's scope: the bridge subprocess and its server go away
|
|
89
|
+
// with the run, matching every other long-lived subprocess here (ADR 0016).
|
|
90
|
+
const bridged = yield* geminiBridgeSeats(options, dependencies, options.environment ?? process.env);
|
|
41
91
|
// Every seat retries transient provider failures and flaky streams (an
|
|
42
92
|
// empty response or malformed tool call), announcing each attempt on the
|
|
43
93
|
// run's events. Without the wrapper one hiccup from a CLI agent failed the
|
|
@@ -59,9 +109,9 @@ export const makeFlowRunnerContext = Effect.fn("@llm4ts/runner/FlowRunner.makeCo
|
|
|
59
109
|
const resolveSeat = (configuration) => dependencies.registry.resolve(configuration).pipe(Effect.mapError(FlowLlmError.from), Effect.flatMap((connector) => announceReadOnlyGrade(configuration, connector).pipe(Effect.andThen(Effect.map(resilient(connector), (retrying) => ({ ...connector, ...retrying }))))));
|
|
60
110
|
const seatsFor = Effect.fn("@llm4ts/runner/FlowRunner.seatsFor")(function* (workDir) {
|
|
61
111
|
const environment = options.environment ?? process.env;
|
|
62
|
-
const coder = yield* resolveSeat(prepareConnector(options.coder, workDir, environment));
|
|
63
|
-
const reasoningService = yield* resolveSeat(prepareConnector(reasoning, workDir, environment));
|
|
64
|
-
const reviewers = yield* Effect.forEach(options.reviewers ?? [], (configuration) => resolveSeat(prepareConnector(configuration, workDir, environment)));
|
|
112
|
+
const coder = yield* resolveSeat(prepareConnector(bridged(options.coder), workDir, environment));
|
|
113
|
+
const reasoningService = yield* resolveSeat(prepareConnector(bridged(reasoning), workDir, environment));
|
|
114
|
+
const reviewers = yield* Effect.forEach(options.reviewers ?? [], (configuration) => resolveSeat(prepareConnector(bridged(configuration), workDir, environment)));
|
|
65
115
|
return { coder, reasoning: reasoningService, reviewers };
|
|
66
116
|
});
|
|
67
117
|
const contextAt = (workDir, seats, rebind) => FlowContext.of({
|
package/dist/FlowRunner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowRunner.js","sourceRoot":"","sources":["../src/FlowRunner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FlowRunner.js","sourceRoot":"","sources":["../src/FlowRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -56,7 +56,46 @@ export interface BridgeState {
|
|
|
56
56
|
}
|
|
57
57
|
export declare const makeBridgeState: (session: GeminiAcpSessionShape, cwd: string, mcpServerUrl: string, forkBackground: <A>(effect: Effect.Effect<A, LlmError>) => Effect.Effect<void>) => Effect.Effect<BridgeState, never, never>;
|
|
58
58
|
export declare const anthropicToolToMcpTool: (state: BridgeState, def: AnthropicToolDef) => McpTool;
|
|
59
|
-
|
|
59
|
+
/**
|
|
60
|
+
* The route to match, without the query string. `request.url` carries it,
|
|
61
|
+
* and pi's bundled Anthropic SDK posts to `/v1/messages?beta=true` for
|
|
62
|
+
* tool-enabled requests — routing on the raw value 404s exactly the request
|
|
63
|
+
* this bridge exists to serve.
|
|
64
|
+
*/
|
|
65
|
+
export declare const requestPath: (url: string | undefined) => string;
|
|
66
|
+
/**
|
|
67
|
+
* Drive one turn to its outcome. Split from the response rendering because a
|
|
68
|
+
* streaming request must write `message_start` before this resolves — pi
|
|
69
|
+
* hardcodes `stream: true`, and gemini can take a while to answer.
|
|
70
|
+
*/
|
|
71
|
+
export declare const resolveTurn: (state: BridgeState, body: import("effect/Schema").Json) => Effect.Effect<TurnOutcome, ProviderError | import("@llm4ts/core/Errors").UsageLimitError | import("@llm4ts/core/Errors").AuthenticationError | InvalidRequestError | import("@llm4ts/core/Errors").ParseError | import("@llm4ts/core/Errors").ToolError | import("@llm4ts/core/Errors").ConfigError | import("@llm4ts/core/Errors").RateLimitError | import("@llm4ts/core/Errors").TimeoutError | import("@llm4ts/core/Errors").TurnLimitError, never>;
|
|
72
|
+
export declare const requestModel: (body: JsonValue) => string;
|
|
73
|
+
/**
|
|
74
|
+
* One Anthropic Messages streaming event. pi's bundled SDK hardcodes
|
|
75
|
+
* `stream: true` on every request and there is no compatibility flag to turn
|
|
76
|
+
* it off, so this transport — not the single-JSON one — is the live path.
|
|
77
|
+
*
|
|
78
|
+
* ACP hands this bridge a finished turn rather than a token stream, so each
|
|
79
|
+
* block is emitted as one delta. That is a well-formed event sequence the
|
|
80
|
+
* client reassembles correctly; it simply arrives in a single chunk instead
|
|
81
|
+
* of token by token.
|
|
82
|
+
*/
|
|
83
|
+
export interface StreamEvent {
|
|
84
|
+
readonly event: string;
|
|
85
|
+
readonly data: JsonRecord;
|
|
86
|
+
}
|
|
87
|
+
/** Sent before the turn resolves, so the client sees a live response. */
|
|
88
|
+
export declare const turnStartEvents: (id: string, model: string) => ReadonlyArray<StreamEvent>;
|
|
89
|
+
/**
|
|
90
|
+
* The blocks and stop events for a resolved turn. A `tool_use` block carries
|
|
91
|
+
* an empty `input` and supplies the real arguments through `input_json_delta`,
|
|
92
|
+
* which is the shape the Anthropic client expects to accumulate.
|
|
93
|
+
*/
|
|
94
|
+
export declare const turnOutcomeEvents: (outcome: TurnOutcome) => ReadonlyArray<StreamEvent>;
|
|
95
|
+
/** A failure after `message_start` can only be reported in-band. */
|
|
96
|
+
export declare const turnErrorEvent: (message: string) => StreamEvent;
|
|
97
|
+
export declare const messageId: () => string;
|
|
98
|
+
export declare const handleMessagesRequest: (state: BridgeState, body: import("effect/Schema").Json) => Effect.Effect<Readonly<Record<string, import("effect/Schema").Json>>, ProviderError | import("@llm4ts/core/Errors").UsageLimitError | import("@llm4ts/core/Errors").AuthenticationError | InvalidRequestError | import("@llm4ts/core/Errors").ParseError | import("@llm4ts/core/Errors").ToolError | import("@llm4ts/core/Errors").ConfigError | import("@llm4ts/core/Errors").RateLimitError | import("@llm4ts/core/Errors").TimeoutError | import("@llm4ts/core/Errors").TurnLimitError, never>;
|
|
60
99
|
export interface GeminiAcpBridgeConfig {
|
|
61
100
|
readonly port: number;
|
|
62
101
|
readonly cwd: string;
|
|
@@ -68,6 +107,6 @@ export interface RunningGeminiAcpBridge {
|
|
|
68
107
|
readonly port: number;
|
|
69
108
|
readonly baseUrl: string;
|
|
70
109
|
}
|
|
71
|
-
export declare const runGeminiAcpBridge: (config: GeminiAcpBridgeConfig) => Effect.Effect<RunningGeminiAcpBridge,
|
|
110
|
+
export declare const runGeminiAcpBridge: (config: GeminiAcpBridgeConfig) => Effect.Effect<RunningGeminiAcpBridge, ProviderError | import("@llm4ts/core/Errors").UsageLimitError | import("@llm4ts/core/Errors").AuthenticationError | InvalidRequestError | import("@llm4ts/core/Errors").ParseError | import("@llm4ts/core/Errors").ToolError | import("@llm4ts/core/Errors").ConfigError | import("@llm4ts/core/Errors").RateLimitError | import("@llm4ts/core/Errors").TimeoutError | import("@llm4ts/core/Errors").TurnLimitError, Scope.Scope>;
|
|
72
111
|
export {};
|
|
73
112
|
//# sourceMappingURL=NodeGeminiAcpBridge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeGeminiAcpBridge.d.ts","sourceRoot":"","sources":["../src/NodeGeminiAcpBridge.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"NodeGeminiAcpBridge.d.ts","sourceRoot":"","sources":["../src/NodeGeminiAcpBridge.ts"],"names":[],"mappings":"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"}
|