@stoneforge/smithy 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +13 -0
- package/README.md +114 -0
- package/dist/api/index.d.ts +7 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +7 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/orchestrator-api.d.ts +153 -0
- package/dist/api/orchestrator-api.d.ts.map +1 -0
- package/dist/api/orchestrator-api.js +374 -0
- package/dist/api/orchestrator-api.js.map +1 -0
- package/dist/bin/sf.d.ts +3 -0
- package/dist/bin/sf.d.ts.map +1 -0
- package/dist/bin/sf.js +10 -0
- package/dist/bin/sf.js.map +1 -0
- package/dist/cli/commands/agent.d.ts +20 -0
- package/dist/cli/commands/agent.d.ts.map +1 -0
- package/dist/cli/commands/agent.js +861 -0
- package/dist/cli/commands/agent.js.map +1 -0
- package/dist/cli/commands/daemon.d.ts +14 -0
- package/dist/cli/commands/daemon.d.ts.map +1 -0
- package/dist/cli/commands/daemon.js +272 -0
- package/dist/cli/commands/daemon.js.map +1 -0
- package/dist/cli/commands/dispatch.d.ts +9 -0
- package/dist/cli/commands/dispatch.d.ts.map +1 -0
- package/dist/cli/commands/dispatch.js +128 -0
- package/dist/cli/commands/dispatch.js.map +1 -0
- package/dist/cli/commands/merge.d.ts +11 -0
- package/dist/cli/commands/merge.d.ts.map +1 -0
- package/dist/cli/commands/merge.js +246 -0
- package/dist/cli/commands/merge.js.map +1 -0
- package/dist/cli/commands/pool.d.ts +21 -0
- package/dist/cli/commands/pool.d.ts.map +1 -0
- package/dist/cli/commands/pool.js +762 -0
- package/dist/cli/commands/pool.js.map +1 -0
- package/dist/cli/commands/serve.d.ts +54 -0
- package/dist/cli/commands/serve.d.ts.map +1 -0
- package/dist/cli/commands/serve.js +57 -0
- package/dist/cli/commands/serve.js.map +1 -0
- package/dist/cli/commands/task.d.ts +36 -0
- package/dist/cli/commands/task.d.ts.map +1 -0
- package/dist/cli/commands/task.js +889 -0
- package/dist/cli/commands/task.js.map +1 -0
- package/dist/cli/commands/test-orchestration.d.ts +32 -0
- package/dist/cli/commands/test-orchestration.d.ts.map +1 -0
- package/dist/cli/commands/test-orchestration.js +392 -0
- package/dist/cli/commands/test-orchestration.js.map +1 -0
- package/dist/cli/index.d.ts +13 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +15 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/plugin.d.ts +23 -0
- package/dist/cli/plugin.d.ts.map +1 -0
- package/dist/cli/plugin.js +36 -0
- package/dist/cli/plugin.js.map +1 -0
- package/dist/git/index.d.ts +10 -0
- package/dist/git/index.d.ts.map +1 -0
- package/dist/git/index.js +12 -0
- package/dist/git/index.js.map +1 -0
- package/dist/git/merge.d.ts +79 -0
- package/dist/git/merge.d.ts.map +1 -0
- package/dist/git/merge.js +254 -0
- package/dist/git/merge.js.map +1 -0
- package/dist/git/worktree-manager.d.ts +299 -0
- package/dist/git/worktree-manager.d.ts.map +1 -0
- package/dist/git/worktree-manager.js +744 -0
- package/dist/git/worktree-manager.js.map +1 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +31 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/director.md +272 -0
- package/dist/prompts/index.d.ts +100 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +294 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/message-triage.md +50 -0
- package/dist/prompts/persistent-worker.md +240 -0
- package/dist/prompts/steward-base.md +64 -0
- package/dist/prompts/steward-docs.md +118 -0
- package/dist/prompts/steward-health.md +39 -0
- package/dist/prompts/steward-merge.md +168 -0
- package/dist/prompts/steward-ops.md +28 -0
- package/dist/prompts/steward-reminder.md +26 -0
- package/dist/prompts/worker.md +282 -0
- package/dist/providers/claude/headless.d.ts +18 -0
- package/dist/providers/claude/headless.d.ts.map +1 -0
- package/dist/providers/claude/headless.js +307 -0
- package/dist/providers/claude/headless.js.map +1 -0
- package/dist/providers/claude/index.d.ts +24 -0
- package/dist/providers/claude/index.d.ts.map +1 -0
- package/dist/providers/claude/index.js +80 -0
- package/dist/providers/claude/index.js.map +1 -0
- package/dist/providers/claude/interactive.d.ts +21 -0
- package/dist/providers/claude/interactive.d.ts.map +1 -0
- package/dist/providers/claude/interactive.js +142 -0
- package/dist/providers/claude/interactive.js.map +1 -0
- package/dist/providers/codex/event-mapper.d.ts +91 -0
- package/dist/providers/codex/event-mapper.d.ts.map +1 -0
- package/dist/providers/codex/event-mapper.js +299 -0
- package/dist/providers/codex/event-mapper.js.map +1 -0
- package/dist/providers/codex/headless.d.ts +20 -0
- package/dist/providers/codex/headless.d.ts.map +1 -0
- package/dist/providers/codex/headless.js +174 -0
- package/dist/providers/codex/headless.js.map +1 -0
- package/dist/providers/codex/index.d.ts +30 -0
- package/dist/providers/codex/index.d.ts.map +1 -0
- package/dist/providers/codex/index.js +55 -0
- package/dist/providers/codex/index.js.map +1 -0
- package/dist/providers/codex/interactive.d.ts +21 -0
- package/dist/providers/codex/interactive.d.ts.map +1 -0
- package/dist/providers/codex/interactive.js +141 -0
- package/dist/providers/codex/interactive.js.map +1 -0
- package/dist/providers/codex/jsonrpc-client.d.ts +52 -0
- package/dist/providers/codex/jsonrpc-client.d.ts.map +1 -0
- package/dist/providers/codex/jsonrpc-client.js +141 -0
- package/dist/providers/codex/jsonrpc-client.js.map +1 -0
- package/dist/providers/codex/server-manager.d.ts +100 -0
- package/dist/providers/codex/server-manager.d.ts.map +1 -0
- package/dist/providers/codex/server-manager.js +153 -0
- package/dist/providers/codex/server-manager.js.map +1 -0
- package/dist/providers/index.d.ts +15 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +19 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/opencode/async-queue.d.ts +21 -0
- package/dist/providers/opencode/async-queue.d.ts.map +1 -0
- package/dist/providers/opencode/async-queue.js +51 -0
- package/dist/providers/opencode/async-queue.js.map +1 -0
- package/dist/providers/opencode/event-mapper.d.ts +132 -0
- package/dist/providers/opencode/event-mapper.d.ts.map +1 -0
- package/dist/providers/opencode/event-mapper.js +204 -0
- package/dist/providers/opencode/event-mapper.js.map +1 -0
- package/dist/providers/opencode/headless.d.ts +25 -0
- package/dist/providers/opencode/headless.d.ts.map +1 -0
- package/dist/providers/opencode/headless.js +190 -0
- package/dist/providers/opencode/headless.js.map +1 -0
- package/dist/providers/opencode/index.d.ts +33 -0
- package/dist/providers/opencode/index.d.ts.map +1 -0
- package/dist/providers/opencode/index.js +42 -0
- package/dist/providers/opencode/index.js.map +1 -0
- package/dist/providers/opencode/interactive.d.ts +21 -0
- package/dist/providers/opencode/interactive.d.ts.map +1 -0
- package/dist/providers/opencode/interactive.js +135 -0
- package/dist/providers/opencode/interactive.js.map +1 -0
- package/dist/providers/opencode/server-manager.d.ts +145 -0
- package/dist/providers/opencode/server-manager.d.ts.map +1 -0
- package/dist/providers/opencode/server-manager.js +163 -0
- package/dist/providers/opencode/server-manager.js.map +1 -0
- package/dist/providers/registry.d.ts +38 -0
- package/dist/providers/registry.d.ts.map +1 -0
- package/dist/providers/registry.js +82 -0
- package/dist/providers/registry.js.map +1 -0
- package/dist/providers/types.d.ts +144 -0
- package/dist/providers/types.d.ts.map +1 -0
- package/dist/providers/types.js +25 -0
- package/dist/providers/types.js.map +1 -0
- package/dist/runtime/event-utils.d.ts +8 -0
- package/dist/runtime/event-utils.d.ts.map +1 -0
- package/dist/runtime/event-utils.js +23 -0
- package/dist/runtime/event-utils.js.map +1 -0
- package/dist/runtime/handoff.d.ts +195 -0
- package/dist/runtime/handoff.d.ts.map +1 -0
- package/dist/runtime/handoff.js +332 -0
- package/dist/runtime/handoff.js.map +1 -0
- package/dist/runtime/index.d.ts +17 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +60 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/message-mapper.d.ts +99 -0
- package/dist/runtime/message-mapper.d.ts.map +1 -0
- package/dist/runtime/message-mapper.js +202 -0
- package/dist/runtime/message-mapper.js.map +1 -0
- package/dist/runtime/predecessor-query.d.ts +212 -0
- package/dist/runtime/predecessor-query.d.ts.map +1 -0
- package/dist/runtime/predecessor-query.js +283 -0
- package/dist/runtime/predecessor-query.js.map +1 -0
- package/dist/runtime/session-manager.d.ts +466 -0
- package/dist/runtime/session-manager.d.ts.map +1 -0
- package/dist/runtime/session-manager.js +986 -0
- package/dist/runtime/session-manager.js.map +1 -0
- package/dist/runtime/spawner.d.ts +407 -0
- package/dist/runtime/spawner.d.ts.map +1 -0
- package/dist/runtime/spawner.js +781 -0
- package/dist/runtime/spawner.js.map +1 -0
- package/dist/server/config.d.ts +22 -0
- package/dist/server/config.d.ts.map +1 -0
- package/dist/server/config.js +59 -0
- package/dist/server/config.js.map +1 -0
- package/dist/server/daemon-state.d.ts +50 -0
- package/dist/server/daemon-state.d.ts.map +1 -0
- package/dist/server/daemon-state.js +100 -0
- package/dist/server/daemon-state.js.map +1 -0
- package/dist/server/events-websocket.d.ts +32 -0
- package/dist/server/events-websocket.d.ts.map +1 -0
- package/dist/server/events-websocket.js +96 -0
- package/dist/server/events-websocket.js.map +1 -0
- package/dist/server/formatters.d.ts +94 -0
- package/dist/server/formatters.d.ts.map +1 -0
- package/dist/server/formatters.js +142 -0
- package/dist/server/formatters.js.map +1 -0
- package/dist/server/index.d.ts +17 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +153 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/lsp-websocket.d.ts +33 -0
- package/dist/server/lsp-websocket.d.ts.map +1 -0
- package/dist/server/lsp-websocket.js +161 -0
- package/dist/server/lsp-websocket.js.map +1 -0
- package/dist/server/routes/agents.d.ts +9 -0
- package/dist/server/routes/agents.d.ts.map +1 -0
- package/dist/server/routes/agents.js +369 -0
- package/dist/server/routes/agents.js.map +1 -0
- package/dist/server/routes/daemon.d.ts +13 -0
- package/dist/server/routes/daemon.d.ts.map +1 -0
- package/dist/server/routes/daemon.js +187 -0
- package/dist/server/routes/daemon.js.map +1 -0
- package/dist/server/routes/events.d.ts +23 -0
- package/dist/server/routes/events.d.ts.map +1 -0
- package/dist/server/routes/events.js +282 -0
- package/dist/server/routes/events.js.map +1 -0
- package/dist/server/routes/extensions.d.ts +9 -0
- package/dist/server/routes/extensions.d.ts.map +1 -0
- package/dist/server/routes/extensions.js +202 -0
- package/dist/server/routes/extensions.js.map +1 -0
- package/dist/server/routes/health.d.ts +7 -0
- package/dist/server/routes/health.d.ts.map +1 -0
- package/dist/server/routes/health.js +33 -0
- package/dist/server/routes/health.js.map +1 -0
- package/dist/server/routes/index.d.ts +21 -0
- package/dist/server/routes/index.d.ts.map +1 -0
- package/dist/server/routes/index.js +21 -0
- package/dist/server/routes/index.js.map +1 -0
- package/dist/server/routes/lsp.d.ts +9 -0
- package/dist/server/routes/lsp.d.ts.map +1 -0
- package/dist/server/routes/lsp.js +50 -0
- package/dist/server/routes/lsp.js.map +1 -0
- package/dist/server/routes/plugins.d.ts +9 -0
- package/dist/server/routes/plugins.d.ts.map +1 -0
- package/dist/server/routes/plugins.js +109 -0
- package/dist/server/routes/plugins.js.map +1 -0
- package/dist/server/routes/pools.d.ts +9 -0
- package/dist/server/routes/pools.d.ts.map +1 -0
- package/dist/server/routes/pools.js +189 -0
- package/dist/server/routes/pools.js.map +1 -0
- package/dist/server/routes/scheduler.d.ts +9 -0
- package/dist/server/routes/scheduler.d.ts.map +1 -0
- package/dist/server/routes/scheduler.js +162 -0
- package/dist/server/routes/scheduler.js.map +1 -0
- package/dist/server/routes/sessions.d.ts +27 -0
- package/dist/server/routes/sessions.d.ts.map +1 -0
- package/dist/server/routes/sessions.js +773 -0
- package/dist/server/routes/sessions.js.map +1 -0
- package/dist/server/routes/tasks.d.ts +9 -0
- package/dist/server/routes/tasks.d.ts.map +1 -0
- package/dist/server/routes/tasks.js +954 -0
- package/dist/server/routes/tasks.js.map +1 -0
- package/dist/server/routes/upload.d.ts +8 -0
- package/dist/server/routes/upload.d.ts.map +1 -0
- package/dist/server/routes/upload.js +40 -0
- package/dist/server/routes/upload.js.map +1 -0
- package/dist/server/routes/workflows.d.ts +9 -0
- package/dist/server/routes/workflows.d.ts.map +1 -0
- package/dist/server/routes/workflows.js +532 -0
- package/dist/server/routes/workflows.js.map +1 -0
- package/dist/server/routes/workspace-files.d.ts +12 -0
- package/dist/server/routes/workspace-files.d.ts.map +1 -0
- package/dist/server/routes/workspace-files.js +520 -0
- package/dist/server/routes/workspace-files.js.map +1 -0
- package/dist/server/routes/worktrees.d.ts +9 -0
- package/dist/server/routes/worktrees.d.ts.map +1 -0
- package/dist/server/routes/worktrees.js +94 -0
- package/dist/server/routes/worktrees.js.map +1 -0
- package/dist/server/server.d.ts +14 -0
- package/dist/server/server.d.ts.map +1 -0
- package/dist/server/server.js +258 -0
- package/dist/server/server.js.map +1 -0
- package/dist/server/services/lsp-manager.d.ts +93 -0
- package/dist/server/services/lsp-manager.d.ts.map +1 -0
- package/dist/server/services/lsp-manager.js +291 -0
- package/dist/server/services/lsp-manager.js.map +1 -0
- package/dist/server/services/session-messages.d.ts +61 -0
- package/dist/server/services/session-messages.d.ts.map +1 -0
- package/dist/server/services/session-messages.js +101 -0
- package/dist/server/services/session-messages.js.map +1 -0
- package/dist/server/services.d.ts +35 -0
- package/dist/server/services.d.ts.map +1 -0
- package/dist/server/services.js +159 -0
- package/dist/server/services.js.map +1 -0
- package/dist/server/static.d.ts +18 -0
- package/dist/server/static.d.ts.map +1 -0
- package/dist/server/static.js +71 -0
- package/dist/server/static.js.map +1 -0
- package/dist/server/types.d.ts +20 -0
- package/dist/server/types.d.ts.map +1 -0
- package/dist/server/types.js +7 -0
- package/dist/server/types.js.map +1 -0
- package/dist/server/websocket.d.ts +16 -0
- package/dist/server/websocket.d.ts.map +1 -0
- package/dist/server/websocket.js +143 -0
- package/dist/server/websocket.js.map +1 -0
- package/dist/services/agent-pool-service.d.ts +181 -0
- package/dist/services/agent-pool-service.d.ts.map +1 -0
- package/dist/services/agent-pool-service.js +590 -0
- package/dist/services/agent-pool-service.js.map +1 -0
- package/dist/services/agent-registry.d.ts +185 -0
- package/dist/services/agent-registry.d.ts.map +1 -0
- package/dist/services/agent-registry.js +432 -0
- package/dist/services/agent-registry.js.map +1 -0
- package/dist/services/dispatch-daemon.d.ts +429 -0
- package/dist/services/dispatch-daemon.d.ts.map +1 -0
- package/dist/services/dispatch-daemon.js +1833 -0
- package/dist/services/dispatch-daemon.js.map +1 -0
- package/dist/services/dispatch-service.d.ts +148 -0
- package/dist/services/dispatch-service.d.ts.map +1 -0
- package/dist/services/dispatch-service.js +170 -0
- package/dist/services/dispatch-service.js.map +1 -0
- package/dist/services/docs-steward-service.d.ts +199 -0
- package/dist/services/docs-steward-service.d.ts.map +1 -0
- package/dist/services/docs-steward-service.js +599 -0
- package/dist/services/docs-steward-service.js.map +1 -0
- package/dist/services/health-steward-service.d.ts +446 -0
- package/dist/services/health-steward-service.d.ts.map +1 -0
- package/dist/services/health-steward-service.js +866 -0
- package/dist/services/health-steward-service.js.map +1 -0
- package/dist/services/index.d.ts +26 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +111 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/merge-request-provider.d.ts +59 -0
- package/dist/services/merge-request-provider.d.ts.map +1 -0
- package/dist/services/merge-request-provider.js +89 -0
- package/dist/services/merge-request-provider.js.map +1 -0
- package/dist/services/merge-steward-service.d.ts +268 -0
- package/dist/services/merge-steward-service.d.ts.map +1 -0
- package/dist/services/merge-steward-service.js +568 -0
- package/dist/services/merge-steward-service.js.map +1 -0
- package/dist/services/plugin-executor.d.ts +247 -0
- package/dist/services/plugin-executor.d.ts.map +1 -0
- package/dist/services/plugin-executor.js +451 -0
- package/dist/services/plugin-executor.js.map +1 -0
- package/dist/services/role-definition-service.d.ts +117 -0
- package/dist/services/role-definition-service.d.ts.map +1 -0
- package/dist/services/role-definition-service.js +289 -0
- package/dist/services/role-definition-service.js.map +1 -0
- package/dist/services/steward-scheduler.d.ts +336 -0
- package/dist/services/steward-scheduler.d.ts.map +1 -0
- package/dist/services/steward-scheduler.js +732 -0
- package/dist/services/steward-scheduler.js.map +1 -0
- package/dist/services/task-assignment-service.d.ts +291 -0
- package/dist/services/task-assignment-service.d.ts.map +1 -0
- package/dist/services/task-assignment-service.js +454 -0
- package/dist/services/task-assignment-service.js.map +1 -0
- package/dist/services/worker-task-service.d.ts +202 -0
- package/dist/services/worker-task-service.d.ts.map +1 -0
- package/dist/services/worker-task-service.js +228 -0
- package/dist/services/worker-task-service.js.map +1 -0
- package/dist/testing/index.d.ts +13 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +17 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/orchestration-tests.d.ts +62 -0
- package/dist/testing/orchestration-tests.d.ts.map +1 -0
- package/dist/testing/orchestration-tests.js +1115 -0
- package/dist/testing/orchestration-tests.js.map +1 -0
- package/dist/testing/test-context.d.ts +171 -0
- package/dist/testing/test-context.d.ts.map +1 -0
- package/dist/testing/test-context.js +665 -0
- package/dist/testing/test-context.js.map +1 -0
- package/dist/testing/test-prompts.d.ts +46 -0
- package/dist/testing/test-prompts.d.ts.map +1 -0
- package/dist/testing/test-prompts.js +140 -0
- package/dist/testing/test-prompts.js.map +1 -0
- package/dist/testing/test-utils.d.ts +200 -0
- package/dist/testing/test-utils.d.ts.map +1 -0
- package/dist/testing/test-utils.js +378 -0
- package/dist/testing/test-utils.js.map +1 -0
- package/dist/types/agent-pool.d.ts +215 -0
- package/dist/types/agent-pool.d.ts.map +1 -0
- package/dist/types/agent-pool.js +143 -0
- package/dist/types/agent-pool.js.map +1 -0
- package/dist/types/agent.d.ts +265 -0
- package/dist/types/agent.d.ts.map +1 -0
- package/dist/types/agent.js +127 -0
- package/dist/types/agent.js.map +1 -0
- package/dist/types/index.d.ts +11 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +40 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/message-types.d.ts +294 -0
- package/dist/types/message-types.d.ts.map +1 -0
- package/dist/types/message-types.js +354 -0
- package/dist/types/message-types.js.map +1 -0
- package/dist/types/role-definition.d.ts +272 -0
- package/dist/types/role-definition.d.ts.map +1 -0
- package/dist/types/role-definition.js +144 -0
- package/dist/types/role-definition.js.map +1 -0
- package/dist/types/task-meta.d.ts +248 -0
- package/dist/types/task-meta.d.ts.map +1 -0
- package/dist/types/task-meta.js +213 -0
- package/dist/types/task-meta.js.map +1 -0
- package/package.json +120 -0
- package/web/assets/abap-BrgZPUOV.js +6 -0
- package/web/assets/apex-DyP6w7ZV.js +6 -0
- package/web/assets/azcli-BaLxmfj-.js +6 -0
- package/web/assets/bat-CFOPXBzS.js +6 -0
- package/web/assets/bicep-BfEKNvv3.js +7 -0
- package/web/assets/cameligo-BFG1Mk7z.js +6 -0
- package/web/assets/clojure-DTECt2xU.js +6 -0
- package/web/assets/codicon-DCmgc-ay.ttf +0 -0
- package/web/assets/coffee-CDGzqUPQ.js +6 -0
- package/web/assets/cpp-CLLBncYj.js +6 -0
- package/web/assets/csharp-dUCx_-0o.js +6 -0
- package/web/assets/csp-5Rap-vPy.js +6 -0
- package/web/assets/css-D3h14YRZ.js +8 -0
- package/web/assets/cssMode-DMo-5YLA.js +9 -0
- package/web/assets/cypher-DrQuvNYM.js +6 -0
- package/web/assets/dart-CFKIUWau.js +6 -0
- package/web/assets/dockerfile-Zznr-cwX.js +6 -0
- package/web/assets/ecl-Ce3n6wWz.js +6 -0
- package/web/assets/elixir-deUWdS0T.js +6 -0
- package/web/assets/flow9-i9-g7ZhI.js +6 -0
- package/web/assets/freemarker2-D4qgkQzN.js +8 -0
- package/web/assets/fsharp-CzKuDChf.js +6 -0
- package/web/assets/go-Cphgjts3.js +6 -0
- package/web/assets/graphql-Cg7bfA9N.js +6 -0
- package/web/assets/handlebars-CXFvNjQC.js +6 -0
- package/web/assets/hcl-0cvrggvQ.js +6 -0
- package/web/assets/html-oyuB_D-B.js +6 -0
- package/web/assets/htmlMode-iWuZ24-r.js +9 -0
- package/web/assets/index-DqP-_E4F.css +32 -0
- package/web/assets/index-R1cylSgw.js +1665 -0
- package/web/assets/ini-Drc7WvVn.js +6 -0
- package/web/assets/java-B_fMsGYe.js +6 -0
- package/web/assets/javascript-CRIkN2Pg.js +6 -0
- package/web/assets/jsonMode-DVDkDgex.js +15 -0
- package/web/assets/julia-Bqgm2twL.js +6 -0
- package/web/assets/kotlin-BSkB5QuD.js +6 -0
- package/web/assets/less-BsTHnhdd.js +7 -0
- package/web/assets/lexon-YWi4-JPR.js +6 -0
- package/web/assets/liquid-CSfldbB5.js +6 -0
- package/web/assets/lua-nf6ki56Z.js +6 -0
- package/web/assets/m3-Cpb6xl2v.js +6 -0
- package/web/assets/markdown-DSZPf7rp.js +6 -0
- package/web/assets/mdx-Dd58iymR.js +6 -0
- package/web/assets/mips-B_c3zf-v.js +6 -0
- package/web/assets/monaco-editor-B4lwqA13.js +751 -0
- package/web/assets/monaco-editor-CQpyCxOA.css +1 -0
- package/web/assets/msdax-rUNN04Wq.js +6 -0
- package/web/assets/mysql-DDwshQtU.js +6 -0
- package/web/assets/objective-c-B5zXfXm9.js +6 -0
- package/web/assets/pascal-CXOwvkN_.js +6 -0
- package/web/assets/pascaligo-Bc-ZgV77.js +6 -0
- package/web/assets/perl-CwNk8-XU.js +6 -0
- package/web/assets/pgsql-tGk8EFnU.js +6 -0
- package/web/assets/php-CpIb_Oan.js +6 -0
- package/web/assets/pla-B03wrqEc.js +6 -0
- package/web/assets/postiats-BKlk5iyT.js +6 -0
- package/web/assets/powerquery-Bhzvs7bI.js +6 -0
- package/web/assets/powershell-Dd3NCNK9.js +6 -0
- package/web/assets/protobuf-COyEY5Pt.js +7 -0
- package/web/assets/pug-BaJupSGV.js +6 -0
- package/web/assets/python-XWrMqdhO.js +6 -0
- package/web/assets/qsharp-DXyYeYxl.js +6 -0
- package/web/assets/r-CdQndTaG.js +6 -0
- package/web/assets/razor-DPlhCpIs.js +6 -0
- package/web/assets/redis-CVwtpugi.js +6 -0
- package/web/assets/redshift-25W9uPmb.js +6 -0
- package/web/assets/restructuredtext-DfzH4Xui.js +6 -0
- package/web/assets/router-vendor-DHlGizSU.js +41 -0
- package/web/assets/ruby-Cp1zYvxS.js +6 -0
- package/web/assets/rust-D5C2fndG.js +6 -0
- package/web/assets/sb-CDntyWJ8.js +6 -0
- package/web/assets/scala-BoFRg7Ot.js +6 -0
- package/web/assets/scheme-Bio4gycK.js +6 -0
- package/web/assets/scss-4Ik7cdeQ.js +8 -0
- package/web/assets/shell-CX-rkNHf.js +6 -0
- package/web/assets/solidity-Tw7wswEv.js +6 -0
- package/web/assets/sophia-C5WLch3f.js +6 -0
- package/web/assets/sparql-DHaeiCBh.js +6 -0
- package/web/assets/sql-CCSDG5nI.js +6 -0
- package/web/assets/st-pnP8ivHi.js +6 -0
- package/web/assets/swift-DwJ7jVG9.js +8 -0
- package/web/assets/systemverilog-B9Xyijhd.js +6 -0
- package/web/assets/tcl-DnHyzjbg.js +6 -0
- package/web/assets/tsMode-BbA1Jbf3.js +16 -0
- package/web/assets/twig-CPajHgWi.js +6 -0
- package/web/assets/typescript-DcLHYzvH.js +6 -0
- package/web/assets/typespec-D-MeaMDU.js +6 -0
- package/web/assets/ui-vendor-BSco96uv.js +51 -0
- package/web/assets/utils-vendor-DaJ2Dubl.js +911 -0
- package/web/assets/vb-DgyLZaXg.js +6 -0
- package/web/assets/wgsl-DYQUnd45.js +303 -0
- package/web/assets/xml-xKYS3dO6.js +6 -0
- package/web/assets/yaml-CNmlXqzH.js +6 -0
- package/web/favicon.ico +0 -0
- package/web/index.html +22 -0
- package/web/logo.png +0 -0
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Pool Types - Pool configuration for controlling agent concurrency
|
|
3
|
+
*
|
|
4
|
+
* Agent pools provide a way to limit the maximum number of agents running
|
|
5
|
+
* concurrently across one or more agent types. The dispatch daemon respects
|
|
6
|
+
* pool limits when spawning agents, and pools can have configurable priority
|
|
7
|
+
* for each agent type to determine spawn order when there are multiple pending
|
|
8
|
+
* tasks/resources.
|
|
9
|
+
*
|
|
10
|
+
* Key concepts:
|
|
11
|
+
* - Pool size: Maximum number of concurrent agents across all types in the pool
|
|
12
|
+
* - Agent type slots: Which agent types (worker, steward) can occupy pool slots
|
|
13
|
+
* - Priority scores: Per-type priority for tie-breaking when multiple tasks are ready
|
|
14
|
+
*
|
|
15
|
+
* @module
|
|
16
|
+
*/
|
|
17
|
+
// ============================================================================
|
|
18
|
+
// Validation Functions
|
|
19
|
+
// ============================================================================
|
|
20
|
+
/**
|
|
21
|
+
* Valid pool name pattern: alphanumeric, hyphen, underscore
|
|
22
|
+
*/
|
|
23
|
+
const POOL_NAME_PATTERN = /^[a-zA-Z][a-zA-Z0-9_-]*$/;
|
|
24
|
+
/**
|
|
25
|
+
* Validates a pool name
|
|
26
|
+
*/
|
|
27
|
+
export function isValidPoolName(value) {
|
|
28
|
+
if (typeof value !== 'string')
|
|
29
|
+
return false;
|
|
30
|
+
if (value.length < 1 || value.length > 64)
|
|
31
|
+
return false;
|
|
32
|
+
return POOL_NAME_PATTERN.test(value);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Validates a pool max size
|
|
36
|
+
*/
|
|
37
|
+
export function isValidPoolSize(value) {
|
|
38
|
+
if (typeof value !== 'number')
|
|
39
|
+
return false;
|
|
40
|
+
if (!Number.isInteger(value))
|
|
41
|
+
return false;
|
|
42
|
+
if (value < 1 || value > 1000)
|
|
43
|
+
return false;
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Validates a priority score
|
|
48
|
+
*/
|
|
49
|
+
export function isValidPriorityScore(value) {
|
|
50
|
+
if (typeof value !== 'number')
|
|
51
|
+
return false;
|
|
52
|
+
if (!Number.isInteger(value))
|
|
53
|
+
return false;
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Validates a pool agent type configuration
|
|
58
|
+
*/
|
|
59
|
+
export function isValidPoolAgentTypeConfig(value) {
|
|
60
|
+
if (typeof value !== 'object' || value === null)
|
|
61
|
+
return false;
|
|
62
|
+
const config = value;
|
|
63
|
+
// Role is required and must be worker or steward (not director)
|
|
64
|
+
if (config.role !== 'worker' && config.role !== 'steward')
|
|
65
|
+
return false;
|
|
66
|
+
// Optional fields validation
|
|
67
|
+
if (config.workerMode !== undefined) {
|
|
68
|
+
if (config.workerMode !== 'ephemeral' && config.workerMode !== 'persistent') {
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
if (config.stewardFocus !== undefined) {
|
|
73
|
+
const validFocuses = ['merge', 'health', 'reminder', 'ops', 'docs'];
|
|
74
|
+
if (!validFocuses.includes(config.stewardFocus)) {
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
if (config.priority !== undefined && !isValidPriorityScore(config.priority)) {
|
|
79
|
+
return false;
|
|
80
|
+
}
|
|
81
|
+
if (config.maxSlots !== undefined && !isValidPoolSize(config.maxSlots)) {
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
return true;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Validates a pool configuration
|
|
88
|
+
*/
|
|
89
|
+
export function isValidPoolConfig(value) {
|
|
90
|
+
if (typeof value !== 'object' || value === null)
|
|
91
|
+
return false;
|
|
92
|
+
const config = value;
|
|
93
|
+
if (!isValidPoolName(config.name))
|
|
94
|
+
return false;
|
|
95
|
+
if (!isValidPoolSize(config.maxSize))
|
|
96
|
+
return false;
|
|
97
|
+
if (config.agentTypes !== undefined) {
|
|
98
|
+
if (!Array.isArray(config.agentTypes))
|
|
99
|
+
return false;
|
|
100
|
+
for (const agentType of config.agentTypes) {
|
|
101
|
+
if (!isValidPoolAgentTypeConfig(agentType))
|
|
102
|
+
return false;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
return true;
|
|
106
|
+
}
|
|
107
|
+
// ============================================================================
|
|
108
|
+
// Type Guards
|
|
109
|
+
// ============================================================================
|
|
110
|
+
/**
|
|
111
|
+
* Type guard to check if a value is an AgentPool
|
|
112
|
+
*/
|
|
113
|
+
export function isAgentPool(value) {
|
|
114
|
+
if (typeof value !== 'object' || value === null)
|
|
115
|
+
return false;
|
|
116
|
+
const pool = value;
|
|
117
|
+
return (typeof pool.id === 'string' &&
|
|
118
|
+
typeof pool.config === 'object' &&
|
|
119
|
+
pool.config !== null &&
|
|
120
|
+
typeof pool.status === 'object' &&
|
|
121
|
+
pool.status !== null &&
|
|
122
|
+
typeof pool.createdAt !== 'undefined' &&
|
|
123
|
+
typeof pool.createdBy === 'string');
|
|
124
|
+
}
|
|
125
|
+
// ============================================================================
|
|
126
|
+
// Constants
|
|
127
|
+
// ============================================================================
|
|
128
|
+
/**
|
|
129
|
+
* Default pool configuration values
|
|
130
|
+
*/
|
|
131
|
+
export const POOL_DEFAULTS = {
|
|
132
|
+
/** Default pool max size */
|
|
133
|
+
maxSize: 5,
|
|
134
|
+
/** Default enabled status */
|
|
135
|
+
enabled: true,
|
|
136
|
+
/** Default priority for agent types */
|
|
137
|
+
defaultPriority: 0,
|
|
138
|
+
};
|
|
139
|
+
/**
|
|
140
|
+
* Pool metadata key for storing pool config in Entity metadata
|
|
141
|
+
*/
|
|
142
|
+
export const POOL_METADATA_KEY = 'agentPool';
|
|
143
|
+
//# sourceMappingURL=agent-pool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-pool.js","sourceRoot":"","sources":["../../src/types/agent-pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Types - Role definitions for AI agents in the orchestration system
|
|
3
|
+
*
|
|
4
|
+
* This module defines the core types for agents in the Stoneforge Smithy:
|
|
5
|
+
* - AgentRole: The primary role classification (director, steward, worker)
|
|
6
|
+
* - WorkerMode: Whether a worker is ephemeral (short-lived) or persistent
|
|
7
|
+
* - StewardFocus: The specialty area for steward agents
|
|
8
|
+
* - StewardTrigger: How stewards are activated (cron or event)
|
|
9
|
+
*
|
|
10
|
+
* Agents are stored as Entity elements with additional metadata in their
|
|
11
|
+
* `metadata` field to track orchestrator-specific properties.
|
|
12
|
+
*/
|
|
13
|
+
import type { EntityId, ChannelId, Timestamp, ElementId } from '@stoneforge/core';
|
|
14
|
+
/**
|
|
15
|
+
* The primary role classification for agents in the orchestration system.
|
|
16
|
+
*
|
|
17
|
+
* - `director`: Strategic agent that creates and assigns tasks, reports to Human
|
|
18
|
+
* - `steward`: Support agent that performs maintenance tasks (merge, health, etc.)
|
|
19
|
+
* - `worker`: Execution agent that produces code and completes tasks
|
|
20
|
+
*/
|
|
21
|
+
export type AgentRole = 'director' | 'steward' | 'worker';
|
|
22
|
+
/**
|
|
23
|
+
* All valid agent role values
|
|
24
|
+
*/
|
|
25
|
+
export declare const AgentRoleValues: readonly ["director", "steward", "worker"];
|
|
26
|
+
/**
|
|
27
|
+
* Type guard to check if a value is a valid AgentRole
|
|
28
|
+
*/
|
|
29
|
+
export declare function isAgentRole(value: unknown): value is AgentRole;
|
|
30
|
+
/**
|
|
31
|
+
* The lifecycle mode for worker agents.
|
|
32
|
+
*
|
|
33
|
+
* - `ephemeral`: Short-lived workers spawned per task, reports to Director
|
|
34
|
+
* - `persistent`: Long-lived workers that can handle multiple tasks, reports to Human
|
|
35
|
+
*/
|
|
36
|
+
export type WorkerMode = 'ephemeral' | 'persistent';
|
|
37
|
+
/**
|
|
38
|
+
* All valid worker mode values
|
|
39
|
+
*/
|
|
40
|
+
export declare const WorkerModeValues: readonly ["ephemeral", "persistent"];
|
|
41
|
+
/**
|
|
42
|
+
* Type guard to check if a value is a valid WorkerMode
|
|
43
|
+
*/
|
|
44
|
+
export declare function isWorkerMode(value: unknown): value is WorkerMode;
|
|
45
|
+
/**
|
|
46
|
+
* The specialty area for steward agents.
|
|
47
|
+
*
|
|
48
|
+
* - `merge`: Handles merging completed branches, running tests, cleanup
|
|
49
|
+
* - `health`: Monitors agent health, detects stuck agents, helps unstick
|
|
50
|
+
* - `reminder`: Sends reminders and notifications
|
|
51
|
+
* - `ops`: Runs scheduled maintenance tasks, garbage collection
|
|
52
|
+
* - `docs`: Scans and fixes documentation issues, auto-merges fixes
|
|
53
|
+
*/
|
|
54
|
+
export type StewardFocus = 'merge' | 'health' | 'reminder' | 'ops' | 'docs';
|
|
55
|
+
/**
|
|
56
|
+
* All valid steward focus values
|
|
57
|
+
*/
|
|
58
|
+
export declare const StewardFocusValues: readonly ["merge", "health", "reminder", "ops", "docs"];
|
|
59
|
+
/**
|
|
60
|
+
* Type guard to check if a value is a valid StewardFocus
|
|
61
|
+
*/
|
|
62
|
+
export declare function isStewardFocus(value: unknown): value is StewardFocus;
|
|
63
|
+
/**
|
|
64
|
+
* Cron-based trigger for stewards - activates on a schedule
|
|
65
|
+
*/
|
|
66
|
+
export interface CronTrigger {
|
|
67
|
+
/** Trigger type discriminator */
|
|
68
|
+
readonly type: 'cron';
|
|
69
|
+
/** Cron expression (e.g., "0 2 * * *" for 2 AM daily) */
|
|
70
|
+
readonly schedule: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Event-based trigger for stewards - activates when matching events occur
|
|
74
|
+
*/
|
|
75
|
+
export interface EventTrigger {
|
|
76
|
+
/** Trigger type discriminator */
|
|
77
|
+
readonly type: 'event';
|
|
78
|
+
/** Event name to listen for (e.g., "task_completed", "branch_ready") */
|
|
79
|
+
readonly event: string;
|
|
80
|
+
/** Optional JavaScript-like condition expression */
|
|
81
|
+
readonly condition?: string;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Steward trigger - either cron-based or event-based
|
|
85
|
+
*/
|
|
86
|
+
export type StewardTrigger = CronTrigger | EventTrigger;
|
|
87
|
+
/**
|
|
88
|
+
* Type guard to check if a trigger is a CronTrigger
|
|
89
|
+
*/
|
|
90
|
+
export declare function isCronTrigger(trigger: StewardTrigger): trigger is CronTrigger;
|
|
91
|
+
/**
|
|
92
|
+
* Type guard to check if a trigger is an EventTrigger
|
|
93
|
+
*/
|
|
94
|
+
export declare function isEventTrigger(trigger: StewardTrigger): trigger is EventTrigger;
|
|
95
|
+
/**
|
|
96
|
+
* Type guard to check if a value is a valid StewardTrigger
|
|
97
|
+
*/
|
|
98
|
+
export declare function isStewardTrigger(value: unknown): value is StewardTrigger;
|
|
99
|
+
/**
|
|
100
|
+
* Base metadata shared by all agent types
|
|
101
|
+
*/
|
|
102
|
+
export interface BaseAgentMetadata {
|
|
103
|
+
/** The agent's role in the orchestration system */
|
|
104
|
+
readonly agentRole: AgentRole;
|
|
105
|
+
/** Direct channel ID for receiving messages */
|
|
106
|
+
readonly channelId?: ChannelId;
|
|
107
|
+
/** Provider session ID for resumption */
|
|
108
|
+
readonly sessionId?: string;
|
|
109
|
+
/** Path to the agent's worktree (for workers) */
|
|
110
|
+
readonly worktree?: string;
|
|
111
|
+
/** Current session status */
|
|
112
|
+
readonly sessionStatus?: 'idle' | 'running' | 'suspended' | 'terminated';
|
|
113
|
+
/** Timestamp of last activity */
|
|
114
|
+
readonly lastActivityAt?: Timestamp;
|
|
115
|
+
/**
|
|
116
|
+
* Maximum number of tasks this agent can work on concurrently.
|
|
117
|
+
* Default is 1 for most agents.
|
|
118
|
+
*/
|
|
119
|
+
readonly maxConcurrentTasks?: number;
|
|
120
|
+
/**
|
|
121
|
+
* Reference to the role definition Document that defines this agent's
|
|
122
|
+
* system prompt and behavioral configuration. If not set, the agent
|
|
123
|
+
* uses default behavior.
|
|
124
|
+
*/
|
|
125
|
+
readonly roleDefinitionRef?: ElementId;
|
|
126
|
+
/** Agent provider name (e.g., 'claude', 'opencode'). Defaults to 'claude'. */
|
|
127
|
+
readonly provider?: string;
|
|
128
|
+
/** Model identifier to use (e.g., 'claude-sonnet-4-20250514'). If not set, uses provider default. */
|
|
129
|
+
readonly model?: string;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Director-specific metadata
|
|
133
|
+
*/
|
|
134
|
+
export interface DirectorMetadata extends BaseAgentMetadata {
|
|
135
|
+
readonly agentRole: 'director';
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Worker-specific metadata
|
|
139
|
+
*/
|
|
140
|
+
export interface WorkerMetadata extends BaseAgentMetadata {
|
|
141
|
+
readonly agentRole: 'worker';
|
|
142
|
+
/** Whether this is an ephemeral or persistent worker */
|
|
143
|
+
readonly workerMode: WorkerMode;
|
|
144
|
+
/** Current branch the worker is working on */
|
|
145
|
+
readonly branch?: string;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Steward-specific metadata
|
|
149
|
+
*/
|
|
150
|
+
export interface StewardMetadata extends BaseAgentMetadata {
|
|
151
|
+
readonly agentRole: 'steward';
|
|
152
|
+
/** The steward's specialty area */
|
|
153
|
+
readonly stewardFocus: StewardFocus;
|
|
154
|
+
/** Triggers that activate this steward */
|
|
155
|
+
readonly triggers?: StewardTrigger[];
|
|
156
|
+
/** Timestamp of last execution */
|
|
157
|
+
readonly lastExecutedAt?: Timestamp;
|
|
158
|
+
/** Timestamp of next scheduled execution (for cron triggers) */
|
|
159
|
+
readonly nextScheduledAt?: Timestamp;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Union type for all agent metadata types
|
|
163
|
+
*/
|
|
164
|
+
export type AgentMetadata = DirectorMetadata | WorkerMetadata | StewardMetadata;
|
|
165
|
+
/**
|
|
166
|
+
* Type guard to check if metadata is DirectorMetadata
|
|
167
|
+
*/
|
|
168
|
+
export declare function isDirectorMetadata(metadata: AgentMetadata): metadata is DirectorMetadata;
|
|
169
|
+
/**
|
|
170
|
+
* Type guard to check if metadata is WorkerMetadata
|
|
171
|
+
*/
|
|
172
|
+
export declare function isWorkerMetadata(metadata: AgentMetadata): metadata is WorkerMetadata;
|
|
173
|
+
/**
|
|
174
|
+
* Type guard to check if metadata is StewardMetadata
|
|
175
|
+
*/
|
|
176
|
+
export declare function isStewardMetadata(metadata: AgentMetadata): metadata is StewardMetadata;
|
|
177
|
+
/**
|
|
178
|
+
* Input for registering a Director agent
|
|
179
|
+
*/
|
|
180
|
+
export interface RegisterDirectorInput {
|
|
181
|
+
/** Agent name (must be unique) */
|
|
182
|
+
readonly name: string;
|
|
183
|
+
/** Optional tags for the agent entity */
|
|
184
|
+
readonly tags?: string[];
|
|
185
|
+
/** Entity ID of the creator (usually a human) */
|
|
186
|
+
readonly createdBy: EntityId;
|
|
187
|
+
/** Maximum concurrent tasks (default: 1) */
|
|
188
|
+
readonly maxConcurrentTasks?: number;
|
|
189
|
+
/** Optional reference to a role definition for system prompt and behaviors */
|
|
190
|
+
readonly roleDefinitionRef?: ElementId;
|
|
191
|
+
/** Agent provider (e.g., 'claude', 'opencode'). Defaults to 'claude'. */
|
|
192
|
+
readonly provider?: string;
|
|
193
|
+
/** Model identifier to use (e.g., 'claude-sonnet-4-20250514'). If not set, uses provider default. */
|
|
194
|
+
readonly model?: string;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Input for registering a Worker agent
|
|
198
|
+
*/
|
|
199
|
+
export interface RegisterWorkerInput {
|
|
200
|
+
/** Agent name (must be unique) */
|
|
201
|
+
readonly name: string;
|
|
202
|
+
/** Whether this is an ephemeral or persistent worker */
|
|
203
|
+
readonly workerMode: WorkerMode;
|
|
204
|
+
/** Optional tags for the agent entity */
|
|
205
|
+
readonly tags?: string[];
|
|
206
|
+
/** Entity ID of the creator */
|
|
207
|
+
readonly createdBy: EntityId;
|
|
208
|
+
/** Optional manager entity (Director for ephemeral, Human for persistent) */
|
|
209
|
+
readonly reportsTo?: EntityId;
|
|
210
|
+
/** Maximum concurrent tasks (default: 1) */
|
|
211
|
+
readonly maxConcurrentTasks?: number;
|
|
212
|
+
/** Optional reference to a role definition for system prompt and behaviors */
|
|
213
|
+
readonly roleDefinitionRef?: ElementId;
|
|
214
|
+
/** Agent provider (e.g., 'claude', 'opencode'). Defaults to 'claude'. */
|
|
215
|
+
readonly provider?: string;
|
|
216
|
+
/** Model identifier to use (e.g., 'claude-sonnet-4-20250514'). If not set, uses provider default. */
|
|
217
|
+
readonly model?: string;
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Input for registering a Steward agent
|
|
221
|
+
*/
|
|
222
|
+
export interface RegisterStewardInput {
|
|
223
|
+
/** Agent name (must be unique) */
|
|
224
|
+
readonly name: string;
|
|
225
|
+
/** The steward's specialty area */
|
|
226
|
+
readonly stewardFocus: StewardFocus;
|
|
227
|
+
/** Triggers that activate this steward */
|
|
228
|
+
readonly triggers?: StewardTrigger[];
|
|
229
|
+
/** Optional tags for the agent entity */
|
|
230
|
+
readonly tags?: string[];
|
|
231
|
+
/** Entity ID of the creator */
|
|
232
|
+
readonly createdBy: EntityId;
|
|
233
|
+
/** Optional manager entity (usually the Director) */
|
|
234
|
+
readonly reportsTo?: EntityId;
|
|
235
|
+
/** Maximum concurrent tasks (default: 1) */
|
|
236
|
+
readonly maxConcurrentTasks?: number;
|
|
237
|
+
/** Optional reference to a role definition for system prompt and behaviors */
|
|
238
|
+
readonly roleDefinitionRef?: ElementId;
|
|
239
|
+
/** Agent provider (e.g., 'claude', 'opencode'). Defaults to 'claude'. */
|
|
240
|
+
readonly provider?: string;
|
|
241
|
+
/** Model identifier to use (e.g., 'claude-sonnet-4-20250514'). If not set, uses provider default. */
|
|
242
|
+
readonly model?: string;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Filter options for querying agents
|
|
246
|
+
*/
|
|
247
|
+
export interface AgentFilter {
|
|
248
|
+
/** Filter by role */
|
|
249
|
+
readonly role?: AgentRole;
|
|
250
|
+
/** Filter by worker mode (only applies when role is 'worker') */
|
|
251
|
+
readonly workerMode?: WorkerMode;
|
|
252
|
+
/** Filter by steward focus (only applies when role is 'steward') */
|
|
253
|
+
readonly stewardFocus?: StewardFocus;
|
|
254
|
+
/** Filter by session status */
|
|
255
|
+
readonly sessionStatus?: 'idle' | 'running' | 'suspended' | 'terminated';
|
|
256
|
+
/** Filter by manager */
|
|
257
|
+
readonly reportsTo?: EntityId;
|
|
258
|
+
/** Include only agents with sessions */
|
|
259
|
+
readonly hasSession?: boolean;
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Validates agent metadata structure
|
|
263
|
+
*/
|
|
264
|
+
export declare function validateAgentMetadata(metadata: unknown): metadata is AgentMetadata;
|
|
265
|
+
//# sourceMappingURL=agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/types/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Types - Role definitions for AI agents in the orchestration system
|
|
3
|
+
*
|
|
4
|
+
* This module defines the core types for agents in the Stoneforge Smithy:
|
|
5
|
+
* - AgentRole: The primary role classification (director, steward, worker)
|
|
6
|
+
* - WorkerMode: Whether a worker is ephemeral (short-lived) or persistent
|
|
7
|
+
* - StewardFocus: The specialty area for steward agents
|
|
8
|
+
* - StewardTrigger: How stewards are activated (cron or event)
|
|
9
|
+
*
|
|
10
|
+
* Agents are stored as Entity elements with additional metadata in their
|
|
11
|
+
* `metadata` field to track orchestrator-specific properties.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* All valid agent role values
|
|
15
|
+
*/
|
|
16
|
+
export const AgentRoleValues = ['director', 'steward', 'worker'];
|
|
17
|
+
/**
|
|
18
|
+
* Type guard to check if a value is a valid AgentRole
|
|
19
|
+
*/
|
|
20
|
+
export function isAgentRole(value) {
|
|
21
|
+
return typeof value === 'string' && AgentRoleValues.includes(value);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* All valid worker mode values
|
|
25
|
+
*/
|
|
26
|
+
export const WorkerModeValues = ['ephemeral', 'persistent'];
|
|
27
|
+
/**
|
|
28
|
+
* Type guard to check if a value is a valid WorkerMode
|
|
29
|
+
*/
|
|
30
|
+
export function isWorkerMode(value) {
|
|
31
|
+
return typeof value === 'string' && WorkerModeValues.includes(value);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* All valid steward focus values
|
|
35
|
+
*/
|
|
36
|
+
export const StewardFocusValues = ['merge', 'health', 'reminder', 'ops', 'docs'];
|
|
37
|
+
/**
|
|
38
|
+
* Type guard to check if a value is a valid StewardFocus
|
|
39
|
+
*/
|
|
40
|
+
export function isStewardFocus(value) {
|
|
41
|
+
return typeof value === 'string' && StewardFocusValues.includes(value);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Type guard to check if a trigger is a CronTrigger
|
|
45
|
+
*/
|
|
46
|
+
export function isCronTrigger(trigger) {
|
|
47
|
+
return trigger.type === 'cron';
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Type guard to check if a trigger is an EventTrigger
|
|
51
|
+
*/
|
|
52
|
+
export function isEventTrigger(trigger) {
|
|
53
|
+
return trigger.type === 'event';
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Type guard to check if a value is a valid StewardTrigger
|
|
57
|
+
*/
|
|
58
|
+
export function isStewardTrigger(value) {
|
|
59
|
+
if (typeof value !== 'object' || value === null) {
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
const obj = value;
|
|
63
|
+
if (obj.type === 'cron') {
|
|
64
|
+
return typeof obj.schedule === 'string';
|
|
65
|
+
}
|
|
66
|
+
if (obj.type === 'event') {
|
|
67
|
+
return typeof obj.event === 'string' && (obj.condition === undefined || typeof obj.condition === 'string');
|
|
68
|
+
}
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Type guard to check if metadata is DirectorMetadata
|
|
73
|
+
*/
|
|
74
|
+
export function isDirectorMetadata(metadata) {
|
|
75
|
+
return metadata.agentRole === 'director';
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Type guard to check if metadata is WorkerMetadata
|
|
79
|
+
*/
|
|
80
|
+
export function isWorkerMetadata(metadata) {
|
|
81
|
+
return metadata.agentRole === 'worker';
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Type guard to check if metadata is StewardMetadata
|
|
85
|
+
*/
|
|
86
|
+
export function isStewardMetadata(metadata) {
|
|
87
|
+
return metadata.agentRole === 'steward';
|
|
88
|
+
}
|
|
89
|
+
// ============================================================================
|
|
90
|
+
// Validation Utilities
|
|
91
|
+
// ============================================================================
|
|
92
|
+
/**
|
|
93
|
+
* Validates agent metadata structure
|
|
94
|
+
*/
|
|
95
|
+
export function validateAgentMetadata(metadata) {
|
|
96
|
+
if (typeof metadata !== 'object' || metadata === null) {
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
const obj = metadata;
|
|
100
|
+
if (!isAgentRole(obj.agentRole)) {
|
|
101
|
+
return false;
|
|
102
|
+
}
|
|
103
|
+
// Validate maxConcurrentTasks if present
|
|
104
|
+
if (obj.maxConcurrentTasks !== undefined && typeof obj.maxConcurrentTasks !== 'number') {
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
switch (obj.agentRole) {
|
|
108
|
+
case 'director':
|
|
109
|
+
return true;
|
|
110
|
+
case 'worker':
|
|
111
|
+
return isWorkerMode(obj.workerMode);
|
|
112
|
+
case 'steward':
|
|
113
|
+
if (!isStewardFocus(obj.stewardFocus)) {
|
|
114
|
+
return false;
|
|
115
|
+
}
|
|
116
|
+
if (obj.triggers !== undefined) {
|
|
117
|
+
if (!Array.isArray(obj.triggers)) {
|
|
118
|
+
return false;
|
|
119
|
+
}
|
|
120
|
+
return obj.triggers.every(isStewardTrigger);
|
|
121
|
+
}
|
|
122
|
+
return true;
|
|
123
|
+
default:
|
|
124
|
+
return false;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=agent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/types/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Orchestrator SDK Types
|
|
3
|
+
*
|
|
4
|
+
* This module exports all type definitions for the Stoneforge Smithy SDK.
|
|
5
|
+
*/
|
|
6
|
+
export { type AgentRole, AgentRoleValues, isAgentRole, type WorkerMode, WorkerModeValues, isWorkerMode, type StewardFocus, StewardFocusValues, isStewardFocus, type CronTrigger, type EventTrigger, type StewardTrigger, isCronTrigger, isEventTrigger, isStewardTrigger, type BaseAgentMetadata, type DirectorMetadata, type WorkerMetadata, type StewardMetadata, type AgentMetadata, isDirectorMetadata, isWorkerMetadata, isStewardMetadata, type RegisterDirectorInput, type RegisterWorkerInput, type RegisterStewardInput, type AgentFilter, validateAgentMetadata, } from './agent.js';
|
|
7
|
+
export { type OrchestratorTaskMeta, type MergeStatus, MergeStatusValues, isMergeStatus, type TestResult, isTestResult, type HandoffHistoryEntry, type TaskSessionHistoryEntry, getOrchestratorTaskMeta, setOrchestratorTaskMeta, updateOrchestratorTaskMeta, isOrchestratorTaskMeta, appendTaskSessionHistory, closeTaskSessionHistory, generateBranchName, generateWorktreePath, generateSessionBranchName, generateSessionWorktreePath, createSlugFromTitle, } from './task-meta.js';
|
|
8
|
+
export { type AgentBehaviors, isAgentBehaviors, type BaseRoleDefinition, type DirectorRoleDefinition, type WorkerRoleDefinition, type StewardRoleDefinition, type AgentRoleDefinition, type StoredRoleDefinition, isDirectorRoleDefinition, isWorkerRoleDefinition, isStewardRoleDefinition, isAgentRoleDefinition, type CreateRoleDefinitionInput, type UpdateRoleDefinitionInput, type RoleDefinitionFilter, ROLE_DEFINITION_TAGS, generateRoleDefinitionTags, } from './role-definition.js';
|
|
9
|
+
export { MessageTypeValue, AllMessageTypes, StatusUpdateSeverity, HelpRequestUrgency, HealthCheckStatus, type BaseMessageMeta, type TaskAssignmentMessage, type StatusUpdateMessage, type HelpRequestMessage, type HandoffMessage, type HealthCheckMessage, type GenericMessage, type OrchestratorMessage, isTaskAssignmentMessage, isStatusUpdateMessage, isHelpRequestMessage, isHandoffMessage, isHealthCheckMessage, isGenericMessage, isOrchestratorMessage, isMessageType, createTaskAssignmentMessage, createStatusUpdateMessage, createHelpRequestMessage, createHandoffMessage, createHealthCheckRequest, createHealthCheckResponse, createGenericMessage, parseMessageMetadata, getMessageType, } from './message-types.js';
|
|
10
|
+
export { type PoolAgentTypeConfig, type AgentPoolConfig, type AgentPoolStatus, type AgentPool, type AgentPoolFilter, type CreatePoolInput, type UpdatePoolInput, type PoolSpawnCheck, type PoolSpawnRequest, isValidPoolName, isValidPoolSize, isValidPriorityScore, isValidPoolAgentTypeConfig, isValidPoolConfig, isAgentPool, POOL_DEFAULTS, POOL_METADATA_KEY, } from './agent-pool.js';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAEL,KAAK,SAAS,EACd,eAAe,EACf,WAAW,EAEX,KAAK,UAAU,EACf,gBAAgB,EAChB,YAAY,EAEZ,KAAK,YAAY,EACjB,kBAAkB,EAClB,cAAc,EAEd,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,aAAa,EACb,cAAc,EACd,gBAAgB,EAEhB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EAEjB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EAEzB,KAAK,WAAW,EAEhB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,iBAAiB,EACjB,aAAa,EACb,KAAK,UAAU,EACf,YAAY,EACZ,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAE5B,uBAAuB,EACvB,uBAAuB,EACvB,0BAA0B,EAC1B,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EAEvB,kBAAkB,EAClB,oBAAoB,EACpB,yBAAyB,EACzB,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAEL,KAAK,cAAc,EACnB,gBAAgB,EAEhB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EAEzB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EAErB,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,EAE9B,KAAK,oBAAoB,EAEzB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAEL,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EAEjB,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EAExB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EAEb,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EACzB,oBAAoB,EAEpB,oBAAoB,EACpB,cAAc,GACf,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,SAAS,EAEd,KAAK,eAAe,EAEpB,KAAK,eAAe,EACpB,KAAK,eAAe,EAEpB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EAErB,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,0BAA0B,EAC1B,iBAAiB,EAEjB,WAAW,EAEX,aAAa,EACb,iBAAiB,GAClB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Orchestrator SDK Types
|
|
3
|
+
*
|
|
4
|
+
* This module exports all type definitions for the Stoneforge Smithy SDK.
|
|
5
|
+
*/
|
|
6
|
+
// Agent types
|
|
7
|
+
export { AgentRoleValues, isAgentRole, WorkerModeValues, isWorkerMode, StewardFocusValues, isStewardFocus, isCronTrigger, isEventTrigger, isStewardTrigger, isDirectorMetadata, isWorkerMetadata, isStewardMetadata,
|
|
8
|
+
// Validation
|
|
9
|
+
validateAgentMetadata, } from './agent.js';
|
|
10
|
+
// Task metadata types
|
|
11
|
+
export { MergeStatusValues, isMergeStatus, isTestResult,
|
|
12
|
+
// Utilities
|
|
13
|
+
getOrchestratorTaskMeta, setOrchestratorTaskMeta, updateOrchestratorTaskMeta, isOrchestratorTaskMeta, appendTaskSessionHistory, closeTaskSessionHistory,
|
|
14
|
+
// Naming utilities
|
|
15
|
+
generateBranchName, generateWorktreePath, generateSessionBranchName, generateSessionWorktreePath, createSlugFromTitle, } from './task-meta.js';
|
|
16
|
+
// Role definition types
|
|
17
|
+
export { isAgentBehaviors,
|
|
18
|
+
// Type guards
|
|
19
|
+
isDirectorRoleDefinition, isWorkerRoleDefinition, isStewardRoleDefinition, isAgentRoleDefinition,
|
|
20
|
+
// Constants and utilities
|
|
21
|
+
ROLE_DEFINITION_TAGS, generateRoleDefinitionTags, } from './role-definition.js';
|
|
22
|
+
// Message types (TB-O14a)
|
|
23
|
+
export {
|
|
24
|
+
// Constants
|
|
25
|
+
MessageTypeValue, AllMessageTypes, StatusUpdateSeverity, HelpRequestUrgency, HealthCheckStatus,
|
|
26
|
+
// Type guards (validation functions)
|
|
27
|
+
isTaskAssignmentMessage, isStatusUpdateMessage, isHelpRequestMessage, isHandoffMessage, isHealthCheckMessage, isGenericMessage, isOrchestratorMessage, isMessageType,
|
|
28
|
+
// Factory functions
|
|
29
|
+
createTaskAssignmentMessage, createStatusUpdateMessage, createHelpRequestMessage, createHandoffMessage, createHealthCheckRequest, createHealthCheckResponse, createGenericMessage,
|
|
30
|
+
// Utilities
|
|
31
|
+
parseMessageMetadata, getMessageType, } from './message-types.js';
|
|
32
|
+
// Agent pool types
|
|
33
|
+
export {
|
|
34
|
+
// Validation functions
|
|
35
|
+
isValidPoolName, isValidPoolSize, isValidPriorityScore, isValidPoolAgentTypeConfig, isValidPoolConfig,
|
|
36
|
+
// Type guards
|
|
37
|
+
isAgentPool,
|
|
38
|
+
// Constants
|
|
39
|
+
POOL_DEFAULTS, POOL_METADATA_KEY, } from './agent-pool.js';
|
|
40
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc;AACd,OAAO,EAGL,eAAe,EACf,WAAW,EAGX,gBAAgB,EAChB,YAAY,EAGZ,kBAAkB,EAClB,cAAc,EAKd,aAAa,EACb,cAAc,EACd,gBAAgB,EAOhB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB;AAOjB,aAAa;AACb,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAEpB,sBAAsB;AACtB,OAAO,EAGL,iBAAiB,EACjB,aAAa,EAEb,YAAY;AAGZ,YAAY;AACZ,uBAAuB,EACvB,uBAAuB,EACvB,0BAA0B,EAC1B,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB;AACvB,mBAAmB;AACnB,kBAAkB,EAClB,oBAAoB,EACpB,yBAAyB,EACzB,2BAA2B,EAC3B,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AAExB,wBAAwB;AACxB,OAAO,EAGL,gBAAgB;AAQhB,cAAc;AACd,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB;AAMrB,0BAA0B;AAC1B,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAE9B,0BAA0B;AAC1B,OAAO;AACL,YAAY;AACZ,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB;AAUjB,qCAAqC;AACrC,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,aAAa;AACb,oBAAoB;AACpB,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EACzB,oBAAoB;AACpB,YAAY;AACZ,oBAAoB,EACpB,cAAc,GACf,MAAM,oBAAoB,CAAC;AAE5B,mBAAmB;AACnB,OAAO;AAcL,uBAAuB;AACvB,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,0BAA0B,EAC1B,iBAAiB;AACjB,cAAc;AACd,WAAW;AACX,YAAY;AACZ,aAAa,EACb,iBAAiB,GAClB,MAAM,iBAAiB,CAAC"}
|