@relayflows/core 0.0.1 → 1.0.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/agent-handle.d.ts +27 -0
- package/dist/agent-handle.d.ts.map +1 -0
- package/dist/agent-handle.js +32 -0
- package/dist/agent-handle.js.map +1 -0
- package/dist/api-executor.d.ts +16 -0
- package/dist/api-executor.d.ts.map +1 -0
- package/dist/api-executor.js +94 -0
- package/dist/api-executor.js.map +1 -0
- package/dist/barrier.d.ts +72 -0
- package/dist/barrier.d.ts.map +1 -0
- package/dist/barrier.js +162 -0
- package/dist/barrier.js.map +1 -0
- package/dist/budget-tracker.d.ts +75 -0
- package/dist/budget-tracker.d.ts.map +1 -0
- package/dist/budget-tracker.js +184 -0
- package/dist/budget-tracker.js.map +1 -0
- package/dist/builder.d.ts +229 -0
- package/dist/builder.d.ts.map +1 -0
- package/dist/builder.js +430 -0
- package/dist/builder.js.map +1 -0
- package/dist/builtin-templates/bug-fix.yaml +139 -0
- package/dist/builtin-templates/code-review.yaml +137 -0
- package/dist/builtin-templates/competitive.yaml +107 -0
- package/dist/builtin-templates/documentation.yaml +128 -0
- package/dist/builtin-templates/feature-dev.yaml +146 -0
- package/dist/builtin-templates/refactor.yaml +145 -0
- package/dist/builtin-templates/review-loop.yaml +227 -0
- package/dist/builtin-templates/security-audit.yaml +139 -0
- package/dist/channel-messenger.d.ts +28 -0
- package/dist/channel-messenger.d.ts.map +1 -0
- package/dist/channel-messenger.js +275 -0
- package/dist/channel-messenger.js.map +1 -0
- package/dist/cli-registry.d.ts +77 -0
- package/dist/cli-registry.d.ts.map +1 -0
- package/dist/cli-registry.js +268 -0
- package/dist/cli-registry.js.map +1 -0
- package/dist/cli-session-collector.d.ts +39 -0
- package/dist/cli-session-collector.d.ts.map +1 -0
- package/dist/cli-session-collector.js +23 -0
- package/dist/cli-session-collector.js.map +1 -0
- package/dist/cli.d.ts +11 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +395 -0
- package/dist/cli.js.map +1 -0
- package/dist/cloud-runner.d.ts +15 -0
- package/dist/cloud-runner.d.ts.map +1 -0
- package/dist/cloud-runner.js +41 -0
- package/dist/cloud-runner.js.map +1 -0
- package/dist/cloud-schedules.d.ts +3 -0
- package/dist/cloud-schedules.d.ts.map +1 -0
- package/dist/cloud-schedules.js +2 -0
- package/dist/cloud-schedules.js.map +1 -0
- package/dist/collectors/claude.d.ts +6 -0
- package/dist/collectors/claude.d.ts.map +1 -0
- package/dist/collectors/claude.js +330 -0
- package/dist/collectors/claude.js.map +1 -0
- package/dist/collectors/codex.d.ts +18 -0
- package/dist/collectors/codex.d.ts.map +1 -0
- package/dist/collectors/codex.js +265 -0
- package/dist/collectors/codex.js.map +1 -0
- package/dist/collectors/opencode.d.ts +6 -0
- package/dist/collectors/opencode.d.ts.map +1 -0
- package/dist/collectors/opencode.js +204 -0
- package/dist/collectors/opencode.js.map +1 -0
- package/dist/coordinator.d.ts +73 -0
- package/dist/coordinator.d.ts.map +1 -0
- package/dist/coordinator.js +647 -0
- package/dist/coordinator.js.map +1 -0
- package/dist/custom-steps.d.ts +73 -0
- package/dist/custom-steps.d.ts.map +1 -0
- package/dist/custom-steps.js +321 -0
- package/dist/custom-steps.js.map +1 -0
- package/dist/default-logger.d.ts +9 -0
- package/dist/default-logger.d.ts.map +1 -0
- package/dist/default-logger.js +104 -0
- package/dist/default-logger.js.map +1 -0
- package/dist/dry-run-format.d.ts +6 -0
- package/dist/dry-run-format.d.ts.map +1 -0
- package/dist/dry-run-format.js +76 -0
- package/dist/dry-run-format.js.map +1 -0
- package/dist/file-db.d.ts +85 -0
- package/dist/file-db.d.ts.map +1 -0
- package/dist/file-db.js +215 -0
- package/dist/file-db.js.map +1 -0
- package/dist/index.d.ts +37 -1
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +34 -3
- package/dist/index.js.map +1 -0
- package/dist/integrations/browser.d.ts +99 -0
- package/dist/integrations/browser.d.ts.map +1 -0
- package/dist/integrations/browser.js +419 -0
- package/dist/integrations/browser.js.map +1 -0
- package/dist/integrations/github.d.ts +79 -0
- package/dist/integrations/github.d.ts.map +1 -0
- package/dist/integrations/github.js +459 -0
- package/dist/integrations/github.js.map +1 -0
- package/dist/integrations/slack.d.ts +80 -0
- package/dist/integrations/slack.d.ts.map +1 -0
- package/dist/integrations/slack.js +355 -0
- package/dist/integrations/slack.js.map +1 -0
- package/dist/listr-renderer.d.ts +26 -0
- package/dist/listr-renderer.d.ts.map +1 -0
- package/dist/listr-renderer.js +230 -0
- package/dist/listr-renderer.js.map +1 -0
- package/dist/memory-db.d.ts +17 -0
- package/dist/memory-db.d.ts.map +1 -0
- package/dist/memory-db.js +33 -0
- package/dist/memory-db.js.map +1 -0
- package/dist/process-backend-executor.d.ts +18 -0
- package/dist/process-backend-executor.d.ts.map +1 -0
- package/dist/process-backend-executor.js +74 -0
- package/dist/process-backend-executor.js.map +1 -0
- package/dist/process-spawner.d.ts +35 -0
- package/dist/process-spawner.d.ts.map +1 -0
- package/dist/process-spawner.js +173 -0
- package/dist/process-spawner.js.map +1 -0
- package/dist/provisioner.d.ts +64 -0
- package/dist/provisioner.d.ts.map +1 -0
- package/dist/provisioner.js +269 -0
- package/dist/provisioner.js.map +1 -0
- package/dist/proxy-env.d.ts +52 -0
- package/dist/proxy-env.d.ts.map +1 -0
- package/dist/proxy-env.js +92 -0
- package/dist/proxy-env.js.map +1 -0
- package/dist/run-script.d.ts +82 -0
- package/dist/run-script.d.ts.map +1 -0
- package/dist/run-script.js +527 -0
- package/dist/run-script.js.map +1 -0
- package/dist/run-summary-table.d.ts +5 -0
- package/dist/run-summary-table.d.ts.map +1 -0
- package/dist/run-summary-table.js +132 -0
- package/dist/run-summary-table.js.map +1 -0
- package/dist/run.d.ts +45 -0
- package/dist/run.d.ts.map +1 -0
- package/dist/run.js +37 -0
- package/dist/run.js.map +1 -0
- package/dist/runner.d.ts +528 -0
- package/dist/runner.d.ts.map +1 -0
- package/dist/runner.js +6269 -0
- package/dist/runner.js.map +1 -0
- package/dist/schema.d.ts +275 -0
- package/dist/schema.d.ts.map +1 -0
- package/dist/schema.js +27 -0
- package/dist/schema.js.map +1 -0
- package/dist/schema.json +940 -0
- package/dist/sibling-links.d.ts +100 -0
- package/dist/sibling-links.d.ts.map +1 -0
- package/dist/sibling-links.js +205 -0
- package/dist/sibling-links.js.map +1 -0
- package/dist/state.d.ts +77 -0
- package/dist/state.d.ts.map +1 -0
- package/dist/state.js +140 -0
- package/dist/state.js.map +1 -0
- package/dist/step-executor.d.ts +95 -0
- package/dist/step-executor.d.ts.map +1 -0
- package/dist/step-executor.js +393 -0
- package/dist/step-executor.js.map +1 -0
- package/dist/template-resolver.d.ts +33 -0
- package/dist/template-resolver.d.ts.map +1 -0
- package/dist/template-resolver.js +144 -0
- package/dist/template-resolver.js.map +1 -0
- package/dist/templates.d.ts +47 -0
- package/dist/templates.d.ts.map +1 -0
- package/dist/templates.js +405 -0
- package/dist/templates.js.map +1 -0
- package/dist/trajectory.d.ts +87 -0
- package/dist/trajectory.d.ts.map +1 -0
- package/dist/trajectory.js +412 -0
- package/dist/trajectory.js.map +1 -0
- package/dist/types.d.ts +471 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +37 -0
- package/dist/types.js.map +1 -0
- package/dist/validator.d.ts +11 -0
- package/dist/validator.d.ts.map +1 -0
- package/dist/validator.js +186 -0
- package/dist/validator.js.map +1 -0
- package/dist/verification.d.ts +53 -0
- package/dist/verification.d.ts.map +1 -0
- package/dist/verification.js +238 -0
- package/dist/verification.js.map +1 -0
- package/package.json +12 -8
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"channel-messenger.js","sourceRoot":"","sources":["../src/channel-messenger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Common install directories checked when PATH is empty or incomplete.
|
|
3
|
+
* Paths containing `~` are expanded at resolution time.
|
|
4
|
+
*/
|
|
5
|
+
export declare const COMMON_SEARCH_PATHS: string[];
|
|
6
|
+
export interface CliDefinition {
|
|
7
|
+
/** Binary name(s) to try, in order of preference */
|
|
8
|
+
binaries: string[];
|
|
9
|
+
/** Build non-interactive mode args for a one-shot task */
|
|
10
|
+
nonInteractiveArgs: (task: string, extraArgs?: string[]) => string[];
|
|
11
|
+
/** Bypass flag for auto-approve / unattended mode */
|
|
12
|
+
bypassFlag?: string;
|
|
13
|
+
/** Bypass flag aliases (alternative forms accepted by the CLI) */
|
|
14
|
+
bypassAliases?: string[];
|
|
15
|
+
/** Extra install paths to check beyond PATH (resolved relative to $HOME) */
|
|
16
|
+
searchPaths?: string[];
|
|
17
|
+
/** When true, non-zero exit codes are not treated as failures */
|
|
18
|
+
ignoreExitCode?: boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Get the CLI definition for a given CLI identifier.
|
|
22
|
+
* Handles `cli:model` variants (e.g. `claude:opus`) by extracting the base CLI.
|
|
23
|
+
*/
|
|
24
|
+
export declare function getCliDefinition(cli: string): CliDefinition | undefined;
|
|
25
|
+
/** Get the full registry (read-only). */
|
|
26
|
+
export declare function getCliRegistry(): Readonly<Record<string, CliDefinition>>;
|
|
27
|
+
export interface ResolvedCli {
|
|
28
|
+
/** The binary name that was found */
|
|
29
|
+
binary: string;
|
|
30
|
+
/** The full path to the binary */
|
|
31
|
+
path: string;
|
|
32
|
+
}
|
|
33
|
+
/** Clear the resolution cache. Useful for testing or after PATH changes. */
|
|
34
|
+
export declare function clearResolveCache(): void;
|
|
35
|
+
/**
|
|
36
|
+
* Resolve a CLI to its binary path. Checks PATH via `which`, then falls back
|
|
37
|
+
* to well-known install directories from the CLI registry. Memoized.
|
|
38
|
+
*/
|
|
39
|
+
export declare function resolveCli(cli: string): Promise<ResolvedCli | undefined>;
|
|
40
|
+
/**
|
|
41
|
+
* Synchronous version of `resolveCli`. Uses `which` via execFileSync and
|
|
42
|
+
* synchronous fs.accessSync. Prefer the async version when possible.
|
|
43
|
+
*/
|
|
44
|
+
export declare function resolveCliSync(cli: string): ResolvedCli | undefined;
|
|
45
|
+
export interface SpawnEnvInput {
|
|
46
|
+
AGENT_NAME: string;
|
|
47
|
+
AGENT_CLI: string;
|
|
48
|
+
RELAY_API_KEY: string;
|
|
49
|
+
AGENT_TASK?: string;
|
|
50
|
+
/** JSON array preferred, space-delimited fallback */
|
|
51
|
+
AGENT_ARGS?: string;
|
|
52
|
+
AGENT_CWD?: string;
|
|
53
|
+
/** Comma-separated channel list, defaults to "general" */
|
|
54
|
+
AGENT_CHANNELS?: string;
|
|
55
|
+
RELAY_BASE_URL?: string;
|
|
56
|
+
BROKER_BINARY_PATH?: string;
|
|
57
|
+
/** Model override (e.g. "opus", "sonnet") */
|
|
58
|
+
AGENT_MODEL?: string;
|
|
59
|
+
/** "1" disables SDK default bypass flags */
|
|
60
|
+
AGENT_DISABLE_DEFAULT_BYPASS?: string;
|
|
61
|
+
}
|
|
62
|
+
export interface SpawnPolicyResult {
|
|
63
|
+
name: string;
|
|
64
|
+
cli: string;
|
|
65
|
+
args: string[];
|
|
66
|
+
channels: string[];
|
|
67
|
+
task?: string;
|
|
68
|
+
cwd?: string;
|
|
69
|
+
model?: string;
|
|
70
|
+
bypassApplied: boolean;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Resolve the full spawn policy from parsed env input.
|
|
74
|
+
* Applies bypass flags unless disabled or already present.
|
|
75
|
+
*/
|
|
76
|
+
export declare function resolveSpawnPolicy(input: SpawnEnvInput): SpawnPolicyResult;
|
|
77
|
+
//# sourceMappingURL=cli-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-registry.d.ts","sourceRoot":"","sources":["../src/cli-registry.ts"],"names":[],"mappings":"AAuBA;;;GAGG;AACH,eAAO,MAAM,mBAAmB,UAQ/B,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,oDAAoD;IACpD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,0DAA0D;IAC1D,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,CAAC;IACrE,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,iEAAiE;IACjE,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAgED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAGvE;AAED,yCAAyC;AACzC,wBAAgB,cAAc,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAExE;AAGD,MAAM,WAAW,WAAW;IAC1B,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;CACd;AAKD,4EAA4E;AAC5E,wBAAgB,iBAAiB,IAAI,IAAI,CAExC;AASD;;;GAGG;AACH,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAqC9E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAqCnE;AAGD,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4CAA4C;IAC5C,4BAA4B,CAAC,EAAE,MAAM,CAAC;CACvC;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;CACxB;AAwBD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,iBAAiB,CA2B1E"}
|
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI registry, binary resolver, and spawn-policy helpers.
|
|
3
|
+
*
|
|
4
|
+
* Vendored from `@agent-relay/sdk` v7 (cli-registry / cli-resolver /
|
|
5
|
+
* spawn-from-env), which dropped these exports in v8 when agent spawning moved
|
|
6
|
+
* to `@agent-relay/harnesses` + `@agent-relay/harness-driver`. Core still needs
|
|
7
|
+
* the CLI metadata, sync binary resolution (e.g. resolving `cursor` to its
|
|
8
|
+
* concrete binary), and the bypass-flag spawn policy, so they live here.
|
|
9
|
+
*
|
|
10
|
+
* Single source of truth for supported agent CLI metadata: binary names,
|
|
11
|
+
* non-interactive args, bypass flags, and well-known install paths.
|
|
12
|
+
*/
|
|
13
|
+
import { execFileSync } from 'node:child_process';
|
|
14
|
+
import { access, constants } from 'node:fs/promises';
|
|
15
|
+
import { accessSync, constants as constantsSync } from 'node:fs';
|
|
16
|
+
import { join } from 'node:path';
|
|
17
|
+
import { homedir } from 'node:os';
|
|
18
|
+
import { execFile } from 'node:child_process';
|
|
19
|
+
import { promisify } from 'node:util';
|
|
20
|
+
const execFileAsync = promisify(execFile);
|
|
21
|
+
// ── Well-known install paths ───────────────────────────────────────────────
|
|
22
|
+
/**
|
|
23
|
+
* Common install directories checked when PATH is empty or incomplete.
|
|
24
|
+
* Paths containing `~` are expanded at resolution time.
|
|
25
|
+
*/
|
|
26
|
+
export const COMMON_SEARCH_PATHS = [
|
|
27
|
+
'~/.local/bin',
|
|
28
|
+
'~/.opencode/bin',
|
|
29
|
+
'~/.claude/local',
|
|
30
|
+
'/usr/local/bin',
|
|
31
|
+
'/usr/bin',
|
|
32
|
+
'/bin',
|
|
33
|
+
'/opt/homebrew/bin',
|
|
34
|
+
];
|
|
35
|
+
// ── Registry ───────────────────────────────────────────────────────────────
|
|
36
|
+
const CLI_REGISTRY = {
|
|
37
|
+
claude: {
|
|
38
|
+
binaries: ['claude'],
|
|
39
|
+
nonInteractiveArgs: (task, extra = []) => ['-p', '--dangerously-skip-permissions', task, ...extra],
|
|
40
|
+
bypassFlag: '--dangerously-skip-permissions',
|
|
41
|
+
searchPaths: ['~/.claude/local'],
|
|
42
|
+
},
|
|
43
|
+
codex: {
|
|
44
|
+
binaries: ['codex'],
|
|
45
|
+
nonInteractiveArgs: (task, extra = []) => [
|
|
46
|
+
'exec',
|
|
47
|
+
'--dangerously-bypass-approvals-and-sandbox',
|
|
48
|
+
task,
|
|
49
|
+
...extra,
|
|
50
|
+
],
|
|
51
|
+
bypassFlag: '--dangerously-bypass-approvals-and-sandbox',
|
|
52
|
+
bypassAliases: ['--full-auto'],
|
|
53
|
+
searchPaths: ['~/.local/bin'],
|
|
54
|
+
},
|
|
55
|
+
gemini: {
|
|
56
|
+
binaries: ['gemini'],
|
|
57
|
+
nonInteractiveArgs: (task, extra = []) => ['-p', task, ...extra],
|
|
58
|
+
bypassFlag: '--yolo',
|
|
59
|
+
bypassAliases: ['-y'],
|
|
60
|
+
},
|
|
61
|
+
opencode: {
|
|
62
|
+
binaries: ['opencode'],
|
|
63
|
+
nonInteractiveArgs: (task, extra = []) => ['run', task, ...extra],
|
|
64
|
+
searchPaths: ['~/.opencode/bin'],
|
|
65
|
+
ignoreExitCode: true,
|
|
66
|
+
},
|
|
67
|
+
droid: {
|
|
68
|
+
binaries: ['droid'],
|
|
69
|
+
nonInteractiveArgs: (task, extra = []) => ['exec', task, ...extra],
|
|
70
|
+
},
|
|
71
|
+
aider: {
|
|
72
|
+
binaries: ['aider'],
|
|
73
|
+
nonInteractiveArgs: (task, extra = []) => ['--message', task, '--yes-always', '--no-git', ...extra],
|
|
74
|
+
},
|
|
75
|
+
goose: {
|
|
76
|
+
binaries: ['goose'],
|
|
77
|
+
nonInteractiveArgs: (task, extra = []) => ['run', '--text', task, '--no-session', ...extra],
|
|
78
|
+
},
|
|
79
|
+
'cursor-agent': {
|
|
80
|
+
binaries: ['cursor-agent'],
|
|
81
|
+
nonInteractiveArgs: (task, extra = []) => ['--force', '-p', task, ...extra],
|
|
82
|
+
},
|
|
83
|
+
agent: {
|
|
84
|
+
binaries: ['agent'],
|
|
85
|
+
nonInteractiveArgs: (task, extra = []) => ['--force', '-p', task, ...extra],
|
|
86
|
+
},
|
|
87
|
+
cursor: {
|
|
88
|
+
binaries: ['cursor-agent', 'agent'],
|
|
89
|
+
nonInteractiveArgs: (task, extra = []) => ['--force', '-p', task, ...extra],
|
|
90
|
+
},
|
|
91
|
+
api: {
|
|
92
|
+
binaries: [],
|
|
93
|
+
nonInteractiveArgs: (task) => [task],
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* Get the CLI definition for a given CLI identifier.
|
|
98
|
+
* Handles `cli:model` variants (e.g. `claude:opus`) by extracting the base CLI.
|
|
99
|
+
*/
|
|
100
|
+
export function getCliDefinition(cli) {
|
|
101
|
+
const baseCli = cli.includes(':') ? cli.split(':')[0] : cli;
|
|
102
|
+
return CLI_REGISTRY[baseCli];
|
|
103
|
+
}
|
|
104
|
+
/** Get the full registry (read-only). */
|
|
105
|
+
export function getCliRegistry() {
|
|
106
|
+
return CLI_REGISTRY;
|
|
107
|
+
}
|
|
108
|
+
// null sentinel means "looked up, not found" — avoids repeating expensive searches
|
|
109
|
+
const resolveCache = new Map();
|
|
110
|
+
/** Clear the resolution cache. Useful for testing or after PATH changes. */
|
|
111
|
+
export function clearResolveCache() {
|
|
112
|
+
resolveCache.clear();
|
|
113
|
+
}
|
|
114
|
+
function expandHome(p) {
|
|
115
|
+
if (p.startsWith('~/')) {
|
|
116
|
+
return join(homedir(), p.slice(2));
|
|
117
|
+
}
|
|
118
|
+
return p;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Resolve a CLI to its binary path. Checks PATH via `which`, then falls back
|
|
122
|
+
* to well-known install directories from the CLI registry. Memoized.
|
|
123
|
+
*/
|
|
124
|
+
export async function resolveCli(cli) {
|
|
125
|
+
if (resolveCache.has(cli)) {
|
|
126
|
+
return resolveCache.get(cli) ?? undefined;
|
|
127
|
+
}
|
|
128
|
+
const def = getCliDefinition(cli);
|
|
129
|
+
if (!def)
|
|
130
|
+
return undefined;
|
|
131
|
+
for (const binary of def.binaries) {
|
|
132
|
+
try {
|
|
133
|
+
const { stdout } = await execFileAsync('which', [binary]);
|
|
134
|
+
const path = stdout.trim();
|
|
135
|
+
if (path) {
|
|
136
|
+
const result = { binary, path };
|
|
137
|
+
resolveCache.set(cli, result);
|
|
138
|
+
return result;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
catch {
|
|
142
|
+
// not in PATH
|
|
143
|
+
}
|
|
144
|
+
const searchDirs = [...(def.searchPaths ?? []), ...COMMON_SEARCH_PATHS];
|
|
145
|
+
const seen = new Set();
|
|
146
|
+
for (const dir of searchDirs) {
|
|
147
|
+
const expanded = expandHome(dir);
|
|
148
|
+
if (seen.has(expanded))
|
|
149
|
+
continue;
|
|
150
|
+
seen.add(expanded);
|
|
151
|
+
const candidate = join(expanded, binary);
|
|
152
|
+
try {
|
|
153
|
+
await access(candidate, constants.X_OK);
|
|
154
|
+
const result = { binary, path: candidate };
|
|
155
|
+
resolveCache.set(cli, result);
|
|
156
|
+
return result;
|
|
157
|
+
}
|
|
158
|
+
catch {
|
|
159
|
+
// not found here
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
resolveCache.set(cli, null);
|
|
164
|
+
return undefined;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Synchronous version of `resolveCli`. Uses `which` via execFileSync and
|
|
168
|
+
* synchronous fs.accessSync. Prefer the async version when possible.
|
|
169
|
+
*/
|
|
170
|
+
export function resolveCliSync(cli) {
|
|
171
|
+
if (resolveCache.has(cli)) {
|
|
172
|
+
return resolveCache.get(cli) ?? undefined;
|
|
173
|
+
}
|
|
174
|
+
const def = getCliDefinition(cli);
|
|
175
|
+
if (!def)
|
|
176
|
+
return undefined;
|
|
177
|
+
for (const binary of def.binaries) {
|
|
178
|
+
try {
|
|
179
|
+
const stdout = execFileSync('which', [binary], { stdio: ['pipe', 'pipe', 'ignore'] });
|
|
180
|
+
const path = stdout.toString().trim();
|
|
181
|
+
if (path) {
|
|
182
|
+
const result = { binary, path };
|
|
183
|
+
resolveCache.set(cli, result);
|
|
184
|
+
return result;
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
catch {
|
|
188
|
+
// not in PATH
|
|
189
|
+
}
|
|
190
|
+
const searchDirs = [...(def.searchPaths ?? []), ...COMMON_SEARCH_PATHS];
|
|
191
|
+
const seen = new Set();
|
|
192
|
+
for (const dir of searchDirs) {
|
|
193
|
+
const expanded = expandHome(dir);
|
|
194
|
+
if (seen.has(expanded))
|
|
195
|
+
continue;
|
|
196
|
+
seen.add(expanded);
|
|
197
|
+
const candidate = join(expanded, binary);
|
|
198
|
+
try {
|
|
199
|
+
accessSync(candidate, constantsSync.X_OK);
|
|
200
|
+
const result = { binary, path: candidate };
|
|
201
|
+
resolveCache.set(cli, result);
|
|
202
|
+
return result;
|
|
203
|
+
}
|
|
204
|
+
catch {
|
|
205
|
+
// not found here
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
resolveCache.set(cli, null);
|
|
210
|
+
return undefined;
|
|
211
|
+
}
|
|
212
|
+
/** Resolve bypass flag config for a CLI from the consolidated registry. */
|
|
213
|
+
function getBypassFlagConfig(cli) {
|
|
214
|
+
const def = getCliDefinition(cli);
|
|
215
|
+
if (!def?.bypassFlag)
|
|
216
|
+
return undefined;
|
|
217
|
+
return { flag: def.bypassFlag, aliases: def.bypassAliases };
|
|
218
|
+
}
|
|
219
|
+
/** Parse extra args from env. Supports JSON array or space-delimited string. */
|
|
220
|
+
function parseArgs(raw) {
|
|
221
|
+
if (!raw)
|
|
222
|
+
return [];
|
|
223
|
+
const trimmed = raw.trim();
|
|
224
|
+
if (trimmed.startsWith('[')) {
|
|
225
|
+
try {
|
|
226
|
+
const parsed = JSON.parse(trimmed);
|
|
227
|
+
if (Array.isArray(parsed))
|
|
228
|
+
return parsed.map(String);
|
|
229
|
+
}
|
|
230
|
+
catch {
|
|
231
|
+
// Fall through to space-delimited
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
return trimmed.split(/\s+/).filter(Boolean);
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Resolve the full spawn policy from parsed env input.
|
|
238
|
+
* Applies bypass flags unless disabled or already present.
|
|
239
|
+
*/
|
|
240
|
+
export function resolveSpawnPolicy(input) {
|
|
241
|
+
const extraArgs = parseArgs(input.AGENT_ARGS);
|
|
242
|
+
const channels = input.AGENT_CHANNELS
|
|
243
|
+
? input.AGENT_CHANNELS.split(',')
|
|
244
|
+
.map((c) => c.trim())
|
|
245
|
+
.filter(Boolean)
|
|
246
|
+
: ['general'];
|
|
247
|
+
const disableBypass = input.AGENT_DISABLE_DEFAULT_BYPASS === '1';
|
|
248
|
+
const bypassConfig = getBypassFlagConfig(input.AGENT_CLI);
|
|
249
|
+
let bypassApplied = false;
|
|
250
|
+
const args = [...extraArgs];
|
|
251
|
+
const bypassValues = bypassConfig ? [bypassConfig.flag, ...(bypassConfig.aliases ?? [])] : [];
|
|
252
|
+
const hasBypassAlready = bypassValues.some((value) => args.includes(value));
|
|
253
|
+
if (bypassConfig && !disableBypass && !hasBypassAlready) {
|
|
254
|
+
args.push(bypassConfig.flag);
|
|
255
|
+
bypassApplied = true;
|
|
256
|
+
}
|
|
257
|
+
return {
|
|
258
|
+
name: input.AGENT_NAME,
|
|
259
|
+
cli: input.AGENT_CLI,
|
|
260
|
+
args,
|
|
261
|
+
channels,
|
|
262
|
+
task: input.AGENT_TASK,
|
|
263
|
+
cwd: input.AGENT_CWD,
|
|
264
|
+
model: input.AGENT_MODEL,
|
|
265
|
+
bypassApplied,
|
|
266
|
+
};
|
|
267
|
+
}
|
|
268
|
+
//# sourceMappingURL=cli-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-registry.js","sourceRoot":"","sources":["../src/cli-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { AgentCli } from './types.js';
|
|
2
|
+
export interface CliSessionReport {
|
|
3
|
+
cli: AgentCli;
|
|
4
|
+
sessionId: string | null;
|
|
5
|
+
model: string | null;
|
|
6
|
+
provider: string | null;
|
|
7
|
+
durationMs: number | null;
|
|
8
|
+
cost: number | null;
|
|
9
|
+
tokens: {
|
|
10
|
+
input: number;
|
|
11
|
+
output: number;
|
|
12
|
+
cacheRead: number;
|
|
13
|
+
} | null;
|
|
14
|
+
turns: number;
|
|
15
|
+
toolCalls: {
|
|
16
|
+
name: string;
|
|
17
|
+
count: number;
|
|
18
|
+
}[];
|
|
19
|
+
errors: {
|
|
20
|
+
turn: number;
|
|
21
|
+
text: string;
|
|
22
|
+
}[];
|
|
23
|
+
finalStatus: 'completed' | 'failed' | 'unknown';
|
|
24
|
+
summary: string | null;
|
|
25
|
+
raw?: object;
|
|
26
|
+
}
|
|
27
|
+
export interface CliSessionQuery {
|
|
28
|
+
cli: AgentCli;
|
|
29
|
+
cwd: string;
|
|
30
|
+
startedAt: number;
|
|
31
|
+
completedAt: number;
|
|
32
|
+
}
|
|
33
|
+
export interface CliSessionCollector {
|
|
34
|
+
canCollect(): boolean;
|
|
35
|
+
collect(query: CliSessionQuery): Promise<CliSessionReport | null>;
|
|
36
|
+
}
|
|
37
|
+
export declare function createCollector(cli: AgentCli): CliSessionCollector | null;
|
|
38
|
+
export declare function collectCliSession(query: CliSessionQuery): Promise<CliSessionReport | null>;
|
|
39
|
+
//# sourceMappingURL=cli-session-collector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-session-collector.d.ts","sourceRoot":"","sources":["../src/cli-session-collector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAK3C,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,QAAQ,CAAC;IACd,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;KACnB,GAAG,IAAI,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC7C,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzC,WAAW,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IAChD,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,QAAQ,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,IAAI,OAAO,CAAC;IACtB,OAAO,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;CACnE;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,QAAQ,GAAG,mBAAmB,GAAG,IAAI,CAWzE;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAOhG"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ClaudeCodeCollector } from './collectors/claude.js';
|
|
2
|
+
import { CodexCollector } from './collectors/codex.js';
|
|
3
|
+
import { OpenCodeCollector } from './collectors/opencode.js';
|
|
4
|
+
export function createCollector(cli) {
|
|
5
|
+
switch (cli) {
|
|
6
|
+
case 'opencode':
|
|
7
|
+
return new OpenCodeCollector();
|
|
8
|
+
case 'claude':
|
|
9
|
+
return new ClaudeCodeCollector();
|
|
10
|
+
case 'codex':
|
|
11
|
+
return new CodexCollector();
|
|
12
|
+
default:
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
export async function collectCliSession(query) {
|
|
17
|
+
const collector = createCollector(query.cli);
|
|
18
|
+
if (!collector || !collector.canCollect()) {
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
21
|
+
return collector.collect(query);
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=cli-session-collector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-session-collector.js","sourceRoot":"","sources":["../src/cli-session-collector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAkC7D,MAAM,UAAU,eAAe,CAAC,GAAa;IAC3C,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,UAAU;YACb,OAAO,IAAI,iBAAiB,EAAE,CAAC;QACjC,KAAK,QAAQ;YACX,OAAO,IAAI,mBAAmB,EAAE,CAAC;QACnC,KAAK,OAAO;YACV,OAAO,IAAI,cAAc,EAAE,CAAC;QAC9B;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,KAAsB;IAC5D,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC"}
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* CLI entry point for running relay.yaml workflows.
|
|
4
|
+
*
|
|
5
|
+
* Usage:
|
|
6
|
+
* relay-workflow <yaml-path> [--workflow <name>]
|
|
7
|
+
* relay-workflow --resume <run-id>
|
|
8
|
+
* npx @agent-relay/sdk run <yaml-path> [--workflow <name>]
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;;;;GAOG"}
|