@action-llama/action-llama 0.27.4 → 0.28.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/agents/credential-setup.d.ts +0 -1
- package/dist/agents/credential-setup.d.ts.map +1 -1
- package/dist/agents/credential-setup.js +2 -23
- package/dist/agents/credential-setup.js.map +1 -1
- package/dist/agents/prompt.js +1 -1
- package/dist/agents/prompt.js.map +1 -1
- package/dist/agents/scheduler-tools.d.ts +40 -0
- package/dist/agents/scheduler-tools.d.ts.map +1 -0
- package/dist/agents/scheduler-tools.js +178 -0
- package/dist/agents/scheduler-tools.js.map +1 -0
- package/dist/agents/transport-runner.d.ts +95 -0
- package/dist/agents/transport-runner.d.ts.map +1 -0
- package/dist/agents/transport-runner.js +653 -0
- package/dist/agents/transport-runner.js.map +1 -0
- package/dist/build-info.json +1 -1
- package/dist/cli/commands/add.d.ts +1 -0
- package/dist/cli/commands/add.d.ts.map +1 -1
- package/dist/cli/commands/add.js +24 -9
- package/dist/cli/commands/add.js.map +1 -1
- package/dist/cli/commands/agent.d.ts +0 -3
- package/dist/cli/commands/agent.d.ts.map +1 -1
- package/dist/cli/commands/agent.js +3 -67
- package/dist/cli/commands/agent.js.map +1 -1
- package/dist/cli/commands/logs.d.ts.map +1 -1
- package/dist/cli/commands/logs.js +2 -3
- package/dist/cli/commands/logs.js.map +1 -1
- package/dist/cli/main.js +1 -30
- package/dist/cli/main.js.map +1 -1
- package/dist/control/routes/dashboard-api.js +1 -1
- package/dist/control/routes/dashboard-api.js.map +1 -1
- package/dist/control/routes/log-helpers.d.ts +4 -4
- package/dist/control/routes/log-helpers.d.ts.map +1 -1
- package/dist/control/routes/log-helpers.js +12 -7
- package/dist/control/routes/log-helpers.js.map +1 -1
- package/dist/control/routes/log-summary.d.ts.map +1 -1
- package/dist/control/routes/log-summary.js +22 -9
- package/dist/control/routes/log-summary.js.map +1 -1
- package/dist/control/routes/logs.d.ts.map +1 -1
- package/dist/control/routes/logs.js +10 -10
- package/dist/control/routes/logs.js.map +1 -1
- package/dist/docker/providers/index.d.ts +0 -4
- package/dist/docker/providers/index.d.ts.map +1 -1
- package/dist/docker/providers/index.js +0 -38
- package/dist/docker/providers/index.js.map +1 -1
- package/dist/execution/execution.d.ts +0 -1
- package/dist/execution/execution.d.ts.map +1 -1
- package/dist/execution/execution.js +5 -9
- package/dist/execution/execution.js.map +1 -1
- package/dist/execution/index.d.ts +1 -11
- package/dist/execution/index.d.ts.map +1 -1
- package/dist/execution/index.js +1 -8
- package/dist/execution/index.js.map +1 -1
- package/dist/execution/runner-setup.d.ts +6 -11
- package/dist/execution/runner-setup.d.ts.map +1 -1
- package/dist/execution/runner-setup.js +18 -14
- package/dist/execution/runner-setup.js.map +1 -1
- package/dist/execution/runtime-factory.d.ts +1 -15
- package/dist/execution/runtime-factory.d.ts.map +1 -1
- package/dist/execution/runtime-factory.js +1 -18
- package/dist/execution/runtime-factory.js.map +1 -1
- package/dist/frontend/assets/{index-a78B5S5H.js → index-DnSu-8Kw.js} +1 -1
- package/dist/frontend/assets/index-DnSu-8Kw.js.map +1 -0
- package/dist/frontend/index.html +1 -1
- package/dist/gateway/index.d.ts +1 -1
- package/dist/gateway/index.d.ts.map +1 -1
- package/dist/gateway/index.js +6 -47
- package/dist/gateway/index.js.map +1 -1
- package/dist/gateway/routes/system.d.ts +1 -4
- package/dist/gateway/routes/system.d.ts.map +1 -1
- package/dist/gateway/routes/system.js +3 -8
- package/dist/gateway/routes/system.js.map +1 -1
- package/dist/gateway/stores.d.ts +0 -4
- package/dist/gateway/stores.d.ts.map +1 -1
- package/dist/gateway/stores.js +2 -10
- package/dist/gateway/stores.js.map +1 -1
- package/dist/gateway/types.d.ts +0 -13
- package/dist/gateway/types.d.ts.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +11 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/models/providers/custom.d.ts.map +1 -1
- package/dist/models/providers/custom.js +3 -2
- package/dist/models/providers/custom.js.map +1 -1
- package/dist/models/providers/openai.d.ts.map +1 -1
- package/dist/models/providers/openai.js +3 -2
- package/dist/models/providers/openai.js.map +1 -1
- package/dist/scheduler/gateway-setup.d.ts +0 -2
- package/dist/scheduler/gateway-setup.d.ts.map +1 -1
- package/dist/scheduler/gateway-setup.js +2 -11
- package/dist/scheduler/gateway-setup.js.map +1 -1
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/index.js +95 -55
- package/dist/scheduler/index.js.map +1 -1
- package/dist/scheduler/validation.js +1 -1
- package/dist/scheduler/validation.js.map +1 -1
- package/dist/scheduler/watcher.d.ts +2 -8
- package/dist/scheduler/watcher.d.ts.map +1 -1
- package/dist/scheduler/watcher.js +7 -104
- package/dist/scheduler/watcher.js.map +1 -1
- package/dist/shared/config/load-agent.js +2 -2
- package/dist/shared/config/load-agent.js.map +1 -1
- package/dist/shared/config/load-project.js +2 -2
- package/dist/shared/config/load-project.js.map +1 -1
- package/dist/shared/config/types.d.ts +10 -2
- package/dist/shared/config/types.d.ts.map +1 -1
- package/dist/shared/constants.d.ts +1 -1
- package/dist/shared/constants.d.ts.map +1 -1
- package/dist/shared/constants.js +2 -2
- package/dist/shared/constants.js.map +1 -1
- package/dist/shared/credential-refs.js +1 -1
- package/dist/shared/credential-refs.js.map +1 -1
- package/dist/shared/paths.d.ts.map +1 -1
- package/dist/shared/paths.js +2 -2
- package/dist/shared/paths.js.map +1 -1
- package/dist/shared/validation.js +1 -1
- package/dist/shared/validation.js.map +1 -1
- package/dist/transport/docker-exec.d.ts +41 -0
- package/dist/transport/docker-exec.d.ts.map +1 -0
- package/dist/transport/docker-exec.js +331 -0
- package/dist/transport/docker-exec.js.map +1 -0
- package/dist/transport/host-user.d.ts +37 -0
- package/dist/transport/host-user.d.ts.map +1 -0
- package/dist/transport/host-user.js +232 -0
- package/dist/transport/host-user.js.map +1 -0
- package/dist/transport/index.d.ts +8 -0
- package/dist/transport/index.d.ts.map +1 -0
- package/dist/transport/index.js +7 -0
- package/dist/transport/index.js.map +1 -0
- package/dist/transport/memory.d.ts +35 -0
- package/dist/transport/memory.d.ts.map +1 -0
- package/dist/transport/memory.js +110 -0
- package/dist/transport/memory.js.map +1 -0
- package/dist/transport/operations.d.ts +68 -0
- package/dist/transport/operations.d.ts.map +1 -0
- package/dist/transport/operations.js +164 -0
- package/dist/transport/operations.js.map +1 -0
- package/dist/transport/ssh.d.ts +43 -0
- package/dist/transport/ssh.d.ts.map +1 -0
- package/dist/transport/ssh.js +225 -0
- package/dist/transport/ssh.js.map +1 -0
- package/dist/transport/transport.d.ts +59 -0
- package/dist/transport/transport.d.ts.map +1 -0
- package/dist/transport/transport.js +29 -0
- package/dist/transport/transport.js.map +1 -0
- package/package.json +1 -1
- package/dist/agents/container-entry.d.ts +0 -31
- package/dist/agents/container-entry.d.ts.map +0 -1
- package/dist/agents/container-entry.js +0 -302
- package/dist/agents/container-entry.js.map +0 -1
- package/dist/agents/container-runner.d.ts +0 -59
- package/dist/agents/container-runner.d.ts.map +0 -1
- package/dist/agents/container-runner.js +0 -472
- package/dist/agents/container-runner.js.map +0 -1
- package/dist/agents/harness/claude-cli-harness.d.ts +0 -15
- package/dist/agents/harness/claude-cli-harness.d.ts.map +0 -1
- package/dist/agents/harness/claude-cli-harness.js +0 -240
- package/dist/agents/harness/claude-cli-harness.js.map +0 -1
- package/dist/agents/harness/consumer.d.ts +0 -31
- package/dist/agents/harness/consumer.d.ts.map +0 -1
- package/dist/agents/harness/consumer.js +0 -161
- package/dist/agents/harness/consumer.js.map +0 -1
- package/dist/agents/harness/factory.d.ts +0 -9
- package/dist/agents/harness/factory.d.ts.map +0 -1
- package/dist/agents/harness/factory.js +0 -25
- package/dist/agents/harness/factory.js.map +0 -1
- package/dist/agents/harness/index.d.ts +0 -9
- package/dist/agents/harness/index.d.ts.map +0 -1
- package/dist/agents/harness/index.js +0 -5
- package/dist/agents/harness/index.js.map +0 -1
- package/dist/agents/harness/pi-harness.d.ts +0 -18
- package/dist/agents/harness/pi-harness.d.ts.map +0 -1
- package/dist/agents/harness/pi-harness.js +0 -259
- package/dist/agents/harness/pi-harness.js.map +0 -1
- package/dist/agents/harness/types.d.ts +0 -57
- package/dist/agents/harness/types.d.ts.map +0 -1
- package/dist/agents/harness/types.js +0 -2
- package/dist/agents/harness/types.js.map +0 -1
- package/dist/agents/session-loop.d.ts +0 -36
- package/dist/agents/session-loop.d.ts.map +0 -1
- package/dist/agents/session-loop.js +0 -216
- package/dist/agents/session-loop.js.map +0 -1
- package/dist/agents/signals.d.ts +0 -34
- package/dist/agents/signals.d.ts.map +0 -1
- package/dist/agents/signals.js +0 -122
- package/dist/agents/signals.js.map +0 -1
- package/dist/cli/commands/claude.d.ts +0 -4
- package/dist/cli/commands/claude.d.ts.map +0 -1
- package/dist/cli/commands/claude.js +0 -6
- package/dist/cli/commands/claude.js.map +0 -1
- package/dist/cli/commands/run-agent.d.ts +0 -14
- package/dist/cli/commands/run-agent.d.ts.map +0 -1
- package/dist/cli/commands/run-agent.js +0 -270
- package/dist/cli/commands/run-agent.js.map +0 -1
- package/dist/docker/cloud-run-runtime.d.ts +0 -48
- package/dist/docker/cloud-run-runtime.d.ts.map +0 -1
- package/dist/docker/cloud-run-runtime.js +0 -490
- package/dist/docker/cloud-run-runtime.js.map +0 -1
- package/dist/docker/image.d.ts +0 -19
- package/dist/docker/image.d.ts.map +0 -1
- package/dist/docker/image.js +0 -111
- package/dist/docker/image.js.map +0 -1
- package/dist/execution/call-dispatcher.d.ts +0 -11
- package/dist/execution/call-dispatcher.d.ts.map +0 -1
- package/dist/execution/call-dispatcher.js +0 -75
- package/dist/execution/call-dispatcher.js.map +0 -1
- package/dist/execution/container-registry.d.ts +0 -42
- package/dist/execution/container-registry.d.ts.map +0 -1
- package/dist/execution/container-registry.js +0 -76
- package/dist/execution/container-registry.js.map +0 -1
- package/dist/execution/image-builder.d.ts +0 -48
- package/dist/execution/image-builder.d.ts.map +0 -1
- package/dist/execution/image-builder.js +0 -155
- package/dist/execution/image-builder.js.map +0 -1
- package/dist/execution/routes/calls.d.ts +0 -18
- package/dist/execution/routes/calls.d.ts.map +0 -1
- package/dist/execution/routes/calls.js +0 -74
- package/dist/execution/routes/calls.js.map +0 -1
- package/dist/execution/routes/locks.d.ts +0 -10
- package/dist/execution/routes/locks.d.ts.map +0 -1
- package/dist/execution/routes/locks.js +0 -166
- package/dist/execution/routes/locks.js.map +0 -1
- package/dist/execution/routes/shutdown.d.ts +0 -5
- package/dist/execution/routes/shutdown.d.ts.map +0 -1
- package/dist/execution/routes/shutdown.js +0 -24
- package/dist/execution/routes/shutdown.js.map +0 -1
- package/dist/execution/routes/signals.d.ts +0 -12
- package/dist/execution/routes/signals.d.ts.map +0 -1
- package/dist/execution/routes/signals.js +0 -123
- package/dist/execution/routes/signals.js.map +0 -1
- package/dist/execution/types.d.ts +0 -23
- package/dist/execution/types.d.ts.map +0 -1
- package/dist/execution/types.js +0 -2
- package/dist/execution/types.js.map +0 -1
- package/dist/frontend/assets/index-a78B5S5H.js.map +0 -1
- package/dist/gateway/routes/execution.d.ts +0 -24
- package/dist/gateway/routes/execution.d.ts.map +0 -1
- package/dist/gateway/routes/execution.js +0 -13
- package/dist/gateway/routes/execution.js.map +0 -1
- package/dist/scheduler/orphan-recovery.d.ts +0 -25
- package/dist/scheduler/orphan-recovery.d.ts.map +0 -1
- package/dist/scheduler/orphan-recovery.js +0 -144
- package/dist/scheduler/orphan-recovery.js.map +0 -1
package/dist/agents/signals.d.ts
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* File-based signal IPC for agent communication.
|
|
3
|
-
*
|
|
4
|
-
* Shell commands (al-rerun, al-status, al-return, al-exit) write
|
|
5
|
-
* signal files to $AL_SIGNAL_DIR. Runners read them after the session ends
|
|
6
|
-
* via readSignals(). In container mode, commands also POST to $GATEWAY_URL
|
|
7
|
-
* for real-time TUI updates.
|
|
8
|
-
*/
|
|
9
|
-
export interface AgentSignals {
|
|
10
|
-
rerun: boolean;
|
|
11
|
-
status?: string;
|
|
12
|
-
returnValue?: string;
|
|
13
|
-
exitCode?: number;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Ensure the signal directory exists and clean any stale signal files.
|
|
17
|
-
* Scripts are baked into the image at /app/bin/ — this only creates the
|
|
18
|
-
* per-run signal directory.
|
|
19
|
-
*/
|
|
20
|
-
export declare function ensureSignalDir(signalDir: string): void;
|
|
21
|
-
/**
|
|
22
|
-
* Install signal shell commands into a bin directory.
|
|
23
|
-
* The bin dir should be prepended to PATH so agents can use these commands.
|
|
24
|
-
*
|
|
25
|
-
* In container mode, scripts are baked into the image at /app/bin/ and this
|
|
26
|
-
* function is not called. It remains for host-mode agent runners.
|
|
27
|
-
*/
|
|
28
|
-
export declare function installSignalCommands(binDir: string, signalDir: string): void;
|
|
29
|
-
/**
|
|
30
|
-
* Read signal files written by the shell commands.
|
|
31
|
-
* Call this after the agent session ends.
|
|
32
|
-
*/
|
|
33
|
-
export declare function readSignals(signalDir: string): AgentSignals;
|
|
34
|
-
//# sourceMappingURL=signals.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signals.d.ts","sourceRoot":"","sources":["../../src/agents/signals.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAEvD;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAgE7E;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,CAqC3D"}
|
package/dist/agents/signals.js
DELETED
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* File-based signal IPC for agent communication.
|
|
3
|
-
*
|
|
4
|
-
* Shell commands (al-rerun, al-status, al-return, al-exit) write
|
|
5
|
-
* signal files to $AL_SIGNAL_DIR. Runners read them after the session ends
|
|
6
|
-
* via readSignals(). In container mode, commands also POST to $GATEWAY_URL
|
|
7
|
-
* for real-time TUI updates.
|
|
8
|
-
*/
|
|
9
|
-
import { mkdirSync, writeFileSync, readFileSync, existsSync } from "fs";
|
|
10
|
-
import { join, dirname } from "path";
|
|
11
|
-
import { fileURLToPath } from "url";
|
|
12
|
-
/**
|
|
13
|
-
* Ensure the signal directory exists and clean any stale signal files.
|
|
14
|
-
* Scripts are baked into the image at /app/bin/ — this only creates the
|
|
15
|
-
* per-run signal directory.
|
|
16
|
-
*/
|
|
17
|
-
export function ensureSignalDir(signalDir) {
|
|
18
|
-
mkdirSync(signalDir, { recursive: true });
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Install signal shell commands into a bin directory.
|
|
22
|
-
* The bin dir should be prepended to PATH so agents can use these commands.
|
|
23
|
-
*
|
|
24
|
-
* In container mode, scripts are baked into the image at /app/bin/ and this
|
|
25
|
-
* function is not called. It remains for host-mode agent runners.
|
|
26
|
-
*/
|
|
27
|
-
export function installSignalCommands(binDir, signalDir) {
|
|
28
|
-
mkdirSync(binDir, { recursive: true });
|
|
29
|
-
mkdirSync(signalDir, { recursive: true });
|
|
30
|
-
// al-rerun — request an immediate rerun
|
|
31
|
-
const alRerun = `#!/bin/sh
|
|
32
|
-
touch "$AL_SIGNAL_DIR/rerun"
|
|
33
|
-
if [ -n "$GATEWAY_URL" ] && [ -n "$SHUTDOWN_SECRET" ]; then
|
|
34
|
-
curl -s -X POST "$GATEWAY_URL/signals/rerun" \\
|
|
35
|
-
-H 'Content-Type: application/json' \\
|
|
36
|
-
-d '{"secret":"'"$SHUTDOWN_SECRET"'"}' > /dev/null 2>&1 || true
|
|
37
|
-
fi
|
|
38
|
-
echo '{"ok":true}'
|
|
39
|
-
`;
|
|
40
|
-
// al-status — update status text
|
|
41
|
-
const alStatus = `#!/bin/sh
|
|
42
|
-
if [ -z "$1" ]; then echo '{"ok":false,"error":"usage: al-status \\"<text>\\""}'; exit 1; fi
|
|
43
|
-
printf '%s' "$1" > "$AL_SIGNAL_DIR/status"
|
|
44
|
-
if [ -n "$GATEWAY_URL" ] && [ -n "$SHUTDOWN_SECRET" ]; then
|
|
45
|
-
curl -s -X POST "$GATEWAY_URL/signals/status" \\
|
|
46
|
-
-H 'Content-Type: application/json' \\
|
|
47
|
-
-d "$(printf '{"secret":"%s","text":"%s"}' "$SHUTDOWN_SECRET" "$1")" > /dev/null 2>&1 || true
|
|
48
|
-
fi
|
|
49
|
-
echo '{"ok":true}'
|
|
50
|
-
`;
|
|
51
|
-
// al-return — return a value to the calling agent (arg or stdin)
|
|
52
|
-
const alReturn = `#!/bin/sh
|
|
53
|
-
if [ $# -gt 0 ]; then
|
|
54
|
-
VALUE="$*"
|
|
55
|
-
else
|
|
56
|
-
VALUE=$(cat)
|
|
57
|
-
fi
|
|
58
|
-
printf '%s' "$VALUE" > "$AL_SIGNAL_DIR/return"
|
|
59
|
-
if [ -n "$GATEWAY_URL" ] && [ -n "$SHUTDOWN_SECRET" ]; then
|
|
60
|
-
PAYLOAD=$(printf '{"secret":"%s","value":%s}' "$SHUTDOWN_SECRET" "$(printf '%s' "$VALUE" | jq -Rs .)")
|
|
61
|
-
curl -s -X POST "$GATEWAY_URL/signals/return" \\
|
|
62
|
-
-H 'Content-Type: application/json' \\
|
|
63
|
-
-d "$PAYLOAD" > /dev/null 2>&1 || true
|
|
64
|
-
fi
|
|
65
|
-
echo '{"ok":true}'
|
|
66
|
-
`;
|
|
67
|
-
// al-exit — terminate with an exit code
|
|
68
|
-
// Uses string concatenation to avoid template literal ${} conflicts
|
|
69
|
-
const alExit = [
|
|
70
|
-
"#!/bin/sh",
|
|
71
|
-
'CODE="${1:-15}"',
|
|
72
|
-
"printf '%s' \"$CODE\" > \"$AL_SIGNAL_DIR/exit\"",
|
|
73
|
-
"echo '{\"ok\":true}'",
|
|
74
|
-
"",
|
|
75
|
-
].join("\n");
|
|
76
|
-
writeFileSync(join(binDir, "al-rerun"), alRerun, { mode: 0o755 });
|
|
77
|
-
writeFileSync(join(binDir, "al-status"), alStatus, { mode: 0o755 });
|
|
78
|
-
writeFileSync(join(binDir, "al-return"), alReturn, { mode: 0o755 });
|
|
79
|
-
writeFileSync(join(binDir, "al-exit"), alExit, { mode: 0o755 });
|
|
80
|
-
// Copy environment helper scripts from docker/bin/ (included in the npm package).
|
|
81
|
-
const thisDir = dirname(fileURLToPath(import.meta.url));
|
|
82
|
-
const packageRoot = join(thisDir, "..", "..");
|
|
83
|
-
const exportSrc = join(packageRoot, "docker", "bin", "al-export");
|
|
84
|
-
writeFileSync(join(binDir, "al-export"), readFileSync(exportSrc), { mode: 0o755 });
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Read signal files written by the shell commands.
|
|
88
|
-
* Call this after the agent session ends.
|
|
89
|
-
*/
|
|
90
|
-
export function readSignals(signalDir) {
|
|
91
|
-
const signals = {
|
|
92
|
-
rerun: false,
|
|
93
|
-
};
|
|
94
|
-
if (!existsSync(signalDir)) {
|
|
95
|
-
return signals;
|
|
96
|
-
}
|
|
97
|
-
// rerun
|
|
98
|
-
if (existsSync(join(signalDir, "rerun"))) {
|
|
99
|
-
signals.rerun = true;
|
|
100
|
-
}
|
|
101
|
-
// status
|
|
102
|
-
const statusPath = join(signalDir, "status");
|
|
103
|
-
if (existsSync(statusPath)) {
|
|
104
|
-
signals.status = readFileSync(statusPath, "utf-8").trim();
|
|
105
|
-
}
|
|
106
|
-
// return value
|
|
107
|
-
const returnPath = join(signalDir, "return");
|
|
108
|
-
if (existsSync(returnPath)) {
|
|
109
|
-
signals.returnValue = readFileSync(returnPath, "utf-8").trim();
|
|
110
|
-
}
|
|
111
|
-
// exit code
|
|
112
|
-
const exitPath = join(signalDir, "exit");
|
|
113
|
-
if (existsSync(exitPath)) {
|
|
114
|
-
const raw = readFileSync(exitPath, "utf-8").trim();
|
|
115
|
-
const code = parseInt(raw, 10);
|
|
116
|
-
if (!isNaN(code)) {
|
|
117
|
-
signals.exitCode = code;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
return signals;
|
|
121
|
-
}
|
|
122
|
-
//# sourceMappingURL=signals.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signals.js","sourceRoot":"","sources":["../../src/agents/signals.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/claude.ts"],"names":[],"mappings":"AAAA,wBAAsB,IAAI,CAAC,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAIpE"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export async function init(_opts) {
|
|
2
|
-
console.log("To install Action Llama skills for Claude Code, run:\n");
|
|
3
|
-
console.log(" npx skills add Action-Llama/skill\n");
|
|
4
|
-
console.log("This installs the al plugin with skills for creating, running, and debugging agents.");
|
|
5
|
-
}
|
|
6
|
-
//# sourceMappingURL=claude.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../src/cli/commands/claude.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,KAA0B;IACnD,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;IACrD,OAAO,CAAC,GAAG,CAAC,sFAAsF,CAAC,CAAC;AACtG,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Hidden `_run-agent` subcommand — entry point for host-user mode.
|
|
3
|
-
*
|
|
4
|
-
* Invoked by HostUserRuntime as: sudo -u <user> al _run-agent <agent> --project <dir>
|
|
5
|
-
*
|
|
6
|
-
* Reuses the same agent harness as container-entry.ts but:
|
|
7
|
-
* - Reads credentials from AL_CREDENTIALS_PATH (not /credentials)
|
|
8
|
-
* - Runs in AL_WORK_DIR (not /tmp)
|
|
9
|
-
* - No Docker, no image, no volume mounts
|
|
10
|
-
*/
|
|
11
|
-
export declare function execute(agent: string, opts: {
|
|
12
|
-
project: string;
|
|
13
|
-
}): Promise<void>;
|
|
14
|
-
//# sourceMappingURL=run-agent.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"run-agent.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/run-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAuHH,wBAAsB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA6KrF"}
|
|
@@ -1,270 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Hidden `_run-agent` subcommand — entry point for host-user mode.
|
|
3
|
-
*
|
|
4
|
-
* Invoked by HostUserRuntime as: sudo -u <user> al _run-agent <agent> --project <dir>
|
|
5
|
-
*
|
|
6
|
-
* Reuses the same agent harness as container-entry.ts but:
|
|
7
|
-
* - Reads credentials from AL_CREDENTIALS_PATH (not /credentials)
|
|
8
|
-
* - Runs in AL_WORK_DIR (not /tmp)
|
|
9
|
-
* - No Docker, no image, no volume mounts
|
|
10
|
-
*/
|
|
11
|
-
import { existsSync, readFileSync, readdirSync, statSync, mkdirSync, writeFileSync } from "fs";
|
|
12
|
-
import { resolve, dirname } from "path";
|
|
13
|
-
import { fileURLToPath } from "url";
|
|
14
|
-
import { setMaxListeners } from "node:events";
|
|
15
|
-
import { loadAgentConfig, loadAgentBody, loadGlobalConfig } from "../../shared/config.js";
|
|
16
|
-
import { DEFAULT_AGENT_TIMEOUT } from "../../shared/constants.js";
|
|
17
|
-
import { parseCredentialRef } from "../../shared/credentials.js";
|
|
18
|
-
import { builtinCredentials } from "../../credentials/builtins/index.js";
|
|
19
|
-
import { buildPromptSkeleton } from "../../agents/prompt.js";
|
|
20
|
-
import { resolveHarnessEnv } from "../../agents/credential-setup.js";
|
|
21
|
-
// The pi library creates AbortSignals shared across parallel tool/API calls,
|
|
22
|
-
// which accumulate >10 abort listeners and trigger a benign Node.js warning.
|
|
23
|
-
// Patch AbortController to raise the limit on every new signal.
|
|
24
|
-
const _OrigAC = globalThis.AbortController;
|
|
25
|
-
globalThis.AbortController = class extends _OrigAC {
|
|
26
|
-
constructor() { super(); setMaxListeners(20, this.signal); }
|
|
27
|
-
};
|
|
28
|
-
function emitLog(level, msg, data) {
|
|
29
|
-
console.log(JSON.stringify({ _log: true, level, msg, ...data, ts: Date.now() }));
|
|
30
|
-
}
|
|
31
|
-
function loadCredentialsFromPath(credPath) {
|
|
32
|
-
const bundle = {};
|
|
33
|
-
for (const type of readdirSync(credPath)) {
|
|
34
|
-
const typePath = `${credPath}/${type}`;
|
|
35
|
-
try {
|
|
36
|
-
if (!statSync(typePath).isDirectory())
|
|
37
|
-
continue;
|
|
38
|
-
}
|
|
39
|
-
catch {
|
|
40
|
-
continue;
|
|
41
|
-
}
|
|
42
|
-
bundle[type] = {};
|
|
43
|
-
for (const instance of readdirSync(typePath)) {
|
|
44
|
-
const instPath = `${typePath}/${instance}`;
|
|
45
|
-
try {
|
|
46
|
-
if (!statSync(instPath).isDirectory())
|
|
47
|
-
continue;
|
|
48
|
-
}
|
|
49
|
-
catch {
|
|
50
|
-
continue;
|
|
51
|
-
}
|
|
52
|
-
bundle[type][instance] = {};
|
|
53
|
-
for (const field of readdirSync(instPath)) {
|
|
54
|
-
bundle[type][instance][field] = readFileSync(`${instPath}/${field}`, "utf-8").trim();
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
return bundle;
|
|
59
|
-
}
|
|
60
|
-
function loadAndInjectCredentials(agentConfig, credPath) {
|
|
61
|
-
const bundle = loadCredentialsFromPath(credPath);
|
|
62
|
-
emitLog("info", "credentials loaded from host-user staging dir");
|
|
63
|
-
// Load provider API keys
|
|
64
|
-
const providerKeys = new Map();
|
|
65
|
-
for (const mc of agentConfig.models) {
|
|
66
|
-
if (mc.authType === "pi_auth")
|
|
67
|
-
continue;
|
|
68
|
-
const credType = `${mc.provider}_key`;
|
|
69
|
-
if (providerKeys.has(mc.provider))
|
|
70
|
-
continue;
|
|
71
|
-
const key = bundle[credType]?.default?.token;
|
|
72
|
-
if (key)
|
|
73
|
-
providerKeys.set(mc.provider, key);
|
|
74
|
-
}
|
|
75
|
-
if (providerKeys.size === 0 && agentConfig.models.every((m) => m.authType !== "pi_auth")) {
|
|
76
|
-
throw new Error("missing provider API key credentials");
|
|
77
|
-
}
|
|
78
|
-
// Inject env vars from credential definitions
|
|
79
|
-
for (const credRef of agentConfig.credentials) {
|
|
80
|
-
const { type, instance } = parseCredentialRef(credRef);
|
|
81
|
-
const def = builtinCredentials[type];
|
|
82
|
-
if (!def?.envVars)
|
|
83
|
-
continue;
|
|
84
|
-
const fields = bundle[type]?.[instance] || {};
|
|
85
|
-
for (const [fieldName, envVar] of Object.entries(def.envVars)) {
|
|
86
|
-
if (fields[fieldName]) {
|
|
87
|
-
process.env[envVar] = fields[fieldName];
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
if (type === "github_token" && fields.token) {
|
|
91
|
-
process.env.GH_TOKEN = fields.token;
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
// Git HTTPS credential helper
|
|
95
|
-
if (process.env.GITHUB_TOKEN) {
|
|
96
|
-
process.env.GIT_TERMINAL_PROMPT = "0";
|
|
97
|
-
const idx = parseInt(process.env.GIT_CONFIG_COUNT || "0", 10);
|
|
98
|
-
process.env.GIT_CONFIG_COUNT = String(idx + 1);
|
|
99
|
-
process.env[`GIT_CONFIG_KEY_${idx}`] = "credential.helper";
|
|
100
|
-
process.env[`GIT_CONFIG_VALUE_${idx}`] = `!f() { echo username=x-access-token; echo password=$GITHUB_TOKEN; }; f`;
|
|
101
|
-
emitLog("info", "git HTTPS credential helper configured");
|
|
102
|
-
}
|
|
103
|
-
// SSH key setup
|
|
104
|
-
const gitSshRef = agentConfig.credentials.find((ref) => parseCredentialRef(ref).type === "git_ssh");
|
|
105
|
-
if (gitSshRef) {
|
|
106
|
-
const { instance } = parseCredentialRef(gitSshRef);
|
|
107
|
-
const sshKey = bundle.git_ssh?.[instance]?.id_rsa;
|
|
108
|
-
if (sshKey) {
|
|
109
|
-
const sshDir = resolve(process.env.AL_WORK_DIR || "/tmp", ".ssh");
|
|
110
|
-
mkdirSync(sshDir, { recursive: true, mode: 0o700 });
|
|
111
|
-
const keyPath = `${sshDir}/id_rsa`;
|
|
112
|
-
writeFileSync(keyPath, sshKey + "\n", { mode: 0o600 });
|
|
113
|
-
process.env.GIT_SSH_COMMAND = `ssh -i "${keyPath}" -o StrictHostKeyChecking=accept-new -o IdentitiesOnly=yes`;
|
|
114
|
-
emitLog("info", "SSH key configured for git");
|
|
115
|
-
}
|
|
116
|
-
const gitName = bundle.git_ssh?.[instance]?.username;
|
|
117
|
-
if (gitName) {
|
|
118
|
-
process.env.GIT_AUTHOR_NAME = gitName;
|
|
119
|
-
process.env.GIT_COMMITTER_NAME = gitName;
|
|
120
|
-
}
|
|
121
|
-
const gitEmail = bundle.git_ssh?.[instance]?.email;
|
|
122
|
-
if (gitEmail) {
|
|
123
|
-
process.env.GIT_AUTHOR_EMAIL = gitEmail;
|
|
124
|
-
process.env.GIT_COMMITTER_EMAIL = gitEmail;
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
return providerKeys;
|
|
128
|
-
}
|
|
129
|
-
export async function execute(agent, opts) {
|
|
130
|
-
const projectPath = resolve(opts.project);
|
|
131
|
-
const credPath = process.env.AL_CREDENTIALS_PATH;
|
|
132
|
-
const workDir = process.env.AL_WORK_DIR;
|
|
133
|
-
if (!credPath) {
|
|
134
|
-
throw new Error("AL_CREDENTIALS_PATH not set — this command should be invoked by HostUserRuntime");
|
|
135
|
-
}
|
|
136
|
-
// Set working directory
|
|
137
|
-
if (workDir) {
|
|
138
|
-
process.chdir(workDir);
|
|
139
|
-
process.env.HOME = workDir;
|
|
140
|
-
}
|
|
141
|
-
// Scope the legacy shell export file to this agent instance.
|
|
142
|
-
// In Docker, /tmp/env.sh is fine because each container is isolated.
|
|
143
|
-
// In host-user mode, all instances share /tmp, so we must scope per-run.
|
|
144
|
-
const envFile = resolve(workDir || "/tmp", ".env.sh");
|
|
145
|
-
process.env.AL_ENV_FILE = envFile;
|
|
146
|
-
// Add bin scripts (rlock, al-status, etc.) to PATH so the agent can find them.
|
|
147
|
-
// In Docker these live at /app/bin; in host-user mode we resolve from the package.
|
|
148
|
-
const binDir = resolve(dirname(fileURLToPath(import.meta.url)), "../../../docker/bin");
|
|
149
|
-
if (existsSync(binDir)) {
|
|
150
|
-
process.env.PATH = `${binDir}:${process.env.PATH || ""}`;
|
|
151
|
-
}
|
|
152
|
-
emitLog("info", "host-user agent starting", { agent, workDir, credPath });
|
|
153
|
-
// Load agent config from project
|
|
154
|
-
const agentConfig = loadAgentConfig(projectPath, agent);
|
|
155
|
-
const skillBody = loadAgentBody(projectPath, agent);
|
|
156
|
-
const globalConfig = loadGlobalConfig(projectPath);
|
|
157
|
-
const timeoutSeconds = agentConfig.timeout ?? globalConfig.local?.timeout ?? DEFAULT_AGENT_TIMEOUT;
|
|
158
|
-
// Load and inject credentials
|
|
159
|
-
const providerKeys = loadAndInjectCredentials(agentConfig, credPath);
|
|
160
|
-
// Container-level timeout — self-terminates even if scheduler dies
|
|
161
|
-
const timer = setTimeout(() => {
|
|
162
|
-
emitLog("error", "agent timeout reached, self-terminating", { timeoutSeconds });
|
|
163
|
-
process.exit(124);
|
|
164
|
-
}, timeoutSeconds * 1000);
|
|
165
|
-
timer.unref();
|
|
166
|
-
// Wait for gateway if configured
|
|
167
|
-
const gatewayUrl = process.env.GATEWAY_URL;
|
|
168
|
-
if (gatewayUrl) {
|
|
169
|
-
const maxAttempts = 30;
|
|
170
|
-
for (let i = 0; i < maxAttempts; i++) {
|
|
171
|
-
try {
|
|
172
|
-
const res = await fetch(`${gatewayUrl}/health`, { signal: AbortSignal.timeout(2000) });
|
|
173
|
-
if (res.ok)
|
|
174
|
-
break;
|
|
175
|
-
}
|
|
176
|
-
catch { /* retry */ }
|
|
177
|
-
await new Promise((r) => setTimeout(r, 500));
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
// Run pre hooks
|
|
181
|
-
if (agentConfig.hooks?.pre && agentConfig.hooks.pre.length > 0) {
|
|
182
|
-
const { runHooks } = await import("../../hooks/runner.js");
|
|
183
|
-
await runHooks(agentConfig.hooks.pre, "pre", {
|
|
184
|
-
env: { ...process.env },
|
|
185
|
-
logger: emitLog,
|
|
186
|
-
});
|
|
187
|
-
}
|
|
188
|
-
// Process context injection
|
|
189
|
-
const { processContextInjection } = await import("../../agents/context-injection.js");
|
|
190
|
-
const processedBody = processContextInjection(skillBody || `# ${agentConfig.name} Agent\n\nCustom agent.\n`, { ...process.env });
|
|
191
|
-
// Build prompt
|
|
192
|
-
const skills = { locking: !!gatewayUrl, hostUser: true };
|
|
193
|
-
const skeleton = buildPromptSkeleton(agentConfig, skills);
|
|
194
|
-
const dynamicSuffix = process.env.PROMPT || "";
|
|
195
|
-
const fullPrompt = dynamicSuffix ? `${skeleton}\n\n${dynamicSuffix}` : skeleton;
|
|
196
|
-
// Set up agent session
|
|
197
|
-
const { DefaultResourceLoader, SettingsManager, } = await import("@mariozechner/pi-coding-agent");
|
|
198
|
-
const { ensureSignalDir, readSignals } = await import("../../agents/signals.js");
|
|
199
|
-
const { getExitCodeMessage } = await import("../../shared/exit-codes.js");
|
|
200
|
-
const { consumeHarness, createHarness } = await import("../../agents/harness/index.js");
|
|
201
|
-
// Signal directory
|
|
202
|
-
const signalDir = resolve(workDir || "/tmp", "signals");
|
|
203
|
-
ensureSignalDir(signalDir);
|
|
204
|
-
process.env.AL_SIGNAL_DIR = signalDir;
|
|
205
|
-
const cwd = workDir || "/tmp";
|
|
206
|
-
const resourceLoader = new DefaultResourceLoader({
|
|
207
|
-
noExtensions: true,
|
|
208
|
-
agentsFilesOverride: () => ({
|
|
209
|
-
agentsFiles: [{ path: "/tmp/SKILL.md", content: processedBody }],
|
|
210
|
-
}),
|
|
211
|
-
});
|
|
212
|
-
await resourceLoader.reload();
|
|
213
|
-
const settingsManager = SettingsManager.inMemory({
|
|
214
|
-
compaction: { enabled: true },
|
|
215
|
-
retry: { enabled: true, maxRetries: 2 },
|
|
216
|
-
});
|
|
217
|
-
const harness = createHarness(agentConfig, {
|
|
218
|
-
resourceLoader,
|
|
219
|
-
settingsManager,
|
|
220
|
-
providerKeys,
|
|
221
|
-
});
|
|
222
|
-
let abortedDueToErrors = false;
|
|
223
|
-
const loopResult = await consumeHarness(harness, harness.run(fullPrompt, {
|
|
224
|
-
cwd,
|
|
225
|
-
env: {
|
|
226
|
-
...resolveHarnessEnv(agentConfig, providerKeys),
|
|
227
|
-
},
|
|
228
|
-
}), {
|
|
229
|
-
log: emitLog,
|
|
230
|
-
onUnrecoverableAbort: () => { abortedDueToErrors = true; },
|
|
231
|
-
});
|
|
232
|
-
const { outputText } = loopResult;
|
|
233
|
-
clearTimeout(timer);
|
|
234
|
-
// Post hooks
|
|
235
|
-
if (agentConfig.hooks?.post && agentConfig.hooks.post.length > 0) {
|
|
236
|
-
try {
|
|
237
|
-
const { runHooks } = await import("../../hooks/runner.js");
|
|
238
|
-
await runHooks(agentConfig.hooks.post, "post", {
|
|
239
|
-
env: { ...process.env },
|
|
240
|
-
logger: emitLog,
|
|
241
|
-
});
|
|
242
|
-
}
|
|
243
|
-
catch (err) {
|
|
244
|
-
emitLog("error", "post hook failed", { error: err?.message });
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
if (abortedDueToErrors)
|
|
248
|
-
process.exit(1);
|
|
249
|
-
if (loopResult.allModelsExhausted) {
|
|
250
|
-
emitLog("error", "all models exhausted — rate limited across all retries");
|
|
251
|
-
process.exit(12);
|
|
252
|
-
}
|
|
253
|
-
// Read signals
|
|
254
|
-
const signals = readSignals(signalDir);
|
|
255
|
-
if (signals.exitCode !== undefined) {
|
|
256
|
-
const reason = getExitCodeMessage(signals.exitCode);
|
|
257
|
-
emitLog("info", "signal-result", { type: "exit", exitCode: signals.exitCode, reason });
|
|
258
|
-
process.exit(signals.exitCode);
|
|
259
|
-
}
|
|
260
|
-
if (signals.rerun) {
|
|
261
|
-
emitLog("info", "signal-result", { type: "rerun" });
|
|
262
|
-
process.exit(42);
|
|
263
|
-
}
|
|
264
|
-
if (signals.returnValue !== undefined) {
|
|
265
|
-
emitLog("info", "signal-result", { type: "return", value: signals.returnValue.slice(0, 1000) });
|
|
266
|
-
}
|
|
267
|
-
emitLog("info", "run completed", { outputLength: outputText.length });
|
|
268
|
-
process.exit(0);
|
|
269
|
-
}
|
|
270
|
-
//# sourceMappingURL=run-agent.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"run-agent.js","sourceRoot":"","sources":["../../../src/cli/commands/run-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Google Cloud Run Jobs runtime.
|
|
3
|
-
* Implements Runtime and ContainerRuntime by launching agents as Cloud Run Jobs.
|
|
4
|
-
*/
|
|
5
|
-
import type { Runtime, ContainerRuntime, RuntimeLaunchOpts, RuntimeCredentials, BuildImageOpts, RunningAgent } from "./runtime.js";
|
|
6
|
-
import type { GcpAuth } from "../cloud/gcp/auth.js";
|
|
7
|
-
export interface CloudRunRuntimeConfig {
|
|
8
|
-
auth: GcpAuth;
|
|
9
|
-
project: string;
|
|
10
|
-
region: string;
|
|
11
|
-
artifactRegistry: string;
|
|
12
|
-
serviceAccount?: string;
|
|
13
|
-
}
|
|
14
|
-
export declare class CloudRunRuntime implements Runtime, ContainerRuntime {
|
|
15
|
-
readonly needsGateway = true;
|
|
16
|
-
private config;
|
|
17
|
-
/** Map from jobId -> executionName (to support waitForExit) */
|
|
18
|
-
private executionNames;
|
|
19
|
-
constructor(config: CloudRunRuntimeConfig);
|
|
20
|
-
private get auth();
|
|
21
|
-
private get project();
|
|
22
|
-
private get region();
|
|
23
|
-
private get artifactRegistry();
|
|
24
|
-
prepareCredentials(credRefs: string[]): Promise<RuntimeCredentials>;
|
|
25
|
-
cleanupCredentials(creds: RuntimeCredentials): void;
|
|
26
|
-
buildImage(opts: BuildImageOpts): Promise<string>;
|
|
27
|
-
pushImage(localImage: string): Promise<string>;
|
|
28
|
-
private _dockerExec;
|
|
29
|
-
launch(opts: RuntimeLaunchOpts): Promise<string>;
|
|
30
|
-
isAgentRunning(agentName: string): Promise<boolean>;
|
|
31
|
-
listRunningAgents(): Promise<RunningAgent[]>;
|
|
32
|
-
kill(runId: string): Promise<void>;
|
|
33
|
-
remove(runId: string): Promise<void>;
|
|
34
|
-
streamLogs(runId: string, onLine: (line: string) => void, _onStderr?: (text: string) => void): {
|
|
35
|
-
stop: () => void;
|
|
36
|
-
};
|
|
37
|
-
waitForExit(runId: string, timeoutSeconds: number): Promise<number>;
|
|
38
|
-
private _extractExitCode;
|
|
39
|
-
fetchLogs(agentName: string, limit: number, _taskId?: string): Promise<string[]>;
|
|
40
|
-
followLogs(agentName: string, onLine: (line: string) => void, onStderr?: (text: string) => void, _taskId?: string): {
|
|
41
|
-
stop: () => void;
|
|
42
|
-
};
|
|
43
|
-
getTaskUrl(runId: string): string | null;
|
|
44
|
-
inspectContainer(_containerName: string): Promise<{
|
|
45
|
-
env: Record<string, string>;
|
|
46
|
-
} | null>;
|
|
47
|
-
}
|
|
48
|
-
//# sourceMappingURL=cloud-run-runtime.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cloud-run-runtime.d.ts","sourceRoot":"","sources":["../../src/docker/cloud-run-runtime.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EACV,OAAO,EACP,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAElB,cAAc,EACd,YAAY,EACb,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAqCpD,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAaD,qBAAa,eAAgB,YAAW,OAAO,EAAE,gBAAgB;IAC/D,QAAQ,CAAC,YAAY,QAAQ;IAE7B,OAAO,CAAC,MAAM,CAAwB;IACtC,+DAA+D;IAC/D,OAAO,CAAC,cAAc,CAA6B;gBAEvC,MAAM,EAAE,qBAAqB;IAIzC,OAAO,KAAK,IAAI,GAA+B;IAC/C,OAAO,KAAK,OAAO,GAAkC;IACrD,OAAO,KAAK,MAAM,GAAiC;IACnD,OAAO,KAAK,gBAAgB,GAA2C;IAIjE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAsCzE,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI;IAW7C,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IA+GjD,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsBpD,OAAO,CAAC,WAAW;IAeb,MAAM,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IAiEhD,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAsBnD,iBAAiB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAiC5C,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASlC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM1C,UAAU,CACR,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAC9B,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GACjC;QAAE,IAAI,EAAE,MAAM,IAAI,CAAA;KAAE;IAmCjB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAmB3D,gBAAgB;IA+BxB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IA0BtF,UAAU,CACR,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAC9B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACjC,OAAO,CAAC,EAAE,MAAM,GACf;QAAE,IAAI,EAAE,MAAM,IAAI,CAAA;KAAE;IAyCvB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIlC,gBAAgB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,IAAI,CAAC;CAKhG"}
|