@agent-relay/sdk 7.1.1 → 8.0.1
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/README.md +177 -143
- package/bin/agent-relay-broker-darwin-arm64 +0 -0
- package/bin/agent-relay-broker-darwin-x64 +0 -0
- package/bin/agent-relay-broker-linux-arm64 +0 -0
- package/bin/agent-relay-broker-linux-x64 +0 -0
- package/bin/agent-relay-broker-win32-x64.exe +0 -0
- package/dist/actions/errors.d.ts +18 -0
- package/dist/actions/errors.d.ts.map +1 -0
- package/dist/actions/errors.js +39 -0
- package/dist/actions/errors.js.map +1 -0
- package/dist/actions/index.d.ts +5 -0
- package/dist/actions/index.d.ts.map +1 -0
- package/dist/actions/index.js +5 -0
- package/dist/actions/index.js.map +1 -0
- package/dist/actions/json-schema-lite.d.ts +13 -0
- package/dist/actions/json-schema-lite.d.ts.map +1 -0
- package/dist/actions/json-schema-lite.js +322 -0
- package/dist/actions/json-schema-lite.js.map +1 -0
- package/dist/actions/registry.d.ts +20 -0
- package/dist/actions/registry.d.ts.map +1 -0
- package/dist/actions/registry.js +267 -0
- package/dist/actions/registry.js.map +1 -0
- package/dist/actions/types.d.ts +177 -0
- package/dist/actions/types.d.ts.map +1 -0
- package/dist/{provisioner → actions}/types.js.map +1 -1
- package/dist/agent-relay.d.ts +86 -0
- package/dist/agent-relay.d.ts.map +1 -0
- package/dist/agent-relay.js +197 -0
- package/dist/agent-relay.js.map +1 -0
- package/dist/capabilities.d.ts +6 -0
- package/dist/capabilities.d.ts.map +1 -0
- package/dist/capabilities.js +9 -0
- package/dist/capabilities.js.map +1 -0
- package/dist/delivery/index.d.ts +4 -0
- package/dist/delivery/index.d.ts.map +1 -0
- package/dist/delivery/index.js +4 -0
- package/dist/delivery/index.js.map +1 -0
- package/dist/delivery/runner.d.ts +26 -0
- package/dist/delivery/runner.d.ts.map +1 -0
- package/dist/delivery/runner.js +177 -0
- package/dist/delivery/runner.js.map +1 -0
- package/dist/delivery/types.d.ts +45 -0
- package/dist/delivery/types.d.ts.map +1 -0
- package/dist/delivery/types.js +2 -0
- package/dist/delivery/types.js.map +1 -0
- package/dist/facade.d.ts +151 -0
- package/dist/facade.d.ts.map +1 -0
- package/dist/facade.js +280 -0
- package/dist/facade.js.map +1 -0
- package/dist/index.d.ts +9 -25
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -23
- package/dist/index.js.map +1 -1
- package/dist/listeners.d.ts +162 -0
- package/dist/listeners.d.ts.map +1 -0
- package/dist/listeners.js +297 -0
- package/dist/listeners.js.map +1 -0
- package/dist/messaging/index.d.ts +4 -0
- package/dist/messaging/index.d.ts.map +1 -0
- package/dist/messaging/index.js +4 -0
- package/dist/messaging/index.js.map +1 -0
- package/dist/messaging/normalize.d.ts +29 -0
- package/dist/messaging/normalize.d.ts.map +1 -0
- package/dist/messaging/normalize.js +602 -0
- package/dist/messaging/normalize.js.map +1 -0
- package/dist/messaging/relaycast.d.ts +270 -0
- package/dist/messaging/relaycast.d.ts.map +1 -0
- package/dist/messaging/relaycast.js +559 -0
- package/dist/messaging/relaycast.js.map +1 -0
- package/dist/messaging/types.d.ts +672 -0
- package/dist/messaging/types.d.ts.map +1 -0
- package/dist/messaging/types.js +2 -0
- package/dist/messaging/types.js.map +1 -0
- package/dist/relaycast-errors.d.ts +39 -0
- package/dist/relaycast-errors.d.ts.map +1 -0
- package/dist/relaycast-errors.js +111 -0
- package/dist/relaycast-errors.js.map +1 -0
- package/dist/session/index.d.ts +58 -0
- package/dist/session/index.d.ts.map +1 -0
- package/dist/session/index.js +54 -0
- package/dist/session/index.js.map +1 -0
- package/dist/session/types.d.ts +258 -0
- package/dist/session/types.d.ts.map +1 -0
- package/dist/session/types.js +7 -0
- package/dist/session/types.js.map +1 -0
- package/package.json +31 -199
- package/dist/broker-logs.d.ts +0 -80
- package/dist/broker-logs.d.ts.map +0 -1
- package/dist/broker-logs.js +0 -189
- package/dist/broker-logs.js.map +0 -1
- package/dist/broker-path.d.ts +0 -34
- package/dist/broker-path.d.ts.map +0 -1
- package/dist/broker-path.js +0 -267
- package/dist/broker-path.js.map +0 -1
- package/dist/browser.d.ts +0 -16
- package/dist/browser.d.ts.map +0 -1
- package/dist/browser.js +0 -19
- package/dist/browser.js.map +0 -1
- package/dist/cli-registry.d.ts +0 -44
- package/dist/cli-registry.d.ts.map +0 -1
- package/dist/cli-registry.js +0 -104
- package/dist/cli-registry.js.map +0 -1
- package/dist/cli-resolver.d.ts +0 -30
- package/dist/cli-resolver.d.ts.map +0 -1
- package/dist/cli-resolver.js +0 -132
- package/dist/cli-resolver.js.map +0 -1
- package/dist/client.d.ts +0 -278
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js +0 -838
- package/dist/client.js.map +0 -1
- package/dist/communicate/a2a-bridge.d.ts +0 -25
- package/dist/communicate/a2a-bridge.d.ts.map +0 -1
- package/dist/communicate/a2a-bridge.js +0 -89
- package/dist/communicate/a2a-bridge.js.map +0 -1
- package/dist/communicate/a2a-server.d.ts +0 -31
- package/dist/communicate/a2a-server.d.ts.map +0 -1
- package/dist/communicate/a2a-server.js +0 -220
- package/dist/communicate/a2a-server.js.map +0 -1
- package/dist/communicate/a2a-transport.d.ts +0 -48
- package/dist/communicate/a2a-transport.d.ts.map +0 -1
- package/dist/communicate/a2a-transport.js +0 -305
- package/dist/communicate/a2a-transport.js.map +0 -1
- package/dist/communicate/a2a-types.d.ts +0 -107
- package/dist/communicate/a2a-types.d.ts.map +0 -1
- package/dist/communicate/a2a-types.js +0 -209
- package/dist/communicate/a2a-types.js.map +0 -1
- package/dist/communicate/adapters/ai-sdk.d.ts +0 -63
- package/dist/communicate/adapters/ai-sdk.d.ts.map +0 -1
- package/dist/communicate/adapters/ai-sdk.js +0 -114
- package/dist/communicate/adapters/ai-sdk.js.map +0 -1
- package/dist/communicate/adapters/claude-sdk.d.ts +0 -28
- package/dist/communicate/adapters/claude-sdk.d.ts.map +0 -1
- package/dist/communicate/adapters/claude-sdk.js +0 -47
- package/dist/communicate/adapters/claude-sdk.js.map +0 -1
- package/dist/communicate/adapters/crewai.d.ts +0 -42
- package/dist/communicate/adapters/crewai.d.ts.map +0 -1
- package/dist/communicate/adapters/crewai.js +0 -95
- package/dist/communicate/adapters/crewai.js.map +0 -1
- package/dist/communicate/adapters/google-adk.d.ts +0 -53
- package/dist/communicate/adapters/google-adk.d.ts.map +0 -1
- package/dist/communicate/adapters/google-adk.js +0 -77
- package/dist/communicate/adapters/google-adk.js.map +0 -1
- package/dist/communicate/adapters/index.d.ts +0 -3
- package/dist/communicate/adapters/index.d.ts.map +0 -1
- package/dist/communicate/adapters/index.js +0 -3
- package/dist/communicate/adapters/index.js.map +0 -1
- package/dist/communicate/adapters/langgraph.d.ts +0 -40
- package/dist/communicate/adapters/langgraph.d.ts.map +0 -1
- package/dist/communicate/adapters/langgraph.js +0 -77
- package/dist/communicate/adapters/langgraph.js.map +0 -1
- package/dist/communicate/adapters/openai-agents.d.ts +0 -25
- package/dist/communicate/adapters/openai-agents.d.ts.map +0 -1
- package/dist/communicate/adapters/openai-agents.js +0 -70
- package/dist/communicate/adapters/openai-agents.js.map +0 -1
- package/dist/communicate/adapters/pi.d.ts +0 -44
- package/dist/communicate/adapters/pi.d.ts.map +0 -1
- package/dist/communicate/adapters/pi.js +0 -55
- package/dist/communicate/adapters/pi.js.map +0 -1
- package/dist/communicate/core.d.ts +0 -58
- package/dist/communicate/core.d.ts.map +0 -1
- package/dist/communicate/core.js +0 -127
- package/dist/communicate/core.js.map +0 -1
- package/dist/communicate/index.d.ts +0 -20
- package/dist/communicate/index.d.ts.map +0 -1
- package/dist/communicate/index.js +0 -43
- package/dist/communicate/index.js.map +0 -1
- package/dist/communicate/transport.d.ts +0 -35
- package/dist/communicate/transport.d.ts.map +0 -1
- package/dist/communicate/transport.js +0 -279
- package/dist/communicate/transport.js.map +0 -1
- package/dist/communicate/types.d.ts +0 -58
- package/dist/communicate/types.d.ts.map +0 -1
- package/dist/communicate/types.js +0 -66
- package/dist/communicate/types.js.map +0 -1
- package/dist/consensus-helpers.d.ts +0 -103
- package/dist/consensus-helpers.d.ts.map +0 -1
- package/dist/consensus-helpers.js +0 -147
- package/dist/consensus-helpers.js.map +0 -1
- package/dist/consensus.d.ts +0 -72
- package/dist/consensus.d.ts.map +0 -1
- package/dist/consensus.js +0 -378
- package/dist/consensus.js.map +0 -1
- package/dist/event-bus.d.ts +0 -57
- package/dist/event-bus.d.ts.map +0 -1
- package/dist/event-bus.js +0 -76
- package/dist/event-bus.js.map +0 -1
- package/dist/examples/demo.d.ts +0 -2
- package/dist/examples/demo.d.ts.map +0 -1
- package/dist/examples/demo.js +0 -63
- package/dist/examples/demo.js.map +0 -1
- package/dist/examples/example.d.ts +0 -2
- package/dist/examples/example.d.ts.map +0 -1
- package/dist/examples/example.js +0 -77
- package/dist/examples/example.js.map +0 -1
- package/dist/examples/persona-spawn.d.ts +0 -2
- package/dist/examples/persona-spawn.d.ts.map +0 -1
- package/dist/examples/persona-spawn.js +0 -43
- package/dist/examples/persona-spawn.js.map +0 -1
- package/dist/examples/quickstart.d.ts +0 -2
- package/dist/examples/quickstart.d.ts.map +0 -1
- package/dist/examples/quickstart.js +0 -56
- package/dist/examples/quickstart.js.map +0 -1
- package/dist/examples/ralph-loop.d.ts +0 -2
- package/dist/examples/ralph-loop.d.ts.map +0 -1
- package/dist/examples/ralph-loop.js +0 -281
- package/dist/examples/ralph-loop.js.map +0 -1
- package/dist/examples/workflow-superiority.d.ts +0 -32
- package/dist/examples/workflow-superiority.d.ts.map +0 -1
- package/dist/examples/workflow-superiority.js +0 -1421
- package/dist/examples/workflow-superiority.js.map +0 -1
- package/dist/github.d.ts +0 -24
- package/dist/github.d.ts.map +0 -1
- package/dist/github.js +0 -24
- package/dist/github.js.map +0 -1
- package/dist/http.d.ts +0 -38
- package/dist/http.d.ts.map +0 -1
- package/dist/http.js +0 -60
- package/dist/http.js.map +0 -1
- package/dist/lifecycle-hooks.d.ts +0 -141
- package/dist/lifecycle-hooks.d.ts.map +0 -1
- package/dist/lifecycle-hooks.js +0 -29
- package/dist/lifecycle-hooks.js.map +0 -1
- package/dist/logs.d.ts +0 -106
- package/dist/logs.d.ts.map +0 -1
- package/dist/logs.js +0 -291
- package/dist/logs.js.map +0 -1
- package/dist/models.d.ts +0 -9
- package/dist/models.d.ts.map +0 -1
- package/dist/models.js +0 -17
- package/dist/models.js.map +0 -1
- package/dist/personas.d.ts +0 -160
- package/dist/personas.d.ts.map +0 -1
- package/dist/personas.js +0 -401
- package/dist/personas.js.map +0 -1
- package/dist/protocol.d.ts +0 -521
- package/dist/protocol.d.ts.map +0 -1
- package/dist/protocol.js +0 -2
- package/dist/protocol.js.map +0 -1
- package/dist/provisioner/__tests__/audit.test.d.ts +0 -2
- package/dist/provisioner/__tests__/audit.test.d.ts.map +0 -1
- package/dist/provisioner/__tests__/audit.test.js +0 -45
- package/dist/provisioner/__tests__/audit.test.js.map +0 -1
- package/dist/provisioner/__tests__/compiler.test.d.ts +0 -2
- package/dist/provisioner/__tests__/compiler.test.d.ts.map +0 -1
- package/dist/provisioner/__tests__/compiler.test.js +0 -345
- package/dist/provisioner/__tests__/compiler.test.js.map +0 -1
- package/dist/provisioner/__tests__/presets.test.d.ts +0 -2
- package/dist/provisioner/__tests__/presets.test.d.ts.map +0 -1
- package/dist/provisioner/__tests__/presets.test.js +0 -23
- package/dist/provisioner/__tests__/presets.test.js.map +0 -1
- package/dist/provisioner/__tests__/seeder.test.d.ts +0 -2
- package/dist/provisioner/__tests__/seeder.test.d.ts.map +0 -1
- package/dist/provisioner/__tests__/seeder.test.js +0 -224
- package/dist/provisioner/__tests__/seeder.test.js.map +0 -1
- package/dist/provisioner/__tests__/tar-seeder.test.d.ts +0 -2
- package/dist/provisioner/__tests__/tar-seeder.test.d.ts.map +0 -1
- package/dist/provisioner/__tests__/tar-seeder.test.js +0 -191
- package/dist/provisioner/__tests__/tar-seeder.test.js.map +0 -1
- package/dist/provisioner/__tests__/token-factory.test.d.ts +0 -2
- package/dist/provisioner/__tests__/token-factory.test.d.ts.map +0 -1
- package/dist/provisioner/__tests__/token-factory.test.js +0 -139
- package/dist/provisioner/__tests__/token-factory.test.js.map +0 -1
- package/dist/provisioner/__tests__/token.test.d.ts +0 -2
- package/dist/provisioner/__tests__/token.test.d.ts.map +0 -1
- package/dist/provisioner/__tests__/token.test.js +0 -49
- package/dist/provisioner/__tests__/token.test.js.map +0 -1
- package/dist/provisioner/audit.d.ts +0 -19
- package/dist/provisioner/audit.d.ts.map +0 -1
- package/dist/provisioner/audit.js +0 -74
- package/dist/provisioner/audit.js.map +0 -1
- package/dist/provisioner/compiler.d.ts +0 -23
- package/dist/provisioner/compiler.d.ts.map +0 -1
- package/dist/provisioner/compiler.js +0 -355
- package/dist/provisioner/compiler.js.map +0 -1
- package/dist/provisioner/index.d.ts +0 -10
- package/dist/provisioner/index.d.ts.map +0 -1
- package/dist/provisioner/index.js +0 -269
- package/dist/provisioner/index.js.map +0 -1
- package/dist/provisioner/local-jwks.d.ts +0 -25
- package/dist/provisioner/local-jwks.d.ts.map +0 -1
- package/dist/provisioner/local-jwks.js +0 -70
- package/dist/provisioner/local-jwks.js.map +0 -1
- package/dist/provisioner/mount.d.ts +0 -14
- package/dist/provisioner/mount.d.ts.map +0 -1
- package/dist/provisioner/mount.js +0 -329
- package/dist/provisioner/mount.js.map +0 -1
- package/dist/provisioner/seeder.d.ts +0 -17
- package/dist/provisioner/seeder.d.ts.map +0 -1
- package/dist/provisioner/seeder.js +0 -419
- package/dist/provisioner/seeder.js.map +0 -1
- package/dist/provisioner/token.d.ts +0 -41
- package/dist/provisioner/token.d.ts.map +0 -1
- package/dist/provisioner/token.js +0 -77
- package/dist/provisioner/token.js.map +0 -1
- package/dist/provisioner/types.d.ts +0 -134
- package/dist/provisioner/types.d.ts.map +0 -1
- package/dist/pty.d.ts +0 -8
- package/dist/pty.d.ts.map +0 -1
- package/dist/pty.js +0 -26
- package/dist/pty.js.map +0 -1
- package/dist/relay-adapter.d.ts +0 -124
- package/dist/relay-adapter.d.ts.map +0 -1
- package/dist/relay-adapter.js +0 -242
- package/dist/relay-adapter.js.map +0 -1
- package/dist/relay.d.ts +0 -550
- package/dist/relay.d.ts.map +0 -1
- package/dist/relay.js +0 -1682
- package/dist/relay.js.map +0 -1
- package/dist/shadow.d.ts +0 -101
- package/dist/shadow.d.ts.map +0 -1
- package/dist/shadow.js +0 -174
- package/dist/shadow.js.map +0 -1
- package/dist/slack.d.ts +0 -24
- package/dist/slack.d.ts.map +0 -1
- package/dist/slack.js +0 -24
- package/dist/slack.js.map +0 -1
- package/dist/spawn-from-env.d.ts +0 -78
- package/dist/spawn-from-env.d.ts.map +0 -1
- package/dist/spawn-from-env.js +0 -172
- package/dist/spawn-from-env.js.map +0 -1
- package/dist/transport.d.ts +0 -104
- package/dist/transport.d.ts.map +0 -1
- package/dist/transport.js +0 -520
- package/dist/transport.js.map +0 -1
- package/dist/types.d.ts +0 -101
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -5
- package/dist/types.js.map +0 -1
- package/dist/workers.d.ts +0 -39
- package/dist/workers.d.ts.map +0 -1
- package/dist/workers.js +0 -39
- package/dist/workers.js.map +0 -1
- package/dist/workflows/__tests__/budget-enforcement.test.d.ts +0 -2
- package/dist/workflows/__tests__/budget-enforcement.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/budget-enforcement.test.js +0 -411
- package/dist/workflows/__tests__/budget-enforcement.test.js.map +0 -1
- package/dist/workflows/__tests__/budget-tracker.test.d.ts +0 -2
- package/dist/workflows/__tests__/budget-tracker.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/budget-tracker.test.js +0 -99
- package/dist/workflows/__tests__/budget-tracker.test.js.map +0 -1
- package/dist/workflows/__tests__/builder-paths.test.d.ts +0 -2
- package/dist/workflows/__tests__/builder-paths.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/builder-paths.test.js +0 -63
- package/dist/workflows/__tests__/builder-paths.test.js.map +0 -1
- package/dist/workflows/__tests__/channel-messenger.test.d.ts +0 -2
- package/dist/workflows/__tests__/channel-messenger.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/channel-messenger.test.js +0 -123
- package/dist/workflows/__tests__/channel-messenger.test.js.map +0 -1
- package/dist/workflows/__tests__/cli-session-collector.test.d.ts +0 -2
- package/dist/workflows/__tests__/cli-session-collector.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/cli-session-collector.test.js +0 -54
- package/dist/workflows/__tests__/cli-session-collector.test.js.map +0 -1
- package/dist/workflows/__tests__/collectors/claude.test.d.ts +0 -2
- package/dist/workflows/__tests__/collectors/claude.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/collectors/claude.test.js +0 -85
- package/dist/workflows/__tests__/collectors/claude.test.js.map +0 -1
- package/dist/workflows/__tests__/collectors/codex.test.d.ts +0 -2
- package/dist/workflows/__tests__/collectors/codex.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/collectors/codex.test.js +0 -67
- package/dist/workflows/__tests__/collectors/codex.test.js.map +0 -1
- package/dist/workflows/__tests__/collectors/opencode.test.d.ts +0 -2
- package/dist/workflows/__tests__/collectors/opencode.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/collectors/opencode.test.js +0 -119
- package/dist/workflows/__tests__/collectors/opencode.test.js.map +0 -1
- package/dist/workflows/__tests__/e2big-and-verify.test.d.ts +0 -2
- package/dist/workflows/__tests__/e2big-and-verify.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/e2big-and-verify.test.js +0 -62
- package/dist/workflows/__tests__/e2big-and-verify.test.js.map +0 -1
- package/dist/workflows/__tests__/e2e-permissions.test.d.ts +0 -2
- package/dist/workflows/__tests__/e2e-permissions.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/e2e-permissions.test.js +0 -338
- package/dist/workflows/__tests__/e2e-permissions.test.js.map +0 -1
- package/dist/workflows/__tests__/permission-types.test.d.ts +0 -2
- package/dist/workflows/__tests__/permission-types.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/permission-types.test.js +0 -124
- package/dist/workflows/__tests__/permission-types.test.js.map +0 -1
- package/dist/workflows/__tests__/permissions-integration.test.d.ts +0 -2
- package/dist/workflows/__tests__/permissions-integration.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/permissions-integration.test.js +0 -577
- package/dist/workflows/__tests__/permissions-integration.test.js.map +0 -1
- package/dist/workflows/__tests__/process-backend-executor.test.d.ts +0 -2
- package/dist/workflows/__tests__/process-backend-executor.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/process-backend-executor.test.js +0 -83
- package/dist/workflows/__tests__/process-backend-executor.test.js.map +0 -1
- package/dist/workflows/__tests__/proxy-env.test.d.ts +0 -2
- package/dist/workflows/__tests__/proxy-env.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/proxy-env.test.js +0 -135
- package/dist/workflows/__tests__/proxy-env.test.js.map +0 -1
- package/dist/workflows/__tests__/run-script.test.d.ts +0 -2
- package/dist/workflows/__tests__/run-script.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/run-script.test.js +0 -426
- package/dist/workflows/__tests__/run-script.test.js.map +0 -1
- package/dist/workflows/__tests__/run-summary-table.test.d.ts +0 -2
- package/dist/workflows/__tests__/run-summary-table.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/run-summary-table.test.js +0 -131
- package/dist/workflows/__tests__/run-summary-table.test.js.map +0 -1
- package/dist/workflows/__tests__/scrub-pty-chrome.test.d.ts +0 -2
- package/dist/workflows/__tests__/scrub-pty-chrome.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/scrub-pty-chrome.test.js +0 -113
- package/dist/workflows/__tests__/scrub-pty-chrome.test.js.map +0 -1
- package/dist/workflows/__tests__/sibling-links.test.d.ts +0 -2
- package/dist/workflows/__tests__/sibling-links.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/sibling-links.test.js +0 -166
- package/dist/workflows/__tests__/sibling-links.test.js.map +0 -1
- package/dist/workflows/__tests__/step-cwd.test.d.ts +0 -2
- package/dist/workflows/__tests__/step-cwd.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/step-cwd.test.js +0 -42
- package/dist/workflows/__tests__/step-cwd.test.js.map +0 -1
- package/dist/workflows/__tests__/step-executor.test.d.ts +0 -2
- package/dist/workflows/__tests__/step-executor.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/step-executor.test.js +0 -378
- package/dist/workflows/__tests__/step-executor.test.js.map +0 -1
- package/dist/workflows/__tests__/template-resolver.test.d.ts +0 -2
- package/dist/workflows/__tests__/template-resolver.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/template-resolver.test.js +0 -145
- package/dist/workflows/__tests__/template-resolver.test.js.map +0 -1
- package/dist/workflows/__tests__/verification-custom.test.d.ts +0 -2
- package/dist/workflows/__tests__/verification-custom.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/verification-custom.test.js +0 -230
- package/dist/workflows/__tests__/verification-custom.test.js.map +0 -1
- package/dist/workflows/__tests__/verification-traceback.test.d.ts +0 -2
- package/dist/workflows/__tests__/verification-traceback.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/verification-traceback.test.js +0 -442
- package/dist/workflows/__tests__/verification-traceback.test.js.map +0 -1
- package/dist/workflows/__tests__/verification.test.d.ts +0 -2
- package/dist/workflows/__tests__/verification.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/verification.test.js +0 -272
- package/dist/workflows/__tests__/verification.test.js.map +0 -1
- package/dist/workflows/__tests__/workflow-reliability-contract.test.d.ts +0 -2
- package/dist/workflows/__tests__/workflow-reliability-contract.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/workflow-reliability-contract.test.js +0 -536
- package/dist/workflows/__tests__/workflow-reliability-contract.test.js.map +0 -1
- package/dist/workflows/__tests__/workflow-reliability-e2e.test.d.ts +0 -2
- package/dist/workflows/__tests__/workflow-reliability-e2e.test.d.ts.map +0 -1
- package/dist/workflows/__tests__/workflow-reliability-e2e.test.js +0 -199
- package/dist/workflows/__tests__/workflow-reliability-e2e.test.js.map +0 -1
- package/dist/workflows/api-executor.d.ts +0 -16
- package/dist/workflows/api-executor.d.ts.map +0 -1
- package/dist/workflows/api-executor.js +0 -94
- package/dist/workflows/api-executor.js.map +0 -1
- package/dist/workflows/barrier.d.ts +0 -72
- package/dist/workflows/barrier.d.ts.map +0 -1
- package/dist/workflows/barrier.js +0 -162
- package/dist/workflows/barrier.js.map +0 -1
- package/dist/workflows/budget-tracker.d.ts +0 -75
- package/dist/workflows/budget-tracker.d.ts.map +0 -1
- package/dist/workflows/budget-tracker.js +0 -184
- package/dist/workflows/budget-tracker.js.map +0 -1
- package/dist/workflows/builder.d.ts +0 -229
- package/dist/workflows/builder.d.ts.map +0 -1
- package/dist/workflows/builder.js +0 -430
- package/dist/workflows/builder.js.map +0 -1
- package/dist/workflows/channel-messenger.d.ts +0 -28
- package/dist/workflows/channel-messenger.d.ts.map +0 -1
- package/dist/workflows/channel-messenger.js +0 -275
- package/dist/workflows/channel-messenger.js.map +0 -1
- package/dist/workflows/cli-session-collector.d.ts +0 -39
- package/dist/workflows/cli-session-collector.d.ts.map +0 -1
- package/dist/workflows/cli-session-collector.js +0 -23
- package/dist/workflows/cli-session-collector.js.map +0 -1
- package/dist/workflows/cli.d.ts +0 -11
- package/dist/workflows/cli.d.ts.map +0 -1
- package/dist/workflows/cli.js +0 -395
- package/dist/workflows/cli.js.map +0 -1
- package/dist/workflows/cloud-runner.d.ts +0 -15
- package/dist/workflows/cloud-runner.d.ts.map +0 -1
- package/dist/workflows/cloud-runner.js +0 -41
- package/dist/workflows/cloud-runner.js.map +0 -1
- package/dist/workflows/cloud-schedules.d.ts +0 -3
- package/dist/workflows/cloud-schedules.d.ts.map +0 -1
- package/dist/workflows/cloud-schedules.js +0 -2
- package/dist/workflows/cloud-schedules.js.map +0 -1
- package/dist/workflows/collectors/claude.d.ts +0 -6
- package/dist/workflows/collectors/claude.d.ts.map +0 -1
- package/dist/workflows/collectors/claude.js +0 -330
- package/dist/workflows/collectors/claude.js.map +0 -1
- package/dist/workflows/collectors/codex.d.ts +0 -18
- package/dist/workflows/collectors/codex.d.ts.map +0 -1
- package/dist/workflows/collectors/codex.js +0 -265
- package/dist/workflows/collectors/codex.js.map +0 -1
- package/dist/workflows/collectors/opencode.d.ts +0 -6
- package/dist/workflows/collectors/opencode.d.ts.map +0 -1
- package/dist/workflows/collectors/opencode.js +0 -204
- package/dist/workflows/collectors/opencode.js.map +0 -1
- package/dist/workflows/coordinator.d.ts +0 -73
- package/dist/workflows/coordinator.d.ts.map +0 -1
- package/dist/workflows/coordinator.js +0 -647
- package/dist/workflows/coordinator.js.map +0 -1
- package/dist/workflows/custom-steps.d.ts +0 -73
- package/dist/workflows/custom-steps.d.ts.map +0 -1
- package/dist/workflows/custom-steps.js +0 -321
- package/dist/workflows/custom-steps.js.map +0 -1
- package/dist/workflows/default-logger.d.ts +0 -9
- package/dist/workflows/default-logger.d.ts.map +0 -1
- package/dist/workflows/default-logger.js +0 -104
- package/dist/workflows/default-logger.js.map +0 -1
- package/dist/workflows/dry-run-format.d.ts +0 -6
- package/dist/workflows/dry-run-format.d.ts.map +0 -1
- package/dist/workflows/dry-run-format.js +0 -76
- package/dist/workflows/dry-run-format.js.map +0 -1
- package/dist/workflows/file-db.d.ts +0 -85
- package/dist/workflows/file-db.d.ts.map +0 -1
- package/dist/workflows/file-db.js +0 -215
- package/dist/workflows/file-db.js.map +0 -1
- package/dist/workflows/index.d.ts +0 -36
- package/dist/workflows/index.d.ts.map +0 -1
- package/dist/workflows/index.js +0 -33
- package/dist/workflows/index.js.map +0 -1
- package/dist/workflows/listr-renderer.d.ts +0 -26
- package/dist/workflows/listr-renderer.d.ts.map +0 -1
- package/dist/workflows/listr-renderer.js +0 -230
- package/dist/workflows/listr-renderer.js.map +0 -1
- package/dist/workflows/memory-db.d.ts +0 -17
- package/dist/workflows/memory-db.d.ts.map +0 -1
- package/dist/workflows/memory-db.js +0 -33
- package/dist/workflows/memory-db.js.map +0 -1
- package/dist/workflows/process-backend-executor.d.ts +0 -18
- package/dist/workflows/process-backend-executor.d.ts.map +0 -1
- package/dist/workflows/process-backend-executor.js +0 -74
- package/dist/workflows/process-backend-executor.js.map +0 -1
- package/dist/workflows/process-spawner.d.ts +0 -35
- package/dist/workflows/process-spawner.d.ts.map +0 -1
- package/dist/workflows/process-spawner.js +0 -141
- package/dist/workflows/process-spawner.js.map +0 -1
- package/dist/workflows/proxy-env.d.ts +0 -52
- package/dist/workflows/proxy-env.d.ts.map +0 -1
- package/dist/workflows/proxy-env.js +0 -92
- package/dist/workflows/proxy-env.js.map +0 -1
- package/dist/workflows/run-script.d.ts +0 -82
- package/dist/workflows/run-script.d.ts.map +0 -1
- package/dist/workflows/run-script.js +0 -521
- package/dist/workflows/run-script.js.map +0 -1
- package/dist/workflows/run-summary-table.d.ts +0 -5
- package/dist/workflows/run-summary-table.d.ts.map +0 -1
- package/dist/workflows/run-summary-table.js +0 -132
- package/dist/workflows/run-summary-table.js.map +0 -1
- package/dist/workflows/run.d.ts +0 -45
- package/dist/workflows/run.d.ts.map +0 -1
- package/dist/workflows/run.js +0 -37
- package/dist/workflows/run.js.map +0 -1
- package/dist/workflows/runner.d.ts +0 -527
- package/dist/workflows/runner.d.ts.map +0 -1
- package/dist/workflows/runner.js +0 -6266
- package/dist/workflows/runner.js.map +0 -1
- package/dist/workflows/sibling-links.d.ts +0 -100
- package/dist/workflows/sibling-links.d.ts.map +0 -1
- package/dist/workflows/sibling-links.js +0 -205
- package/dist/workflows/sibling-links.js.map +0 -1
- package/dist/workflows/state.d.ts +0 -77
- package/dist/workflows/state.d.ts.map +0 -1
- package/dist/workflows/state.js +0 -140
- package/dist/workflows/state.js.map +0 -1
- package/dist/workflows/step-executor.d.ts +0 -95
- package/dist/workflows/step-executor.d.ts.map +0 -1
- package/dist/workflows/step-executor.js +0 -393
- package/dist/workflows/step-executor.js.map +0 -1
- package/dist/workflows/template-resolver.d.ts +0 -33
- package/dist/workflows/template-resolver.d.ts.map +0 -1
- package/dist/workflows/template-resolver.js +0 -144
- package/dist/workflows/template-resolver.js.map +0 -1
- package/dist/workflows/templates.d.ts +0 -47
- package/dist/workflows/templates.d.ts.map +0 -1
- package/dist/workflows/templates.js +0 -405
- package/dist/workflows/templates.js.map +0 -1
- package/dist/workflows/trajectory.d.ts +0 -87
- package/dist/workflows/trajectory.d.ts.map +0 -1
- package/dist/workflows/trajectory.js +0 -412
- package/dist/workflows/trajectory.js.map +0 -1
- package/dist/workflows/types.d.ts +0 -471
- package/dist/workflows/types.d.ts.map +0 -1
- package/dist/workflows/types.js +0 -37
- package/dist/workflows/types.js.map +0 -1
- package/dist/workflows/validator.d.ts +0 -11
- package/dist/workflows/validator.d.ts.map +0 -1
- package/dist/workflows/validator.js +0 -184
- package/dist/workflows/validator.js.map +0 -1
- package/dist/workflows/verification.d.ts +0 -53
- package/dist/workflows/verification.d.ts.map +0 -1
- package/dist/workflows/verification.js +0 -238
- package/dist/workflows/verification.js.map +0 -1
- /package/dist/{provisioner → actions}/types.js +0 -0
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import type { RelayYamlConfig } from './types.js';
|
|
2
|
-
export declare const BUILT_IN_TEMPLATE_NAMES: readonly ["feature-dev", "bug-fix", "code-review", "security-audit", "refactor", "documentation", "review-loop"];
|
|
3
|
-
export type BuiltInTemplateName = (typeof BUILT_IN_TEMPLATE_NAMES)[number];
|
|
4
|
-
export interface TemplateRegistryOptions {
|
|
5
|
-
builtInTemplatesDir?: string;
|
|
6
|
-
customTemplatesDir?: string;
|
|
7
|
-
workspaceDir?: string;
|
|
8
|
-
fetcher?: typeof fetch;
|
|
9
|
-
}
|
|
10
|
-
export interface LoadTemplateOptions {
|
|
11
|
-
overrides?: Record<string, unknown>;
|
|
12
|
-
}
|
|
13
|
-
export interface TemplateShorthandConfig {
|
|
14
|
-
swarm: string;
|
|
15
|
-
overrides?: Record<string, unknown>;
|
|
16
|
-
}
|
|
17
|
-
export type TemplateReferenceInput = string | RelayYamlConfig | (Partial<Omit<RelayYamlConfig, 'swarm'>> & TemplateShorthandConfig);
|
|
18
|
-
export declare class TemplateRegistry {
|
|
19
|
-
private readonly builtInTemplatesDir;
|
|
20
|
-
private readonly customTemplatesDir;
|
|
21
|
-
private readonly fetcher;
|
|
22
|
-
constructor(options?: TemplateRegistryOptions);
|
|
23
|
-
listBuiltInTemplates(): string[];
|
|
24
|
-
listCustomTemplates(): Promise<string[]>;
|
|
25
|
-
listTemplates(): Promise<string[]>;
|
|
26
|
-
hasTemplate(name: string): Promise<boolean>;
|
|
27
|
-
loadTemplate(name: string, options?: LoadTemplateOptions): Promise<RelayYamlConfig>;
|
|
28
|
-
resolveTemplateReference(input: TemplateReferenceInput, options?: LoadTemplateOptions): Promise<RelayYamlConfig>;
|
|
29
|
-
applyOverrides(config: RelayYamlConfig, overrides: Record<string, unknown>): RelayYamlConfig;
|
|
30
|
-
installExternalTemplate(url: string, name?: string): Promise<string>;
|
|
31
|
-
private isTemplateShorthand;
|
|
32
|
-
private mergeRelayConfig;
|
|
33
|
-
private normalizeTemplateName;
|
|
34
|
-
private resolveBuiltInTemplatesDir;
|
|
35
|
-
private resolveTemplatePath;
|
|
36
|
-
private findTemplatePath;
|
|
37
|
-
private readTemplateFile;
|
|
38
|
-
private normalizeLegacyTemplate;
|
|
39
|
-
private normalizeLegacyStep;
|
|
40
|
-
private validateRelayConfig;
|
|
41
|
-
private setOverride;
|
|
42
|
-
private setOnValue;
|
|
43
|
-
private resolveArrayItemIndex;
|
|
44
|
-
private safeReadDir;
|
|
45
|
-
private cloneValue;
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=templates.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/workflows/templates.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAIlD,eAAO,MAAM,uBAAuB,kHAQ1B,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3E,MAAM,WAAW,uBAAuB;IACtC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,MAAM,sBAAsB,GAC9B,MAAM,GACN,eAAe,GACf,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,GAAG,uBAAuB,CAAC,CAAC;AAUxE,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAC7C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;gBAE3B,OAAO,GAAE,uBAA4B;IASjD,oBAAoB,IAAI,MAAM,EAAE;IAI1B,mBAAmB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAQxC,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAMlC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS3C,YAAY,CAChB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,eAAe,CAAC;IAWrB,wBAAwB,CAC5B,KAAK,EAAE,sBAAsB,EAC7B,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,eAAe,CAAC;IA0B3B,cAAc,CACZ,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,eAAe;IAUZ,uBAAuB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAkC1E,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,0BAA0B;YAoBpB,mBAAmB;YAgBnB,gBAAgB;YAmBhB,gBAAgB;IAa9B,OAAO,CAAC,uBAAuB;IA+C/B,OAAO,CAAC,mBAAmB;IAqD3B,OAAO,CAAC,mBAAmB;IA0D3B,OAAO,CAAC,WAAW;IAoCnB,OAAO,CAAC,UAAU;IAsDlB,OAAO,CAAC,qBAAqB;YAcf,WAAW;IAQzB,OAAO,CAAC,UAAU;CAOnB"}
|
|
@@ -1,405 +0,0 @@
|
|
|
1
|
-
import { existsSync, promises as fs } from 'node:fs';
|
|
2
|
-
import path from 'node:path';
|
|
3
|
-
import { fileURLToPath } from 'node:url';
|
|
4
|
-
import { parse as parseYaml, stringify as stringifyYaml } from 'yaml';
|
|
5
|
-
const YAML_EXTENSIONS = ['.yaml', '.yml'];
|
|
6
|
-
export const BUILT_IN_TEMPLATE_NAMES = [
|
|
7
|
-
'feature-dev',
|
|
8
|
-
'bug-fix',
|
|
9
|
-
'code-review',
|
|
10
|
-
'security-audit',
|
|
11
|
-
'refactor',
|
|
12
|
-
'documentation',
|
|
13
|
-
'review-loop',
|
|
14
|
-
];
|
|
15
|
-
function isRecord(value) {
|
|
16
|
-
return typeof value === 'object' && value !== null;
|
|
17
|
-
}
|
|
18
|
-
function hasYamlExtension(fileName) {
|
|
19
|
-
return YAML_EXTENSIONS.some((ext) => fileName.endsWith(ext));
|
|
20
|
-
}
|
|
21
|
-
export class TemplateRegistry {
|
|
22
|
-
builtInTemplatesDir;
|
|
23
|
-
customTemplatesDir;
|
|
24
|
-
fetcher;
|
|
25
|
-
constructor(options = {}) {
|
|
26
|
-
this.builtInTemplatesDir = this.resolveBuiltInTemplatesDir(options.builtInTemplatesDir);
|
|
27
|
-
this.customTemplatesDir = options.customTemplatesDir
|
|
28
|
-
? path.resolve(options.customTemplatesDir)
|
|
29
|
-
: path.resolve(options.workspaceDir ?? process.cwd(), '.relay/workflows');
|
|
30
|
-
this.fetcher = options.fetcher ?? fetch;
|
|
31
|
-
}
|
|
32
|
-
listBuiltInTemplates() {
|
|
33
|
-
return [...BUILT_IN_TEMPLATE_NAMES];
|
|
34
|
-
}
|
|
35
|
-
async listCustomTemplates() {
|
|
36
|
-
const files = await this.safeReadDir(this.customTemplatesDir);
|
|
37
|
-
return files
|
|
38
|
-
.filter((fileName) => hasYamlExtension(fileName))
|
|
39
|
-
.map((fileName) => this.normalizeTemplateName(fileName))
|
|
40
|
-
.sort();
|
|
41
|
-
}
|
|
42
|
-
async listTemplates() {
|
|
43
|
-
const custom = await this.listCustomTemplates();
|
|
44
|
-
const merged = new Set([...BUILT_IN_TEMPLATE_NAMES, ...custom]);
|
|
45
|
-
return Array.from(merged).sort();
|
|
46
|
-
}
|
|
47
|
-
async hasTemplate(name) {
|
|
48
|
-
try {
|
|
49
|
-
await this.resolveTemplatePath(name);
|
|
50
|
-
return true;
|
|
51
|
-
}
|
|
52
|
-
catch {
|
|
53
|
-
return false;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
async loadTemplate(name, options = {}) {
|
|
57
|
-
const templatePath = await this.resolveTemplatePath(name);
|
|
58
|
-
const template = await this.readTemplateFile(templatePath);
|
|
59
|
-
if (options.overrides && Object.keys(options.overrides).length > 0) {
|
|
60
|
-
return this.applyOverrides(template, options.overrides);
|
|
61
|
-
}
|
|
62
|
-
return template;
|
|
63
|
-
}
|
|
64
|
-
async resolveTemplateReference(input, options = {}) {
|
|
65
|
-
if (typeof input === 'string') {
|
|
66
|
-
return this.loadTemplate(input, options);
|
|
67
|
-
}
|
|
68
|
-
if (this.isTemplateShorthand(input)) {
|
|
69
|
-
const { swarm, overrides = {}, ...rest } = input;
|
|
70
|
-
const mergedOverrides = {
|
|
71
|
-
...overrides,
|
|
72
|
-
...(options.overrides ?? {}),
|
|
73
|
-
};
|
|
74
|
-
const baseTemplate = await this.loadTemplate(swarm, {
|
|
75
|
-
overrides: mergedOverrides,
|
|
76
|
-
});
|
|
77
|
-
return this.mergeRelayConfig(baseTemplate, rest);
|
|
78
|
-
}
|
|
79
|
-
const config = this.cloneValue(input);
|
|
80
|
-
if (options.overrides && Object.keys(options.overrides).length > 0) {
|
|
81
|
-
return this.applyOverrides(config, options.overrides);
|
|
82
|
-
}
|
|
83
|
-
return config;
|
|
84
|
-
}
|
|
85
|
-
applyOverrides(config, overrides) {
|
|
86
|
-
const nextConfig = this.cloneValue(config);
|
|
87
|
-
for (const [overridePath, value] of Object.entries(overrides)) {
|
|
88
|
-
this.setOverride(nextConfig, overridePath, value);
|
|
89
|
-
}
|
|
90
|
-
return nextConfig;
|
|
91
|
-
}
|
|
92
|
-
async installExternalTemplate(url, name) {
|
|
93
|
-
const response = await this.fetcher(url);
|
|
94
|
-
if (!response.ok) {
|
|
95
|
-
throw new Error(`Failed to fetch template from ${url}: ${response.status} ${response.statusText}`);
|
|
96
|
-
}
|
|
97
|
-
const raw = await response.text();
|
|
98
|
-
const parsed = parseYaml(raw);
|
|
99
|
-
if (!isRecord(parsed)) {
|
|
100
|
-
throw new Error(`Template from ${url} is not a YAML object`);
|
|
101
|
-
}
|
|
102
|
-
const inferredName = typeof parsed.name === 'string' ? parsed.name : '';
|
|
103
|
-
const templateName = this.normalizeTemplateName(name ?? inferredName);
|
|
104
|
-
if (!templateName) {
|
|
105
|
-
throw new Error('Template name is required. Provide name explicitly or include a string "name" field.');
|
|
106
|
-
}
|
|
107
|
-
if (templateName.includes('/') || templateName.includes('\\') || templateName.includes('..') || path.isAbsolute(templateName)) {
|
|
108
|
-
throw new Error(`Invalid template name: "${templateName}" contains path separators or traversal sequences`);
|
|
109
|
-
}
|
|
110
|
-
this.validateRelayConfig(parsed, url);
|
|
111
|
-
await fs.mkdir(this.customTemplatesDir, { recursive: true });
|
|
112
|
-
const targetPath = path.join(this.customTemplatesDir, `${templateName}.yaml`);
|
|
113
|
-
await fs.writeFile(targetPath, stringifyYaml(parsed), 'utf-8');
|
|
114
|
-
return targetPath;
|
|
115
|
-
}
|
|
116
|
-
isTemplateShorthand(input) {
|
|
117
|
-
return isRecord(input) && typeof input.swarm === 'string';
|
|
118
|
-
}
|
|
119
|
-
mergeRelayConfig(base, patch) {
|
|
120
|
-
const merged = this.cloneValue(base);
|
|
121
|
-
for (const [key, value] of Object.entries(patch)) {
|
|
122
|
-
if (value === undefined) {
|
|
123
|
-
continue;
|
|
124
|
-
}
|
|
125
|
-
merged[key] = this.cloneValue(value);
|
|
126
|
-
}
|
|
127
|
-
return merged;
|
|
128
|
-
}
|
|
129
|
-
normalizeTemplateName(name) {
|
|
130
|
-
return name.replace(/\.ya?ml$/i, '').trim();
|
|
131
|
-
}
|
|
132
|
-
resolveBuiltInTemplatesDir(explicitDir) {
|
|
133
|
-
if (explicitDir) {
|
|
134
|
-
return path.resolve(explicitDir);
|
|
135
|
-
}
|
|
136
|
-
const currentDir = path.dirname(fileURLToPath(import.meta.url));
|
|
137
|
-
const candidates = [
|
|
138
|
-
path.resolve(currentDir, 'builtin-templates'),
|
|
139
|
-
path.resolve(currentDir, '../workflows/builtin-templates'),
|
|
140
|
-
];
|
|
141
|
-
for (const candidate of candidates) {
|
|
142
|
-
if (existsSync(candidate)) {
|
|
143
|
-
return candidate;
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
return candidates[0];
|
|
147
|
-
}
|
|
148
|
-
async resolveTemplatePath(name) {
|
|
149
|
-
const normalizedName = this.normalizeTemplateName(name);
|
|
150
|
-
const customPath = await this.findTemplatePath(this.customTemplatesDir, normalizedName);
|
|
151
|
-
if (customPath) {
|
|
152
|
-
return customPath;
|
|
153
|
-
}
|
|
154
|
-
const builtInPath = await this.findTemplatePath(this.builtInTemplatesDir, normalizedName);
|
|
155
|
-
if (builtInPath) {
|
|
156
|
-
return builtInPath;
|
|
157
|
-
}
|
|
158
|
-
throw new Error(`Template not found: ${name}`);
|
|
159
|
-
}
|
|
160
|
-
async findTemplatePath(directory, templateName) {
|
|
161
|
-
for (const ext of YAML_EXTENSIONS) {
|
|
162
|
-
const candidate = path.join(directory, `${templateName}${ext}`);
|
|
163
|
-
try {
|
|
164
|
-
const stat = await fs.stat(candidate);
|
|
165
|
-
if (stat.isFile()) {
|
|
166
|
-
return candidate;
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
catch {
|
|
170
|
-
// Continue checking other extensions.
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
return undefined;
|
|
174
|
-
}
|
|
175
|
-
async readTemplateFile(templatePath) {
|
|
176
|
-
const raw = await fs.readFile(templatePath, 'utf-8');
|
|
177
|
-
const parsed = parseYaml(raw);
|
|
178
|
-
if (!isRecord(parsed)) {
|
|
179
|
-
throw new Error(`Template at ${templatePath} is not a YAML object`);
|
|
180
|
-
}
|
|
181
|
-
const normalized = this.normalizeLegacyTemplate(parsed);
|
|
182
|
-
this.validateRelayConfig(normalized, templatePath);
|
|
183
|
-
return normalized;
|
|
184
|
-
}
|
|
185
|
-
normalizeLegacyTemplate(rawTemplate) {
|
|
186
|
-
const normalized = this.cloneValue(rawTemplate);
|
|
187
|
-
if (!isRecord(normalized.swarm) && typeof normalized.pattern === 'string') {
|
|
188
|
-
normalized.swarm = { pattern: normalized.pattern };
|
|
189
|
-
delete normalized.pattern;
|
|
190
|
-
}
|
|
191
|
-
if (Array.isArray(normalized.agents)) {
|
|
192
|
-
normalized.agents = normalized.agents.map((agent) => {
|
|
193
|
-
if (!isRecord(agent)) {
|
|
194
|
-
return agent;
|
|
195
|
-
}
|
|
196
|
-
if (typeof agent.name !== 'string' && typeof agent.id === 'string') {
|
|
197
|
-
return { ...agent, name: agent.id };
|
|
198
|
-
}
|
|
199
|
-
return agent;
|
|
200
|
-
});
|
|
201
|
-
}
|
|
202
|
-
if (!Array.isArray(normalized.workflows) && isRecord(normalized.workflow)) {
|
|
203
|
-
const workflowName = typeof normalized.name === 'string'
|
|
204
|
-
? `${normalized.name}-workflow`
|
|
205
|
-
: 'default-workflow';
|
|
206
|
-
const workflow = normalized.workflow;
|
|
207
|
-
const steps = Array.isArray(workflow.steps)
|
|
208
|
-
? workflow.steps.map((step) => this.normalizeLegacyStep(step)).filter((step) => step !== null)
|
|
209
|
-
: [];
|
|
210
|
-
normalized.workflows = [
|
|
211
|
-
{
|
|
212
|
-
name: workflowName,
|
|
213
|
-
description: typeof workflow.description === 'string' ? workflow.description : undefined,
|
|
214
|
-
onError: typeof workflow.onError === 'string' ? workflow.onError : undefined,
|
|
215
|
-
steps,
|
|
216
|
-
},
|
|
217
|
-
];
|
|
218
|
-
delete normalized.workflow;
|
|
219
|
-
}
|
|
220
|
-
return normalized;
|
|
221
|
-
}
|
|
222
|
-
normalizeLegacyStep(step) {
|
|
223
|
-
if (!isRecord(step)) {
|
|
224
|
-
return null;
|
|
225
|
-
}
|
|
226
|
-
const name = typeof step.name === 'string'
|
|
227
|
-
? step.name
|
|
228
|
-
: typeof step.id === 'string'
|
|
229
|
-
? step.id
|
|
230
|
-
: undefined;
|
|
231
|
-
const task = typeof step.task === 'string'
|
|
232
|
-
? step.task
|
|
233
|
-
: typeof step.prompt === 'string'
|
|
234
|
-
? step.prompt
|
|
235
|
-
: undefined;
|
|
236
|
-
if (!name || typeof step.agent !== 'string' || !task) {
|
|
237
|
-
return null;
|
|
238
|
-
}
|
|
239
|
-
const normalized = {
|
|
240
|
-
name,
|
|
241
|
-
agent: step.agent,
|
|
242
|
-
task,
|
|
243
|
-
};
|
|
244
|
-
if (Array.isArray(step.dependsOn)) {
|
|
245
|
-
normalized.dependsOn = step.dependsOn;
|
|
246
|
-
}
|
|
247
|
-
if (typeof step.timeoutMs === 'number') {
|
|
248
|
-
normalized.timeoutMs = step.timeoutMs;
|
|
249
|
-
}
|
|
250
|
-
if (typeof step.retries === 'number') {
|
|
251
|
-
normalized.retries = step.retries;
|
|
252
|
-
}
|
|
253
|
-
else if (typeof step.maxRetries === 'number') {
|
|
254
|
-
normalized.retries = step.maxRetries;
|
|
255
|
-
}
|
|
256
|
-
if (isRecord(step.verification)) {
|
|
257
|
-
normalized.verification = step.verification;
|
|
258
|
-
}
|
|
259
|
-
else if (typeof step.expects === 'string') {
|
|
260
|
-
normalized.verification = {
|
|
261
|
-
type: 'output_contains',
|
|
262
|
-
value: step.expects,
|
|
263
|
-
};
|
|
264
|
-
}
|
|
265
|
-
return normalized;
|
|
266
|
-
}
|
|
267
|
-
validateRelayConfig(rawConfig, source) {
|
|
268
|
-
if (!isRecord(rawConfig)) {
|
|
269
|
-
throw new Error(`Template at ${source} is not an object`);
|
|
270
|
-
}
|
|
271
|
-
if (typeof rawConfig.version !== 'string') {
|
|
272
|
-
throw new Error(`Template at ${source} is missing required string field: version`);
|
|
273
|
-
}
|
|
274
|
-
if (typeof rawConfig.name !== 'string') {
|
|
275
|
-
throw new Error(`Template at ${source} is missing required string field: name`);
|
|
276
|
-
}
|
|
277
|
-
if (!isRecord(rawConfig.swarm) || typeof rawConfig.swarm.pattern !== 'string') {
|
|
278
|
-
throw new Error(`Template at ${source} is missing required field: swarm.pattern`);
|
|
279
|
-
}
|
|
280
|
-
if (!Array.isArray(rawConfig.agents) || rawConfig.agents.length === 0) {
|
|
281
|
-
throw new Error(`Template at ${source} must include a non-empty agents array`);
|
|
282
|
-
}
|
|
283
|
-
for (const agent of rawConfig.agents) {
|
|
284
|
-
if (!isRecord(agent) || typeof agent.name !== 'string' || typeof agent.cli !== 'string') {
|
|
285
|
-
throw new Error(`Template at ${source} contains an invalid agent definition`);
|
|
286
|
-
}
|
|
287
|
-
}
|
|
288
|
-
if (rawConfig.workflows !== undefined) {
|
|
289
|
-
if (!Array.isArray(rawConfig.workflows)) {
|
|
290
|
-
throw new Error(`Template at ${source} has invalid workflows; expected an array`);
|
|
291
|
-
}
|
|
292
|
-
for (const workflow of rawConfig.workflows) {
|
|
293
|
-
if (!isRecord(workflow) || typeof workflow.name !== 'string' || !Array.isArray(workflow.steps)) {
|
|
294
|
-
throw new Error(`Template at ${source} contains an invalid workflow definition`);
|
|
295
|
-
}
|
|
296
|
-
for (const step of workflow.steps) {
|
|
297
|
-
if (!isRecord(step) || typeof step.name !== 'string') {
|
|
298
|
-
throw new Error(`Template at ${source} contains an invalid workflow step`);
|
|
299
|
-
}
|
|
300
|
-
// Deterministic steps require type and command
|
|
301
|
-
if (step.type === 'deterministic') {
|
|
302
|
-
if (typeof step.command !== 'string') {
|
|
303
|
-
throw new Error(`Template at ${source} has deterministic step "${step.name}" without a command`);
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
else {
|
|
307
|
-
// Agent steps (type is undefined or 'agent') require agent and task
|
|
308
|
-
if (typeof step.agent !== 'string' || typeof step.task !== 'string') {
|
|
309
|
-
throw new Error(`Template at ${source} has agent step "${step.name}" without agent or task`);
|
|
310
|
-
}
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
}
|
|
314
|
-
}
|
|
315
|
-
}
|
|
316
|
-
setOverride(config, overridePath, value) {
|
|
317
|
-
const pathParts = overridePath
|
|
318
|
-
.replace(/\[(\d+)\]/g, '.$1')
|
|
319
|
-
.split('.')
|
|
320
|
-
.map((part) => part.trim())
|
|
321
|
-
.filter(Boolean);
|
|
322
|
-
if (pathParts.length === 0) {
|
|
323
|
-
return;
|
|
324
|
-
}
|
|
325
|
-
if (pathParts[0] === 'steps') {
|
|
326
|
-
const workflow = config.workflows?.[0];
|
|
327
|
-
if (!workflow) {
|
|
328
|
-
throw new Error(`Cannot apply override "${overridePath}": workflows[0] is missing`);
|
|
329
|
-
}
|
|
330
|
-
this.setOnValue(workflow.steps, pathParts.slice(1), value, overridePath);
|
|
331
|
-
return;
|
|
332
|
-
}
|
|
333
|
-
if (pathParts[0] === 'workflow' && pathParts[1] === 'steps') {
|
|
334
|
-
const workflow = config.workflows?.[0];
|
|
335
|
-
if (!workflow) {
|
|
336
|
-
throw new Error(`Cannot apply override "${overridePath}": workflows[0] is missing`);
|
|
337
|
-
}
|
|
338
|
-
this.setOnValue(workflow.steps, pathParts.slice(2), value, overridePath);
|
|
339
|
-
return;
|
|
340
|
-
}
|
|
341
|
-
this.setOnValue(config, pathParts, value, overridePath);
|
|
342
|
-
}
|
|
343
|
-
setOnValue(target, pathParts, value, fullPath) {
|
|
344
|
-
if (pathParts.length === 0) {
|
|
345
|
-
throw new Error(`Invalid override path: ${fullPath}`);
|
|
346
|
-
}
|
|
347
|
-
let current = target;
|
|
348
|
-
for (let i = 0; i < pathParts.length - 1; i += 1) {
|
|
349
|
-
const part = pathParts[i];
|
|
350
|
-
const nextPart = pathParts[i + 1];
|
|
351
|
-
if (Array.isArray(current)) {
|
|
352
|
-
const index = this.resolveArrayItemIndex(current, part);
|
|
353
|
-
if (index < 0) {
|
|
354
|
-
throw new Error(`Cannot apply override "${fullPath}": array item "${part}" was not found`);
|
|
355
|
-
}
|
|
356
|
-
current = current[index];
|
|
357
|
-
continue;
|
|
358
|
-
}
|
|
359
|
-
if (!isRecord(current)) {
|
|
360
|
-
throw new Error(`Cannot apply override "${fullPath}": segment "${part}" is not an object`);
|
|
361
|
-
}
|
|
362
|
-
if (!(part in current) || current[part] === undefined || current[part] === null) {
|
|
363
|
-
current[part] = /^\d+$/.test(nextPart) ? [] : {};
|
|
364
|
-
}
|
|
365
|
-
current = current[part];
|
|
366
|
-
}
|
|
367
|
-
const finalPart = pathParts[pathParts.length - 1];
|
|
368
|
-
if (Array.isArray(current)) {
|
|
369
|
-
const index = this.resolveArrayItemIndex(current, finalPart);
|
|
370
|
-
if (index < 0) {
|
|
371
|
-
throw new Error(`Cannot apply override "${fullPath}": array item "${finalPart}" was not found`);
|
|
372
|
-
}
|
|
373
|
-
current[index] = value;
|
|
374
|
-
return;
|
|
375
|
-
}
|
|
376
|
-
if (!isRecord(current)) {
|
|
377
|
-
throw new Error(`Cannot apply override "${fullPath}": parent object is invalid`);
|
|
378
|
-
}
|
|
379
|
-
current[finalPart] = value;
|
|
380
|
-
}
|
|
381
|
-
resolveArrayItemIndex(items, segment) {
|
|
382
|
-
if (/^\d+$/.test(segment)) {
|
|
383
|
-
const index = Number.parseInt(segment, 10);
|
|
384
|
-
return index >= 0 && index < items.length ? index : -1;
|
|
385
|
-
}
|
|
386
|
-
return items.findIndex((item) => isRecord(item) &&
|
|
387
|
-
((typeof item.name === 'string' && item.name === segment) ||
|
|
388
|
-
(typeof item.id === 'string' && item.id === segment)));
|
|
389
|
-
}
|
|
390
|
-
async safeReadDir(directory) {
|
|
391
|
-
try {
|
|
392
|
-
return await fs.readdir(directory);
|
|
393
|
-
}
|
|
394
|
-
catch {
|
|
395
|
-
return [];
|
|
396
|
-
}
|
|
397
|
-
}
|
|
398
|
-
cloneValue(value) {
|
|
399
|
-
if (typeof structuredClone === 'function') {
|
|
400
|
-
return structuredClone(value);
|
|
401
|
-
}
|
|
402
|
-
return JSON.parse(JSON.stringify(value));
|
|
403
|
-
}
|
|
404
|
-
}
|
|
405
|
-
//# sourceMappingURL=templates.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/workflows/templates.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import type { StepCompletionDecision, TrajectoryConfig, WorkflowStep } from './types.js';
|
|
2
|
-
interface StepParticipants {
|
|
3
|
-
role?: string;
|
|
4
|
-
owner?: string;
|
|
5
|
-
specialist?: string;
|
|
6
|
-
reviewer?: string;
|
|
7
|
-
}
|
|
8
|
-
export interface StepOutcome {
|
|
9
|
-
name: string;
|
|
10
|
-
agent: string;
|
|
11
|
-
status: 'completed' | 'failed' | 'skipped';
|
|
12
|
-
attempts: number;
|
|
13
|
-
output?: string;
|
|
14
|
-
error?: string;
|
|
15
|
-
verificationPassed?: boolean;
|
|
16
|
-
verificationValue?: string;
|
|
17
|
-
nonInteractive?: boolean;
|
|
18
|
-
durationMs?: number;
|
|
19
|
-
completionMode?: StepCompletionDecision['mode'];
|
|
20
|
-
}
|
|
21
|
-
export declare class WorkflowTrajectory {
|
|
22
|
-
private trajectory;
|
|
23
|
-
private storage?;
|
|
24
|
-
private storageInit?;
|
|
25
|
-
private readonly enabled;
|
|
26
|
-
private readonly reflectOnBarriers;
|
|
27
|
-
private readonly reflectOnConverge;
|
|
28
|
-
private readonly autoDecisions;
|
|
29
|
-
private readonly storageBaseDir;
|
|
30
|
-
private readonly runId;
|
|
31
|
-
private startTime;
|
|
32
|
-
private swarmPattern;
|
|
33
|
-
constructor(config: TrajectoryConfig | false | undefined, runId: string, cwd: string);
|
|
34
|
-
start(workflowName: string, stepCount: number, trackInfo?: string, description?: string, pattern?: string): Promise<void>;
|
|
35
|
-
beginTrack(trackName: string): Promise<void>;
|
|
36
|
-
beginConvergence(label: string): Promise<void>;
|
|
37
|
-
stepStarted(step: WorkflowStep, agent: string, participants?: StepParticipants): Promise<void>;
|
|
38
|
-
registerAgent(name: string, role: string): Promise<void>;
|
|
39
|
-
stepSupervisionAssigned(step: WorkflowStep, supervised: {
|
|
40
|
-
owner: {
|
|
41
|
-
name: string;
|
|
42
|
-
};
|
|
43
|
-
specialist: {
|
|
44
|
-
name: string;
|
|
45
|
-
};
|
|
46
|
-
reviewer?: {
|
|
47
|
-
name: string;
|
|
48
|
-
};
|
|
49
|
-
}): Promise<void>;
|
|
50
|
-
ownerMonitoringEvent(stepName: string, owner: string, detail: string, raw?: Record<string, unknown>): Promise<void>;
|
|
51
|
-
reviewCompleted(stepName: string, reviewerName: string, decision: 'approved' | 'rejected', reason?: string): Promise<void>;
|
|
52
|
-
stepCompletionDecision(stepName: string, decision: StepCompletionDecision): Promise<void>;
|
|
53
|
-
stepCompleted(step: WorkflowStep, output: string, attempt: number, decision?: StepCompletionDecision): Promise<void>;
|
|
54
|
-
stepFailed(step: WorkflowStep, error: string, attempt: number, maxRetries: number, outcome?: Partial<StepOutcome>): Promise<void>;
|
|
55
|
-
stepSkipped(step: WorkflowStep, reason: string): Promise<void>;
|
|
56
|
-
stepRetrying(step: WorkflowStep, attempt: number, maxRetries: number): Promise<void>;
|
|
57
|
-
reflect(synthesis: string, confidence: number, focalPoints?: string[]): Promise<void>;
|
|
58
|
-
synthesizeAndReflect(label: string, outcomes: StepOutcome[], unblocks?: string[]): Promise<void>;
|
|
59
|
-
decide(question: string, chosen: string, reasoning: string): Promise<void>;
|
|
60
|
-
complete(summary: string, confidence: number, meta?: {
|
|
61
|
-
learnings?: string[];
|
|
62
|
-
challenges?: string[];
|
|
63
|
-
}): Promise<void>;
|
|
64
|
-
abandon(reason: string, meta?: {
|
|
65
|
-
summary?: string;
|
|
66
|
-
confidence?: number;
|
|
67
|
-
learnings?: string[];
|
|
68
|
-
challenges?: string[];
|
|
69
|
-
}): Promise<void>;
|
|
70
|
-
isEnabled(): boolean;
|
|
71
|
-
shouldReflectOnConverge(): boolean;
|
|
72
|
-
shouldReflectOnBarriers(): boolean;
|
|
73
|
-
getTrajectoryId(): string | null;
|
|
74
|
-
buildSynthesis(label: string, outcomes: StepOutcome[], unblocks?: string[]): string;
|
|
75
|
-
computeConfidence(outcomes: StepOutcome[]): number;
|
|
76
|
-
buildRunSummary(outcomes: StepOutcome[]): string;
|
|
77
|
-
extractLearnings(outcomes: StepOutcome[]): string[];
|
|
78
|
-
extractChallenges(outcomes: StepOutcome[]): string[];
|
|
79
|
-
private openChapter;
|
|
80
|
-
private addEvent;
|
|
81
|
-
private buildApproach;
|
|
82
|
-
private formatCompletionEvidenceSummary;
|
|
83
|
-
private ensureStorage;
|
|
84
|
-
private flush;
|
|
85
|
-
}
|
|
86
|
-
export {};
|
|
87
|
-
//# sourceMappingURL=trajectory.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trajectory.d.ts","sourceRoot":"","sources":["../../src/workflows/trajectory.ts"],"names":[],"mappings":"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"}
|