@cuylabs/agent-core 4.9.0 → 4.10.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/README.md +11 -12
- package/dist/agent/chat-loop/commit-batch.d.ts +10 -0
- package/dist/agent/chat-loop/commit-batch.d.ts.map +1 -0
- package/dist/agent/chat-loop/context-recovery.d.ts +29 -0
- package/dist/agent/chat-loop/context-recovery.d.ts.map +1 -0
- package/dist/agent/chat-loop/finalize-turn.d.ts +19 -0
- package/dist/agent/chat-loop/finalize-turn.d.ts.map +1 -0
- package/dist/agent/chat-loop/index.d.ts +7 -0
- package/dist/agent/chat-loop/index.d.ts.map +1 -0
- package/dist/agent/chat-loop/loop.d.ts +8 -0
- package/dist/agent/chat-loop/loop.d.ts.map +1 -0
- package/dist/agent/chat-loop/model-step-runner.d.ts +26 -0
- package/dist/agent/chat-loop/model-step-runner.d.ts.map +1 -0
- package/dist/agent/chat-loop/model-step-snapshot.d.ts +49 -0
- package/dist/agent/chat-loop/model-step-snapshot.d.ts.map +1 -0
- package/dist/agent/chat-loop/turn-tools.d.ts +19 -0
- package/dist/agent/chat-loop/turn-tools.d.ts.map +1 -0
- package/dist/agent/chat-loop/types.d.ts +60 -0
- package/dist/agent/chat-loop/types.d.ts.map +1 -0
- package/dist/agent/defaults.d.ts +69 -0
- package/dist/agent/defaults.d.ts.map +1 -0
- package/dist/agent/event-printer.d.ts +94 -0
- package/dist/agent/event-printer.d.ts.map +1 -0
- package/dist/agent/fork.d.ts +59 -0
- package/dist/agent/fork.d.ts.map +1 -0
- package/dist/agent/index.d.ts +17 -0
- package/dist/agent/index.d.ts.map +1 -0
- package/dist/agent/instance/context-management.d.ts +29 -0
- package/dist/agent/instance/context-management.d.ts.map +1 -0
- package/dist/agent/instance/forking.d.ts +26 -0
- package/dist/agent/instance/forking.d.ts.map +1 -0
- package/dist/agent/instance/index.d.ts +170 -0
- package/dist/agent/instance/index.d.ts.map +1 -0
- package/dist/agent/instance/interventions.d.ts +10 -0
- package/dist/agent/instance/interventions.d.ts.map +1 -0
- package/dist/agent/instance/mcp.d.ts +21 -0
- package/dist/agent/instance/mcp.d.ts.map +1 -0
- package/dist/agent/instance/sessions.d.ts +8 -0
- package/dist/agent/instance/sessions.d.ts.map +1 -0
- package/dist/agent/instance/tools.d.ts +16 -0
- package/dist/agent/instance/tools.d.ts.map +1 -0
- package/dist/agent/instance/turn-lifecycle.d.ts +61 -0
- package/dist/agent/instance/turn-lifecycle.d.ts.map +1 -0
- package/dist/agent/session.d.ts +16 -0
- package/dist/agent/session.d.ts.map +1 -0
- package/dist/agent/setup/config.d.ts +8 -0
- package/dist/agent/setup/config.d.ts.map +1 -0
- package/dist/agent/setup/context-window.d.ts +4 -0
- package/dist/agent/setup/context-window.d.ts.map +1 -0
- package/dist/agent/setup/environment.d.ts +5 -0
- package/dist/agent/setup/environment.d.ts.map +1 -0
- package/dist/agent/setup/middleware.d.ts +9 -0
- package/dist/agent/setup/middleware.d.ts.map +1 -0
- package/dist/agent/setup/runtime-config.d.ts +9 -0
- package/dist/agent/setup/runtime-config.d.ts.map +1 -0
- package/dist/agent/setup/state.d.ts +4 -0
- package/dist/agent/setup/state.d.ts.map +1 -0
- package/dist/agent/setup/tools.d.ts +8 -0
- package/dist/agent/setup/tools.d.ts.map +1 -0
- package/dist/agent/setup.d.ts +47 -0
- package/dist/agent/setup.d.ts.map +1 -0
- package/dist/agent/stream-provider.d.ts +27 -0
- package/dist/agent/stream-provider.d.ts.map +1 -0
- package/dist/agent/turn-context/compaction/agent-context.d.ts +53 -0
- package/dist/agent/turn-context/compaction/agent-context.d.ts.map +1 -0
- package/dist/agent/turn-context/compaction/budget.d.ts +4 -0
- package/dist/agent/turn-context/compaction/budget.d.ts.map +1 -0
- package/dist/agent/turn-context/compaction/check.d.ts +39 -0
- package/dist/agent/turn-context/compaction/check.d.ts.map +1 -0
- package/dist/agent/turn-context/compaction/fragments.d.ts +4 -0
- package/dist/agent/turn-context/compaction/fragments.d.ts.map +1 -0
- package/dist/agent/turn-context/compaction/index.d.ts +5 -0
- package/dist/agent/turn-context/compaction/index.d.ts.map +1 -0
- package/dist/agent/turn-context/compaction/memory.d.ts +17 -0
- package/dist/agent/turn-context/compaction/memory.d.ts.map +1 -0
- package/dist/agent/turn-context/compaction/results.d.ts +19 -0
- package/dist/agent/turn-context/compaction/results.d.ts.map +1 -0
- package/dist/agent/turn-context/compaction/summary.d.ts +3 -0
- package/dist/agent/turn-context/compaction/summary.d.ts.map +1 -0
- package/dist/agent/turn-context/compaction/types.d.ts +24 -0
- package/dist/agent/turn-context/compaction/types.d.ts.map +1 -0
- package/dist/agent/turn-context/fit-model-context.d.ts +29 -0
- package/dist/agent/turn-context/fit-model-context.d.ts.map +1 -0
- package/dist/agent/turn-context/index.d.ts +5 -0
- package/dist/agent/turn-context/index.d.ts.map +1 -0
- package/dist/agent/turn-context/system-prompts.d.ts +12 -0
- package/dist/agent/turn-context/system-prompts.d.ts.map +1 -0
- package/dist/agent/types/config.d.ts +199 -0
- package/dist/agent/types/config.d.ts.map +1 -0
- package/dist/agent/types/index.d.ts +11 -0
- package/dist/agent/types/index.d.ts.map +1 -0
- package/dist/agent/types/state.d.ts +16 -0
- package/dist/agent/types/state.d.ts.map +1 -0
- package/dist/agent/types/tracing.d.ts +12 -0
- package/dist/agent/types/tracing.d.ts.map +1 -0
- package/dist/{chunk-KYLPMBHD.js → chunk-336EDIBL.js} +1 -1
- package/dist/chunk-AAGKWUXR.js +539 -0
- package/dist/chunk-AHDCR7SX.js +83 -0
- package/dist/{chunk-CSR75JVC.js → chunk-ASXF5AC6.js} +1 -1
- package/dist/{chunk-2TTOLHBT.js → chunk-CFBSQLP5.js} +1 -1
- package/dist/{chunk-GJFP5L2V.js → chunk-CNM6OROH.js} +15 -3
- package/dist/chunk-E66PKKDL.js +772 -0
- package/dist/{chunk-HSUPTXNV.js → chunk-EBVSPHXA.js} +13 -10
- package/dist/chunk-EEAGM5MS.js +257 -0
- package/dist/chunk-IQA64CAO.js +84 -0
- package/dist/chunk-JFH6HBUG.js +227 -0
- package/dist/{chunk-MWPU2EVV.js → chunk-JUIL2NJC.js} +4 -81
- package/dist/{chunk-NS7D7JJU.js → chunk-K453AFTL.js} +35 -16
- package/dist/chunk-LX4AHGI3.js +960 -0
- package/dist/chunk-MJRZ2ZRI.js +498 -0
- package/dist/chunk-NMJNN6LS.js +1155 -0
- package/dist/{chunk-UMIVJDEJ.js → chunk-SAWRDGBE.js} +30 -7
- package/dist/{chunk-GEBFHREI.js → chunk-TU5KDFWI.js} +30 -5
- package/dist/{chunk-QJV5XPPS.js → chunk-UEEHZ4QH.js} +1 -1
- package/dist/chunk-UG5PVNZV.js +53 -0
- package/dist/{chunk-BGG2HVIR.js → chunk-V4MIDL5B.js} +9 -0
- package/dist/{chunk-BJC46FIF.js → chunk-V4YQ6MBK.js} +2 -2
- package/dist/{chunk-H3GRHFFG.js → chunk-VMGZKIFT.js} +30 -9
- package/dist/chunk-W6LWIMIX.js +8 -0
- package/dist/context/assembly/index.d.ts +3 -0
- package/dist/context/assembly/index.d.ts.map +1 -0
- package/dist/context/assembly/prepare.d.ts +11 -0
- package/dist/context/assembly/prepare.d.ts.map +1 -0
- package/dist/context/assembly/types.d.ts +60 -0
- package/dist/context/assembly/types.d.ts.map +1 -0
- package/dist/context/config.d.ts +11 -0
- package/dist/context/config.d.ts.map +1 -0
- package/dist/context/fragments/index.d.ts +4 -0
- package/dist/context/fragments/index.d.ts.map +1 -0
- package/dist/context/fragments/messages.d.ts +10 -0
- package/dist/context/fragments/messages.d.ts.map +1 -0
- package/dist/context/fragments/render.d.ts +16 -0
- package/dist/context/fragments/render.d.ts.map +1 -0
- package/dist/context/fragments/types.d.ts +87 -0
- package/dist/context/fragments/types.d.ts.map +1 -0
- package/dist/context/index.d.ts +13 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/context/index.js +90 -0
- package/dist/context/text/truncation.d.ts +13 -0
- package/dist/context/text/truncation.d.ts.map +1 -0
- package/dist/context/window/budget.d.ts +108 -0
- package/dist/context/window/budget.d.ts.map +1 -0
- package/dist/context/window/compactor.d.ts +74 -0
- package/dist/context/window/compactor.d.ts.map +1 -0
- package/dist/context/window/cut-planner.d.ts +64 -0
- package/dist/context/window/cut-planner.d.ts.map +1 -0
- package/dist/context/window/decision.d.ts +41 -0
- package/dist/context/window/decision.d.ts.map +1 -0
- package/dist/context/window/estimation.d.ts +45 -0
- package/dist/context/window/estimation.d.ts.map +1 -0
- package/dist/context/window/index.d.ts +26 -0
- package/dist/context/window/index.d.ts.map +1 -0
- package/dist/context/window/manager.d.ts +80 -0
- package/dist/context/window/manager.d.ts.map +1 -0
- package/dist/context/window/summary-policy.d.ts +50 -0
- package/dist/context/window/summary-policy.d.ts.map +1 -0
- package/dist/context/window/summary.d.ts +56 -0
- package/dist/context/window/summary.d.ts.map +1 -0
- package/dist/context/window/tool-pruning.d.ts +62 -0
- package/dist/context/window/tool-pruning.d.ts.map +1 -0
- package/dist/dispatch/executor.d.ts +56 -0
- package/dist/dispatch/executor.d.ts.map +1 -0
- package/dist/dispatch/index.d.ts +7 -95
- package/dist/dispatch/index.d.ts.map +1 -0
- package/dist/dispatch/index.js +4 -3
- package/dist/dispatch/results.d.ts +9 -0
- package/dist/dispatch/results.d.ts.map +1 -0
- package/dist/dispatch/runtime.d.ts +19 -0
- package/dist/dispatch/runtime.d.ts.map +1 -0
- package/dist/dispatch/tool-factories.d.ts +8 -0
- package/dist/dispatch/tool-factories.d.ts.map +1 -0
- package/dist/dispatch/tools.d.ts +10 -0
- package/dist/dispatch/tools.d.ts.map +1 -0
- package/dist/dispatch/types.d.ts +131 -0
- package/dist/dispatch/types.d.ts.map +1 -0
- package/dist/events/event-bus/index.d.ts +13 -0
- package/dist/events/event-bus/index.d.ts.map +1 -0
- package/dist/events/event-bus/index.js +6 -0
- package/dist/events/event-bus/local.d.ts +14 -0
- package/dist/events/event-bus/local.d.ts.map +1 -0
- package/dist/events/event-bus/types.d.ts +78 -0
- package/dist/events/event-bus/types.d.ts.map +1 -0
- package/dist/events/index.d.ts +10 -89
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +6 -1
- package/dist/events/signal/index.d.ts +18 -0
- package/dist/events/signal/index.d.ts.map +1 -0
- package/dist/events/signal/index.js +6 -0
- package/dist/events/signal/local.d.ts +22 -0
- package/dist/events/signal/local.d.ts.map +1 -0
- package/dist/events/signal/types.d.ts +69 -0
- package/dist/events/signal/types.d.ts.map +1 -0
- package/dist/execution/index.d.ts +33 -481
- package/dist/execution/index.d.ts.map +1 -0
- package/dist/execution/index.js +45 -19
- package/dist/execution/scope/index.d.ts +10 -0
- package/dist/execution/scope/index.d.ts.map +1 -0
- package/dist/execution/scope/index.js +12 -0
- package/dist/execution/scope/run.d.ts +8 -0
- package/dist/execution/scope/run.d.ts.map +1 -0
- package/dist/execution/scope/store.d.ts +6 -0
- package/dist/execution/scope/store.d.ts.map +1 -0
- package/dist/execution/scope/types.d.ts +28 -0
- package/dist/execution/scope/types.d.ts.map +1 -0
- package/dist/execution/shared/usage.d.ts +9 -0
- package/dist/execution/shared/usage.d.ts.map +1 -0
- package/dist/execution/task/index.d.ts +6 -0
- package/dist/execution/task/index.d.ts.map +1 -0
- package/dist/execution/task/observer.d.ts +80 -0
- package/dist/execution/task/observer.d.ts.map +1 -0
- package/dist/execution/task/runner.d.ts +39 -0
- package/dist/execution/task/runner.d.ts.map +1 -0
- package/dist/execution/task/types.d.ts +85 -0
- package/dist/execution/task/types.d.ts.map +1 -0
- package/dist/execution/turn/engine/commit-batch.d.ts +16 -0
- package/dist/execution/turn/engine/commit-batch.d.ts.map +1 -0
- package/dist/execution/turn/engine/engine.d.ts +32 -0
- package/dist/execution/turn/engine/engine.d.ts.map +1 -0
- package/dist/execution/turn/engine/index.d.ts +12 -0
- package/dist/execution/turn/engine/index.d.ts.map +1 -0
- package/dist/execution/turn/engine/types.d.ts +67 -0
- package/dist/execution/turn/engine/types.d.ts.map +1 -0
- package/dist/execution/turn/index.d.ts +18 -0
- package/dist/execution/turn/index.d.ts.map +1 -0
- package/dist/execution/turn/index.js +52 -0
- package/dist/execution/turn/runner/commit.d.ts +11 -0
- package/dist/execution/turn/runner/commit.d.ts.map +1 -0
- package/dist/execution/turn/runner/index.d.ts +16 -0
- package/dist/execution/turn/runner/index.d.ts.map +1 -0
- package/dist/execution/turn/runner/prepare.d.ts +6 -0
- package/dist/execution/turn/runner/prepare.d.ts.map +1 -0
- package/dist/execution/turn/runner/stream-step.d.ts +8 -0
- package/dist/execution/turn/runner/stream-step.d.ts.map +1 -0
- package/dist/execution/turn/runner/tool-batch.d.ts +13 -0
- package/dist/execution/turn/runner/tool-batch.d.ts.map +1 -0
- package/dist/execution/turn/runner/types.d.ts +111 -0
- package/dist/execution/turn/runner/types.d.ts.map +1 -0
- package/dist/execution/turn/state.d.ts +110 -0
- package/dist/execution/turn/state.d.ts.map +1 -0
- package/dist/execution/turn/step-ledger.d.ts +89 -0
- package/dist/execution/turn/step-ledger.d.ts.map +1 -0
- package/dist/execution/turn/step-processing/doom-loop.d.ts +28 -0
- package/dist/execution/turn/step-processing/doom-loop.d.ts.map +1 -0
- package/dist/execution/turn/step-processing/index.d.ts +14 -0
- package/dist/execution/turn/step-processing/index.d.ts.map +1 -0
- package/dist/execution/turn/step-processing/overflow.d.ts +17 -0
- package/dist/execution/turn/step-processing/overflow.d.ts.map +1 -0
- package/dist/execution/turn/step-processing/process.d.ts +7 -0
- package/dist/execution/turn/step-processing/process.d.ts.map +1 -0
- package/dist/execution/turn/step-processing/types.d.ts +65 -0
- package/dist/execution/turn/step-processing/types.d.ts.map +1 -0
- package/dist/execution/workflow/index.d.ts +12 -0
- package/dist/execution/workflow/index.d.ts.map +1 -0
- package/dist/execution/workflow/index.js +39 -0
- package/dist/execution/workflow/planner/apply.d.ts +30 -0
- package/dist/execution/workflow/planner/apply.d.ts.map +1 -0
- package/dist/execution/workflow/planner/helpers.d.ts +6 -0
- package/dist/execution/workflow/planner/helpers.d.ts.map +1 -0
- package/dist/execution/workflow/planner/index.d.ts +13 -0
- package/dist/execution/workflow/planner/index.d.ts.map +1 -0
- package/dist/execution/workflow/planner/plan.d.ts +7 -0
- package/dist/execution/workflow/planner/plan.d.ts.map +1 -0
- package/dist/execution/workflow/planner/types.d.ts +49 -0
- package/dist/execution/workflow/planner/types.d.ts.map +1 -0
- package/dist/execution/workflow/snapshot.d.ts +11 -0
- package/dist/execution/workflow/snapshot.d.ts.map +1 -0
- package/dist/execution/workflow/state.d.ts +161 -0
- package/dist/execution/workflow/state.d.ts.map +1 -0
- package/dist/human/controller.d.ts +24 -0
- package/dist/human/controller.d.ts.map +1 -0
- package/dist/human/handler.d.ts +15 -0
- package/dist/human/handler.d.ts.map +1 -0
- package/dist/human/index.d.ts +5 -0
- package/dist/human/index.d.ts.map +1 -0
- package/dist/human/tool.d.ts +17 -0
- package/dist/human/tool.d.ts.map +1 -0
- package/dist/human/types.d.ts +62 -0
- package/dist/human/types.d.ts.map +1 -0
- package/dist/index.d.ts +66 -567
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2482 -1846
- package/dist/inference/defaults.d.ts +8 -0
- package/dist/inference/defaults.d.ts.map +1 -0
- package/dist/inference/errors/classify.d.ts +5 -0
- package/dist/inference/errors/classify.d.ts.map +1 -0
- package/dist/inference/errors/extract.d.ts +3 -0
- package/dist/inference/errors/extract.d.ts.map +1 -0
- package/dist/inference/errors/index.d.ts +8 -11
- package/dist/inference/errors/index.d.ts.map +1 -0
- package/dist/inference/errors/llm-error.d.ts +14 -0
- package/dist/inference/errors/llm-error.d.ts.map +1 -0
- package/dist/inference/errors/types.d.ts +18 -0
- package/dist/inference/errors/types.d.ts.map +1 -0
- package/dist/inference/errors/utils.d.ts +5 -0
- package/dist/inference/errors/utils.d.ts.map +1 -0
- package/dist/inference/index.d.ts +17 -49
- package/dist/inference/index.d.ts.map +1 -0
- package/dist/inference/index.js +7 -7
- package/dist/inference/middleware-support.d.ts +14 -0
- package/dist/inference/middleware-support.d.ts.map +1 -0
- package/dist/{model-messages-n_ZMZwIm.d.ts → inference/model-messages.d.ts} +4 -6
- package/dist/inference/model-messages.d.ts.map +1 -0
- package/dist/inference/retry.d.ts +73 -0
- package/dist/inference/retry.d.ts.map +1 -0
- package/dist/inference/stream.d.ts +16 -0
- package/dist/inference/stream.d.ts.map +1 -0
- package/dist/inference/toolset.d.ts +26 -0
- package/dist/inference/toolset.d.ts.map +1 -0
- package/dist/inference/types.d.ts +129 -0
- package/dist/inference/types.d.ts.map +1 -0
- package/dist/intervention/follow-up-policy.d.ts +41 -0
- package/dist/intervention/follow-up-policy.d.ts.map +1 -0
- package/dist/intervention/index.d.ts +5 -0
- package/dist/intervention/index.d.ts.map +1 -0
- package/dist/intervention/intervention.d.ts +130 -0
- package/dist/intervention/intervention.d.ts.map +1 -0
- package/dist/intervention/types.d.ts +74 -0
- package/dist/intervention/types.d.ts.map +1 -0
- package/dist/logger/index.d.ts +5 -47
- package/dist/logger/index.d.ts.map +1 -0
- package/dist/logger/logger.d.ts +46 -0
- package/dist/logger/logger.d.ts.map +1 -0
- package/dist/{types-RSCv7nQ4.d.ts → logger/types.d.ts} +6 -7
- package/dist/logger/types.d.ts.map +1 -0
- package/dist/mcp/auth.d.ts +109 -0
- package/dist/mcp/auth.d.ts.map +1 -0
- package/dist/mcp/diagnostics.d.ts +23 -0
- package/dist/mcp/diagnostics.d.ts.map +1 -0
- package/dist/mcp/factories.d.ts +47 -0
- package/dist/mcp/factories.d.ts.map +1 -0
- package/dist/mcp/index.d.ts +14 -175
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +1 -1
- package/dist/mcp/manager.d.ts +45 -0
- package/dist/mcp/manager.d.ts.map +1 -0
- package/dist/mcp/modules.d.ts +6 -0
- package/dist/mcp/modules.d.ts.map +1 -0
- package/dist/{types-DMjoFKKv.d.ts → mcp/types.d.ts} +18 -19
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/memory/config.d.ts +4 -0
- package/dist/memory/config.d.ts.map +1 -0
- package/dist/memory/format.d.ts +8 -0
- package/dist/memory/format.d.ts.map +1 -0
- package/dist/memory/index.d.ts +5 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +14 -0
- package/dist/memory/middleware.d.ts +14 -0
- package/dist/memory/middleware.d.ts.map +1 -0
- package/dist/memory/types.d.ts +232 -0
- package/dist/memory/types.d.ts.map +1 -0
- package/dist/middleware/approval.d.ts +70 -0
- package/dist/middleware/approval.d.ts.map +1 -0
- package/dist/middleware/index.d.ts +24 -110
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +2 -2
- package/dist/middleware/prompt-cache/cache.d.ts +44 -0
- package/dist/middleware/prompt-cache/cache.d.ts.map +1 -0
- package/dist/middleware/prompt-cache/index.d.ts +14 -0
- package/dist/middleware/prompt-cache/index.d.ts.map +1 -0
- package/dist/middleware/prompt-cache/types.d.ts +50 -0
- package/dist/middleware/prompt-cache/types.d.ts.map +1 -0
- package/dist/middleware/runner.d.ts +100 -0
- package/dist/middleware/runner.d.ts.map +1 -0
- package/dist/middleware/telemetry/index.d.ts +12 -0
- package/dist/middleware/telemetry/index.d.ts.map +1 -0
- package/dist/middleware/telemetry/otel.d.ts +4 -0
- package/dist/middleware/telemetry/otel.d.ts.map +1 -0
- package/dist/middleware/telemetry/provider.d.ts +3 -0
- package/dist/middleware/telemetry/provider.d.ts.map +1 -0
- package/dist/middleware/telemetry/types.d.ts +150 -0
- package/dist/middleware/telemetry/types.d.ts.map +1 -0
- package/dist/middleware/types.d.ts +371 -0
- package/dist/middleware/types.d.ts.map +1 -0
- package/dist/models/cache/adapters.d.ts +4 -0
- package/dist/models/cache/adapters.d.ts.map +1 -0
- package/dist/models/cache/index.d.ts +5 -0
- package/dist/models/cache/index.d.ts.map +1 -0
- package/dist/models/cache/manager.d.ts +32 -0
- package/dist/models/cache/manager.d.ts.map +1 -0
- package/dist/models/cache/types.d.ts +17 -0
- package/dist/models/cache/types.d.ts.map +1 -0
- package/dist/models/capability-resolver.d.ts +104 -0
- package/dist/models/capability-resolver.d.ts.map +1 -0
- package/dist/models/identifiers.d.ts +23 -0
- package/dist/models/identifiers.d.ts.map +1 -0
- package/dist/models/index.d.ts +35 -256
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +1 -1
- package/dist/models/overrides.d.ts +10 -0
- package/dist/models/overrides.d.ts.map +1 -0
- package/dist/models/profiles.d.ts +38 -0
- package/dist/models/profiles.d.ts.map +1 -0
- package/dist/models/reasoning/config.d.ts +49 -0
- package/dist/models/reasoning/config.d.ts.map +1 -0
- package/dist/models/reasoning/index.d.ts +12 -4
- package/dist/models/reasoning/index.d.ts.map +1 -0
- package/dist/models/reasoning/index.js +1 -1
- package/dist/models/reasoning/providers.d.ts +63 -0
- package/dist/models/reasoning/providers.d.ts.map +1 -0
- package/dist/{types-CQaXbRsS.d.ts → models/reasoning/types.d.ts} +7 -8
- package/dist/models/reasoning/types.d.ts.map +1 -0
- package/dist/models/remote/fetcher.d.ts +13 -0
- package/dist/models/remote/fetcher.d.ts.map +1 -0
- package/dist/models/remote/index.d.ts +8 -0
- package/dist/models/remote/index.d.ts.map +1 -0
- package/dist/models/remote/network.d.ts +6 -0
- package/dist/models/remote/network.d.ts.map +1 -0
- package/dist/models/remote/source.d.ts +16 -0
- package/dist/models/remote/source.d.ts.map +1 -0
- package/dist/models/remote/transform.d.ts +4 -0
- package/dist/models/remote/transform.d.ts.map +1 -0
- package/dist/models/remote/types.d.ts +28 -0
- package/dist/models/remote/types.d.ts.map +1 -0
- package/dist/models/resolver.d.ts +26 -0
- package/dist/models/resolver.d.ts.map +1 -0
- package/dist/models/types.d.ts +137 -0
- package/dist/models/types.d.ts.map +1 -0
- package/dist/plugin/compatibility.d.ts +11 -0
- package/dist/plugin/compatibility.d.ts.map +1 -0
- package/dist/plugin/define.d.ts +77 -0
- package/dist/plugin/define.d.ts.map +1 -0
- package/dist/plugin/event-bus.d.ts +31 -0
- package/dist/plugin/event-bus.d.ts.map +1 -0
- package/dist/plugin/index.d.ts +9 -458
- package/dist/plugin/index.d.ts.map +1 -0
- package/dist/plugin/loader.d.ts +63 -0
- package/dist/plugin/loader.d.ts.map +1 -0
- package/dist/plugin/registry.d.ts +81 -0
- package/dist/plugin/registry.d.ts.map +1 -0
- package/dist/plugin/settings.d.ts +36 -0
- package/dist/plugin/settings.d.ts.map +1 -0
- package/dist/plugin/types.d.ts +168 -0
- package/dist/plugin/types.d.ts.map +1 -0
- package/dist/profiles/apply.d.ts +17 -0
- package/dist/profiles/apply.d.ts.map +1 -0
- package/dist/profiles/builtins.d.ts +18 -0
- package/dist/profiles/builtins.d.ts.map +1 -0
- package/dist/profiles/index.d.ts +12 -55
- package/dist/profiles/index.d.ts.map +1 -0
- package/dist/profiles/patterns.d.ts +12 -0
- package/dist/profiles/patterns.d.ts.map +1 -0
- package/dist/profiles/types.d.ts +48 -0
- package/dist/profiles/types.d.ts.map +1 -0
- package/dist/prompt/builder/builder.d.ts +27 -0
- package/dist/prompt/builder/builder.d.ts.map +1 -0
- package/dist/prompt/builder/index.d.ts +11 -0
- package/dist/prompt/builder/index.d.ts.map +1 -0
- package/dist/prompt/builder/priorities.d.ts +13 -0
- package/dist/prompt/builder/priorities.d.ts.map +1 -0
- package/dist/prompt/builder/sections.d.ts +30 -0
- package/dist/prompt/builder/sections.d.ts.map +1 -0
- package/dist/prompt/environment.d.ts +46 -0
- package/dist/prompt/environment.d.ts.map +1 -0
- package/dist/prompt/index.d.ts +31 -220
- package/dist/prompt/index.d.ts.map +1 -0
- package/dist/prompt/index.js +3 -1
- package/dist/prompt/instructions.d.ts +104 -0
- package/dist/prompt/instructions.d.ts.map +1 -0
- package/dist/prompt/templates.d.ts +56 -0
- package/dist/prompt/templates.d.ts.map +1 -0
- package/dist/prompt/types.d.ts +218 -0
- package/dist/prompt/types.d.ts.map +1 -0
- package/dist/safety/errors.d.ts +18 -0
- package/dist/safety/errors.d.ts.map +1 -0
- package/dist/safety/handler.d.ts +16 -0
- package/dist/safety/handler.d.ts.map +1 -0
- package/dist/safety/index.d.ts +11 -133
- package/dist/safety/index.d.ts.map +1 -0
- package/dist/safety/patterns.d.ts +17 -0
- package/dist/safety/patterns.d.ts.map +1 -0
- package/dist/safety/policy.d.ts +31 -0
- package/dist/safety/policy.d.ts.map +1 -0
- package/dist/safety/presets.d.ts +43 -0
- package/dist/safety/presets.d.ts.map +1 -0
- package/dist/safety/risk.d.ts +14 -0
- package/dist/safety/risk.d.ts.map +1 -0
- package/dist/safety/types.d.ts +165 -0
- package/dist/safety/types.d.ts.map +1 -0
- package/dist/sandbox/index.d.ts +2 -81
- package/dist/sandbox/index.d.ts.map +1 -0
- package/dist/sandbox/types.d.ts +79 -0
- package/dist/sandbox/types.d.ts.map +1 -0
- package/dist/skill/discovery/constants.d.ts +6 -0
- package/dist/skill/discovery/constants.d.ts.map +1 -0
- package/dist/skill/discovery/dedupe.d.ts +3 -0
- package/dist/skill/discovery/dedupe.d.ts.map +1 -0
- package/dist/skill/discovery/discover.d.ts +3 -0
- package/dist/skill/discovery/discover.d.ts.map +1 -0
- package/dist/skill/discovery/fs.d.ts +4 -0
- package/dist/skill/discovery/fs.d.ts.map +1 -0
- package/dist/skill/discovery/index.d.ts +6 -0
- package/dist/skill/discovery/index.d.ts.map +1 -0
- package/dist/skill/discovery/scan.d.ts +3 -0
- package/dist/skill/discovery/scan.d.ts.map +1 -0
- package/dist/skill/discovery/types.d.ts +15 -0
- package/dist/skill/discovery/types.d.ts.map +1 -0
- package/dist/skill/index.d.ts +67 -89
- package/dist/skill/index.d.ts.map +1 -0
- package/dist/skill/index.js +2 -2
- package/dist/skill/loader/constants.d.ts +5 -0
- package/dist/skill/loader/constants.d.ts.map +1 -0
- package/dist/skill/loader/frontmatter.d.ts +5 -0
- package/dist/skill/loader/frontmatter.d.ts.map +1 -0
- package/dist/skill/loader/index.d.ts +8 -0
- package/dist/skill/loader/index.d.ts.map +1 -0
- package/dist/skill/loader/metadata.d.ts +3 -0
- package/dist/skill/loader/metadata.d.ts.map +1 -0
- package/dist/skill/loader/resources.d.ts +5 -0
- package/dist/skill/loader/resources.d.ts.map +1 -0
- package/dist/skill/registry.d.ts +177 -0
- package/dist/skill/registry.d.ts.map +1 -0
- package/dist/skill/tools.d.ts +77 -0
- package/dist/skill/tools.d.ts.map +1 -0
- package/dist/skill/types.d.ts +291 -0
- package/dist/skill/types.d.ts.map +1 -0
- package/dist/storage/file/helpers.d.ts +16 -0
- package/dist/storage/file/helpers.d.ts.map +1 -0
- package/dist/storage/file/index.d.ts +6 -0
- package/dist/storage/file/index.d.ts.map +1 -0
- package/dist/storage/file/storage.d.ts +29 -0
- package/dist/storage/file/storage.d.ts.map +1 -0
- package/dist/storage/file/types.d.ts +6 -0
- package/dist/storage/file/types.d.ts.map +1 -0
- package/dist/storage/index.d.ts +11 -188
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +2 -1
- package/dist/storage/lock.d.ts +18 -0
- package/dist/storage/lock.d.ts.map +1 -0
- package/dist/storage/manager/default.d.ts +11 -0
- package/dist/storage/manager/default.d.ts.map +1 -0
- package/dist/storage/manager/index.d.ts +12 -0
- package/dist/storage/manager/index.d.ts.map +1 -0
- package/dist/storage/manager/session-manager.d.ts +57 -0
- package/dist/storage/manager/session-manager.d.ts.map +1 -0
- package/dist/storage/manager/types.d.ts +42 -0
- package/dist/storage/manager/types.d.ts.map +1 -0
- package/dist/storage/memory.d.ts +22 -0
- package/dist/storage/memory.d.ts.map +1 -0
- package/dist/storage/paths.d.ts +37 -0
- package/dist/storage/paths.d.ts.map +1 -0
- package/dist/storage/types.d.ts +205 -0
- package/dist/storage/types.d.ts.map +1 -0
- package/dist/storage/utils.d.ts +77 -0
- package/dist/storage/utils.d.ts.map +1 -0
- package/dist/subagents/index.d.ts +8 -179
- package/dist/subagents/index.d.ts.map +1 -0
- package/dist/subagents/index.js +5 -4
- package/dist/subagents/installation.d.ts +23 -0
- package/dist/subagents/installation.d.ts.map +1 -0
- package/dist/subagents/results.d.ts +15 -0
- package/dist/subagents/results.d.ts.map +1 -0
- package/dist/subagents/roles/discovery.d.ts +38 -0
- package/dist/subagents/roles/discovery.d.ts.map +1 -0
- package/dist/subagents/roles/index.d.ts +5 -0
- package/dist/subagents/roles/index.d.ts.map +1 -0
- package/dist/subagents/roles/markdown-profile.d.ts +61 -0
- package/dist/subagents/roles/markdown-profile.d.ts.map +1 -0
- package/dist/subagents/tool-factories.d.ts +11 -0
- package/dist/subagents/tool-factories.d.ts.map +1 -0
- package/dist/subagents/tools.d.ts +13 -0
- package/dist/subagents/tools.d.ts.map +1 -0
- package/dist/subagents/types.d.ts +21 -0
- package/dist/subagents/types.d.ts.map +1 -0
- package/dist/team/coordinator/coordinator.d.ts +342 -0
- package/dist/team/coordinator/coordinator.d.ts.map +1 -0
- package/dist/team/coordinator/inbox.d.ts +99 -0
- package/dist/team/coordinator/inbox.d.ts.map +1 -0
- package/dist/team/coordinator/index.d.ts +19 -0
- package/dist/team/coordinator/index.d.ts.map +1 -0
- package/dist/team/coordinator/planning.d.ts +33 -0
- package/dist/team/coordinator/planning.d.ts.map +1 -0
- package/dist/team/coordinator/policy.d.ts +31 -0
- package/dist/team/coordinator/policy.d.ts.map +1 -0
- package/dist/team/coordinator/round-engine.d.ts +25 -0
- package/dist/team/coordinator/round-engine.d.ts.map +1 -0
- package/dist/team/coordinator/synthesis.d.ts +20 -0
- package/dist/team/coordinator/synthesis.d.ts.map +1 -0
- package/dist/team/coordinator/turn.d.ts +107 -0
- package/dist/team/coordinator/turn.d.ts.map +1 -0
- package/dist/team/coordinator/types.d.ts +344 -0
- package/dist/team/coordinator/types.d.ts.map +1 -0
- package/dist/team/events.d.ts +148 -0
- package/dist/team/events.d.ts.map +1 -0
- package/dist/team/execution.d.ts +51 -0
- package/dist/team/execution.d.ts.map +1 -0
- package/dist/team/index.d.ts +23 -545
- package/dist/team/index.d.ts.map +1 -0
- package/dist/team/index.js +2 -2
- package/dist/team/mailbox.d.ts +91 -0
- package/dist/team/mailbox.d.ts.map +1 -0
- package/dist/team/notifications.d.ts +23 -0
- package/dist/team/notifications.d.ts.map +1 -0
- package/dist/team/permissions.d.ts +88 -0
- package/dist/team/permissions.d.ts.map +1 -0
- package/dist/team/shutdown.d.ts +38 -0
- package/dist/team/shutdown.d.ts.map +1 -0
- package/dist/team/task-board.d.ts +161 -0
- package/dist/team/task-board.d.ts.map +1 -0
- package/dist/team/types.d.ts +233 -0
- package/dist/team/types.d.ts.map +1 -0
- package/dist/team/work-loop.d.ts +30 -0
- package/dist/team/work-loop.d.ts.map +1 -0
- package/dist/tool/executor.d.ts +59 -0
- package/dist/tool/executor.d.ts.map +1 -0
- package/dist/tool/host/index.d.ts +7 -38
- package/dist/tool/host/index.d.ts.map +1 -0
- package/dist/tool/host/local.d.ts +15 -0
- package/dist/tool/host/local.d.ts.map +1 -0
- package/dist/tool/host/registry.d.ts +17 -0
- package/dist/tool/host/registry.d.ts.map +1 -0
- package/dist/{types-C_LCeYNg.d.ts → tool/host/types.d.ts} +6 -7
- package/dist/tool/host/types.d.ts.map +1 -0
- package/dist/tool/index.d.ts +21 -285
- package/dist/tool/index.d.ts.map +1 -0
- package/dist/tool/index.js +4 -3
- package/dist/tool/registry.d.ts +130 -0
- package/dist/tool/registry.d.ts.map +1 -0
- package/dist/tool/replay.d.ts +11 -0
- package/dist/tool/replay.d.ts.map +1 -0
- package/dist/tool/tool-search.d.ts +50 -0
- package/dist/tool/tool-search.d.ts.map +1 -0
- package/dist/tool/tool.d.ts +308 -0
- package/dist/tool/tool.d.ts.map +1 -0
- package/dist/tool/truncation.d.ts +34 -0
- package/dist/tool/truncation.d.ts.map +1 -0
- package/dist/tool/turn-tools.d.ts +71 -0
- package/dist/tool/turn-tools.d.ts.map +1 -0
- package/dist/tracking/file-tracking.d.ts +25 -0
- package/dist/tracking/file-tracking.d.ts.map +1 -0
- package/dist/tracking/index.d.ts +9 -0
- package/dist/tracking/index.d.ts.map +1 -0
- package/dist/tracking/turn-tracker/diff.d.ts +11 -0
- package/dist/tracking/turn-tracker/diff.d.ts.map +1 -0
- package/dist/tracking/turn-tracker/index.d.ts +11 -0
- package/dist/tracking/turn-tracker/index.d.ts.map +1 -0
- package/dist/tracking/turn-tracker/tracker.d.ts +31 -0
- package/dist/tracking/turn-tracker/tracker.d.ts.map +1 -0
- package/dist/tracking/turn-tracker/types.d.ts +66 -0
- package/dist/tracking/turn-tracker/types.d.ts.map +1 -0
- package/dist/types/compaction.d.ts +142 -0
- package/dist/types/compaction.d.ts.map +1 -0
- package/dist/types/doom-loop.d.ts +25 -0
- package/dist/types/doom-loop.d.ts.map +1 -0
- package/dist/types/events.d.ts +194 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/index.d.ts +17 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/messages.d.ts +119 -0
- package/dist/types/messages.d.ts.map +1 -0
- package/dist/types/stream.d.ts +172 -0
- package/dist/types/stream.d.ts.map +1 -0
- package/dist/types/tool.d.ts +309 -0
- package/dist/types/tool.d.ts.map +1 -0
- package/dist/types/turn-source.d.ts +36 -0
- package/dist/types/turn-source.d.ts.map +1 -0
- package/dist/utils/sleep.d.ts +7 -0
- package/dist/utils/sleep.d.ts.map +1 -0
- package/package.json +45 -8
- package/dist/chunk-CJI7PVS2.js +0 -58
- package/dist/chunk-V6ETEYST.js +0 -2091
- package/dist/index-BCqEGzBj.d.ts +0 -251
- package/dist/instance-Bg61WSyz.d.ts +0 -6004
- package/dist/llm-error-D93FNNLY.d.ts +0 -32
- package/dist/turn-tools/index.d.ts +0 -12
- package/dist/turn-tools/index.js +0 -1
- package/dist/{chunk-O2WCYSXQ.js → chunk-3NBTQHVV.js} +0 -0
- package/dist/{chunk-Q742PSH3.js → chunk-MJML3A2F.js} +36 -36
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mailbox.d.ts","sourceRoot":"","sources":["../../src/team/mailbox.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAM3E;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,8CAA8C;IAC9C,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE/E;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACnD,IAAI,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;CAC1D;AA6BD;;GAEG;AACH,qBAAa,oBAAqB,YAAW,YAAY;IACvD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAExC,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAMlD,IAAI,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;CAmB/D;AAMD;;GAEG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgC;IAC5D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAe;gBAE5B,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,YAAY,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,MAAM,CAAA;KAAE;IAKjE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IA2BrD;;OAEG;IACG,IAAI,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAI9D;;OAEG;IACH,SAAS,CAAC,UAAU,EAAE,iBAAiB,GAAG,MAAM,IAAI;CAMrD"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { TeamTask } from "./types.js";
|
|
2
|
+
import type { TeamEvent } from "./events.js";
|
|
3
|
+
export type NotificationPriority = "immediate" | "deferred";
|
|
4
|
+
export type CoordinatorNotificationKind = "worker-report" | "task-result" | "permission-forwarded" | "permission-resolved" | "shutdown-requested" | "shutdown-resolved";
|
|
5
|
+
export interface CoordinatorNotification {
|
|
6
|
+
id: string;
|
|
7
|
+
teamId: string;
|
|
8
|
+
memberId: string;
|
|
9
|
+
kind: CoordinatorNotificationKind;
|
|
10
|
+
priority: NotificationPriority;
|
|
11
|
+
title: string;
|
|
12
|
+
body: string;
|
|
13
|
+
createdAt: string;
|
|
14
|
+
taskId?: string;
|
|
15
|
+
status?: TeamTask["status"];
|
|
16
|
+
}
|
|
17
|
+
export interface TeamNotificationEvent {
|
|
18
|
+
type: "team-notification";
|
|
19
|
+
teamId: string;
|
|
20
|
+
notification: CoordinatorNotification;
|
|
21
|
+
}
|
|
22
|
+
export declare function buildCoordinatorNotificationEvent(event: TeamEvent, resolveTask: (taskId: string) => Promise<TeamTask | undefined>): Promise<TeamNotificationEvent | null>;
|
|
23
|
+
//# sourceMappingURL=notifications.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notifications.d.ts","sourceRoot":"","sources":["../../src/team/notifications.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EASV,SAAS,EACV,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,UAAU,CAAC;AAE5D,MAAM,MAAM,2BAA2B,GACnC,eAAe,GACf,aAAa,GACb,sBAAsB,GACtB,qBAAqB,GACrB,oBAAoB,GACpB,mBAAmB,CAAC;AAExB,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,2BAA2B,CAAC;IAClC,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,uBAAuB,CAAC;CACvC;AA4KD,wBAAsB,iCAAiC,CACrD,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,GAC7D,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAmBvC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Team Permission Policy
|
|
3
|
+
*
|
|
4
|
+
* Extends the existing approval middleware to support team-wide
|
|
5
|
+
* permission delegation. When a coordinator creates team members,
|
|
6
|
+
* it can install a `teamPermissionPolicy` middleware that:
|
|
7
|
+
*
|
|
8
|
+
* 1. Applies team-wide allow/deny rules to all member tool calls
|
|
9
|
+
* 2. Forwards unresolved approvals to the coordinator (lead agent)
|
|
10
|
+
* 3. Propagates "remember" decisions to all team members
|
|
11
|
+
*
|
|
12
|
+
* This is layered ON TOP of the existing `approvalMiddleware` —
|
|
13
|
+
* it doesn't replace it. Members inherit the lead's approval rules
|
|
14
|
+
* via fork(), and the team policy adds team-specific delegation.
|
|
15
|
+
*
|
|
16
|
+
* Design choices vs ccsource:
|
|
17
|
+
* - No filesystem polling for permission responses — uses callbacks
|
|
18
|
+
* - No separate sandbox permission path — uses standard approval pipeline
|
|
19
|
+
* - Team rules are typed objects, not mailbox message payloads
|
|
20
|
+
* - Integrates with existing `beforeToolCall` middleware contract
|
|
21
|
+
*/
|
|
22
|
+
import type { AgentMiddleware, ToolCallDecision } from "../middleware/types.js";
|
|
23
|
+
/**
|
|
24
|
+
* A team-wide permission rule.
|
|
25
|
+
*
|
|
26
|
+
* Rules are evaluated in order — first match wins.
|
|
27
|
+
*/
|
|
28
|
+
export interface TeamPermissionRule {
|
|
29
|
+
/** Tool name to match (exact or glob-style with `*`) */
|
|
30
|
+
tool: string;
|
|
31
|
+
/** Optional approval pattern to match against the tool input */
|
|
32
|
+
pattern?: string;
|
|
33
|
+
/** Member IDs this rule applies to (undefined = all members) */
|
|
34
|
+
members?: string[];
|
|
35
|
+
/** Whether to allow or deny */
|
|
36
|
+
action: "allow" | "deny";
|
|
37
|
+
/** Optional reason (shown to model on deny) */
|
|
38
|
+
reason?: string;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Callback for forwarding approval requests to the coordinator.
|
|
42
|
+
* Returns the coordinator's decision.
|
|
43
|
+
*/
|
|
44
|
+
export type ApprovalForwarder = (memberId: string, tool: string, args: unknown, ctx: Parameters<NonNullable<AgentMiddleware["beforeToolCall"]>>[2]) => Promise<ToolCallDecision>;
|
|
45
|
+
/**
|
|
46
|
+
* Configuration for the team permission policy middleware.
|
|
47
|
+
*/
|
|
48
|
+
export interface TeamPermissionPolicyConfig {
|
|
49
|
+
/** The member ID this middleware is installed on */
|
|
50
|
+
memberId: string;
|
|
51
|
+
/** Team-wide rules (evaluated first, before forwarding) */
|
|
52
|
+
rules?: TeamPermissionRule[];
|
|
53
|
+
/**
|
|
54
|
+
* Forward unresolved approvals to this callback.
|
|
55
|
+
* If not provided, unresolved tools are allowed (fall through
|
|
56
|
+
* to the member's own approval middleware).
|
|
57
|
+
*/
|
|
58
|
+
forwardApproval?: ApprovalForwarder;
|
|
59
|
+
/**
|
|
60
|
+
* Callback when a "remember" decision is made — the coordinator
|
|
61
|
+
* can propagate it to all members by updating their rule sets.
|
|
62
|
+
*/
|
|
63
|
+
onRemember?: (rule: TeamPermissionRule) => void | Promise<void>;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Create a team permission policy middleware.
|
|
67
|
+
*
|
|
68
|
+
* Install this on forked member agents to enforce team-wide
|
|
69
|
+
* permission rules and optionally forward approvals to the
|
|
70
|
+
* coordinator.
|
|
71
|
+
*
|
|
72
|
+
* ```typescript
|
|
73
|
+
* const memberAgent = lead.fork({
|
|
74
|
+
* name: "explorer",
|
|
75
|
+
* additionalMiddleware: [
|
|
76
|
+
* teamPermissionPolicy({
|
|
77
|
+
* memberId: "explorer",
|
|
78
|
+
* rules: [
|
|
79
|
+
* { tool: "read_*", action: "allow" },
|
|
80
|
+
* { tool: "write_*", action: "deny", reason: "Explorer is read-only" },
|
|
81
|
+
* ],
|
|
82
|
+
* }),
|
|
83
|
+
* ],
|
|
84
|
+
* });
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
87
|
+
export declare function teamPermissionPolicy(config: TeamPermissionPolicyConfig): AgentMiddleware;
|
|
88
|
+
//# sourceMappingURL=permissions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/team/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAWhF;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,wDAAwD;IACxD,IAAI,EAAE,MAAM,CAAC;IACb,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,+BAA+B;IAC/B,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,+CAA+C;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAC9B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,OAAO,EACb,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAC/D,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAE/B;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC7B;;;;OAIG;IACH,eAAe,CAAC,EAAE,iBAAiB,CAAC;IACpC;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjE;AA6BD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,0BAA0B,GACjC,eAAe,CAqCjB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shutdown Protocol
|
|
3
|
+
*
|
|
4
|
+
* Two-phase graceful shutdown for team members:
|
|
5
|
+
*
|
|
6
|
+
* 1. **Request** — coordinator sends a shutdown request via mailbox.
|
|
7
|
+
* If the member is idle, it goes offline immediately. If busy,
|
|
8
|
+
* it's marked "shutting-down" and finishes its current task first.
|
|
9
|
+
*
|
|
10
|
+
* 2. **Resolve** — once the member reaches "offline", the coordinator
|
|
11
|
+
* emits a shutdown-resolved event.
|
|
12
|
+
*
|
|
13
|
+
* The `shutdown()` function applies this to all active members in parallel.
|
|
14
|
+
*/
|
|
15
|
+
import type { CoordinatorCtx, MemberRuntime } from "./coordinator/types.js";
|
|
16
|
+
/**
|
|
17
|
+
* Request graceful shutdown of a specific member.
|
|
18
|
+
*
|
|
19
|
+
* - If member is idle, auto-accepts and goes offline immediately
|
|
20
|
+
* - If member is busy, marks as shutting-down and waits for current
|
|
21
|
+
* task to finish before going offline
|
|
22
|
+
* - Returns true if shutdown succeeded within the timeout
|
|
23
|
+
*/
|
|
24
|
+
export declare function requestShutdown(ctx: CoordinatorCtx, memberId: string, reason?: string, timeoutMs?: number): Promise<boolean>;
|
|
25
|
+
/**
|
|
26
|
+
* Gracefully shut down all active members.
|
|
27
|
+
*/
|
|
28
|
+
export declare function shutdownAll(ctx: CoordinatorCtx, reason?: string, timeoutMs?: number): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* Poll until a member reaches "offline" status.
|
|
31
|
+
* Returns false if the timeout expires first.
|
|
32
|
+
*/
|
|
33
|
+
export declare function waitForOffline(runtime: MemberRuntime, timeoutMs?: number): Promise<boolean>;
|
|
34
|
+
/**
|
|
35
|
+
* Emit a shutdown-resolved event.
|
|
36
|
+
*/
|
|
37
|
+
export declare function emitShutdownResolved(ctx: CoordinatorCtx, memberId: string, requestId: string, accepted: boolean): Promise<void>;
|
|
38
|
+
//# sourceMappingURL=shutdown.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shutdown.d.ts","sourceRoot":"","sources":["../../src/team/shutdown.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAO5E;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,cAAc,EACnB,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC,CA2DlB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,cAAc,EACnB,MAAM,CAAC,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CASf;AAMD;;;GAGG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,aAAa,EACtB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,cAAc,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,IAAI,CAAC,CAQf"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Task Board
|
|
3
|
+
*
|
|
4
|
+
* Manages team members and tasks with a dependency-aware lifecycle.
|
|
5
|
+
*
|
|
6
|
+
* The `TaskBoardStore` interface is the persistence contract — hosts
|
|
7
|
+
* swap in whatever backing store they need (in-memory, Redis, etc.).
|
|
8
|
+
* `TaskBoard` wraps the store and adds the behavioral logic: creation
|
|
9
|
+
* with dependency resolution, claiming, status transitions, and
|
|
10
|
+
* cascading unblock / cancel when dependencies complete or fail.
|
|
11
|
+
*
|
|
12
|
+
* Design choices vs the CLI version:
|
|
13
|
+
* - Added explicit `"claimed"` status (CLI jumped straight from pending → running)
|
|
14
|
+
* - `refreshDependents()` is recursive — cascading failures propagate fully
|
|
15
|
+
* - All mutations return `TaskTransition[]` so the coordinator can publish events
|
|
16
|
+
* - Store interface is minimal (CRUD); board owns all business rules
|
|
17
|
+
*/
|
|
18
|
+
import type { TaskStatus, TaskResult, TaskTransition, TeamMember, TeamTask } from "./types.js";
|
|
19
|
+
export declare class TaskConflictError extends Error {
|
|
20
|
+
readonly taskId?: string | undefined;
|
|
21
|
+
constructor(message: string, taskId?: string | undefined);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Filter options for listing tasks.
|
|
25
|
+
*/
|
|
26
|
+
export interface TaskListFilter {
|
|
27
|
+
memberId?: string;
|
|
28
|
+
status?: TaskStatus | TaskStatus[];
|
|
29
|
+
limit?: number;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Persistence contract for task board data.
|
|
33
|
+
*
|
|
34
|
+
* Implementations must be safe for concurrent calls from the
|
|
35
|
+
* coordinator (which may dispatch multiple tasks in parallel).
|
|
36
|
+
* The in-memory implementation is inherently single-threaded;
|
|
37
|
+
* a Redis or database implementation should use optimistic
|
|
38
|
+
* locking or transactions.
|
|
39
|
+
*/
|
|
40
|
+
export interface TaskBoardStore {
|
|
41
|
+
/** Optional startup hook (open connections, etc.) */
|
|
42
|
+
start?(): Promise<void>;
|
|
43
|
+
/** Optional shutdown hook (close connections, etc.) */
|
|
44
|
+
stop?(): Promise<void>;
|
|
45
|
+
listMembers(): Promise<TeamMember[]>;
|
|
46
|
+
getMember(memberId: string): Promise<TeamMember | undefined>;
|
|
47
|
+
putMember(member: TeamMember): Promise<TeamMember>;
|
|
48
|
+
listTasks(filter?: TaskListFilter): Promise<TeamTask[]>;
|
|
49
|
+
getTask(taskId: string): Promise<TeamTask | undefined>;
|
|
50
|
+
putTask(task: TeamTask): Promise<TeamTask>;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Input for creating a new task.
|
|
54
|
+
*/
|
|
55
|
+
export interface TaskCreateInput {
|
|
56
|
+
id: string;
|
|
57
|
+
title: string;
|
|
58
|
+
prompt: string;
|
|
59
|
+
memberId?: string;
|
|
60
|
+
dependsOn?: string[];
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Simple in-memory store — suitable for single-process teams.
|
|
64
|
+
*/
|
|
65
|
+
export declare class InMemoryTaskBoardStore implements TaskBoardStore {
|
|
66
|
+
private readonly members;
|
|
67
|
+
private readonly tasks;
|
|
68
|
+
listMembers(): Promise<TeamMember[]>;
|
|
69
|
+
getMember(memberId: string): Promise<TeamMember | undefined>;
|
|
70
|
+
putMember(member: TeamMember): Promise<TeamMember>;
|
|
71
|
+
listTasks(filter?: TaskListFilter): Promise<TeamTask[]>;
|
|
72
|
+
getTask(taskId: string): Promise<TeamTask | undefined>;
|
|
73
|
+
putTask(task: TeamTask): Promise<TeamTask>;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Task board — manages task lifecycle with dependency tracking.
|
|
77
|
+
*
|
|
78
|
+
* All mutating methods return the affected task(s) plus any
|
|
79
|
+
* `TaskTransition` records triggered by the change (cascading
|
|
80
|
+
* unblocks, cancellations, etc.).
|
|
81
|
+
*/
|
|
82
|
+
export declare class TaskBoard {
|
|
83
|
+
private readonly store;
|
|
84
|
+
constructor(store: TaskBoardStore);
|
|
85
|
+
start(): Promise<void>;
|
|
86
|
+
stop(): Promise<void>;
|
|
87
|
+
listMembers(): Promise<TeamMember[]>;
|
|
88
|
+
getMember(id: string): Promise<TeamMember | undefined>;
|
|
89
|
+
listTasks(filter?: TaskListFilter): Promise<TeamTask[]>;
|
|
90
|
+
getTask(id: string): Promise<TeamTask | undefined>;
|
|
91
|
+
snapshot(): Promise<{
|
|
92
|
+
members: TeamMember[];
|
|
93
|
+
tasks: TeamTask[];
|
|
94
|
+
}>;
|
|
95
|
+
putMember(member: TeamMember): Promise<TeamMember>;
|
|
96
|
+
/**
|
|
97
|
+
* Create a new task. Its initial status is computed from dependencies:
|
|
98
|
+
* `"pending"` if all deps are met, `"blocked"` otherwise, or
|
|
99
|
+
* `"cancelled"` if a dependency already failed.
|
|
100
|
+
*/
|
|
101
|
+
createTask(input: TaskCreateInput): Promise<{
|
|
102
|
+
task: TeamTask;
|
|
103
|
+
transitions: TaskTransition[];
|
|
104
|
+
}>;
|
|
105
|
+
/**
|
|
106
|
+
* Claim a pending task for a member. Moves status to `"claimed"`.
|
|
107
|
+
*/
|
|
108
|
+
claimTask(taskId: string, memberId: string): Promise<TeamTask>;
|
|
109
|
+
/**
|
|
110
|
+
* Claim the next available pending task for a member.
|
|
111
|
+
* Prefers tasks already assigned to this member, then unassigned tasks.
|
|
112
|
+
*/
|
|
113
|
+
claimNextTask(memberId: string): Promise<TeamTask | undefined>;
|
|
114
|
+
/**
|
|
115
|
+
* Mark a claimed task as running with a run reference.
|
|
116
|
+
*/
|
|
117
|
+
startTask(taskId: string, runId: string): Promise<TeamTask>;
|
|
118
|
+
/**
|
|
119
|
+
* Complete a running task with a result.
|
|
120
|
+
* Cascades: blocked dependents may become pending or cancelled.
|
|
121
|
+
*/
|
|
122
|
+
completeTask(taskId: string, result: TaskResult): Promise<{
|
|
123
|
+
task: TeamTask;
|
|
124
|
+
transitions: TaskTransition[];
|
|
125
|
+
}>;
|
|
126
|
+
/**
|
|
127
|
+
* Fail a running task.
|
|
128
|
+
* Cascades: blocked dependents may be cancelled.
|
|
129
|
+
*/
|
|
130
|
+
failTask(taskId: string, error: string): Promise<{
|
|
131
|
+
task: TeamTask;
|
|
132
|
+
transitions: TaskTransition[];
|
|
133
|
+
}>;
|
|
134
|
+
/**
|
|
135
|
+
* Abort a claimed or running task without cascading dependency failure.
|
|
136
|
+
*
|
|
137
|
+
* Downstream tasks remain blocked so the host can retry or replace the
|
|
138
|
+
* aborted prerequisite explicitly.
|
|
139
|
+
*/
|
|
140
|
+
abortTask(taskId: string, reason?: string): Promise<{
|
|
141
|
+
task: TeamTask;
|
|
142
|
+
transitions: TaskTransition[];
|
|
143
|
+
}>;
|
|
144
|
+
/**
|
|
145
|
+
* Cancel a task (at any non-terminal status).
|
|
146
|
+
* Cascades: blocked dependents may be cancelled.
|
|
147
|
+
*/
|
|
148
|
+
cancelTask(taskId: string, reason?: string): Promise<{
|
|
149
|
+
task: TeamTask;
|
|
150
|
+
transitions: TaskTransition[];
|
|
151
|
+
}>;
|
|
152
|
+
/**
|
|
153
|
+
* Re-evaluate all blocked tasks against current dependency state.
|
|
154
|
+
* Called automatically after complete/fail/cancel, but can also
|
|
155
|
+
* be called manually for batch operations.
|
|
156
|
+
*/
|
|
157
|
+
refreshDependents(): Promise<TaskTransition[]>;
|
|
158
|
+
private requireTask;
|
|
159
|
+
private retryOnConflict;
|
|
160
|
+
}
|
|
161
|
+
//# sourceMappingURL=task-board.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"task-board.d.ts","sourceRoot":"","sources":["../../src/team/task-board.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Team Types
|
|
3
|
+
*
|
|
4
|
+
* Shared vocabulary for multi-agent team coordination.
|
|
5
|
+
*
|
|
6
|
+
* A team is a group of agents working toward a shared goal
|
|
7
|
+
* under a coordinator. Each member is a forked agent with a
|
|
8
|
+
* role, and work is tracked as structured tasks with
|
|
9
|
+
* dependencies.
|
|
10
|
+
*
|
|
11
|
+
* These types are deliberately framework-agnostic — no React,
|
|
12
|
+
* no CLI, no filesystem. Hosts wire concrete stores.
|
|
13
|
+
*/
|
|
14
|
+
import type { TokenUsage } from "../types/messages.js";
|
|
15
|
+
/**
|
|
16
|
+
* Possible member lifecycle states.
|
|
17
|
+
*
|
|
18
|
+
* ```
|
|
19
|
+
* idle ──→ busy ──→ idle (task completed)
|
|
20
|
+
* │ │
|
|
21
|
+
* ├──→ shutting-down ├──→ shutting-down ──→ offline
|
|
22
|
+
* │ │
|
|
23
|
+
* └──→ offline └──→ offline
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export type MemberStatus = "idle" | "busy" | "shutting-down" | "offline";
|
|
27
|
+
/**
|
|
28
|
+
* A registered team member.
|
|
29
|
+
*
|
|
30
|
+
* Each member maps 1:1 to a forked agent instance. The coordinator
|
|
31
|
+
* creates and owns the record; the member agent is unaware of it.
|
|
32
|
+
*/
|
|
33
|
+
export interface TeamMember {
|
|
34
|
+
/** Stable identifier — usually matches the role name */
|
|
35
|
+
id: string;
|
|
36
|
+
/** Name of the role this member was created from */
|
|
37
|
+
role: string;
|
|
38
|
+
/** Human-readable description of the member's specialty */
|
|
39
|
+
description: string;
|
|
40
|
+
/** Session ID used for this member's agent conversations */
|
|
41
|
+
sessionId: string;
|
|
42
|
+
/** Current lifecycle state */
|
|
43
|
+
status: MemberStatus;
|
|
44
|
+
/** Task currently assigned to this member (if busy) */
|
|
45
|
+
activeTaskId?: string;
|
|
46
|
+
/** ISO timestamp of registration */
|
|
47
|
+
createdAt: string;
|
|
48
|
+
/** ISO timestamp of last status change */
|
|
49
|
+
updatedAt: string;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Task lifecycle states.
|
|
53
|
+
*
|
|
54
|
+
* ```
|
|
55
|
+
* ┌───────────┐
|
|
56
|
+
* │ blocked │ ← has unfinished dependencies
|
|
57
|
+
* └─────┬─────┘
|
|
58
|
+
* │ deps complete
|
|
59
|
+
* ▼
|
|
60
|
+
* ┌───────────┐ ┌───────────┐
|
|
61
|
+
* │ pending │────→│ claimed │
|
|
62
|
+
* └─────┬─────┘ └─────┬─────┘
|
|
63
|
+
* │ │ member starts work
|
|
64
|
+
* ▼ ▼
|
|
65
|
+
* ┌───────────┐ ┌───────────┐
|
|
66
|
+
* │ cancelled │ │ running │
|
|
67
|
+
* └───────────┘ └─────┬─────┘
|
|
68
|
+
* │
|
|
69
|
+
* ┌────┴────┐
|
|
70
|
+
* ▼ ▼
|
|
71
|
+
* ┌──────────┐ ┌──────────┐
|
|
72
|
+
* │ completed │ │ failed │
|
|
73
|
+
* └──────────┘ └──────────┘
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export type TaskStatus = "blocked" | "pending" | "claimed" | "running" | "completed" | "aborted" | "failed" | "cancelled";
|
|
77
|
+
/** Status values that indicate a terminal state (no further transitions). */
|
|
78
|
+
export declare const TERMINAL_STATUSES: readonly TaskStatus[];
|
|
79
|
+
/**
|
|
80
|
+
* Result of a completed task.
|
|
81
|
+
*/
|
|
82
|
+
export interface TaskResult {
|
|
83
|
+
/** The agent's final response text */
|
|
84
|
+
response: string;
|
|
85
|
+
/** Token usage for the entire task run */
|
|
86
|
+
usage?: TokenUsage;
|
|
87
|
+
/** Tool calls the agent made during the run */
|
|
88
|
+
toolCalls?: Array<{
|
|
89
|
+
name: string;
|
|
90
|
+
result: unknown;
|
|
91
|
+
}>;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* A unit of work assigned to a team member.
|
|
95
|
+
*/
|
|
96
|
+
export interface TeamTask {
|
|
97
|
+
/** Unique task identifier */
|
|
98
|
+
id: string;
|
|
99
|
+
/** Member assigned to this task (undefined = unassigned) */
|
|
100
|
+
memberId?: string;
|
|
101
|
+
/** Short label for display */
|
|
102
|
+
title: string;
|
|
103
|
+
/** Full task description / prompt given to the member agent */
|
|
104
|
+
prompt: string;
|
|
105
|
+
/** Current lifecycle status */
|
|
106
|
+
status: TaskStatus;
|
|
107
|
+
/** Task IDs that must complete before this task can start */
|
|
108
|
+
dependsOn?: string[];
|
|
109
|
+
/** ISO timestamp when a member claimed this task */
|
|
110
|
+
claimedAt?: string;
|
|
111
|
+
/** Execution/run identifier for the active attempt */
|
|
112
|
+
runId?: string;
|
|
113
|
+
/** ISO timestamp of creation */
|
|
114
|
+
createdAt: string;
|
|
115
|
+
/** ISO timestamp of last status change */
|
|
116
|
+
updatedAt: string;
|
|
117
|
+
/** Result (only present when status is "completed") */
|
|
118
|
+
result?: TaskResult;
|
|
119
|
+
/** Error message (only present when status is "failed" or "cancelled") */
|
|
120
|
+
error?: string;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Message routing kind.
|
|
124
|
+
*
|
|
125
|
+
* - `direct` — one sender to one recipient
|
|
126
|
+
* - `broadcast` — one sender to all members
|
|
127
|
+
* - `system` — generated by the coordinator (task transitions, etc.)
|
|
128
|
+
*/
|
|
129
|
+
export type MessageKind = "direct" | "broadcast" | "system";
|
|
130
|
+
/**
|
|
131
|
+
* Structured message payloads — typed alternatives to plain text.
|
|
132
|
+
*
|
|
133
|
+
* Messages with a `payload` carry machine-readable data that the
|
|
134
|
+
* coordinator and member work loops can act on programmatically.
|
|
135
|
+
* The `body` field still contains a human-readable summary.
|
|
136
|
+
*/
|
|
137
|
+
export type MessagePayload = ShutdownRequestPayload | ShutdownResponsePayload | PermissionRequestPayload | PermissionResponsePayload | IdleNotificationPayload | GuidancePayload | WorkerReportPayload;
|
|
138
|
+
/** Coordinator asks a member to shut down. */
|
|
139
|
+
export interface ShutdownRequestPayload {
|
|
140
|
+
kind: "shutdown-request";
|
|
141
|
+
requestId: string;
|
|
142
|
+
reason?: string;
|
|
143
|
+
}
|
|
144
|
+
/** Member responds to a shutdown request. */
|
|
145
|
+
export interface ShutdownResponsePayload {
|
|
146
|
+
kind: "shutdown-response";
|
|
147
|
+
requestId: string;
|
|
148
|
+
accepted: boolean;
|
|
149
|
+
/** Why the member rejected (e.g. "mid-task") */
|
|
150
|
+
reason?: string;
|
|
151
|
+
}
|
|
152
|
+
/** Member asks coordinator for tool permission. */
|
|
153
|
+
export interface PermissionRequestPayload {
|
|
154
|
+
kind: "permission-request";
|
|
155
|
+
requestId: string;
|
|
156
|
+
tool: string;
|
|
157
|
+
args: unknown;
|
|
158
|
+
memberId: string;
|
|
159
|
+
}
|
|
160
|
+
/** Coordinator responds to a permission request. */
|
|
161
|
+
export interface PermissionResponsePayload {
|
|
162
|
+
kind: "permission-response";
|
|
163
|
+
requestId: string;
|
|
164
|
+
decision: "allow" | "deny";
|
|
165
|
+
reason?: string;
|
|
166
|
+
}
|
|
167
|
+
/** Member notifies coordinator it's idle and available for work. */
|
|
168
|
+
export interface IdleNotificationPayload {
|
|
169
|
+
kind: "idle-notification";
|
|
170
|
+
reason: "available" | "task-completed" | "task-failed" | "interrupted";
|
|
171
|
+
taskId?: string;
|
|
172
|
+
}
|
|
173
|
+
/** Coordinator sends guidance to a member. */
|
|
174
|
+
export interface GuidancePayload {
|
|
175
|
+
kind: "guidance";
|
|
176
|
+
taskId?: string;
|
|
177
|
+
}
|
|
178
|
+
/** Worker sends a mid-task report to the coordinator. */
|
|
179
|
+
export interface WorkerReportPayload {
|
|
180
|
+
kind: "worker-report";
|
|
181
|
+
taskId?: string;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* A message exchanged within the team.
|
|
185
|
+
*/
|
|
186
|
+
export interface TeamMessage {
|
|
187
|
+
/** Unique message identifier */
|
|
188
|
+
id: string;
|
|
189
|
+
/** Team this message belongs to */
|
|
190
|
+
teamId: string;
|
|
191
|
+
/** Sender (member ID, "coordinator", or "system") */
|
|
192
|
+
from: string;
|
|
193
|
+
/** Recipient member ID (undefined for broadcast/system) */
|
|
194
|
+
to?: string;
|
|
195
|
+
/** Routing kind */
|
|
196
|
+
kind: MessageKind;
|
|
197
|
+
/** Message body (human-readable summary) */
|
|
198
|
+
body: string;
|
|
199
|
+
/**
|
|
200
|
+
* Structured payload for machine-readable messages.
|
|
201
|
+
* When present, the `body` is a human-readable summary and
|
|
202
|
+
* the payload carries the typed data.
|
|
203
|
+
*/
|
|
204
|
+
payload?: MessagePayload;
|
|
205
|
+
/** Related task ID (if contextual) */
|
|
206
|
+
taskId?: string;
|
|
207
|
+
/** ISO timestamp */
|
|
208
|
+
createdAt: string;
|
|
209
|
+
/** Arbitrary metadata */
|
|
210
|
+
metadata?: Record<string, string>;
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Point-in-time view of the full team state.
|
|
214
|
+
*/
|
|
215
|
+
export interface TeamSnapshot {
|
|
216
|
+
members: TeamMember[];
|
|
217
|
+
tasks: TeamTask[];
|
|
218
|
+
messages: TeamMessage[];
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Why a task changed status — used by the coordinator to publish
|
|
222
|
+
* lifecycle events after mutations.
|
|
223
|
+
*/
|
|
224
|
+
export type TaskTransitionReason = "created" | "claimed" | "started" | "completed" | "aborted" | "failed" | "cancelled" | "unblocked" | "blocked-dependency-failed";
|
|
225
|
+
/**
|
|
226
|
+
* Record of a single task status change.
|
|
227
|
+
*/
|
|
228
|
+
export interface TaskTransition {
|
|
229
|
+
task: TeamTask;
|
|
230
|
+
reason: TaskTransitionReason;
|
|
231
|
+
previous?: TaskStatus;
|
|
232
|
+
}
|
|
233
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/team/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Work Loop
|
|
3
|
+
*
|
|
4
|
+
* Persistent idle loop for team members. When enabled, members
|
|
5
|
+
* automatically poll the task board for new work instead of
|
|
6
|
+
* waiting for the coordinator to dispatch tasks manually.
|
|
7
|
+
*
|
|
8
|
+
* The work loop enables self-dispatch: tasks added to the board
|
|
9
|
+
* are picked up by idle members without coordinator involvement.
|
|
10
|
+
*/
|
|
11
|
+
import type { TeamTask } from "./types.js";
|
|
12
|
+
import type { CoordinatorCtx, MemberRuntime } from "./coordinator/types.js";
|
|
13
|
+
/**
|
|
14
|
+
* Persistent work loop for a member. Runs until stopRequested.
|
|
15
|
+
*
|
|
16
|
+
* Each iteration:
|
|
17
|
+
* 1. Check if stop requested → exit
|
|
18
|
+
* 2. Try to claim and execute next available task
|
|
19
|
+
* 3. Sleep for pollIntervalMs
|
|
20
|
+
*
|
|
21
|
+
* When the loop exits (stop requested or coordinator stopped),
|
|
22
|
+
* the member is set to offline if not already.
|
|
23
|
+
*/
|
|
24
|
+
export declare function runWorkLoop(ctx: CoordinatorCtx, runtime: MemberRuntime): Promise<void>;
|
|
25
|
+
/**
|
|
26
|
+
* Try to claim the next available task for a member and start executing it.
|
|
27
|
+
* Returns the task if one was claimed, undefined if nothing available.
|
|
28
|
+
*/
|
|
29
|
+
export declare function tryClaimAndExecute(ctx: CoordinatorCtx, runtime: MemberRuntime): Promise<TeamTask | undefined>;
|
|
30
|
+
//# sourceMappingURL=work-loop.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"work-loop.d.ts","sourceRoot":"","sources":["../../src/team/work-loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAQ5E;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,cAAc,EACnB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,IAAI,CAAC,CAsEf;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,cAAc,EACnB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAE/B"}
|