macro-agent 0.0.11 → 0.0.13
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/.macro-agent/teams/self-driving/prompts/grinder.md +27 -0
- package/.macro-agent/teams/self-driving/prompts/judge.md +27 -0
- package/.macro-agent/teams/self-driving/prompts/planner.md +33 -0
- package/.macro-agent/teams/self-driving/roles/grinder.yaml +17 -0
- package/.macro-agent/teams/self-driving/roles/judge.yaml +24 -0
- package/.macro-agent/teams/self-driving/roles/planner.yaml +18 -0
- package/.macro-agent/teams/self-driving/team.yaml +103 -0
- package/.macro-agent/teams/structured/prompts/developer.md +26 -0
- package/.macro-agent/teams/structured/prompts/lead.md +25 -0
- package/.macro-agent/teams/structured/prompts/reviewer.md +24 -0
- package/.macro-agent/teams/structured/roles/developer.yaml +12 -0
- package/.macro-agent/teams/structured/roles/lead.yaml +11 -0
- package/.macro-agent/teams/structured/roles/reviewer.yaml +19 -0
- package/.macro-agent/teams/structured/team.yaml +89 -0
- package/.sudocode/issues.jsonl +6 -0
- package/.sudocode/specs.jsonl +7 -0
- package/CLAUDE.md +110 -30
- package/README.md +60 -3
- package/dist/acp/macro-agent.d.ts +4 -0
- package/dist/acp/macro-agent.d.ts.map +1 -1
- package/dist/acp/macro-agent.js +50 -4
- package/dist/acp/macro-agent.js.map +1 -1
- package/dist/acp/session-mapper.d.ts +20 -1
- package/dist/acp/session-mapper.d.ts.map +1 -1
- package/dist/acp/session-mapper.js +90 -1
- package/dist/acp/session-mapper.js.map +1 -1
- package/dist/acp/types.d.ts +24 -1
- package/dist/acp/types.d.ts.map +1 -1
- package/dist/acp/types.js.map +1 -1
- package/dist/agent/agent-manager.d.ts +25 -1
- package/dist/agent/agent-manager.d.ts.map +1 -1
- package/dist/agent/agent-manager.js +93 -7
- package/dist/agent/agent-manager.js.map +1 -1
- package/dist/agent/types.d.ts +22 -0
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js.map +1 -1
- package/dist/agent-detection/command-builder.d.ts +30 -0
- package/dist/agent-detection/command-builder.d.ts.map +1 -0
- package/dist/agent-detection/command-builder.js +71 -0
- package/dist/agent-detection/command-builder.js.map +1 -0
- package/dist/agent-detection/detector.d.ts +84 -0
- package/dist/agent-detection/detector.d.ts.map +1 -0
- package/dist/agent-detection/detector.js +240 -0
- package/dist/agent-detection/detector.js.map +1 -0
- package/dist/agent-detection/index.d.ts +12 -0
- package/dist/agent-detection/index.d.ts.map +1 -0
- package/dist/agent-detection/index.js +14 -0
- package/dist/agent-detection/index.js.map +1 -0
- package/dist/agent-detection/registry.d.ts +53 -0
- package/dist/agent-detection/registry.d.ts.map +1 -0
- package/dist/agent-detection/registry.js +177 -0
- package/dist/agent-detection/registry.js.map +1 -0
- package/dist/agent-detection/types.d.ts +121 -0
- package/dist/agent-detection/types.d.ts.map +1 -0
- package/dist/agent-detection/types.js +20 -0
- package/dist/agent-detection/types.js.map +1 -0
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +95 -0
- package/dist/api/server.js.map +1 -1
- package/dist/cli/index.js +29 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/mcp.js +38 -0
- package/dist/cli/mcp.js.map +1 -1
- package/dist/config/index.d.ts +2 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +2 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/project-config.d.ts +46 -0
- package/dist/config/project-config.d.ts.map +1 -0
- package/dist/config/project-config.js +68 -0
- package/dist/config/project-config.js.map +1 -0
- package/dist/lifecycle/cascade.d.ts +1 -1
- package/dist/lifecycle/cascade.d.ts.map +1 -1
- package/dist/lifecycle/handlers/index.d.ts +4 -0
- package/dist/lifecycle/handlers/index.d.ts.map +1 -1
- package/dist/lifecycle/handlers/index.js +2 -0
- package/dist/lifecycle/handlers/index.js.map +1 -1
- package/dist/lifecycle/handlers/worker.d.ts +4 -0
- package/dist/lifecycle/handlers/worker.d.ts.map +1 -1
- package/dist/lifecycle/handlers/worker.js +35 -3
- package/dist/lifecycle/handlers/worker.js.map +1 -1
- package/dist/map/adapter/acp-over-map.d.ts.map +1 -1
- package/dist/map/adapter/acp-over-map.js +32 -2
- package/dist/map/adapter/acp-over-map.js.map +1 -1
- package/dist/map/adapter/event-translator.d.ts.map +1 -1
- package/dist/map/adapter/event-translator.js +1 -0
- package/dist/map/adapter/event-translator.js.map +1 -1
- package/dist/map/adapter/extensions/agent-detection.d.ts +49 -0
- package/dist/map/adapter/extensions/agent-detection.d.ts.map +1 -0
- package/dist/map/adapter/extensions/agent-detection.js +91 -0
- package/dist/map/adapter/extensions/agent-detection.js.map +1 -0
- package/dist/map/adapter/extensions/index.d.ts +10 -1
- package/dist/map/adapter/extensions/index.d.ts.map +1 -1
- package/dist/map/adapter/extensions/index.js +39 -0
- package/dist/map/adapter/extensions/index.js.map +1 -1
- package/dist/map/adapter/extensions/resume.d.ts +47 -0
- package/dist/map/adapter/extensions/resume.d.ts.map +1 -0
- package/dist/map/adapter/extensions/resume.js +59 -0
- package/dist/map/adapter/extensions/resume.js.map +1 -0
- package/dist/map/adapter/extensions/workspace-files.d.ts +42 -0
- package/dist/map/adapter/extensions/workspace-files.d.ts.map +1 -0
- package/dist/map/adapter/extensions/workspace-files.js +338 -0
- package/dist/map/adapter/extensions/workspace-files.js.map +1 -0
- package/dist/mcp/mcp-server.d.ts +6 -0
- package/dist/mcp/mcp-server.d.ts.map +1 -1
- package/dist/mcp/mcp-server.js +45 -0
- package/dist/mcp/mcp-server.js.map +1 -1
- package/dist/mcp/tools/claim_task.d.ts +35 -0
- package/dist/mcp/tools/claim_task.d.ts.map +1 -0
- package/dist/mcp/tools/claim_task.js +58 -0
- package/dist/mcp/tools/claim_task.js.map +1 -0
- package/dist/mcp/tools/done.d.ts +11 -2
- package/dist/mcp/tools/done.d.ts.map +1 -1
- package/dist/mcp/tools/done.js +15 -10
- package/dist/mcp/tools/done.js.map +1 -1
- package/dist/mcp/tools/list_claimable_tasks.d.ts +38 -0
- package/dist/mcp/tools/list_claimable_tasks.d.ts.map +1 -0
- package/dist/mcp/tools/list_claimable_tasks.js +63 -0
- package/dist/mcp/tools/list_claimable_tasks.js.map +1 -0
- package/dist/mcp/tools/unclaim_task.d.ts +31 -0
- package/dist/mcp/tools/unclaim_task.d.ts.map +1 -0
- package/dist/mcp/tools/unclaim_task.js +47 -0
- package/dist/mcp/tools/unclaim_task.js.map +1 -0
- package/dist/metrics/index.d.ts +2 -0
- package/dist/metrics/index.d.ts.map +1 -0
- package/dist/metrics/index.js +2 -0
- package/dist/metrics/index.js.map +1 -0
- package/dist/metrics/metrics.d.ts +79 -0
- package/dist/metrics/metrics.d.ts.map +1 -0
- package/dist/metrics/metrics.js +166 -0
- package/dist/metrics/metrics.js.map +1 -0
- package/dist/roles/capabilities.d.ts +1 -0
- package/dist/roles/capabilities.d.ts.map +1 -1
- package/dist/roles/capabilities.js +3 -0
- package/dist/roles/capabilities.js.map +1 -1
- package/dist/roles/types.d.ts +1 -1
- package/dist/roles/types.d.ts.map +1 -1
- package/dist/router/message-router.d.ts +41 -0
- package/dist/router/message-router.d.ts.map +1 -1
- package/dist/router/message-router.js +136 -5
- package/dist/router/message-router.js.map +1 -1
- package/dist/store/event-store.d.ts +8 -1
- package/dist/store/event-store.d.ts.map +1 -1
- package/dist/store/event-store.js +120 -4
- package/dist/store/event-store.js.map +1 -1
- package/dist/store/types/agents.d.ts +1 -1
- package/dist/store/types/agents.d.ts.map +1 -1
- package/dist/store/types/events.d.ts +1 -1
- package/dist/store/types/events.d.ts.map +1 -1
- package/dist/store/types/events.js.map +1 -1
- package/dist/store/types/index.d.ts +1 -0
- package/dist/store/types/index.d.ts.map +1 -1
- package/dist/store/types/index.js +1 -0
- package/dist/store/types/index.js.map +1 -1
- package/dist/store/types/sessions.d.ts +44 -0
- package/dist/store/types/sessions.d.ts.map +1 -0
- package/dist/store/types/sessions.js +9 -0
- package/dist/store/types/sessions.js.map +1 -0
- package/dist/store/types/tasks.d.ts +2 -0
- package/dist/store/types/tasks.d.ts.map +1 -1
- package/dist/task/backend/memory.d.ts +4 -1
- package/dist/task/backend/memory.d.ts.map +1 -1
- package/dist/task/backend/memory.js +81 -0
- package/dist/task/backend/memory.js.map +1 -1
- package/dist/task/backend/types.d.ts +30 -0
- package/dist/task/backend/types.d.ts.map +1 -1
- package/dist/task/backend/types.js.map +1 -1
- package/dist/teams/index.d.ts +4 -0
- package/dist/teams/index.d.ts.map +1 -0
- package/dist/teams/index.js +4 -0
- package/dist/teams/index.js.map +1 -0
- package/dist/teams/team-loader.d.ts +20 -0
- package/dist/teams/team-loader.d.ts.map +1 -0
- package/dist/teams/team-loader.js +293 -0
- package/dist/teams/team-loader.js.map +1 -0
- package/dist/teams/team-runtime.d.ts +139 -0
- package/dist/teams/team-runtime.d.ts.map +1 -0
- package/dist/teams/team-runtime.js +613 -0
- package/dist/teams/team-runtime.js.map +1 -0
- package/dist/teams/types.d.ts +266 -0
- package/dist/teams/types.d.ts.map +1 -0
- package/dist/teams/types.js +20 -0
- package/dist/teams/types.js.map +1 -0
- package/dist/workspace/dataplane-adapter.d.ts +1 -1
- package/dist/workspace/dataplane-adapter.d.ts.map +1 -1
- package/dist/workspace/dataplane-adapter.js +1 -1
- package/dist/workspace/dataplane-adapter.js.map +1 -1
- package/dist/workspace/index.d.ts +1 -1
- package/dist/workspace/index.d.ts.map +1 -1
- package/dist/workspace/strategies/index.d.ts +6 -0
- package/dist/workspace/strategies/index.d.ts.map +1 -0
- package/dist/workspace/strategies/index.js +5 -0
- package/dist/workspace/strategies/index.js.map +1 -0
- package/dist/workspace/strategies/optimistic.d.ts +26 -0
- package/dist/workspace/strategies/optimistic.d.ts.map +1 -0
- package/dist/workspace/strategies/optimistic.js +121 -0
- package/dist/workspace/strategies/optimistic.js.map +1 -0
- package/dist/workspace/strategies/queue.d.ts +26 -0
- package/dist/workspace/strategies/queue.d.ts.map +1 -0
- package/dist/workspace/strategies/queue.js +67 -0
- package/dist/workspace/strategies/queue.js.map +1 -0
- package/dist/workspace/strategies/registry.d.ts +37 -0
- package/dist/workspace/strategies/registry.d.ts.map +1 -0
- package/dist/workspace/strategies/registry.js +63 -0
- package/dist/workspace/strategies/registry.js.map +1 -0
- package/dist/workspace/strategies/trunk.d.ts +20 -0
- package/dist/workspace/strategies/trunk.d.ts.map +1 -0
- package/dist/workspace/strategies/trunk.js +108 -0
- package/dist/workspace/strategies/trunk.js.map +1 -0
- package/dist/workspace/strategies/types.d.ts +104 -0
- package/dist/workspace/strategies/types.d.ts.map +1 -0
- package/dist/workspace/strategies/types.js +11 -0
- package/dist/workspace/strategies/types.js.map +1 -0
- package/dist/workspace/types.d.ts +1 -1
- package/dist/workspace/types.d.ts.map +1 -1
- package/dist/workspace/workspace-manager.d.ts +1 -1
- package/dist/workspace/workspace-manager.d.ts.map +1 -1
- package/docs/implementation-details.md +1127 -0
- package/docs/implementation-summary.md +448 -0
- package/docs/plan-self-driving-support.md +433 -0
- package/docs/spec-self-driving-support.md +462 -0
- package/docs/team-templates.md +860 -0
- package/docs/teams.md +233 -0
- package/package.json +5 -3
- package/src/acp/__tests__/integration.test.ts +161 -1
- package/src/acp/__tests__/macro-agent.test.ts +95 -0
- package/src/acp/__tests__/session-persistence.test.ts +276 -0
- package/src/acp/macro-agent.ts +79 -7
- package/src/acp/session-mapper.ts +108 -1
- package/src/acp/types.ts +33 -1
- package/src/agent/agent-manager.ts +158 -6
- package/src/agent/types.ts +27 -0
- package/src/agent-detection/__tests__/command-builder.test.ts +336 -0
- package/src/agent-detection/__tests__/detector.test.ts +768 -0
- package/src/agent-detection/__tests__/registry.test.ts +254 -0
- package/src/agent-detection/command-builder.ts +90 -0
- package/src/agent-detection/detector.ts +307 -0
- package/src/agent-detection/index.ts +36 -0
- package/src/agent-detection/registry.ts +200 -0
- package/src/agent-detection/types.ts +184 -0
- package/src/api/server.ts +110 -0
- package/src/cli/index.ts +44 -0
- package/src/cli/mcp.ts +47 -0
- package/src/config/index.ts +9 -0
- package/src/config/project-config.ts +107 -0
- package/src/lifecycle/cascade.ts +1 -1
- package/src/lifecycle/handlers/index.ts +8 -0
- package/src/lifecycle/handlers/worker.ts +48 -3
- package/src/map/adapter/__tests__/extensions.test.ts +359 -0
- package/src/map/adapter/__tests__/workspace-files.test.ts +673 -0
- package/src/map/adapter/acp-over-map.ts +45 -2
- package/src/map/adapter/event-translator.ts +1 -0
- package/src/map/adapter/extensions/agent-detection.ts +201 -0
- package/src/map/adapter/extensions/index.ts +63 -0
- package/src/map/adapter/extensions/resume.ts +114 -0
- package/src/map/adapter/extensions/workspace-files.ts +449 -0
- package/src/mcp/mcp-server.ts +67 -0
- package/src/mcp/tools/claim_task.ts +86 -0
- package/src/mcp/tools/done.ts +24 -10
- package/src/mcp/tools/list_claimable_tasks.ts +93 -0
- package/src/mcp/tools/unclaim_task.ts +71 -0
- package/src/metrics/index.ts +9 -0
- package/src/metrics/metrics.ts +280 -0
- package/src/roles/capabilities.ts +3 -0
- package/src/roles/types.ts +2 -1
- package/src/router/__tests__/message-router.test.ts +561 -0
- package/src/router/message-router.ts +223 -6
- package/src/store/event-store.ts +151 -3
- package/src/store/types/agents.ts +1 -1
- package/src/store/types/events.ts +2 -1
- package/src/store/types/index.ts +1 -0
- package/src/store/types/sessions.ts +53 -0
- package/src/store/types/tasks.ts +3 -0
- package/src/task/backend/memory.ts +116 -0
- package/src/task/backend/types.ts +43 -0
- package/src/teams/__tests__/cross-subsystem.integration.test.ts +983 -0
- package/src/teams/__tests__/e2e/team-runtime.e2e.test.ts +553 -0
- package/src/teams/__tests__/team-system.test.ts +1280 -0
- package/src/teams/index.ts +13 -0
- package/src/teams/team-loader.ts +434 -0
- package/src/teams/team-runtime.ts +727 -0
- package/src/teams/types.ts +377 -0
- package/src/workspace/dataplane-adapter.ts +1 -1
- package/src/workspace/index.ts +1 -1
- package/src/workspace/strategies/index.ts +18 -0
- package/src/workspace/strategies/optimistic.ts +136 -0
- package/src/workspace/strategies/queue.ts +81 -0
- package/src/workspace/strategies/registry.ts +89 -0
- package/src/workspace/strategies/trunk.ts +123 -0
- package/src/workspace/strategies/types.ts +145 -0
- package/src/workspace/types.ts +1 -1
- package/src/workspace/workspace-manager.ts +1 -1
- package/.claude/settings.local.json +0 -59
- package/dist/map/utils/address-translation.d.ts +0 -99
- package/dist/map/utils/address-translation.d.ts.map +0 -1
- package/dist/map/utils/address-translation.js +0 -285
- package/dist/map/utils/address-translation.js.map +0 -1
- package/dist/map/utils/index.d.ts +0 -7
- package/dist/map/utils/index.d.ts.map +0 -1
- package/dist/map/utils/index.js +0 -7
- package/dist/map/utils/index.js.map +0 -1
- package/references/acp-factory-ref/CHANGELOG.md +0 -33
- package/references/acp-factory-ref/LICENSE +0 -21
- package/references/acp-factory-ref/README.md +0 -341
- package/references/acp-factory-ref/package-lock.json +0 -3102
- package/references/acp-factory-ref/package.json +0 -96
- package/references/acp-factory-ref/python/CHANGELOG.md +0 -33
- package/references/acp-factory-ref/python/LICENSE +0 -21
- package/references/acp-factory-ref/python/Makefile +0 -57
- package/references/acp-factory-ref/python/README.md +0 -253
- package/references/acp-factory-ref/python/pyproject.toml +0 -73
- package/references/acp-factory-ref/python/tests/__init__.py +0 -0
- package/references/acp-factory-ref/python/tests/e2e/__init__.py +0 -1
- package/references/acp-factory-ref/python/tests/e2e/test_codex_e2e.py +0 -349
- package/references/acp-factory-ref/python/tests/e2e/test_gemini_e2e.py +0 -165
- package/references/acp-factory-ref/python/tests/e2e/test_opencode_e2e.py +0 -296
- package/references/acp-factory-ref/python/tests/test_client_handler.py +0 -543
- package/references/acp-factory-ref/python/tests/test_pushable.py +0 -199
- package/references/claude-code-acp/.github/workflows/ci.yml +0 -45
- package/references/claude-code-acp/.github/workflows/publish.yml +0 -34
- package/references/claude-code-acp/.prettierrc.json +0 -4
- package/references/claude-code-acp/CHANGELOG.md +0 -249
- package/references/claude-code-acp/LICENSE +0 -222
- package/references/claude-code-acp/README.md +0 -53
- package/references/claude-code-acp/docs/RELEASES.md +0 -24
- package/references/claude-code-acp/eslint.config.js +0 -48
- package/references/claude-code-acp/package-lock.json +0 -4570
- package/references/claude-code-acp/package.json +0 -88
- package/references/claude-code-acp/scripts/release.sh +0 -119
- package/references/claude-code-acp/src/acp-agent.ts +0 -2065
- package/references/claude-code-acp/src/index.ts +0 -26
- package/references/claude-code-acp/src/lib.ts +0 -38
- package/references/claude-code-acp/src/mcp-server.ts +0 -911
- package/references/claude-code-acp/src/settings.ts +0 -522
- package/references/claude-code-acp/src/tests/.claude/commands/quick-math.md +0 -5
- package/references/claude-code-acp/src/tests/.claude/commands/say-hello.md +0 -6
- package/references/claude-code-acp/src/tests/acp-agent-fork.test.ts +0 -479
- package/references/claude-code-acp/src/tests/acp-agent.test.ts +0 -1502
- package/references/claude-code-acp/src/tests/extract-lines.test.ts +0 -103
- package/references/claude-code-acp/src/tests/fork-session.test.ts +0 -335
- package/references/claude-code-acp/src/tests/replace-and-calculate-location.test.ts +0 -334
- package/references/claude-code-acp/src/tests/settings.test.ts +0 -617
- package/references/claude-code-acp/src/tests/skills-options.test.ts +0 -187
- package/references/claude-code-acp/src/tests/tools.test.ts +0 -318
- package/references/claude-code-acp/src/tests/typescript-declarations.test.ts +0 -558
- package/references/claude-code-acp/src/tools.ts +0 -819
- package/references/claude-code-acp/src/utils.ts +0 -171
- package/references/claude-code-acp/tsconfig.json +0 -18
- package/references/claude-code-acp/vitest.config.ts +0 -19
- package/references/multi-agent-protocol/.sudocode/issues.jsonl +0 -111
- package/references/multi-agent-protocol/.sudocode/specs.jsonl +0 -13
- package/references/multi-agent-protocol/LICENSE +0 -21
- package/references/multi-agent-protocol/README.md +0 -113
- package/references/multi-agent-protocol/docs/00-design-specification.md +0 -496
- package/references/multi-agent-protocol/docs/01-open-questions.md +0 -1050
- package/references/multi-agent-protocol/docs/02-wire-protocol.md +0 -296
- package/references/multi-agent-protocol/docs/03-streaming-semantics.md +0 -252
- package/references/multi-agent-protocol/docs/04-error-handling.md +0 -231
- package/references/multi-agent-protocol/docs/05-connection-model.md +0 -244
- package/references/multi-agent-protocol/docs/06-visibility-permissions.md +0 -243
- package/references/multi-agent-protocol/docs/07-federation.md +0 -259
- package/references/multi-agent-protocol/docs/08-macro-agent-migration.md +0 -253
- package/references/multi-agent-protocol/docs/09-authentication.md +0 -680
- package/references/multi-agent-protocol/docs/10-mail-protocol.md +0 -553
- package/references/multi-agent-protocol/docs/agent-iam-integration.md +0 -877
- package/references/multi-agent-protocol/docs/agentic-mesh-integration-draft.md +0 -459
- package/references/multi-agent-protocol/docs/git-transport-draft.md +0 -251
- package/references/multi-agent-protocol/docs-site/Gemfile +0 -22
- package/references/multi-agent-protocol/docs-site/README.md +0 -82
- package/references/multi-agent-protocol/docs-site/_config.yml +0 -91
- package/references/multi-agent-protocol/docs-site/_includes/head_custom.html +0 -20
- package/references/multi-agent-protocol/docs-site/_sass/color_schemes/map.scss +0 -42
- package/references/multi-agent-protocol/docs-site/_sass/custom/custom.scss +0 -34
- package/references/multi-agent-protocol/docs-site/examples/full-integration.md +0 -510
- package/references/multi-agent-protocol/docs-site/examples/index.md +0 -138
- package/references/multi-agent-protocol/docs-site/examples/simple-chat.md +0 -282
- package/references/multi-agent-protocol/docs-site/examples/task-queue.md +0 -399
- package/references/multi-agent-protocol/docs-site/getting-started/index.md +0 -98
- package/references/multi-agent-protocol/docs-site/getting-started/installation.md +0 -219
- package/references/multi-agent-protocol/docs-site/getting-started/overview.md +0 -172
- package/references/multi-agent-protocol/docs-site/getting-started/quickstart.md +0 -237
- package/references/multi-agent-protocol/docs-site/index.md +0 -136
- package/references/multi-agent-protocol/docs-site/protocol/authentication.md +0 -391
- package/references/multi-agent-protocol/docs-site/protocol/connection-model.md +0 -376
- package/references/multi-agent-protocol/docs-site/protocol/design.md +0 -284
- package/references/multi-agent-protocol/docs-site/protocol/error-handling.md +0 -312
- package/references/multi-agent-protocol/docs-site/protocol/federation.md +0 -449
- package/references/multi-agent-protocol/docs-site/protocol/index.md +0 -129
- package/references/multi-agent-protocol/docs-site/protocol/permissions.md +0 -398
- package/references/multi-agent-protocol/docs-site/protocol/streaming.md +0 -353
- package/references/multi-agent-protocol/docs-site/protocol/wire-protocol.md +0 -369
- package/references/multi-agent-protocol/docs-site/sdk/api/agent.md +0 -357
- package/references/multi-agent-protocol/docs-site/sdk/api/client.md +0 -380
- package/references/multi-agent-protocol/docs-site/sdk/api/index.md +0 -62
- package/references/multi-agent-protocol/docs-site/sdk/api/server.md +0 -453
- package/references/multi-agent-protocol/docs-site/sdk/api/types.md +0 -468
- package/references/multi-agent-protocol/docs-site/sdk/guides/agent.md +0 -375
- package/references/multi-agent-protocol/docs-site/sdk/guides/authentication.md +0 -405
- package/references/multi-agent-protocol/docs-site/sdk/guides/client.md +0 -352
- package/references/multi-agent-protocol/docs-site/sdk/guides/index.md +0 -89
- package/references/multi-agent-protocol/docs-site/sdk/guides/server.md +0 -360
- package/references/multi-agent-protocol/docs-site/sdk/guides/testing.md +0 -446
- package/references/multi-agent-protocol/docs-site/sdk/guides/transports.md +0 -363
- package/references/multi-agent-protocol/docs-site/sdk/index.md +0 -206
- package/references/multi-agent-protocol/package-lock.json +0 -3886
- package/references/multi-agent-protocol/package.json +0 -56
- package/references/multi-agent-protocol/schema/meta.json +0 -467
- package/references/multi-agent-protocol/schema/schema.json +0 -2558
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Team Template Loader
|
|
3
|
+
*
|
|
4
|
+
* Reads .macro-agent/teams/<name>/ directories, parses team.yaml,
|
|
5
|
+
* resolves role inheritance, loads prompts, and validates communication.
|
|
6
|
+
*
|
|
7
|
+
* @module teams/team-loader
|
|
8
|
+
*/
|
|
9
|
+
import * as fs from "fs";
|
|
10
|
+
import * as path from "path";
|
|
11
|
+
import yaml from "js-yaml";
|
|
12
|
+
import { TeamLoadError, } from "./types.js";
|
|
13
|
+
// =============================================================================
|
|
14
|
+
// Constants
|
|
15
|
+
// =============================================================================
|
|
16
|
+
const TEAMS_DIR = ".macro-agent/teams";
|
|
17
|
+
const MANIFEST_FILE = "team.yaml";
|
|
18
|
+
const ROLES_DIR = "roles";
|
|
19
|
+
const PROMPTS_DIR = "prompts";
|
|
20
|
+
const TOOLS_DIR = "tools";
|
|
21
|
+
const MCP_SERVERS_FILE = "mcp-servers.json";
|
|
22
|
+
// =============================================================================
|
|
23
|
+
// TeamLoader
|
|
24
|
+
// =============================================================================
|
|
25
|
+
/**
|
|
26
|
+
* Load a team template from disk and resolve all references.
|
|
27
|
+
*
|
|
28
|
+
* @param teamName - Team name (directory name under .macro-agent/teams/)
|
|
29
|
+
* @param roleRegistry - Role registry for resolving extends chains
|
|
30
|
+
* @param basePath - Project root (default: process.cwd())
|
|
31
|
+
* @returns Fully resolved TeamManifest
|
|
32
|
+
*/
|
|
33
|
+
export async function loadTeam(teamName, roleRegistry, basePath) {
|
|
34
|
+
const root = basePath ?? process.cwd();
|
|
35
|
+
const teamDir = path.join(root, TEAMS_DIR, teamName);
|
|
36
|
+
// 1. Check team directory exists
|
|
37
|
+
if (!fs.existsSync(teamDir)) {
|
|
38
|
+
throw new TeamLoadError(`Team directory not found: ${teamDir}`, "MANIFEST_NOT_FOUND", teamName);
|
|
39
|
+
}
|
|
40
|
+
// 2. Read and parse team.yaml
|
|
41
|
+
const manifestPath = path.join(teamDir, MANIFEST_FILE);
|
|
42
|
+
if (!fs.existsSync(manifestPath)) {
|
|
43
|
+
throw new TeamLoadError(`Team manifest not found: ${manifestPath}`, "MANIFEST_NOT_FOUND", teamName);
|
|
44
|
+
}
|
|
45
|
+
const raw = fs.readFileSync(manifestPath, "utf-8");
|
|
46
|
+
let parsed;
|
|
47
|
+
try {
|
|
48
|
+
parsed = yaml.load(raw);
|
|
49
|
+
}
|
|
50
|
+
catch (err) {
|
|
51
|
+
throw new TeamLoadError(`Failed to parse ${manifestPath}: ${err instanceof Error ? err.message : String(err)}`, "INVALID_MANIFEST", teamName);
|
|
52
|
+
}
|
|
53
|
+
// 3. Validate required fields
|
|
54
|
+
validateManifest(parsed, teamName);
|
|
55
|
+
const topology = parsed.topology;
|
|
56
|
+
const communication = (parsed.communication ?? {});
|
|
57
|
+
const macroAgent = (parsed.macro_agent ?? {});
|
|
58
|
+
const roleNames = parsed.roles;
|
|
59
|
+
// 4. Resolve roles
|
|
60
|
+
const resolvedRoles = new Map();
|
|
61
|
+
const spawnRules = topology.spawn_rules ?? {};
|
|
62
|
+
for (const roleName of roleNames) {
|
|
63
|
+
const resolved = resolveTeamRole(roleName, teamDir, roleRegistry, spawnRules);
|
|
64
|
+
resolvedRoles.set(roleName, resolved);
|
|
65
|
+
}
|
|
66
|
+
// 5. Load prompts
|
|
67
|
+
const loadedPrompts = new Map();
|
|
68
|
+
// Load prompts from topology nodes
|
|
69
|
+
const promptRefs = collectPromptRefs(topology, resolvedRoles);
|
|
70
|
+
for (const promptPath of promptRefs) {
|
|
71
|
+
const fullPath = path.join(teamDir, promptPath);
|
|
72
|
+
if (!fs.existsSync(fullPath)) {
|
|
73
|
+
throw new TeamLoadError(`Prompt file not found: ${fullPath}`, "PROMPT_NOT_FOUND", teamName);
|
|
74
|
+
}
|
|
75
|
+
loadedPrompts.set(promptPath, fs.readFileSync(fullPath, "utf-8"));
|
|
76
|
+
}
|
|
77
|
+
// 6. Load MCP server configs
|
|
78
|
+
const mcpServers = loadMcpServers(teamDir);
|
|
79
|
+
// 7. Validate communication topology
|
|
80
|
+
validateCommunication(communication, roleNames, teamName);
|
|
81
|
+
return {
|
|
82
|
+
name: parsed.name,
|
|
83
|
+
description: parsed.description ?? "",
|
|
84
|
+
version: parsed.version ?? 1,
|
|
85
|
+
roles: roleNames,
|
|
86
|
+
topology,
|
|
87
|
+
communication,
|
|
88
|
+
macro_agent: macroAgent,
|
|
89
|
+
_resolvedRoles: resolvedRoles,
|
|
90
|
+
_loadedPrompts: loadedPrompts,
|
|
91
|
+
_mcpServers: mcpServers,
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
// =============================================================================
|
|
95
|
+
// Manifest Validation
|
|
96
|
+
// =============================================================================
|
|
97
|
+
function validateManifest(parsed, teamName) {
|
|
98
|
+
if (!parsed || typeof parsed !== "object") {
|
|
99
|
+
throw new TeamLoadError("Team manifest must be a YAML object", "INVALID_MANIFEST", teamName);
|
|
100
|
+
}
|
|
101
|
+
if (!parsed.name || typeof parsed.name !== "string") {
|
|
102
|
+
throw new TeamLoadError("Team manifest requires a 'name' string field", "INVALID_MANIFEST", teamName);
|
|
103
|
+
}
|
|
104
|
+
if (!Array.isArray(parsed.roles) || parsed.roles.length === 0) {
|
|
105
|
+
throw new TeamLoadError("Team manifest requires a non-empty 'roles' array", "INVALID_MANIFEST", teamName);
|
|
106
|
+
}
|
|
107
|
+
if (!parsed.topology || typeof parsed.topology !== "object") {
|
|
108
|
+
throw new TeamLoadError("Team manifest requires a 'topology' object", "INVALID_MANIFEST", teamName);
|
|
109
|
+
}
|
|
110
|
+
const topology = parsed.topology;
|
|
111
|
+
if (!topology.root || typeof topology.root !== "object") {
|
|
112
|
+
throw new TeamLoadError("Team topology requires a 'root' object", "INVALID_MANIFEST", teamName);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
// =============================================================================
|
|
116
|
+
// Role Resolution
|
|
117
|
+
// =============================================================================
|
|
118
|
+
/**
|
|
119
|
+
* Resolve a single team role: load YAML if present, resolve extends,
|
|
120
|
+
* compute capabilities, translate spawn rules.
|
|
121
|
+
*/
|
|
122
|
+
function resolveTeamRole(roleName, teamDir, roleRegistry, spawnRules) {
|
|
123
|
+
// Try to load role YAML from team directory
|
|
124
|
+
const roleFilePath = path.join(teamDir, ROLES_DIR, `${roleName}.yaml`);
|
|
125
|
+
let teamRoleDef = null;
|
|
126
|
+
if (fs.existsSync(roleFilePath)) {
|
|
127
|
+
const raw = fs.readFileSync(roleFilePath, "utf-8");
|
|
128
|
+
try {
|
|
129
|
+
teamRoleDef = yaml.load(raw);
|
|
130
|
+
}
|
|
131
|
+
catch (err) {
|
|
132
|
+
throw new TeamLoadError(`Failed to parse role file ${roleFilePath}: ${err instanceof Error ? err.message : String(err)}`, "INVALID_ROLE", roleName);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
// Determine base role
|
|
136
|
+
const baseRoleName = teamRoleDef?.extends ?? roleName;
|
|
137
|
+
let parentRole;
|
|
138
|
+
try {
|
|
139
|
+
parentRole = roleRegistry.resolveRole(baseRoleName);
|
|
140
|
+
}
|
|
141
|
+
catch {
|
|
142
|
+
throw new TeamLoadError(`Base role '${baseRoleName}' not found for team role '${roleName}'`, "ROLE_NOT_FOUND", roleName);
|
|
143
|
+
}
|
|
144
|
+
// Compute capabilities
|
|
145
|
+
let capabilities;
|
|
146
|
+
if (teamRoleDef?.capabilities) {
|
|
147
|
+
// Full replacement
|
|
148
|
+
capabilities = teamRoleDef.capabilities;
|
|
149
|
+
}
|
|
150
|
+
else if (teamRoleDef?.capabilities_add || teamRoleDef?.capabilities_remove) {
|
|
151
|
+
// Additive/subtractive
|
|
152
|
+
const base = new Set(parentRole.capabilities);
|
|
153
|
+
for (const cap of teamRoleDef.capabilities_add ?? []) {
|
|
154
|
+
base.add(cap);
|
|
155
|
+
}
|
|
156
|
+
for (const cap of teamRoleDef.capabilities_remove ?? []) {
|
|
157
|
+
base.delete(cap);
|
|
158
|
+
}
|
|
159
|
+
capabilities = Array.from(base);
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
// Inherit parent capabilities
|
|
163
|
+
capabilities = [...parentRole.capabilities];
|
|
164
|
+
}
|
|
165
|
+
// Translate spawn_rules into capability additions (RD3)
|
|
166
|
+
const allowedSpawns = spawnRules[roleName];
|
|
167
|
+
if (allowedSpawns) {
|
|
168
|
+
for (const targetRole of allowedSpawns) {
|
|
169
|
+
const spawnCap = `agent.spawn.${targetRole}`;
|
|
170
|
+
if (!capabilities.includes(spawnCap)) {
|
|
171
|
+
capabilities.push(spawnCap);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
// Build the resolved RoleDefinition for registry
|
|
176
|
+
const roleDefinition = {
|
|
177
|
+
name: roleName,
|
|
178
|
+
displayName: teamRoleDef?.display_name ?? parentRole.displayName,
|
|
179
|
+
description: teamRoleDef?.description ?? parentRole.description,
|
|
180
|
+
capabilities,
|
|
181
|
+
workspace: teamRoleDef?.macro_agent?.workspace
|
|
182
|
+
? {
|
|
183
|
+
type: (teamRoleDef.macro_agent.workspace.type ?? "own"),
|
|
184
|
+
branchPattern: teamRoleDef.macro_agent.workspace.branch_pattern,
|
|
185
|
+
cleanupOnTerminate: teamRoleDef.macro_agent.workspace.cleanup_on_terminate,
|
|
186
|
+
}
|
|
187
|
+
: parentRole.workspace,
|
|
188
|
+
lifecycle: teamRoleDef?.macro_agent?.lifecycle
|
|
189
|
+
? {
|
|
190
|
+
type: (teamRoleDef.macro_agent.lifecycle.type ?? "ephemeral"),
|
|
191
|
+
cascadeTerminate: teamRoleDef.macro_agent.lifecycle.cascade_terminate,
|
|
192
|
+
selfCleanup: teamRoleDef.macro_agent.lifecycle.self_cleanup,
|
|
193
|
+
taskBound: teamRoleDef.macro_agent.lifecycle.task_bound,
|
|
194
|
+
parentBound: teamRoleDef.macro_agent.lifecycle.parent_bound,
|
|
195
|
+
maxDurationMs: teamRoleDef.macro_agent.lifecycle.max_duration_ms,
|
|
196
|
+
}
|
|
197
|
+
: parentRole.lifecycle,
|
|
198
|
+
tools: parentRole.tools,
|
|
199
|
+
protocol: parentRole.protocol,
|
|
200
|
+
permissions: parentRole.permissions,
|
|
201
|
+
extends: teamRoleDef?.extends,
|
|
202
|
+
systemPrompt: parentRole.systemPrompt,
|
|
203
|
+
};
|
|
204
|
+
return {
|
|
205
|
+
name: roleName,
|
|
206
|
+
baseRole: baseRoleName,
|
|
207
|
+
capabilities,
|
|
208
|
+
prompt: teamRoleDef?.prompt,
|
|
209
|
+
roleDefinition,
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
// =============================================================================
|
|
213
|
+
// Prompt Collection
|
|
214
|
+
// =============================================================================
|
|
215
|
+
/**
|
|
216
|
+
* Collect all prompt file paths referenced by topology and roles.
|
|
217
|
+
*/
|
|
218
|
+
function collectPromptRefs(topology, resolvedRoles) {
|
|
219
|
+
const refs = new Set();
|
|
220
|
+
// From topology nodes
|
|
221
|
+
if (topology.root.prompt)
|
|
222
|
+
refs.add(topology.root.prompt);
|
|
223
|
+
for (const companion of topology.companions ?? []) {
|
|
224
|
+
if (companion.prompt)
|
|
225
|
+
refs.add(companion.prompt);
|
|
226
|
+
}
|
|
227
|
+
// From role definitions
|
|
228
|
+
for (const resolved of resolvedRoles.values()) {
|
|
229
|
+
if (resolved.prompt)
|
|
230
|
+
refs.add(resolved.prompt);
|
|
231
|
+
}
|
|
232
|
+
return refs;
|
|
233
|
+
}
|
|
234
|
+
// =============================================================================
|
|
235
|
+
// MCP Server Loading
|
|
236
|
+
// =============================================================================
|
|
237
|
+
/**
|
|
238
|
+
* Load tools/mcp-servers.json if it exists.
|
|
239
|
+
* Returns a map of role name → MCP server entries.
|
|
240
|
+
*/
|
|
241
|
+
function loadMcpServers(teamDir) {
|
|
242
|
+
const result = new Map();
|
|
243
|
+
const mcpPath = path.join(teamDir, TOOLS_DIR, MCP_SERVERS_FILE);
|
|
244
|
+
if (!fs.existsSync(mcpPath)) {
|
|
245
|
+
return result;
|
|
246
|
+
}
|
|
247
|
+
const raw = fs.readFileSync(mcpPath, "utf-8");
|
|
248
|
+
const parsed = JSON.parse(raw);
|
|
249
|
+
for (const [roleName, config] of Object.entries(parsed)) {
|
|
250
|
+
if (config.servers && Array.isArray(config.servers)) {
|
|
251
|
+
result.set(roleName, config.servers);
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
return result;
|
|
255
|
+
}
|
|
256
|
+
// =============================================================================
|
|
257
|
+
// Communication Validation
|
|
258
|
+
// =============================================================================
|
|
259
|
+
/**
|
|
260
|
+
* Validate communication topology references.
|
|
261
|
+
*/
|
|
262
|
+
function validateCommunication(communication, roleNames, teamName) {
|
|
263
|
+
const channels = communication.channels ?? {};
|
|
264
|
+
const channelNames = new Set(Object.keys(channels));
|
|
265
|
+
const roleNameSet = new Set(roleNames);
|
|
266
|
+
// Validate subscriptions reference existing channels and roles
|
|
267
|
+
for (const [roleName, subs] of Object.entries(communication.subscriptions ?? {})) {
|
|
268
|
+
if (!roleNameSet.has(roleName)) {
|
|
269
|
+
throw new TeamLoadError(`Subscription references unknown role '${roleName}'`, "INVALID_COMMUNICATION", teamName);
|
|
270
|
+
}
|
|
271
|
+
for (const sub of subs) {
|
|
272
|
+
if (!channelNames.has(sub.channel)) {
|
|
273
|
+
throw new TeamLoadError(`Role '${roleName}' subscribes to unknown channel '${sub.channel}'`, "INVALID_COMMUNICATION", teamName);
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
// Validate emissions reference existing roles
|
|
278
|
+
for (const roleName of Object.keys(communication.emissions ?? {})) {
|
|
279
|
+
if (!roleNameSet.has(roleName)) {
|
|
280
|
+
throw new TeamLoadError(`Emissions references unknown role '${roleName}'`, "INVALID_COMMUNICATION", teamName);
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
// Validate peer connections
|
|
284
|
+
for (const peer of communication.routing?.peers ?? []) {
|
|
285
|
+
if (!roleNameSet.has(peer.from)) {
|
|
286
|
+
throw new TeamLoadError(`Peer connection references unknown role '${peer.from}'`, "INVALID_COMMUNICATION", teamName);
|
|
287
|
+
}
|
|
288
|
+
if (!roleNameSet.has(peer.to)) {
|
|
289
|
+
throw new TeamLoadError(`Peer connection references unknown role '${peer.to}'`, "INVALID_COMMUNICATION", teamName);
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
//# sourceMappingURL=team-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"team-loader.js","sourceRoot":"","sources":["../../src/teams/team-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Team Runtime
|
|
3
|
+
*
|
|
4
|
+
* Wires a loaded TeamManifest into the running system: registers roles,
|
|
5
|
+
* sets up integration strategy, configures communication topology,
|
|
6
|
+
* and manages the team lifecycle.
|
|
7
|
+
*
|
|
8
|
+
* @module teams/team-runtime
|
|
9
|
+
*/
|
|
10
|
+
import type { EventStore } from "../store/event-store.js";
|
|
11
|
+
import type { MessageRouter } from "../router/message-router.js";
|
|
12
|
+
import type { AgentManager } from "../agent/agent-manager.js";
|
|
13
|
+
import type { TeamManifest } from "./types.js";
|
|
14
|
+
import type { IntegrationStrategy } from "../workspace/strategies/types.js";
|
|
15
|
+
export interface TeamServices {
|
|
16
|
+
agentManager: AgentManager;
|
|
17
|
+
messageRouter: MessageRouter;
|
|
18
|
+
eventStore: EventStore;
|
|
19
|
+
}
|
|
20
|
+
export interface TeamBootstrapResult {
|
|
21
|
+
rootId: string;
|
|
22
|
+
companionIds: string[];
|
|
23
|
+
}
|
|
24
|
+
export declare class TeamRuntime {
|
|
25
|
+
private readonly manifest;
|
|
26
|
+
private readonly services;
|
|
27
|
+
private rootAgentId?;
|
|
28
|
+
private companionAgentIds;
|
|
29
|
+
private roleRegistry;
|
|
30
|
+
private lifecycleUnsubscribe?;
|
|
31
|
+
private integrationStrategy?;
|
|
32
|
+
/** Role name → spawned agent ID mapping (populated during bootstrap) */
|
|
33
|
+
private roleAgentMap;
|
|
34
|
+
/** Peer connections that couldn't be wired at bootstrap (target role not yet spawned) */
|
|
35
|
+
private pendingPeerRoutes;
|
|
36
|
+
/** Per-agent signal filters from peer connections. Key: "fromAgentId→toAgentId" */
|
|
37
|
+
private peerSignalFilters;
|
|
38
|
+
/** Reverse mapping: agent ID → role name (for signal filter lookups) */
|
|
39
|
+
private agentRoleMap;
|
|
40
|
+
/** Lifecycle unsubscribe for deferred peer wiring */
|
|
41
|
+
private peerWiringUnsubscribe?;
|
|
42
|
+
constructor(manifest: TeamManifest, services: TeamServices);
|
|
43
|
+
/**
|
|
44
|
+
* Wire team configuration into running services.
|
|
45
|
+
*
|
|
46
|
+
* 1. Register team roles into RoleRegistry
|
|
47
|
+
* 2. Store team_config event in EventStore (for MCP subprocess discovery)
|
|
48
|
+
* 3. Register spawn interceptor on AgentManager
|
|
49
|
+
*/
|
|
50
|
+
initialize(): Promise<void>;
|
|
51
|
+
/**
|
|
52
|
+
* Spawn root and companion agents per the team topology.
|
|
53
|
+
*/
|
|
54
|
+
bootstrap(): Promise<TeamBootstrapResult>;
|
|
55
|
+
/**
|
|
56
|
+
* Tear down team: remove spawn interceptor, stop continuation monitoring.
|
|
57
|
+
*/
|
|
58
|
+
teardown(): Promise<void>;
|
|
59
|
+
/** Get task assignment mode */
|
|
60
|
+
getTaskMode(): "push" | "pull";
|
|
61
|
+
/** Get integration strategy name */
|
|
62
|
+
getStrategyName(): string;
|
|
63
|
+
/** Get the active manifest (for API) */
|
|
64
|
+
getManifest(): TeamManifest;
|
|
65
|
+
/** Get root agent ID (after bootstrap) */
|
|
66
|
+
getRootAgentId(): string | undefined;
|
|
67
|
+
/** Get companion agent IDs (after bootstrap) */
|
|
68
|
+
getCompanionAgentIds(): string[];
|
|
69
|
+
/** Get the instantiated integration strategy (after initialize) */
|
|
70
|
+
getIntegrationStrategy(): IntegrationStrategy | undefined;
|
|
71
|
+
/** Get signal filters for peer connections (for use by signal filtering - i-3o8g) */
|
|
72
|
+
getPeerSignalFilters(): ReadonlyMap<string, string[]>;
|
|
73
|
+
/**
|
|
74
|
+
* Monitor agent lifecycle events for auto-continuation of daemon agents.
|
|
75
|
+
*
|
|
76
|
+
* When a root or companion agent terminates unexpectedly and the team's
|
|
77
|
+
* lifecycle config enables continuations, automatically spawn a continuation.
|
|
78
|
+
*/
|
|
79
|
+
private monitorContinuations;
|
|
80
|
+
/**
|
|
81
|
+
* Create the spawn interceptor that injects team context into spawn options.
|
|
82
|
+
*/
|
|
83
|
+
private createSpawnInterceptor;
|
|
84
|
+
/**
|
|
85
|
+
* Get topic names a role should subscribe to based on communication config.
|
|
86
|
+
*/
|
|
87
|
+
private getTopicsForRole;
|
|
88
|
+
/**
|
|
89
|
+
* Get MCP servers configured for a role.
|
|
90
|
+
*/
|
|
91
|
+
private getMcpServersForRole;
|
|
92
|
+
/**
|
|
93
|
+
* Get the loaded prompt content for a role.
|
|
94
|
+
*/
|
|
95
|
+
private getPromptForRole;
|
|
96
|
+
/**
|
|
97
|
+
* Get the prompt for a topology node (root or companion).
|
|
98
|
+
*/
|
|
99
|
+
private getPromptForTopologyNode;
|
|
100
|
+
/**
|
|
101
|
+
* Generate interaction pattern injection sections based on team config.
|
|
102
|
+
*/
|
|
103
|
+
private getInteractionPatterns;
|
|
104
|
+
/**
|
|
105
|
+
* Install a signal filter on the message router.
|
|
106
|
+
*
|
|
107
|
+
* Combines two filter sources:
|
|
108
|
+
* 1. Channel subscription filters (per-role, per-topic): from communication.subscriptions
|
|
109
|
+
* 2. Peer connection filters (per-agent-pair): from communication.routing.peers
|
|
110
|
+
*
|
|
111
|
+
* Status events with no details.signal always pass through (backwards compat).
|
|
112
|
+
*/
|
|
113
|
+
private installSignalFilter;
|
|
114
|
+
/**
|
|
115
|
+
* Install emission validator on the message router.
|
|
116
|
+
* Checks whether an agent's emitted signal is in its role's allowed emissions list.
|
|
117
|
+
* Behavior depends on enforcement mode: strict (reject), permissive (warn), audit (record).
|
|
118
|
+
*/
|
|
119
|
+
private installEmissionValidator;
|
|
120
|
+
/**
|
|
121
|
+
* Wire peer subscriptions from communication config.
|
|
122
|
+
* Falls back to legacy bidirectional subtree subs when no peers config exists.
|
|
123
|
+
*/
|
|
124
|
+
private wirePeerRoutes;
|
|
125
|
+
/**
|
|
126
|
+
* Wire a single peer connection based on its `via` type.
|
|
127
|
+
*/
|
|
128
|
+
private wireSinglePeerRoute;
|
|
129
|
+
/**
|
|
130
|
+
* Legacy bidirectional subtree subscriptions between root and companions.
|
|
131
|
+
* Used when no `routing.peers` config is defined (backwards compat).
|
|
132
|
+
*/
|
|
133
|
+
private setupLegacyPeerSubscriptions;
|
|
134
|
+
/**
|
|
135
|
+
* Listen for agent spawns and wire pending peer routes when roles become available.
|
|
136
|
+
*/
|
|
137
|
+
private setupDeferredPeerWiring;
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=team-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"team-runtime.d.ts","sourceRoot":"","sources":["../../src/teams/team-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAoB,MAAM,2BAA2B,CAAC;AAIhF,OAAO,KAAK,EACV,YAAY,EAGb,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAM5E,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,UAAU,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAMD,qBAAa,WAAW;IAuBpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAvB3B,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,iBAAiB,CAAgB;IACzC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,oBAAoB,CAAC,CAAa;IAC1C,OAAO,CAAC,mBAAmB,CAAC,CAAsB;IAElD,wEAAwE;IACxE,OAAO,CAAC,YAAY,CAA8B;IAElD,yFAAyF;IACzF,OAAO,CAAC,iBAAiB,CAAwB;IAEjD,mFAAmF;IACnF,OAAO,CAAC,iBAAiB,CAA+B;IAExD,wEAAwE;IACxE,OAAO,CAAC,YAAY,CAA8B;IAElD,qDAAqD;IACrD,OAAO,CAAC,qBAAqB,CAAC,CAAa;gBAGxB,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,YAAY;IASzC;;;;;;OAMG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAmEjC;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAkE/C;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB/B,+BAA+B;IAC/B,WAAW,IAAI,MAAM,GAAG,MAAM;IAI9B,oCAAoC;IACpC,eAAe,IAAI,MAAM;IAIzB,wCAAwC;IACxC,WAAW,IAAI,YAAY;IAI3B,0CAA0C;IAC1C,cAAc,IAAI,MAAM,GAAG,SAAS;IAIpC,gDAAgD;IAChD,oBAAoB,IAAI,MAAM,EAAE;IAIhC,mEAAmE;IACnE,sBAAsB,IAAI,mBAAmB,GAAG,SAAS;IAIzD,qFAAqF;IACrF,oBAAoB,IAAI,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAQrD;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IA6C5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA+D9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAcxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAWhC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA0C9B;;;;;;;;OAQG;IACH,OAAO,CAAC,mBAAmB;IAuD3B;;;;OAIG;IACH,OAAO,CAAC,wBAAwB;IA2ChC;;;OAGG;IACH,OAAO,CAAC,cAAc;IA8BtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAkC3B;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IAUpC;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAiChC"}
|