@allin-ai/agent-client 0.1.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/LICENSE +21 -0
- package/README.md +53 -0
- package/bin/allinai-agent +4 -0
- package/dist/capabilities/context.d.ts +16 -0
- package/dist/capabilities/context.d.ts.map +1 -0
- package/dist/capabilities/context.js +98 -0
- package/dist/capabilities/context.js.map +1 -0
- package/dist/capabilities/input.d.ts +7 -0
- package/dist/capabilities/input.d.ts.map +1 -0
- package/dist/capabilities/input.js +224 -0
- package/dist/capabilities/input.js.map +1 -0
- package/dist/capabilities/manifest.d.ts +15 -0
- package/dist/capabilities/manifest.d.ts.map +1 -0
- package/dist/capabilities/manifest.js +292 -0
- package/dist/capabilities/manifest.js.map +1 -0
- package/dist/capabilities/policy.d.ts +17 -0
- package/dist/capabilities/policy.d.ts.map +1 -0
- package/dist/capabilities/policy.js +57 -0
- package/dist/capabilities/policy.js.map +1 -0
- package/dist/capabilities/shell-host.d.ts +32 -0
- package/dist/capabilities/shell-host.d.ts.map +1 -0
- package/dist/capabilities/shell-host.js +378 -0
- package/dist/capabilities/shell-host.js.map +1 -0
- package/dist/capabilities/shell-wire.d.ts +13 -0
- package/dist/capabilities/shell-wire.d.ts.map +1 -0
- package/dist/capabilities/shell-wire.js +60 -0
- package/dist/capabilities/shell-wire.js.map +1 -0
- package/dist/capabilities/types.d.ts +46 -0
- package/dist/capabilities/types.d.ts.map +1 -0
- package/dist/capabilities/types.js +7 -0
- package/dist/capabilities/types.js.map +1 -0
- package/dist/cli/commands.d.ts +83 -0
- package/dist/cli/commands.d.ts.map +1 -0
- package/dist/cli/commands.js +638 -0
- package/dist/cli/commands.js.map +1 -0
- package/dist/cli/main.d.ts +2 -0
- package/dist/cli/main.d.ts.map +1 -0
- package/dist/cli/main.js +7 -0
- package/dist/cli/main.js.map +1 -0
- package/dist/client/state-store.d.ts +80 -0
- package/dist/client/state-store.d.ts.map +1 -0
- package/dist/client/state-store.js +422 -0
- package/dist/client/state-store.js.map +1 -0
- package/dist/client/supervisor.d.ts +118 -0
- package/dist/client/supervisor.d.ts.map +1 -0
- package/dist/client/supervisor.js +627 -0
- package/dist/client/supervisor.js.map +1 -0
- package/dist/client/transport.d.ts +30 -0
- package/dist/client/transport.d.ts.map +1 -0
- package/dist/client/transport.js +2 -0
- package/dist/client/transport.js.map +1 -0
- package/dist/client/types.d.ts +65 -0
- package/dist/client/types.d.ts.map +1 -0
- package/dist/client/types.js +13 -0
- package/dist/client/types.js.map +1 -0
- package/dist/client/wire.d.ts +32 -0
- package/dist/client/wire.d.ts.map +1 -0
- package/dist/client/wire.js +302 -0
- package/dist/client/wire.js.map +1 -0
- package/dist/client/ws-transport.d.ts +54 -0
- package/dist/client/ws-transport.d.ts.map +1 -0
- package/dist/client/ws-transport.js +229 -0
- package/dist/client/ws-transport.js.map +1 -0
- package/dist/config.d.ts +38 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +125 -0
- package/dist/config.js.map +1 -0
- package/dist/control.d.ts +59 -0
- package/dist/control.d.ts.map +1 -0
- package/dist/control.js +217 -0
- package/dist/control.js.map +1 -0
- package/dist/credentials.d.ts +44 -0
- package/dist/credentials.d.ts.map +1 -0
- package/dist/credentials.js +229 -0
- package/dist/credentials.js.map +1 -0
- package/dist/hub.d.ts +83 -0
- package/dist/hub.d.ts.map +1 -0
- package/dist/hub.js +412 -0
- package/dist/hub.js.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -0
- package/dist/logger.d.ts +47 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +175 -0
- package/dist/logger.js.map +1 -0
- package/dist/paths.d.ts +29 -0
- package/dist/paths.d.ts.map +1 -0
- package/dist/paths.js +50 -0
- package/dist/paths.js.map +1 -0
- package/dist/plugins/git.d.ts +30 -0
- package/dist/plugins/git.d.ts.map +1 -0
- package/dist/plugins/git.js +80 -0
- package/dist/plugins/git.js.map +1 -0
- package/dist/plugins/manager.d.ts +41 -0
- package/dist/plugins/manager.d.ts.map +1 -0
- package/dist/plugins/manager.js +328 -0
- package/dist/plugins/manager.js.map +1 -0
- package/dist/plugins/manifest.d.ts +9 -0
- package/dist/plugins/manifest.d.ts.map +1 -0
- package/dist/plugins/manifest.js +63 -0
- package/dist/plugins/manifest.js.map +1 -0
- package/dist/plugins/types.d.ts +39 -0
- package/dist/plugins/types.d.ts.map +1 -0
- package/dist/plugins/types.js +2 -0
- package/dist/plugins/types.js.map +1 -0
- package/dist/runtime/claude.d.ts +30 -0
- package/dist/runtime/claude.d.ts.map +1 -0
- package/dist/runtime/claude.js +163 -0
- package/dist/runtime/claude.js.map +1 -0
- package/dist/runtime/codex.d.ts +44 -0
- package/dist/runtime/codex.d.ts.map +1 -0
- package/dist/runtime/codex.js +192 -0
- package/dist/runtime/codex.js.map +1 -0
- package/dist/runtime/events.d.ts +7 -0
- package/dist/runtime/events.d.ts.map +1 -0
- package/dist/runtime/events.js +37 -0
- package/dist/runtime/events.js.map +1 -0
- package/dist/runtime/index.d.ts +10 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +10 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/pi.d.ts +34 -0
- package/dist/runtime/pi.d.ts.map +1 -0
- package/dist/runtime/pi.js +211 -0
- package/dist/runtime/pi.js.map +1 -0
- package/dist/runtime/registry.d.ts +16 -0
- package/dist/runtime/registry.d.ts.map +1 -0
- package/dist/runtime/registry.js +22 -0
- package/dist/runtime/registry.js.map +1 -0
- package/dist/runtime/runner-child.d.ts +2 -0
- package/dist/runtime/runner-child.d.ts.map +1 -0
- package/dist/runtime/runner-child.js +41 -0
- package/dist/runtime/runner-child.js.map +1 -0
- package/dist/runtime/runner-manager.d.ts +77 -0
- package/dist/runtime/runner-manager.d.ts.map +1 -0
- package/dist/runtime/runner-manager.js +295 -0
- package/dist/runtime/runner-manager.js.map +1 -0
- package/dist/runtime/runner-wire.d.ts +23 -0
- package/dist/runtime/runner-wire.d.ts.map +1 -0
- package/dist/runtime/runner-wire.js +93 -0
- package/dist/runtime/runner-wire.js.map +1 -0
- package/dist/runtime/types.d.ts +43 -0
- package/dist/runtime/types.d.ts.map +1 -0
- package/dist/runtime/types.js +3 -0
- package/dist/runtime/types.js.map +1 -0
- package/dist/runtime/zcode.d.ts +14 -0
- package/dist/runtime/zcode.d.ts.map +1 -0
- package/dist/runtime/zcode.js +21 -0
- package/dist/runtime/zcode.js.map +1 -0
- package/dist/service/launchd.d.ts +34 -0
- package/dist/service/launchd.d.ts.map +1 -0
- package/dist/service/launchd.js +86 -0
- package/dist/service/launchd.js.map +1 -0
- package/dist/service/systemd.d.ts +16 -0
- package/dist/service/systemd.d.ts.map +1 -0
- package/dist/service/systemd.js +89 -0
- package/dist/service/systemd.js.map +1 -0
- package/dist/wire.d.ts +24 -0
- package/dist/wire.d.ts.map +1 -0
- package/dist/wire.js +7 -0
- package/dist/wire.js.map +1 -0
- package/package.json +140 -0
|
@@ -0,0 +1,295 @@
|
|
|
1
|
+
import { spawn as nodeSpawn } from "node:child_process";
|
|
2
|
+
import { fileURLToPath } from "node:url";
|
|
3
|
+
import { isTerminalPlatformEvent, platformErrorEvent } from "./events.js";
|
|
4
|
+
import { encodeRunnerStart, JsonlDecoder, parseRunnerChildMessage, } from "./runner-wire.js";
|
|
5
|
+
const DEFAULT_EXECUTION_TIMEOUT_MS = 30 * 60 * 1000;
|
|
6
|
+
const DEFAULT_TERMINATION_GRACE_MS = 5_000;
|
|
7
|
+
export const DEFAULT_RUNNER_CHILD_ENTRYPOINT = fileURLToPath(new URL("./runner-child.js", import.meta.url));
|
|
8
|
+
class PlatformEventQueue {
|
|
9
|
+
values = [];
|
|
10
|
+
waiters = [];
|
|
11
|
+
closed = false;
|
|
12
|
+
push(value) {
|
|
13
|
+
if (this.closed)
|
|
14
|
+
return;
|
|
15
|
+
const waiter = this.waiters.shift();
|
|
16
|
+
if (waiter) {
|
|
17
|
+
waiter({ value, done: false });
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
this.values.push(value);
|
|
21
|
+
}
|
|
22
|
+
close() {
|
|
23
|
+
if (this.closed)
|
|
24
|
+
return;
|
|
25
|
+
this.closed = true;
|
|
26
|
+
for (const waiter of this.waiters.splice(0)) {
|
|
27
|
+
waiter({ value: undefined, done: true });
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
async *[Symbol.asyncIterator]() {
|
|
31
|
+
while (true) {
|
|
32
|
+
const next = await this.next();
|
|
33
|
+
if (next.done)
|
|
34
|
+
return;
|
|
35
|
+
yield next.value;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
next() {
|
|
39
|
+
const value = this.values.shift();
|
|
40
|
+
if (value)
|
|
41
|
+
return Promise.resolve({ value, done: false });
|
|
42
|
+
if (this.closed)
|
|
43
|
+
return Promise.resolve({ value: undefined, done: true });
|
|
44
|
+
return new Promise((resolve) => this.waiters.push(resolve));
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
function defaultKillProcessGroup(pid, signal) {
|
|
48
|
+
process.kill(-pid, signal);
|
|
49
|
+
}
|
|
50
|
+
function defaultScheduleTimeout(callback, delayMs) {
|
|
51
|
+
return setTimeout(callback, delayMs);
|
|
52
|
+
}
|
|
53
|
+
function defaultClearScheduledTimeout(timer) {
|
|
54
|
+
clearTimeout(timer);
|
|
55
|
+
}
|
|
56
|
+
function unrefTimer(timer) {
|
|
57
|
+
if (typeof timer === "object" &&
|
|
58
|
+
timer !== null &&
|
|
59
|
+
"unref" in timer &&
|
|
60
|
+
typeof timer.unref === "function") {
|
|
61
|
+
timer.unref();
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
function errorMessage(error) {
|
|
65
|
+
return error instanceof Error ? error.message : String(error);
|
|
66
|
+
}
|
|
67
|
+
function validatePositiveTimeout(value, name) {
|
|
68
|
+
if (!Number.isSafeInteger(value) || value <= 0) {
|
|
69
|
+
throw new RangeError(`${name} must be a positive safe integer`);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Starts exactly one fixed-entrypoint child per execution and transports only
|
|
74
|
+
* JSONL. It is deliberately vendor-agnostic: platform SDK work belongs to the
|
|
75
|
+
* child adapter layer, so an SDK failure cannot poison this manager.
|
|
76
|
+
*/
|
|
77
|
+
export class IsolatedRunnerManager {
|
|
78
|
+
spawn;
|
|
79
|
+
childEntrypoint;
|
|
80
|
+
executionTimeoutMs;
|
|
81
|
+
terminationGraceMs;
|
|
82
|
+
killProcessGroup;
|
|
83
|
+
scheduleTimeout;
|
|
84
|
+
clearScheduledTimeout;
|
|
85
|
+
activeRuns = new Map();
|
|
86
|
+
idleWaiters = new Set();
|
|
87
|
+
constructor(options = {}) {
|
|
88
|
+
this.spawn = options.spawn ?? nodeSpawn;
|
|
89
|
+
this.childEntrypoint =
|
|
90
|
+
options.childEntrypoint ?? DEFAULT_RUNNER_CHILD_ENTRYPOINT;
|
|
91
|
+
this.executionTimeoutMs =
|
|
92
|
+
options.executionTimeoutMs ?? DEFAULT_EXECUTION_TIMEOUT_MS;
|
|
93
|
+
this.terminationGraceMs =
|
|
94
|
+
options.terminationGraceMs ?? DEFAULT_TERMINATION_GRACE_MS;
|
|
95
|
+
validatePositiveTimeout(this.executionTimeoutMs, "executionTimeoutMs");
|
|
96
|
+
validatePositiveTimeout(this.terminationGraceMs, "terminationGraceMs");
|
|
97
|
+
this.killProcessGroup = options.killProcessGroup ?? defaultKillProcessGroup;
|
|
98
|
+
this.scheduleTimeout = options.scheduleTimeout ?? defaultScheduleTimeout;
|
|
99
|
+
this.clearScheduledTimeout =
|
|
100
|
+
options.clearScheduledTimeout ?? defaultClearScheduledTimeout;
|
|
101
|
+
}
|
|
102
|
+
start(executionId, input) {
|
|
103
|
+
const existing = this.activeRuns.get(executionId);
|
|
104
|
+
if (existing)
|
|
105
|
+
return existing.events;
|
|
106
|
+
const events = new PlatformEventQueue();
|
|
107
|
+
let child;
|
|
108
|
+
try {
|
|
109
|
+
child = this.spawn(process.execPath, [this.childEntrypoint], {
|
|
110
|
+
cwd: undefined,
|
|
111
|
+
env: undefined,
|
|
112
|
+
shell: false,
|
|
113
|
+
detached: process.platform !== "win32",
|
|
114
|
+
stdio: ["pipe", "pipe", "pipe"],
|
|
115
|
+
windowsHide: true,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
events.push(platformErrorEvent("runner_spawn_failed", errorMessage(error)));
|
|
120
|
+
events.close();
|
|
121
|
+
return events;
|
|
122
|
+
}
|
|
123
|
+
const active = {
|
|
124
|
+
executionId,
|
|
125
|
+
child,
|
|
126
|
+
events,
|
|
127
|
+
executionTimeout: {},
|
|
128
|
+
terminationTimeout: null,
|
|
129
|
+
cancelled: false,
|
|
130
|
+
outputClosed: false,
|
|
131
|
+
closeReceived: false,
|
|
132
|
+
terminationRequested: false,
|
|
133
|
+
};
|
|
134
|
+
active.executionTimeout = this.scheduleTimeout(() => {
|
|
135
|
+
if (active.closeReceived)
|
|
136
|
+
return;
|
|
137
|
+
if (!active.outputClosed) {
|
|
138
|
+
this.reportFailure(active, "runner_timeout", `Runner exceeded ${this.executionTimeoutMs}ms`);
|
|
139
|
+
return;
|
|
140
|
+
}
|
|
141
|
+
// A terminal runner event is not enough if the child never exits. It is
|
|
142
|
+
// still tracked and eventually cleaned up without emitting a second event.
|
|
143
|
+
this.requestTermination(active);
|
|
144
|
+
}, this.executionTimeoutMs);
|
|
145
|
+
unrefTimer(active.executionTimeout);
|
|
146
|
+
this.activeRuns.set(executionId, active);
|
|
147
|
+
this.bindChild(active);
|
|
148
|
+
if (active.outputClosed)
|
|
149
|
+
return events;
|
|
150
|
+
try {
|
|
151
|
+
if (!child.stdin)
|
|
152
|
+
throw new Error("Runner child stdin is unavailable");
|
|
153
|
+
child.stdin.write(encodeRunnerStart(executionId, input));
|
|
154
|
+
child.stdin.end?.();
|
|
155
|
+
}
|
|
156
|
+
catch (error) {
|
|
157
|
+
this.reportFailure(active, "runner_input_failed", errorMessage(error));
|
|
158
|
+
}
|
|
159
|
+
return events;
|
|
160
|
+
}
|
|
161
|
+
async cancel(executionId) {
|
|
162
|
+
const active = this.activeRuns.get(executionId);
|
|
163
|
+
if (!active || active.closeReceived)
|
|
164
|
+
return;
|
|
165
|
+
active.cancelled = true;
|
|
166
|
+
this.requestTermination(active);
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* A terminal SDK event can arrive before the child has actually exited.
|
|
170
|
+
* Daemon shutdown uses this to wait for those remaining child resources.
|
|
171
|
+
*/
|
|
172
|
+
async waitForIdle() {
|
|
173
|
+
if (this.activeRuns.size === 0)
|
|
174
|
+
return;
|
|
175
|
+
await new Promise((resolve) => this.idleWaiters.add(resolve));
|
|
176
|
+
}
|
|
177
|
+
/** Child failures are isolated; a later execution can always be started. */
|
|
178
|
+
isHealthy() {
|
|
179
|
+
return true;
|
|
180
|
+
}
|
|
181
|
+
/** Retained until the child emits `close`, including after a terminal error. */
|
|
182
|
+
hasActiveExecution(executionId) {
|
|
183
|
+
return this.activeRuns.has(executionId);
|
|
184
|
+
}
|
|
185
|
+
bindChild(active) {
|
|
186
|
+
const decoder = new JsonlDecoder();
|
|
187
|
+
active.child.on("error", (error) => {
|
|
188
|
+
this.reportFailure(active, "runner_process_failed", errorMessage(error));
|
|
189
|
+
});
|
|
190
|
+
active.child.on("close", (code, signal) => {
|
|
191
|
+
if (active.closeReceived)
|
|
192
|
+
return;
|
|
193
|
+
active.closeReceived = true;
|
|
194
|
+
for (const line of decoder.finish())
|
|
195
|
+
this.handleOutputLine(active, line);
|
|
196
|
+
if (!active.outputClosed && !active.cancelled) {
|
|
197
|
+
this.reportFailure(active, "runner_child_exit", `Runner child exited before a terminal event (code=${String(code)}, signal=${String(signal)})`);
|
|
198
|
+
}
|
|
199
|
+
this.cleanup(active);
|
|
200
|
+
});
|
|
201
|
+
if (!active.child.stdout) {
|
|
202
|
+
this.reportFailure(active, "runner_stdout_unavailable", "Runner child stdout is unavailable");
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
active.child.stdout.on("data", (chunk) => {
|
|
206
|
+
for (const line of decoder.push(chunk)) {
|
|
207
|
+
this.handleOutputLine(active, line);
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
active.child.stdout.on("error", (error) => {
|
|
211
|
+
this.reportFailure(active, "runner_stdout_failed", errorMessage(error));
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
handleOutputLine(active, line) {
|
|
215
|
+
if (active.outputClosed || line.length === 0)
|
|
216
|
+
return;
|
|
217
|
+
let parsed;
|
|
218
|
+
try {
|
|
219
|
+
parsed = JSON.parse(line);
|
|
220
|
+
}
|
|
221
|
+
catch {
|
|
222
|
+
this.reportFailure(active, "runner_protocol_error", "Runner child emitted invalid JSONL");
|
|
223
|
+
return;
|
|
224
|
+
}
|
|
225
|
+
const message = parseRunnerChildMessage(parsed);
|
|
226
|
+
if (!message) {
|
|
227
|
+
this.reportFailure(active, "runner_protocol_error", "Runner child emitted an invalid event");
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
active.events.push(message.event);
|
|
231
|
+
if (!isTerminalPlatformEvent(message.event))
|
|
232
|
+
return;
|
|
233
|
+
this.closeOutput(active);
|
|
234
|
+
if (message.event.type === "error")
|
|
235
|
+
this.requestTermination(active);
|
|
236
|
+
}
|
|
237
|
+
reportFailure(active, reason, message) {
|
|
238
|
+
if (active.outputClosed)
|
|
239
|
+
return;
|
|
240
|
+
active.events.push(platformErrorEvent(reason, message));
|
|
241
|
+
this.closeOutput(active);
|
|
242
|
+
this.requestTermination(active);
|
|
243
|
+
}
|
|
244
|
+
closeOutput(active) {
|
|
245
|
+
if (active.outputClosed)
|
|
246
|
+
return;
|
|
247
|
+
active.outputClosed = true;
|
|
248
|
+
active.events.close();
|
|
249
|
+
}
|
|
250
|
+
requestTermination(active) {
|
|
251
|
+
if (active.closeReceived || active.terminationRequested)
|
|
252
|
+
return;
|
|
253
|
+
active.terminationRequested = true;
|
|
254
|
+
this.terminate(active, "SIGTERM");
|
|
255
|
+
active.terminationTimeout = this.scheduleTimeout(() => {
|
|
256
|
+
if (active.closeReceived)
|
|
257
|
+
return;
|
|
258
|
+
this.terminate(active, "SIGKILL");
|
|
259
|
+
}, this.terminationGraceMs);
|
|
260
|
+
unrefTimer(active.terminationTimeout);
|
|
261
|
+
}
|
|
262
|
+
cleanup(active) {
|
|
263
|
+
this.clearScheduledTimeout(active.executionTimeout);
|
|
264
|
+
if (active.terminationTimeout) {
|
|
265
|
+
this.clearScheduledTimeout(active.terminationTimeout);
|
|
266
|
+
active.terminationTimeout = null;
|
|
267
|
+
}
|
|
268
|
+
this.closeOutput(active);
|
|
269
|
+
this.activeRuns.delete(active.executionId);
|
|
270
|
+
if (this.activeRuns.size === 0) {
|
|
271
|
+
for (const resolve of this.idleWaiters)
|
|
272
|
+
resolve();
|
|
273
|
+
this.idleWaiters.clear();
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
terminate(active, signal) {
|
|
277
|
+
try {
|
|
278
|
+
if (process.platform !== "win32" &&
|
|
279
|
+
active.child.pid &&
|
|
280
|
+
active.child.pid > 0) {
|
|
281
|
+
this.killProcessGroup(active.child.pid, signal);
|
|
282
|
+
return;
|
|
283
|
+
}
|
|
284
|
+
active.child.kill(signal);
|
|
285
|
+
}
|
|
286
|
+
catch {
|
|
287
|
+
// The child may already be gone. Its close handler owns cleanup; never
|
|
288
|
+
// let process cleanup affect manager health.
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
export function createRunnerManager(options) {
|
|
293
|
+
return new IsolatedRunnerManager(options);
|
|
294
|
+
}
|
|
295
|
+
//# sourceMappingURL=runner-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner-manager.js","sourceRoot":"","sources":["../../src/runtime/runner-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { PlatformEvent, PlatformRunInput } from "./types.js";
|
|
2
|
+
export type RunnerStartMessage = {
|
|
3
|
+
type: "run.start";
|
|
4
|
+
executionId: string;
|
|
5
|
+
input: PlatformRunInput;
|
|
6
|
+
};
|
|
7
|
+
export type RunnerChildMessage = {
|
|
8
|
+
type: "event";
|
|
9
|
+
event: PlatformEvent;
|
|
10
|
+
};
|
|
11
|
+
export declare function encodeJsonLine(value: unknown): string;
|
|
12
|
+
export declare function encodeRunnerStart(executionId: string, input: PlatformRunInput): string;
|
|
13
|
+
export declare function encodeRunnerEvent(event: PlatformEvent): string;
|
|
14
|
+
export declare function parseRunnerStart(value: unknown): RunnerStartMessage | null;
|
|
15
|
+
export declare function parseRunnerChildMessage(value: unknown): RunnerChildMessage | null;
|
|
16
|
+
/** Incremental UTF-8 JSONL decoder used for both runner stdin and stdout. */
|
|
17
|
+
export declare class JsonlDecoder {
|
|
18
|
+
private remaining;
|
|
19
|
+
private readonly utf8;
|
|
20
|
+
push(chunk: string | Uint8Array): string[];
|
|
21
|
+
finish(): string[];
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=runner-wire.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner-wire.d.ts","sourceRoot":"","sources":["../../src/runtime/runner-wire.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAc,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9E,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,gBAAgB,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,aAAa,CAAC;CACtB,CAAC;AA8CF,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAErD;AAED,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,gBAAgB,GACtB,MAAM,CAMR;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAE9D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,kBAAkB,GAAG,IAAI,CAgB1E;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,GACb,kBAAkB,GAAG,IAAI,CAU3B;AAED,6EAA6E;AAC7E,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA6B;IAElD,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,EAAE;IAU1C,MAAM,IAAI,MAAM,EAAE;CASnB"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { StringDecoder } from "node:string_decoder";
|
|
2
|
+
import { isPlatformEvent } from "./events.js";
|
|
3
|
+
function isRecord(value) {
|
|
4
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
5
|
+
}
|
|
6
|
+
function hasOnlyKeys(value, keys) {
|
|
7
|
+
return Object.keys(value).every((key) => keys.includes(key));
|
|
8
|
+
}
|
|
9
|
+
function isPlatformId(value) {
|
|
10
|
+
return (value === "codex" ||
|
|
11
|
+
value === "claude" ||
|
|
12
|
+
value === "pi" ||
|
|
13
|
+
value === "zcode");
|
|
14
|
+
}
|
|
15
|
+
function isRunInput(value) {
|
|
16
|
+
if (!isRecord(value) ||
|
|
17
|
+
!hasOnlyKeys(value, [
|
|
18
|
+
"platform",
|
|
19
|
+
"prompt",
|
|
20
|
+
"cwd",
|
|
21
|
+
"sessionId",
|
|
22
|
+
"model",
|
|
23
|
+
"context",
|
|
24
|
+
]) ||
|
|
25
|
+
!isPlatformId(value.platform) ||
|
|
26
|
+
typeof value.prompt !== "string") {
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
return ((value.cwd === undefined || typeof value.cwd === "string") &&
|
|
30
|
+
(value.sessionId === undefined || typeof value.sessionId === "string") &&
|
|
31
|
+
(value.model === undefined || typeof value.model === "string") &&
|
|
32
|
+
(value.context === undefined || isRecord(value.context)));
|
|
33
|
+
}
|
|
34
|
+
export function encodeJsonLine(value) {
|
|
35
|
+
return `${JSON.stringify(value)}\n`;
|
|
36
|
+
}
|
|
37
|
+
export function encodeRunnerStart(executionId, input) {
|
|
38
|
+
return encodeJsonLine({
|
|
39
|
+
type: "run.start",
|
|
40
|
+
executionId,
|
|
41
|
+
input,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
export function encodeRunnerEvent(event) {
|
|
45
|
+
return encodeJsonLine({ type: "event", event });
|
|
46
|
+
}
|
|
47
|
+
export function parseRunnerStart(value) {
|
|
48
|
+
if (!isRecord(value) ||
|
|
49
|
+
!hasOnlyKeys(value, ["type", "executionId", "input"]) ||
|
|
50
|
+
value.type !== "run.start" ||
|
|
51
|
+
typeof value.executionId !== "string" ||
|
|
52
|
+
value.executionId.length === 0 ||
|
|
53
|
+
!isRunInput(value.input)) {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
return {
|
|
57
|
+
type: "run.start",
|
|
58
|
+
executionId: value.executionId,
|
|
59
|
+
input: value.input,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
export function parseRunnerChildMessage(value) {
|
|
63
|
+
if (!isRecord(value) ||
|
|
64
|
+
!hasOnlyKeys(value, ["type", "event"]) ||
|
|
65
|
+
value.type !== "event" ||
|
|
66
|
+
!isPlatformEvent(value.event)) {
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
return { type: "event", event: value.event };
|
|
70
|
+
}
|
|
71
|
+
/** Incremental UTF-8 JSONL decoder used for both runner stdin and stdout. */
|
|
72
|
+
export class JsonlDecoder {
|
|
73
|
+
remaining = "";
|
|
74
|
+
utf8 = new StringDecoder("utf8");
|
|
75
|
+
push(chunk) {
|
|
76
|
+
this.remaining +=
|
|
77
|
+
typeof chunk === "string" ? chunk : this.utf8.write(Buffer.from(chunk));
|
|
78
|
+
const lines = this.remaining.split("\n");
|
|
79
|
+
this.remaining = lines.pop() ?? "";
|
|
80
|
+
return lines.map((line) => line.endsWith("\r") ? line.slice(0, -1) : line);
|
|
81
|
+
}
|
|
82
|
+
finish() {
|
|
83
|
+
this.remaining += this.utf8.end();
|
|
84
|
+
if (this.remaining.length === 0)
|
|
85
|
+
return [];
|
|
86
|
+
const line = this.remaining.endsWith("\r")
|
|
87
|
+
? this.remaining.slice(0, -1)
|
|
88
|
+
: this.remaining;
|
|
89
|
+
this.remaining = "";
|
|
90
|
+
return [line];
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=runner-wire.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner-wire.js","sourceRoot":"","sources":["../../src/runtime/runner-wire.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/** The supported local execution platforms. */
|
|
2
|
+
export declare const PLATFORM_IDS: readonly ["codex", "claude", "pi", "zcode"];
|
|
3
|
+
export type PlatformId = (typeof PLATFORM_IDS)[number];
|
|
4
|
+
/**
|
|
5
|
+
* Vendor-neutral input for one platform run. Runtime adapters own any further
|
|
6
|
+
* platform-specific validation; this transport never turns these values into
|
|
7
|
+
* executable arguments.
|
|
8
|
+
*/
|
|
9
|
+
export type PlatformRunInput = {
|
|
10
|
+
platform: PlatformId;
|
|
11
|
+
prompt: string;
|
|
12
|
+
cwd?: string;
|
|
13
|
+
sessionId?: string;
|
|
14
|
+
model?: string;
|
|
15
|
+
context?: Record<string, unknown>;
|
|
16
|
+
};
|
|
17
|
+
/** A normalized event emitted by every platform runner. */
|
|
18
|
+
export type PlatformEvent = {
|
|
19
|
+
type: "init" | "text_delta" | "thinking_delta" | "tool" | "done" | "error";
|
|
20
|
+
payload?: Record<string, unknown>;
|
|
21
|
+
};
|
|
22
|
+
export type PlatformProbe = {
|
|
23
|
+
installed: boolean;
|
|
24
|
+
version: string | null;
|
|
25
|
+
reason?: string;
|
|
26
|
+
};
|
|
27
|
+
/** Platform SDK implementations are isolated from the Supervisor. */
|
|
28
|
+
export interface PlatformAdapter {
|
|
29
|
+
readonly id: PlatformId;
|
|
30
|
+
probe(): Promise<PlatformProbe>;
|
|
31
|
+
start(input: PlatformRunInput, signal: AbortSignal): AsyncIterable<PlatformEvent>;
|
|
32
|
+
}
|
|
33
|
+
/** Public execution boundary consumed by the Client Supervisor. */
|
|
34
|
+
export interface RunnerManager {
|
|
35
|
+
start(executionId: string, input: PlatformRunInput): AsyncIterable<PlatformEvent>;
|
|
36
|
+
cancel(executionId: string): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* Resolves when every child owned by this manager has emitted close and its
|
|
39
|
+
* process resources have been released. Older test doubles may omit it.
|
|
40
|
+
*/
|
|
41
|
+
waitForIdle?(): Promise<void>;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/runtime/types.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,eAAO,MAAM,YAAY,6CAA8C,CAAC;AAExE,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,2DAA2D;AAC3D,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,gBAAgB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC3E,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,qEAAqE;AACrE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC;IACxB,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC;IAChC,KAAK,CACH,KAAK,EAAE,gBAAgB,EACvB,MAAM,EAAE,WAAW,GAClB,aAAa,CAAC,aAAa,CAAC,CAAC;CACjC;AAED,mEAAmE;AACnE,MAAM,WAAW,aAAa;IAC5B,KAAK,CACH,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,gBAAgB,GACtB,aAAa,CAAC,aAAa,CAAC,CAAC;IAChC,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C;;;OAGG;IACH,WAAW,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/runtime/types.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAU,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { PlatformAdapter, PlatformEvent, PlatformRunInput } from "./types.js";
|
|
2
|
+
export declare const ZCODE_UNAVAILABLE_REASON = "zcode adapter is not configured";
|
|
3
|
+
export type ZCodeAdapter = PlatformAdapter & {
|
|
4
|
+
readonly id: "zcode";
|
|
5
|
+
start(input: PlatformRunInput & {
|
|
6
|
+
platform: "zcode";
|
|
7
|
+
}, signal: AbortSignal): AsyncIterable<PlatformEvent>;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* ZCode has no verified official SDK contract yet. Do not turn Hub payloads
|
|
11
|
+
* into a guessed CLI invocation: this adapter intentionally fails closed.
|
|
12
|
+
*/
|
|
13
|
+
export declare function createZCodeAdapter(): ZCodeAdapter;
|
|
14
|
+
//# sourceMappingURL=zcode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zcode.d.ts","sourceRoot":"","sources":["../../src/runtime/zcode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EAEb,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,wBAAwB,oCAAoC,CAAC;AAE1E,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG;IAC3C,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,KAAK,CACH,KAAK,EAAE,gBAAgB,GAAG;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,EAC/C,MAAM,EAAE,WAAW,GAClB,aAAa,CAAC,aAAa,CAAC,CAAC;CACjC,CAAC;AAEF;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,YAAY,CAcjD"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export const ZCODE_UNAVAILABLE_REASON = "zcode adapter is not configured";
|
|
2
|
+
/**
|
|
3
|
+
* ZCode has no verified official SDK contract yet. Do not turn Hub payloads
|
|
4
|
+
* into a guessed CLI invocation: this adapter intentionally fails closed.
|
|
5
|
+
*/
|
|
6
|
+
export function createZCodeAdapter() {
|
|
7
|
+
return {
|
|
8
|
+
id: "zcode",
|
|
9
|
+
async probe() {
|
|
10
|
+
return {
|
|
11
|
+
installed: false,
|
|
12
|
+
version: null,
|
|
13
|
+
reason: ZCODE_UNAVAILABLE_REASON,
|
|
14
|
+
};
|
|
15
|
+
},
|
|
16
|
+
async *start() {
|
|
17
|
+
throw new Error(ZCODE_UNAVAILABLE_REASON);
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=zcode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zcode.js","sourceRoot":"","sources":["../../src/runtime/zcode.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,wBAAwB,GAAG,iCAAiC,CAAC;AAU1E;;;GAGG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO;QACL,EAAE,EAAE,OAAO;QACX,KAAK,CAAC,KAAK;YACT,OAAO;gBACL,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,wBAAwB;aACjC,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,CAAC,KAAK;YACV,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export declare const AGENT_SERVICE_LABEL = "ai.allin.allinai-agent";
|
|
2
|
+
export type UserServiceFileSystem = {
|
|
3
|
+
mkdir(dir: string, options: {
|
|
4
|
+
recursive: true;
|
|
5
|
+
}): Promise<string | undefined>;
|
|
6
|
+
writeFile(file: string, content: string, options: {
|
|
7
|
+
encoding: "utf8";
|
|
8
|
+
mode: number;
|
|
9
|
+
}): Promise<void>;
|
|
10
|
+
unlink(file: string): Promise<void>;
|
|
11
|
+
};
|
|
12
|
+
export type UserServiceExecutor = (file: string, args: readonly string[]) => Promise<void>;
|
|
13
|
+
export type UserServiceDefinition = {
|
|
14
|
+
executable: string;
|
|
15
|
+
configDir: string;
|
|
16
|
+
};
|
|
17
|
+
export type LaunchAgentActionOptions = UserServiceDefinition & {
|
|
18
|
+
homeDir: string;
|
|
19
|
+
uid: number;
|
|
20
|
+
fileSystem?: UserServiceFileSystem;
|
|
21
|
+
execute?: UserServiceExecutor;
|
|
22
|
+
};
|
|
23
|
+
/** The only macOS service destination this package will write. */
|
|
24
|
+
export declare function launchAgentPath(homeDir: string): string;
|
|
25
|
+
/**
|
|
26
|
+
* Deterministic user-scoped launchd definition. Credentials are deliberately
|
|
27
|
+
* absent: the daemon reads the local credential store after launch.
|
|
28
|
+
*/
|
|
29
|
+
export declare function buildLaunchAgentPlist(input: UserServiceDefinition): string;
|
|
30
|
+
/** Install only a LaunchAgent owned by the invoking non-root user. */
|
|
31
|
+
export declare function installLaunchAgent(options: LaunchAgentActionOptions): Promise<string>;
|
|
32
|
+
/** Stop first, then remove only the exact file generated by this package. */
|
|
33
|
+
export declare function uninstallLaunchAgent(options: Omit<LaunchAgentActionOptions, "executable" | "configDir">): Promise<string>;
|
|
34
|
+
//# sourceMappingURL=launchd.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"launchd.d.ts","sourceRoot":"","sources":["../../src/service/launchd.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAE5D,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,SAAS,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9E,SAAS,CACP,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAC1C,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAChC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,SAAS,MAAM,EAAE,KACpB,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnB,MAAM,MAAM,qBAAqB,GAAG;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,qBAAqB,GAAG;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B,CAAC;AA+BF,kEAAkE;AAClE,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAUvD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,qBAAqB,GAAG,MAAM,CAK1E;AAQD,sEAAsE;AACtE,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,MAAM,CAAC,CAcjB;AAED,6EAA6E;AAC7E,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,IAAI,CAAC,wBAAwB,EAAE,YAAY,GAAG,WAAW,CAAC,GAClE,OAAO,CAAC,MAAM,CAAC,CAQjB"}
|