macro-agent 0.1.1 → 0.1.2
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/.sudocode/issues.jsonl +28 -0
- package/.sudocode/specs.jsonl +4 -0
- package/CLAUDE.md +9 -3
- package/dist/agent/agent-manager.d.ts.map +1 -1
- package/dist/agent/agent-manager.js +111 -48
- package/dist/agent/agent-manager.js.map +1 -1
- package/dist/agent/types.d.ts +7 -0
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js.map +1 -1
- package/dist/api/server.d.ts +5 -1
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +100 -3
- package/dist/api/server.js.map +1 -1
- package/dist/api/types.d.ts +1 -1
- package/dist/api/types.d.ts.map +1 -1
- package/dist/cli/acp.d.ts.map +1 -1
- package/dist/cli/acp.js +71 -1
- package/dist/cli/acp.js.map +1 -1
- package/dist/cli/index.js +5 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/mcp.js +27 -8
- package/dist/cli/mcp.js.map +1 -1
- package/dist/config/project-config.d.ts +13 -2
- package/dist/config/project-config.d.ts.map +1 -1
- package/dist/config/project-config.js +12 -2
- package/dist/config/project-config.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/lifecycle/handlers/index.d.ts +7 -3
- package/dist/lifecycle/handlers/index.d.ts.map +1 -1
- package/dist/lifecycle/handlers/index.js +25 -8
- package/dist/lifecycle/handlers/index.js.map +1 -1
- package/dist/lifecycle/types.d.ts +2 -0
- package/dist/lifecycle/types.d.ts.map +1 -1
- package/dist/lifecycle/types.js.map +1 -1
- package/dist/map/adapter/extensions/index.d.ts +4 -1
- package/dist/map/adapter/extensions/index.d.ts.map +1 -1
- package/dist/map/adapter/extensions/index.js +27 -0
- package/dist/map/adapter/extensions/index.js.map +1 -1
- package/dist/map/adapter/extensions/streams.d.ts +95 -0
- package/dist/map/adapter/extensions/streams.d.ts.map +1 -0
- package/dist/map/adapter/extensions/streams.js +515 -0
- package/dist/map/adapter/extensions/streams.js.map +1 -0
- package/dist/map/adapter/index.d.ts +1 -1
- package/dist/map/adapter/index.d.ts.map +1 -1
- package/dist/map/adapter/index.js +3 -1
- package/dist/map/adapter/index.js.map +1 -1
- package/dist/map/adapter/types.d.ts +1 -1
- package/dist/map/adapter/types.d.ts.map +1 -1
- package/dist/mcp/mcp-server.d.ts +2 -0
- package/dist/mcp/mcp-server.d.ts.map +1 -1
- package/dist/mcp/mcp-server.js +12 -3
- package/dist/mcp/mcp-server.js.map +1 -1
- package/dist/mcp/tools/done.d.ts.map +1 -1
- package/dist/mcp/tools/done.js +18 -0
- package/dist/mcp/tools/done.js.map +1 -1
- package/dist/roles/builtin/coordinator.d.ts.map +1 -1
- package/dist/roles/builtin/coordinator.js +2 -1
- package/dist/roles/builtin/coordinator.js.map +1 -1
- package/dist/roles/builtin/integrator.d.ts.map +1 -1
- package/dist/roles/builtin/integrator.js +2 -1
- package/dist/roles/builtin/integrator.js.map +1 -1
- package/dist/roles/builtin/worker.d.ts.map +1 -1
- package/dist/roles/builtin/worker.js +3 -1
- package/dist/roles/builtin/worker.js.map +1 -1
- package/dist/roles/capabilities.d.ts +6 -0
- package/dist/roles/capabilities.d.ts.map +1 -1
- package/dist/roles/capabilities.js +10 -0
- package/dist/roles/capabilities.js.map +1 -1
- package/dist/roles/config-loader.d.ts +1 -1
- package/dist/roles/config-loader.d.ts.map +1 -1
- package/dist/roles/config-loader.js +3 -2
- package/dist/roles/config-loader.js.map +1 -1
- package/dist/roles/types.d.ts +3 -1
- package/dist/roles/types.d.ts.map +1 -1
- package/dist/server/combined-server.d.ts +8 -1
- package/dist/server/combined-server.d.ts.map +1 -1
- package/dist/server/combined-server.js +6 -2
- package/dist/server/combined-server.js.map +1 -1
- package/dist/store/event-store.d.ts.map +1 -1
- package/dist/store/event-store.js +12 -5
- package/dist/store/event-store.js.map +1 -1
- package/dist/store/instance.d.ts +1 -1
- package/dist/store/instance.d.ts.map +1 -1
- package/dist/store/instance.js +2 -2
- package/dist/store/instance.js.map +1 -1
- package/dist/store/types/agents.d.ts +5 -0
- package/dist/store/types/agents.d.ts.map +1 -1
- package/dist/task/backend/opentasks/daemon-manager.d.ts.map +1 -1
- package/dist/task/backend/opentasks/daemon-manager.js +1 -1
- package/dist/task/backend/opentasks/daemon-manager.js.map +1 -1
- package/dist/teams/index.d.ts +3 -1
- package/dist/teams/index.d.ts.map +1 -1
- package/dist/teams/index.js +2 -0
- package/dist/teams/index.js.map +1 -1
- package/dist/teams/seed-defaults.d.ts +20 -0
- package/dist/teams/seed-defaults.d.ts.map +1 -0
- package/dist/teams/seed-defaults.js +71 -0
- package/dist/teams/seed-defaults.js.map +1 -0
- package/dist/teams/team-loader.d.ts +6 -2
- package/dist/teams/team-loader.d.ts.map +1 -1
- package/dist/teams/team-loader.js +154 -162
- package/dist/teams/team-loader.js.map +1 -1
- package/dist/teams/team-manager.d.ts +112 -0
- package/dist/teams/team-manager.d.ts.map +1 -0
- package/dist/teams/team-manager.js +305 -0
- package/dist/teams/team-manager.js.map +1 -0
- package/dist/teams/team-runtime.d.ts +125 -19
- package/dist/teams/team-runtime.d.ts.map +1 -1
- package/dist/teams/team-runtime.js +527 -119
- package/dist/teams/team-runtime.js.map +1 -1
- package/dist/teams/types.d.ts +41 -151
- package/dist/teams/types.d.ts.map +1 -1
- package/dist/teams/types.js +2 -3
- package/dist/teams/types.js.map +1 -1
- package/docs/teams.md +73 -0
- package/package.json +2 -1
- package/references/minimem/.claude/settings.json +7 -0
- package/references/minimem/.sudocode/issues.jsonl +18 -0
- package/references/minimem/.sudocode/specs.jsonl +1 -0
- package/references/minimem/CLAUDE.md +310 -0
- package/references/minimem/README.md +562 -0
- package/references/minimem/claude-plugin/.claude-plugin/plugin.json +10 -0
- package/references/minimem/claude-plugin/.mcp.json +7 -0
- package/references/minimem/claude-plugin/README.md +158 -0
- package/references/minimem/claude-plugin/commands/recall.md +47 -0
- package/references/minimem/claude-plugin/commands/remember.md +41 -0
- package/references/minimem/claude-plugin/hooks/__tests__/hooks.test.ts +272 -0
- package/references/minimem/claude-plugin/hooks/hooks.json +27 -0
- package/references/minimem/claude-plugin/hooks/session-end.sh +86 -0
- package/references/minimem/claude-plugin/hooks/session-start.sh +85 -0
- package/references/minimem/claude-plugin/skills/memory/SKILL.md +108 -0
- package/references/minimem/media/banner.png +0 -0
- package/references/minimem/package-lock.json +5373 -0
- package/references/minimem/package.json +72 -0
- package/references/minimem/scripts/postbuild.js +35 -0
- package/references/minimem/src/__tests__/edge-cases.test.ts +371 -0
- package/references/minimem/src/__tests__/errors.test.ts +265 -0
- package/references/minimem/src/__tests__/helpers.ts +199 -0
- package/references/minimem/src/__tests__/internal.test.ts +407 -0
- package/references/minimem/src/__tests__/knowledge.test.ts +287 -0
- package/references/minimem/src/__tests__/minimem.integration.test.ts +1127 -0
- package/references/minimem/src/__tests__/session.test.ts +190 -0
- package/references/minimem/src/cli/__tests__/commands.test.ts +759 -0
- package/references/minimem/src/cli/commands/__tests__/conflicts.test.ts +141 -0
- package/references/minimem/src/cli/commands/append.ts +76 -0
- package/references/minimem/src/cli/commands/config.ts +262 -0
- package/references/minimem/src/cli/commands/conflicts.ts +413 -0
- package/references/minimem/src/cli/commands/daemon.ts +169 -0
- package/references/minimem/src/cli/commands/index.ts +12 -0
- package/references/minimem/src/cli/commands/init.ts +88 -0
- package/references/minimem/src/cli/commands/mcp.ts +177 -0
- package/references/minimem/src/cli/commands/push-pull.ts +213 -0
- package/references/minimem/src/cli/commands/search.ts +158 -0
- package/references/minimem/src/cli/commands/status.ts +84 -0
- package/references/minimem/src/cli/commands/sync-init.ts +290 -0
- package/references/minimem/src/cli/commands/sync.ts +70 -0
- package/references/minimem/src/cli/commands/upsert.ts +197 -0
- package/references/minimem/src/cli/config.ts +584 -0
- package/references/minimem/src/cli/index.ts +264 -0
- package/references/minimem/src/cli/shared.ts +161 -0
- package/references/minimem/src/cli/sync/__tests__/central.test.ts +152 -0
- package/references/minimem/src/cli/sync/__tests__/conflicts.test.ts +209 -0
- package/references/minimem/src/cli/sync/__tests__/daemon.test.ts +118 -0
- package/references/minimem/src/cli/sync/__tests__/detection.test.ts +207 -0
- package/references/minimem/src/cli/sync/__tests__/integration.test.ts +476 -0
- package/references/minimem/src/cli/sync/__tests__/registry.test.ts +363 -0
- package/references/minimem/src/cli/sync/__tests__/state.test.ts +255 -0
- package/references/minimem/src/cli/sync/__tests__/validation.test.ts +193 -0
- package/references/minimem/src/cli/sync/__tests__/watcher.test.ts +178 -0
- package/references/minimem/src/cli/sync/central.ts +292 -0
- package/references/minimem/src/cli/sync/conflicts.ts +204 -0
- package/references/minimem/src/cli/sync/daemon.ts +407 -0
- package/references/minimem/src/cli/sync/detection.ts +138 -0
- package/references/minimem/src/cli/sync/index.ts +107 -0
- package/references/minimem/src/cli/sync/operations.ts +373 -0
- package/references/minimem/src/cli/sync/registry.ts +279 -0
- package/references/minimem/src/cli/sync/state.ts +355 -0
- package/references/minimem/src/cli/sync/validation.ts +206 -0
- package/references/minimem/src/cli/sync/watcher.ts +234 -0
- package/references/minimem/src/cli/version.ts +34 -0
- package/references/minimem/src/core/index.ts +9 -0
- package/references/minimem/src/core/indexer.ts +628 -0
- package/references/minimem/src/core/searcher.ts +221 -0
- package/references/minimem/src/db/schema.ts +183 -0
- package/references/minimem/src/db/sqlite-vec.ts +24 -0
- package/references/minimem/src/embeddings/__tests__/embeddings.test.ts +431 -0
- package/references/minimem/src/embeddings/batch-gemini.ts +392 -0
- package/references/minimem/src/embeddings/batch-openai.ts +409 -0
- package/references/minimem/src/embeddings/embeddings.ts +434 -0
- package/references/minimem/src/index.ts +109 -0
- package/references/minimem/src/internal.ts +299 -0
- package/references/minimem/src/minimem.ts +1276 -0
- package/references/minimem/src/search/__tests__/hybrid.test.ts +247 -0
- package/references/minimem/src/search/graph.ts +234 -0
- package/references/minimem/src/search/hybrid.ts +151 -0
- package/references/minimem/src/search/search.ts +256 -0
- package/references/minimem/src/server/__tests__/mcp.test.ts +341 -0
- package/references/minimem/src/server/__tests__/tools.test.ts +364 -0
- package/references/minimem/src/server/mcp.ts +326 -0
- package/references/minimem/src/server/tools.ts +720 -0
- package/references/minimem/src/session.ts +460 -0
- package/references/minimem/tsconfig.json +19 -0
- package/references/minimem/tsup.config.ts +26 -0
- package/references/minimem/vitest.config.ts +24 -0
- package/references/openteams/.claude/settings.json +6 -0
- package/references/openteams/README.md +1 -0
- package/references/openteams/SKILL.md +341 -0
- package/references/openteams/design.md +411 -0
- package/references/openteams/examples/bmad-method/prompts/analyst/ROLE.md +16 -0
- package/references/openteams/examples/bmad-method/prompts/analyst/SOUL.md +5 -0
- package/references/openteams/examples/bmad-method/prompts/architect/ROLE.md +24 -0
- package/references/openteams/examples/bmad-method/prompts/architect/SOUL.md +5 -0
- package/references/openteams/examples/bmad-method/prompts/developer/ROLE.md +25 -0
- package/references/openteams/examples/bmad-method/prompts/developer/SOUL.md +5 -0
- package/references/openteams/examples/bmad-method/prompts/master/ROLE.md +21 -0
- package/references/openteams/examples/bmad-method/prompts/master/SOUL.md +5 -0
- package/references/openteams/examples/bmad-method/prompts/pm/ROLE.md +20 -0
- package/references/openteams/examples/bmad-method/prompts/pm/SOUL.md +5 -0
- package/references/openteams/examples/bmad-method/prompts/qa/ROLE.md +17 -0
- package/references/openteams/examples/bmad-method/prompts/qa/SOUL.md +5 -0
- package/references/openteams/examples/bmad-method/prompts/quick-flow-dev/ROLE.md +23 -0
- package/references/openteams/examples/bmad-method/prompts/quick-flow-dev/SOUL.md +5 -0
- package/references/openteams/examples/bmad-method/prompts/scrum-master/ROLE.md +27 -0
- package/references/openteams/examples/bmad-method/prompts/scrum-master/SOUL.md +5 -0
- package/references/openteams/examples/bmad-method/prompts/tech-writer/ROLE.md +21 -0
- package/references/openteams/examples/bmad-method/prompts/tech-writer/SOUL.md +5 -0
- package/references/openteams/examples/bmad-method/prompts/ux-designer/ROLE.md +16 -0
- package/references/openteams/examples/bmad-method/prompts/ux-designer/SOUL.md +5 -0
- package/references/openteams/examples/bmad-method/roles/analyst.yaml +9 -0
- package/references/openteams/examples/bmad-method/roles/architect.yaml +9 -0
- package/references/openteams/examples/bmad-method/roles/developer.yaml +8 -0
- package/references/openteams/examples/bmad-method/roles/master.yaml +8 -0
- package/references/openteams/examples/bmad-method/roles/pm.yaml +9 -0
- package/references/openteams/examples/bmad-method/roles/qa.yaml +8 -0
- package/references/openteams/examples/bmad-method/roles/quick-flow-dev.yaml +8 -0
- package/references/openteams/examples/bmad-method/roles/scrum-master.yaml +9 -0
- package/references/openteams/examples/bmad-method/roles/tech-writer.yaml +8 -0
- package/references/openteams/examples/bmad-method/roles/ux-designer.yaml +8 -0
- package/references/openteams/examples/bmad-method/team.yaml +161 -0
- package/references/openteams/examples/get-shit-done/prompts/codebase-mapper/ROLE.md +17 -0
- package/references/openteams/examples/get-shit-done/prompts/codebase-mapper/SOUL.md +5 -0
- package/references/openteams/examples/get-shit-done/prompts/debugger/ROLE.md +25 -0
- package/references/openteams/examples/get-shit-done/prompts/debugger/SOUL.md +5 -0
- package/references/openteams/examples/get-shit-done/prompts/executor/ROLE.md +34 -0
- package/references/openteams/examples/get-shit-done/prompts/executor/SOUL.md +5 -0
- package/references/openteams/examples/get-shit-done/prompts/integration-checker/ROLE.md +18 -0
- package/references/openteams/examples/get-shit-done/prompts/integration-checker/SOUL.md +3 -0
- package/references/openteams/examples/get-shit-done/prompts/orchestrator/ROLE.md +42 -0
- package/references/openteams/examples/get-shit-done/prompts/orchestrator/SOUL.md +5 -0
- package/references/openteams/examples/get-shit-done/prompts/phase-researcher/ROLE.md +15 -0
- package/references/openteams/examples/get-shit-done/prompts/phase-researcher/SOUL.md +3 -0
- package/references/openteams/examples/get-shit-done/prompts/plan-checker/ROLE.md +17 -0
- package/references/openteams/examples/get-shit-done/prompts/plan-checker/SOUL.md +3 -0
- package/references/openteams/examples/get-shit-done/prompts/planner/ROLE.md +28 -0
- package/references/openteams/examples/get-shit-done/prompts/planner/SOUL.md +5 -0
- package/references/openteams/examples/get-shit-done/prompts/project-researcher/ROLE.md +16 -0
- package/references/openteams/examples/get-shit-done/prompts/project-researcher/SOUL.md +3 -0
- package/references/openteams/examples/get-shit-done/prompts/research-synthesizer/ROLE.md +13 -0
- package/references/openteams/examples/get-shit-done/prompts/research-synthesizer/SOUL.md +3 -0
- package/references/openteams/examples/get-shit-done/prompts/roadmapper/ROLE.md +14 -0
- package/references/openteams/examples/get-shit-done/prompts/roadmapper/SOUL.md +3 -0
- package/references/openteams/examples/get-shit-done/prompts/verifier/ROLE.md +19 -0
- package/references/openteams/examples/get-shit-done/prompts/verifier/SOUL.md +5 -0
- package/references/openteams/examples/get-shit-done/roles/codebase-mapper.yaml +8 -0
- package/references/openteams/examples/get-shit-done/roles/debugger.yaml +8 -0
- package/references/openteams/examples/get-shit-done/roles/executor.yaml +8 -0
- package/references/openteams/examples/get-shit-done/roles/integration-checker.yaml +8 -0
- package/references/openteams/examples/get-shit-done/roles/orchestrator.yaml +9 -0
- package/references/openteams/examples/get-shit-done/roles/phase-researcher.yaml +7 -0
- package/references/openteams/examples/get-shit-done/roles/plan-checker.yaml +8 -0
- package/references/openteams/examples/get-shit-done/roles/planner.yaml +8 -0
- package/references/openteams/examples/get-shit-done/roles/project-researcher.yaml +8 -0
- package/references/openteams/examples/get-shit-done/roles/research-synthesizer.yaml +7 -0
- package/references/openteams/examples/get-shit-done/roles/roadmapper.yaml +7 -0
- package/references/openteams/examples/get-shit-done/roles/verifier.yaml +8 -0
- package/references/openteams/examples/get-shit-done/team.yaml +154 -0
- package/references/openteams/package-lock.json +2181 -0
- package/references/openteams/package.json +48 -0
- package/references/openteams/schema/role.schema.json +125 -0
- package/references/openteams/schema/team.schema.json +284 -0
- package/references/openteams/src/cli/agent.ts +104 -0
- package/references/openteams/src/cli/cli.test.ts +381 -0
- package/references/openteams/src/cli/generate.ts +220 -0
- package/references/openteams/src/cli/message.ts +241 -0
- package/references/openteams/src/cli/task.ts +154 -0
- package/references/openteams/src/cli/team.ts +104 -0
- package/references/openteams/src/cli/template.ts +207 -0
- package/references/openteams/src/cli.ts +45 -0
- package/references/openteams/src/db/database.test.ts +185 -0
- package/references/openteams/src/db/database.ts +240 -0
- package/references/openteams/src/generators/agent-prompt-generator.test.ts +332 -0
- package/references/openteams/src/generators/agent-prompt-generator.ts +521 -0
- package/references/openteams/src/generators/package-generator.test.ts +129 -0
- package/references/openteams/src/generators/package-generator.ts +102 -0
- package/references/openteams/src/generators/skill-generator.test.ts +246 -0
- package/references/openteams/src/generators/skill-generator.ts +374 -0
- package/references/openteams/src/index.ts +104 -0
- package/references/openteams/src/services/agent-service.test.ts +158 -0
- package/references/openteams/src/services/agent-service.ts +84 -0
- package/references/openteams/src/services/communication-service.test.ts +455 -0
- package/references/openteams/src/services/communication-service.ts +371 -0
- package/references/openteams/src/services/message-service.test.ts +342 -0
- package/references/openteams/src/services/message-service.ts +203 -0
- package/references/openteams/src/services/task-service.test.ts +434 -0
- package/references/openteams/src/services/task-service.ts +239 -0
- package/references/openteams/src/services/team-service.test.ts +181 -0
- package/references/openteams/src/services/team-service.ts +139 -0
- package/references/openteams/src/services/template-service.test.ts +306 -0
- package/references/openteams/src/services/template-service.ts +182 -0
- package/references/openteams/src/spawner/acp-factory.ts +96 -0
- package/references/openteams/src/spawner/interface.ts +31 -0
- package/references/openteams/src/spawner/mock.test.ts +93 -0
- package/references/openteams/src/spawner/mock.ts +59 -0
- package/references/openteams/src/template/loader.test.ts +1319 -0
- package/references/openteams/src/template/loader.ts +698 -0
- package/references/openteams/src/template/types.ts +200 -0
- package/references/openteams/src/types.ts +205 -0
- package/references/openteams/tsconfig.json +18 -0
- package/references/openteams/vitest.config.ts +9 -0
- package/references/skill-tree/.claude/settings.json +6 -0
- package/references/skill-tree/.sudocode/issues.jsonl +11 -0
- package/references/skill-tree/.sudocode/specs.jsonl +1 -0
- package/references/skill-tree/CLAUDE.md +150 -0
- package/references/skill-tree/README.md +324 -0
- package/references/skill-tree/docs/GAPS_v1.md +221 -0
- package/references/skill-tree/docs/INTEGRATION_PLAN.md +467 -0
- package/references/skill-tree/docs/TODOS.md +91 -0
- package/references/skill-tree/docs/anthropic_skill_guide.md +1364 -0
- package/references/skill-tree/docs/design/federated-skill-trees.md +524 -0
- package/references/skill-tree/docs/design/multi-agent-sync.md +759 -0
- package/references/skill-tree/docs/scraper/BRAINSTORM.md +583 -0
- package/references/skill-tree/docs/scraper/POC_PLAN.md +420 -0
- package/references/skill-tree/docs/scraper/README.md +170 -0
- package/references/skill-tree/examples/basic-usage.ts +190 -0
- package/references/skill-tree/package-lock.json +1509 -0
- package/references/skill-tree/package.json +66 -0
- package/references/skill-tree/scraper/README.md +123 -0
- package/references/skill-tree/scraper/docs/DESIGN.md +683 -0
- package/references/skill-tree/scraper/docs/PLAN.md +336 -0
- package/references/skill-tree/scraper/drizzle.config.ts +10 -0
- package/references/skill-tree/scraper/package-lock.json +6329 -0
- package/references/skill-tree/scraper/package.json +68 -0
- package/references/skill-tree/scraper/test/fixtures/invalid-skill/missing-description.md +7 -0
- package/references/skill-tree/scraper/test/fixtures/invalid-skill/missing-name.md +7 -0
- package/references/skill-tree/scraper/test/fixtures/minimal-skill/SKILL.md +27 -0
- package/references/skill-tree/scraper/test/fixtures/skill-json/SKILL.json +21 -0
- package/references/skill-tree/scraper/test/fixtures/skill-with-meta/SKILL.md +54 -0
- package/references/skill-tree/scraper/test/fixtures/skill-with-meta/_meta.json +24 -0
- package/references/skill-tree/scraper/test/fixtures/valid-skill/SKILL.md +93 -0
- package/references/skill-tree/scraper/test/fixtures/valid-skill/_meta.json +22 -0
- package/references/skill-tree/scraper/tsup.config.ts +14 -0
- package/references/skill-tree/scraper/vitest.config.ts +17 -0
- package/references/skill-tree/scripts/convert-to-vitest.ts +166 -0
- package/references/skill-tree/skills/skill-writer/SKILL.md +339 -0
- package/references/skill-tree/skills/skill-writer/references/examples.md +326 -0
- package/references/skill-tree/skills/skill-writer/references/patterns.md +210 -0
- package/references/skill-tree/skills/skill-writer/references/quality-checklist.md +123 -0
- package/references/skill-tree/test/run-all.ts +106 -0
- package/references/skill-tree/test/utils.ts +128 -0
- package/references/skill-tree/vitest.config.ts +16 -0
- package/src/agent/agent-manager.ts +143 -72
- package/src/agent/types.ts +9 -0
- package/src/api/__tests__/server.test.ts +203 -4
- package/src/api/server.ts +130 -5
- package/src/api/types.ts +3 -1
- package/src/cli/acp.ts +68 -1
- package/src/cli/index.ts +5 -1
- package/src/cli/mcp.ts +27 -13
- package/src/config/project-config.ts +27 -3
- package/src/index.ts +3 -0
- package/src/lifecycle/__tests__/handlers.test.ts +53 -0
- package/src/lifecycle/handlers/index.ts +25 -8
- package/src/lifecycle/types.ts +3 -0
- package/src/map/adapter/__tests__/stream-extensions.test.ts +494 -0
- package/src/map/adapter/extensions/index.ts +36 -0
- package/src/map/adapter/extensions/streams.ts +839 -0
- package/src/map/adapter/index.ts +5 -0
- package/src/map/adapter/types.ts +8 -1
- package/src/mcp/mcp-server.ts +14 -3
- package/src/mcp/tools/done.ts +19 -0
- package/src/roles/builtin/coordinator.ts +2 -0
- package/src/roles/builtin/integrator.ts +2 -0
- package/src/roles/builtin/worker.ts +3 -0
- package/src/roles/capabilities.ts +11 -0
- package/src/roles/config-loader.ts +3 -2
- package/src/roles/types.ts +7 -0
- package/src/server/combined-server.ts +15 -1
- package/src/store/__tests__/event-store-oob.test.ts +109 -0
- package/src/store/event-store.ts +13 -3
- package/src/store/instance.ts +2 -2
- package/src/store/types/agents.ts +5 -0
- package/src/task/backend/__tests__/memory-pull-mode.test.ts +153 -0
- package/src/task/backend/opentasks/daemon-manager.ts +4 -1
- package/src/teams/CLAUDE.md +180 -0
- package/src/teams/__tests__/e2e/workspace-isolation.e2e.test.ts +1263 -0
- package/src/teams/__tests__/team-manager.test.ts +814 -0
- package/src/teams/__tests__/team-system.test.ts +1291 -8
- package/src/teams/index.ts +21 -3
- package/src/teams/seed-defaults.ts +79 -0
- package/src/teams/team-loader.ts +200 -234
- package/src/teams/team-manager.ts +387 -0
- package/src/teams/team-runtime.ts +590 -121
- package/src/teams/types.ts +99 -200
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"team-runtime.js","sourceRoot":"","sources":["../../src/teams/team-runtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"team-runtime.js","sourceRoot":"","sources":["../../src/teams/team-runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/teams/types.d.ts
CHANGED
|
@@ -1,32 +1,39 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Team Template Types
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* (
|
|
6
|
-
* specific extensions under the `macro_agent` namespace for interoperability.
|
|
4
|
+
* Imports generic multi-agent schema types from openteams and extends them
|
|
5
|
+
* with macro-agent specific runtime types (extensions, resolved roles, errors).
|
|
7
6
|
*
|
|
8
7
|
* @module teams/types
|
|
9
8
|
*/
|
|
10
9
|
import type { RoleDefinition, Capability } from "../roles/types.js";
|
|
10
|
+
import type { TeamManifest as OpenTeamsManifest, TopologyConfig, TopologyNode, TopologyNodeConfig, CommunicationConfig, ChannelDefinition, SubscriptionEntry, RoutingConfig, PeerRoute, RoleDefinition as OpenTeamsRoleDefinition, CapabilityComposition, McpServerEntry, ResolvedTemplate, ResolvedRole, ResolvedPrompts, PromptSection } from "openteams";
|
|
11
|
+
export type { OpenTeamsManifest, TopologyConfig, TopologyNode, TopologyNodeConfig, CommunicationConfig, ChannelDefinition, SubscriptionEntry, RoutingConfig, PeerRoute, OpenTeamsRoleDefinition, CapabilityComposition, McpServerEntry, ResolvedTemplate, ResolvedRole, ResolvedPrompts, PromptSection, };
|
|
12
|
+
/** @deprecated Use TopologyConfig from openteams */
|
|
13
|
+
export type TeamTopology = TopologyConfig;
|
|
14
|
+
/** @deprecated Use CommunicationConfig from openteams */
|
|
15
|
+
export type TeamCommunication = CommunicationConfig;
|
|
16
|
+
/** @deprecated Use SubscriptionEntry from openteams */
|
|
17
|
+
export type ChannelSubscription = SubscriptionEntry;
|
|
18
|
+
/** @deprecated Use RoutingConfig from openteams (now includes "none" status) */
|
|
19
|
+
export type CommunicationRouting = RoutingConfig;
|
|
20
|
+
/** @deprecated Use PeerRoute from openteams */
|
|
21
|
+
export type PeerConnection = PeerRoute;
|
|
22
|
+
/** Communication enforcement level */
|
|
23
|
+
export type CommunicationEnforcement = "strict" | "permissive" | "audit";
|
|
24
|
+
/** @deprecated Use OpenTeamsRoleDefinition from openteams */
|
|
25
|
+
export type TeamRoleDefinition = OpenTeamsRoleDefinition;
|
|
11
26
|
/**
|
|
12
|
-
* Fully resolved team manifest.
|
|
27
|
+
* Fully resolved team manifest for macro-agent.
|
|
13
28
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
29
|
+
* Extends the openteams manifest with typed macro_agent extensions
|
|
30
|
+
* and resolved state fields populated by TeamLoader.
|
|
16
31
|
*/
|
|
17
|
-
export interface TeamManifest {
|
|
18
|
-
/** Team name (directory name) */
|
|
19
|
-
name: string;
|
|
32
|
+
export interface TeamManifest extends OpenTeamsManifest {
|
|
20
33
|
/** Human-readable description */
|
|
21
34
|
description: string;
|
|
22
|
-
/**
|
|
23
|
-
|
|
24
|
-
/** Role names used by this team */
|
|
25
|
-
roles: string[];
|
|
26
|
-
/** Agent spawn topology */
|
|
27
|
-
topology: TeamTopology;
|
|
28
|
-
/** Communication topology */
|
|
29
|
-
communication: TeamCommunication;
|
|
35
|
+
/** Communication topology (required in macro-agent) */
|
|
36
|
+
communication: CommunicationConfig;
|
|
30
37
|
/** macro-agent specific extensions */
|
|
31
38
|
macro_agent: MacroAgentExtensions;
|
|
32
39
|
/** Resolved role definitions keyed by role name */
|
|
@@ -36,96 +43,6 @@ export interface TeamManifest {
|
|
|
36
43
|
/** Loaded MCP server configs keyed by role name */
|
|
37
44
|
_mcpServers: Map<string, McpServerEntry[]>;
|
|
38
45
|
}
|
|
39
|
-
/**
|
|
40
|
-
* Defines the agent spawn graph for the team.
|
|
41
|
-
*/
|
|
42
|
-
export interface TeamTopology {
|
|
43
|
-
/** The initial agent spawned when the team starts */
|
|
44
|
-
root: TopologyNode;
|
|
45
|
-
/** Agents spawned alongside root (peers, not children) */
|
|
46
|
-
companions?: TopologyNode[];
|
|
47
|
-
/**
|
|
48
|
-
* Which roles can spawn which other roles.
|
|
49
|
-
* Translated into capability additions by TeamLoader (RD3).
|
|
50
|
-
*/
|
|
51
|
-
spawn_rules?: Record<string, string[]>;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* A node in the team's spawn topology.
|
|
55
|
-
*/
|
|
56
|
-
export interface TopologyNode {
|
|
57
|
-
/** Role name (must be in manifest.roles) */
|
|
58
|
-
role: string;
|
|
59
|
-
/** Path to prompt file relative to team directory */
|
|
60
|
-
prompt?: string;
|
|
61
|
-
/** Agent configuration */
|
|
62
|
-
config?: TopologyNodeConfig;
|
|
63
|
-
}
|
|
64
|
-
export interface TopologyNodeConfig {
|
|
65
|
-
/** Model to use (e.g., "sonnet", "haiku", "opus") */
|
|
66
|
-
model?: string;
|
|
67
|
-
/** Additional key-value config passed to agent */
|
|
68
|
-
[key: string]: unknown;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Communication topology for the team.
|
|
72
|
-
*
|
|
73
|
-
* Declares channels (signal groups), per-role subscriptions,
|
|
74
|
-
* emission restrictions, and routing rules.
|
|
75
|
-
*/
|
|
76
|
-
export interface TeamCommunication {
|
|
77
|
-
/** Named signal channels */
|
|
78
|
-
channels?: Record<string, ChannelDefinition>;
|
|
79
|
-
/** Per-role subscription declarations */
|
|
80
|
-
subscriptions?: Record<string, ChannelSubscription[]>;
|
|
81
|
-
/** Per-role emission declarations (which signals a role can emit) */
|
|
82
|
-
emissions?: Record<string, string[]>;
|
|
83
|
-
/** Routing configuration */
|
|
84
|
-
routing?: CommunicationRouting;
|
|
85
|
-
/** Enforcement level for communication rules */
|
|
86
|
-
enforcement?: CommunicationEnforcement;
|
|
87
|
-
}
|
|
88
|
-
export type CommunicationEnforcement = "strict" | "permissive" | "audit";
|
|
89
|
-
/**
|
|
90
|
-
* A named channel grouping related signals.
|
|
91
|
-
*/
|
|
92
|
-
export interface ChannelDefinition {
|
|
93
|
-
/** Human-readable description */
|
|
94
|
-
description?: string;
|
|
95
|
-
/** Signals in this channel */
|
|
96
|
-
signals: string[];
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* A role's subscription to a channel.
|
|
100
|
-
*/
|
|
101
|
-
export interface ChannelSubscription {
|
|
102
|
-
/** Channel name (must exist in communication.channels) */
|
|
103
|
-
channel: string;
|
|
104
|
-
/** Specific signals to receive. If omitted, receives all signals in the channel */
|
|
105
|
-
signals?: string[];
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Communication routing configuration.
|
|
109
|
-
*/
|
|
110
|
-
export interface CommunicationRouting {
|
|
111
|
-
/** Status flow direction */
|
|
112
|
-
status?: "upstream";
|
|
113
|
-
/** Explicit peer connections (non-hierarchical) */
|
|
114
|
-
peers?: PeerConnection[];
|
|
115
|
-
}
|
|
116
|
-
/**
|
|
117
|
-
* A peer-to-peer connection between two roles.
|
|
118
|
-
*/
|
|
119
|
-
export interface PeerConnection {
|
|
120
|
-
/** Source role name */
|
|
121
|
-
from: string;
|
|
122
|
-
/** Target role name */
|
|
123
|
-
to: string;
|
|
124
|
-
/** Routing mechanism */
|
|
125
|
-
via: "direct" | "topic" | "scope";
|
|
126
|
-
/** Signals allowed on this connection */
|
|
127
|
-
signals?: string[];
|
|
128
|
-
}
|
|
129
46
|
/**
|
|
130
47
|
* macro-agent specific team configuration.
|
|
131
48
|
*
|
|
@@ -140,6 +57,8 @@ export interface MacroAgentExtensions {
|
|
|
140
57
|
lifecycle?: LifecycleConfig;
|
|
141
58
|
/** Observability configuration */
|
|
142
59
|
observability?: ObservabilityConfig;
|
|
60
|
+
/** Allow extension fields for interop with openteams Record<string, unknown> */
|
|
61
|
+
[key: string]: unknown;
|
|
143
62
|
}
|
|
144
63
|
export interface TaskAssignmentConfig {
|
|
145
64
|
/** Assignment mode */
|
|
@@ -181,40 +100,6 @@ export interface ObservabilityConfig {
|
|
|
181
100
|
/** Interval between metric snapshots (seconds) */
|
|
182
101
|
snapshot_interval_s?: number;
|
|
183
102
|
}
|
|
184
|
-
/**
|
|
185
|
-
* Role definition as declared in a team template's roles/*.yaml file.
|
|
186
|
-
*
|
|
187
|
-
* Supports both full replacement and additive/subtractive capability composition.
|
|
188
|
-
*/
|
|
189
|
-
export interface TeamRoleDefinition {
|
|
190
|
-
/** Role name */
|
|
191
|
-
name: string;
|
|
192
|
-
/** Built-in role to extend */
|
|
193
|
-
extends?: string;
|
|
194
|
-
/** Display name for UI/logs */
|
|
195
|
-
display_name?: string;
|
|
196
|
-
/** Human-readable description */
|
|
197
|
-
description?: string;
|
|
198
|
-
/**
|
|
199
|
-
* Full replacement capability list.
|
|
200
|
-
* Mutually exclusive with add/remove.
|
|
201
|
-
*/
|
|
202
|
-
capabilities?: string[];
|
|
203
|
-
/**
|
|
204
|
-
* Capabilities to add to the parent role's set.
|
|
205
|
-
* Only valid when `extends` is set.
|
|
206
|
-
*/
|
|
207
|
-
capabilities_add?: string[];
|
|
208
|
-
/**
|
|
209
|
-
* Capabilities to remove from the parent role's set.
|
|
210
|
-
* Only valid when `extends` is set.
|
|
211
|
-
*/
|
|
212
|
-
capabilities_remove?: string[];
|
|
213
|
-
/** Path to prompt file relative to team directory */
|
|
214
|
-
prompt?: string;
|
|
215
|
-
/** macro-agent specific role configuration */
|
|
216
|
-
macro_agent?: TeamRoleMacroAgent;
|
|
217
|
-
}
|
|
218
103
|
export interface TeamRoleMacroAgent {
|
|
219
104
|
/** Workspace configuration */
|
|
220
105
|
workspace?: {
|
|
@@ -232,6 +117,21 @@ export interface TeamRoleMacroAgent {
|
|
|
232
117
|
max_duration_ms?: number;
|
|
233
118
|
};
|
|
234
119
|
}
|
|
120
|
+
/**
|
|
121
|
+
* macro-agent's enriched team resolution result.
|
|
122
|
+
*
|
|
123
|
+
* Wraps openteams' ResolvedTemplate with enforcement-enriched roles
|
|
124
|
+
* and typed macro-agent extensions. Produced by loadTeam(), consumed
|
|
125
|
+
* by TeamRuntime.
|
|
126
|
+
*/
|
|
127
|
+
export interface MacroResolvedTemplate {
|
|
128
|
+
/** openteams resolved template (manifest + generic roles + prompts + mcpServers) */
|
|
129
|
+
template: ResolvedTemplate;
|
|
130
|
+
/** Enforcement-enriched roles mapped to macro-agent's RoleDefinition */
|
|
131
|
+
resolvedRoles: Map<string, ResolvedTeamRole>;
|
|
132
|
+
/** Parsed macro-agent extensions (typed from manifest.macro_agent) */
|
|
133
|
+
macroAgent: MacroAgentExtensions;
|
|
134
|
+
}
|
|
235
135
|
/**
|
|
236
136
|
* A team role with inheritance resolved and capabilities computed.
|
|
237
137
|
*/
|
|
@@ -247,16 +147,6 @@ export interface ResolvedTeamRole {
|
|
|
247
147
|
/** Full RoleDefinition for RoleRegistry registration */
|
|
248
148
|
roleDefinition: RoleDefinition;
|
|
249
149
|
}
|
|
250
|
-
/**
|
|
251
|
-
* MCP server entry from tools/mcp-servers.json.
|
|
252
|
-
* Follows Claude Code's native format.
|
|
253
|
-
*/
|
|
254
|
-
export interface McpServerEntry {
|
|
255
|
-
name: string;
|
|
256
|
-
command: string;
|
|
257
|
-
args?: string[];
|
|
258
|
-
env?: Record<string, string>;
|
|
259
|
-
}
|
|
260
150
|
export type TeamLoadErrorCode = "MANIFEST_NOT_FOUND" | "INVALID_MANIFEST" | "ROLE_NOT_FOUND" | "PROMPT_NOT_FOUND" | "INVALID_COMMUNICATION" | "INVALID_ROLE";
|
|
261
151
|
export declare class TeamLoadError extends Error {
|
|
262
152
|
readonly code: TeamLoadErrorCode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/teams/types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/teams/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAMpE,OAAO,KAAK,EACV,YAAY,IAAI,iBAAiB,EACjC,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,cAAc,IAAI,uBAAuB,EACzC,qBAAqB,EACrB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,aAAa,EACd,MAAM,WAAW,CAAC;AAMnB,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,uBAAuB,EACvB,qBAAqB,EACrB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,aAAa,GACd,CAAC;AAMF,oDAAoD;AACpD,MAAM,MAAM,YAAY,GAAG,cAAc,CAAC;AAE1C,yDAAyD;AACzD,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAEpD,uDAAuD;AACvD,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAEpD,gFAAgF;AAChF,MAAM,MAAM,oBAAoB,GAAG,aAAa,CAAC;AAEjD,+CAA+C;AAC/C,MAAM,MAAM,cAAc,GAAG,SAAS,CAAC;AAEvC,sCAAsC;AACtC,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG,YAAY,GAAG,OAAO,CAAC;AAEzE,6DAA6D;AAC7D,MAAM,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AAMzD;;;;;GAKG;AACH,MAAM,WAAW,YAAa,SAAQ,iBAAiB;IACrD,iCAAiC;IACjC,WAAW,EAAE,MAAM,CAAC;IAEpB,uDAAuD;IACvD,aAAa,EAAE,mBAAmB,CAAC;IAEnC,sCAAsC;IACtC,WAAW,EAAE,oBAAoB,CAAC;IAMlC,mDAAmD;IACnD,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAE9C,gDAAgD;IAChD,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEpC,mDAAmD;IACnD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;CAC5C;AAMD;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC,oCAAoC;IACpC,eAAe,CAAC,EAAE,oBAAoB,CAAC;IAEvC,yCAAyC;IACzC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAEhC,oCAAoC;IACpC,SAAS,CAAC,EAAE,eAAe,CAAC;IAE5B,kCAAkC;IAClC,aAAa,CAAC,EAAE,mBAAmB,CAAC;IAEpC,gFAAgF;IAChF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,sBAAsB;IACtB,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtB,kCAAkC;IAClC,IAAI,CAAC,EAAE;QACL,iDAAiD;QACjD,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,yCAAyC;QACzC,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,2CAA2C;QAC3C,wBAAwB,CAAC,EAAE,MAAM,CAAC;KACnC,CAAC;CACH;AAED,MAAM,WAAW,iBAAiB;IAChC,oEAAoE;IACpE,QAAQ,EAAE,MAAM,CAAC;IAEjB,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,eAAe;IAC9B,oCAAoC;IACpC,aAAa,CAAC,EAAE;QACd,OAAO,EAAE,OAAO,CAAC;QACjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,mBAAmB,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;KAC7C,CAAC;IAEF,8BAA8B;IAC9B,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,kBAAkB,GAAG,QAAQ,CAAC;QACzC,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,sDAAsD;IACtD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kDAAkD;IAClD,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAMD,MAAM,WAAW,kBAAkB;IACjC,8BAA8B;IAC9B,SAAS,CAAC,EAAE;QACV,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,oBAAoB,CAAC,EAAE,OAAO,CAAC;KAChC,CAAC;IAEF,8BAA8B;IAC9B,SAAS,CAAC,EAAE;QACV,IAAI,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,QAAQ,GAAG,cAAc,CAAC;QAC9D,iBAAiB,CAAC,EAAE,OAAO,CAAC;QAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAMD;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,oFAAoF;IACpF,QAAQ,EAAE,gBAAgB,CAAC;IAE3B,wEAAwE;IACxE,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAE7C,sEAAsE;IACtE,UAAU,EAAE,oBAAoB,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,gBAAgB;IAChB,IAAI,EAAE,MAAM,CAAC;IAEb,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;IAEjB,oCAAoC;IACpC,YAAY,EAAE,UAAU,EAAE,CAAC;IAE3B,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,wDAAwD;IACxD,cAAc,EAAE,cAAc,CAAC;CAChC;AAMD,MAAM,MAAM,iBAAiB,GACzB,oBAAoB,GACpB,kBAAkB,GAClB,gBAAgB,GAChB,kBAAkB,GAClB,uBAAuB,GACvB,cAAc,CAAC;AAEnB,qBAAa,aAAc,SAAQ,KAAK;aAGpB,IAAI,EAAE,iBAAiB;aACvB,QAAQ,CAAC,EAAE,MAAM;gBAFjC,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,iBAAiB,EACvB,QAAQ,CAAC,EAAE,MAAM,YAAA;CAKpC"}
|
package/dist/teams/types.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Team Template Types
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* (
|
|
6
|
-
* specific extensions under the `macro_agent` namespace for interoperability.
|
|
4
|
+
* Imports generic multi-agent schema types from openteams and extends them
|
|
5
|
+
* with macro-agent specific runtime types (extensions, resolved roles, errors).
|
|
7
6
|
*
|
|
8
7
|
* @module teams/types
|
|
9
8
|
*/
|
package/dist/teams/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/teams/types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/teams/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAmQH,MAAM,OAAO,aAAc,SAAQ,KAAK;IAGpB;IACA;IAHlB,YACE,OAAe,EACC,IAAuB,EACvB,QAAiB;QAEjC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,SAAI,GAAJ,IAAI,CAAmB;QACvB,aAAQ,GAAR,QAAQ,CAAS;QAGjC,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAC9B,CAAC;CACF"}
|
package/docs/teams.md
CHANGED
|
@@ -127,6 +127,79 @@ macro_agent:
|
|
|
127
127
|
max_duration_ms: number
|
|
128
128
|
```
|
|
129
129
|
|
|
130
|
+
## Team Manager
|
|
131
|
+
|
|
132
|
+
The `TeamManager` (`src/teams/team-manager.ts`) owns team instance lifecycle at the server level. It supports multiple concurrent teams, each running independently with its own runtime, agent membership, and communication rules.
|
|
133
|
+
|
|
134
|
+
### Starting Teams
|
|
135
|
+
|
|
136
|
+
Teams can be started in three ways:
|
|
137
|
+
|
|
138
|
+
1. **Config auto-start**: Set `team` (default) and/or `teams` entries with `autoStart: true` in `.multiagent/config.json`
|
|
139
|
+
2. **REST API**: `POST /api/teams { "template": "self-driving" }`
|
|
140
|
+
3. **Environment**: `MACRO_TEAMS=self-driving,structured` (comma-separated, all auto-start)
|
|
141
|
+
|
|
142
|
+
```json
|
|
143
|
+
{
|
|
144
|
+
"team": "self-driving",
|
|
145
|
+
"teams": {
|
|
146
|
+
"qa": { "autoStart": false },
|
|
147
|
+
"monitoring": { "template": "observer-team", "autoStart": true }
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
Boot sequence: starts "self-driving" (default) + "monitoring" (autoStart). "qa" is available on demand via the REST API.
|
|
153
|
+
|
|
154
|
+
### Agent Membership Model
|
|
155
|
+
|
|
156
|
+
Agents relate to teams in three ways:
|
|
157
|
+
|
|
158
|
+
**Bootstrap agents** — Spawned as a unit when a team starts. The root agent and all companions defined in `topology` are created together during `teamManager.startTeam()`. They are peers (`parent: null`), not parent-child.
|
|
159
|
+
|
|
160
|
+
**Dynamic children** — Spawned at runtime by bootstrap agents (or their descendants). The composite spawn interceptor detects that the parent belongs to a team and injects team context: env vars (`MACRO_TEAM_NAME`, `MACRO_TASK_MODE`), topic subscriptions, and MCP servers. A lifecycle listener auto-registers the child in the parent's team. These agents are not pre-declared — they grow the team dynamically based on `spawn_rules`.
|
|
161
|
+
|
|
162
|
+
**Standalone agents** — Spawned outside any team (e.g., via `POST /api/agents` or direct `agentManager.spawn()` with no team-member parent). No team context is injected, no team filters apply.
|
|
163
|
+
|
|
164
|
+
```
|
|
165
|
+
startTeam("self-driving")
|
|
166
|
+
→ spawns planner (root) ← bootstrap
|
|
167
|
+
→ spawns judge (companion) ← bootstrap
|
|
168
|
+
|
|
169
|
+
planner spawns grinder ← dynamic child, auto-joins self-driving
|
|
170
|
+
grinder spawns sub-grinder ← dynamic child, auto-joins self-driving
|
|
171
|
+
|
|
172
|
+
POST /api/agents { task: "..." } ← standalone, no team
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
### Composite Dispatch
|
|
176
|
+
|
|
177
|
+
When multiple teams run concurrently, the TeamManager installs composite functions on the shared services that route to the correct team's runtime based on agent-to-team membership:
|
|
178
|
+
|
|
179
|
+
- **Spawn interceptor**: Looks up the parent agent's team, delegates to that team's interceptor to inject role-specific context, and tags the child with `team_instance`.
|
|
180
|
+
- **Signal filter**: Uses the **recipient's** team filter. If the recipient isn't in any team, falls back to the **sender's** team filter. If neither is in a team, the signal is allowed.
|
|
181
|
+
- **Emission validator**: Uses the **sender's** team to check whether the emitted signal is in the role's allowed emissions list.
|
|
182
|
+
|
|
183
|
+
### Cross-Team Messaging
|
|
184
|
+
|
|
185
|
+
Agents from different teams can communicate via explicit addressing. Both the sender's emission rules and the recipient's signal filter apply independently:
|
|
186
|
+
|
|
187
|
+
- Emission validator checks whether the sender is allowed to emit the signal (sender's team rules)
|
|
188
|
+
- Signal filter checks whether the recipient is allowed to receive the signal (recipient's team rules)
|
|
189
|
+
|
|
190
|
+
### Team Instance Tracking
|
|
191
|
+
|
|
192
|
+
Each team instance gets a unique ID (format: `{templateName}-{counter}`, e.g., `self-driving-1`). Every agent is tagged with its `team_instance` in the EventStore for durable tracking. Each team also emits a scoped `team_config` event with its `team_instance` field, which MCP subprocesses use to discover the correct team configuration via the `MACRO_TEAM_NAME` environment variable.
|
|
193
|
+
|
|
194
|
+
### REST API
|
|
195
|
+
|
|
196
|
+
| Method | Path | Description |
|
|
197
|
+
|--------|------|-------------|
|
|
198
|
+
| `POST` | `/api/teams` | Start a team instance (`{ "template": "name" }`) |
|
|
199
|
+
| `GET` | `/api/teams` | List all running team instances |
|
|
200
|
+
| `GET` | `/api/teams/:id` | Get team instance details |
|
|
201
|
+
| `DELETE` | `/api/teams/:id` | Teardown a team instance |
|
|
202
|
+
|
|
130
203
|
## Task Assignment Modes
|
|
131
204
|
|
|
132
205
|
### Push Mode
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "macro-agent",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Interact with multiple agents as if they were a single agent.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -59,6 +59,7 @@
|
|
|
59
59
|
"git-cascade": "0.0.1",
|
|
60
60
|
"js-yaml": "^4.1.1",
|
|
61
61
|
"nanoid": "^5.0.0",
|
|
62
|
+
"openteams": "^0.1.1",
|
|
62
63
|
"opentasks": "^0.0.3",
|
|
63
64
|
"tinybase": "^5.0.0",
|
|
64
65
|
"ulid": "^3.0.2",
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{"id":"i-7edu","uuid":"d7e8cb3b-73c5-4ac8-b0c3-75d30b3af857","title":"Implement global and per-directory config system for sync","content":"## Overview\nExtend the existing config system to support sync-related configuration at both global and per-directory levels.\n\n## Acceptance Criteria\n- [ ] Global config at `~/.config/minimem/config.json` supports:\n - `centralRepo`: path to central repository\n - `sync.conflictStrategy`: default merge strategy\n - `sync.autoSync`: boolean for daemon auto-sync\n - `sync.autoCommit`: boolean for auto-committing\n- [ ] Per-directory config at `.minimem/config.json` supports:\n - `sync.enabled`: boolean\n - `sync.path`: path in central repo\n - `sync.include`: glob patterns for files to sync\n - `sync.exclude`: glob patterns to exclude\n- [ ] Default include pattern: `[\"MEMORY.md\", \"memory/**/*.md\"]`\n- [ ] Config loading merges global defaults with per-directory overrides\n- [ ] `minimem config set` and `minimem config get` work for sync settings\n\n## Technical Notes\n- Extend existing `src/cli/config.ts`\n- Use JSON schema validation for config\n- Handle `~` expansion in paths\n\n## Implements\n[[s-2wx5]] - Config system requirement","status":"closed","priority":0,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:55:58","updated_at":"2026-02-03 05:36:54","closed_at":"2026-02-03 05:36:54","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-7edu","from_type":"issue","to":"i-1ce6","to_type":"issue","type":"blocks"},{"from":"i-7edu","from_type":"issue","to":"i-1tlk","to_type":"issue","type":"blocks"},{"from":"i-7edu","from_type":"issue","to":"i-8gam","to_type":"issue","type":"blocks"},{"from":"i-7edu","from_type":"issue","to":"i-dvoe","to_type":"issue","type":"blocks"},{"from":"i-7edu","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["cli","config","foundation"],"feedback":[{"id":"a8f202b4-f0a8-4455-816d-78bbb53e06f5","from_id":"i-7edu","to_id":"s-2wx5","feedback_type":"comment","content":"Implemented config system for sync with:\n- Extended CliConfig with sync section (enabled, path, include, exclude)\n- Added GlobalConfig type for XDG config (~/.config/minimem/config.json)\n- Added centralRepo, machineId, and sync settings to global config\n- Added expandPath utility for ~ expansion\n- Added loadXdgConfig, saveXdgConfig functions\n- Added getMachineId function (generates hostname-{random4hex})\n- Added getSyncConfig to merge local + global with defaults\n- Updated config command to display sync settings\n- Added --xdg-global flag to config command\n- All 39 tests pass","agent":"alexngai","anchor":null,"dismissed":false,"created_at":"2026-02-03T05:36:54.045Z","updated_at":"2026-02-03T05:36:54.045Z"}]}
|
|
2
|
+
{"id":"i-1tlk","uuid":"855b8770-3183-4956-8b80-d9b7b26b173f","title":"Implement directory type auto-detection","content":"## Overview\nDetect which of the four directory types a memory directory is: project-bound, standalone, hybrid, or unmanaged.\n\n## Acceptance Criteria\n- [ ] `detectDirectoryType(dir: string)` function returns one of:\n - `project-bound`: inside git repo, no sync config\n - `standalone`: has sync config, not inside git repo\n - `hybrid`: inside git repo AND has sync config\n - `unmanaged`: no git repo, no sync config\n- [ ] Detection checks for `.git` in parent directories\n- [ ] Detection reads `.minimem/config.json` for sync config\n- [ ] Exported for use by other commands (sync, push, pull, daemon)\n- [ ] Unit tests for all four detection cases\n\n## Technical Notes\n- Walk up directory tree looking for `.git`\n- Check for `sync.enabled` in local config\n- Consider caching result per session\n\n## Implements\n[[s-2wx5]] - Auto-detection requirement","status":"closed","priority":0,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:56:06","updated_at":"2026-02-03 05:37:57","closed_at":"2026-02-03 05:37:57","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-1tlk","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["detection","foundation"]}
|
|
3
|
+
{"id":"i-31u0","uuid":"900cf512-3ed8-47d7-a6bb-3ea7e8668e43","title":"Implement machine ID generation and storage","content":"## Overview\nGenerate a unique machine identifier for registry tracking, stored in global config.\n\n## Acceptance Criteria\n- [ ] `getMachineId()` returns consistent ID for this machine\n- [ ] ID format: `{hostname}-{random-suffix}` (e.g., `macbook-pro-a1b2`)\n- [ ] Generated once on first use, stored in global config\n- [ ] Random suffix is 4 hex characters\n- [ ] Function is idempotent (same ID on repeated calls)\n\n## Technical Notes\n- Use `os.hostname()` for hostname\n- Use `crypto.randomBytes(2).toString('hex')` for suffix\n- Store in `~/.config/minimem/config.json` as `machineId`\n\n## Implements\n[[s-2wx5]] - Machine ID for registry","status":"closed","priority":0,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:56:10","updated_at":"2026-02-03 05:36:54","closed_at":"2026-02-03 05:36:54","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-31u0","from_type":"issue","to":"i-dvoe","to_type":"issue","type":"blocks"},{"from":"i-31u0","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["config","foundation"]}
|
|
4
|
+
{"id":"i-1ce6","uuid":"ec0bde24-9cb6-4545-88bb-87f7c552d028","title":"Implement central repo initialization (sync init-central)","content":"## Overview\nCreate a new central repository for syncing memories, or configure an existing repo as central.\n\n## Acceptance Criteria\n- [ ] `minimem sync init-central <path>` creates new central repo:\n - Initializes git repo if not exists\n - Creates `.gitignore` (ignores `*.db`, `staging/`, `conflicts/`)\n - Creates empty `.minimem-registry.json`\n - Creates README.md explaining the repo\n- [ ] If path is existing git repo, adds registry file if missing\n- [ ] Warns if existing repo has unusual structure\n- [ ] Sets `centralRepo` in global config after creation\n- [ ] Validates path is writable\n\n## Technical Notes\n- Use `simple-git` for git operations\n- Create directory structure atomically\n\n## Implements\n[[s-2wx5]] - Bootstrap Flow A","status":"closed","priority":1,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:56:17","updated_at":"2026-02-03 05:40:19","closed_at":"2026-02-03 05:40:19","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-1ce6","from_type":"issue","to":"i-1ll7","to_type":"issue","type":"blocks"},{"from":"i-1ce6","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["bootstrap","central-repo","cli"]}
|
|
5
|
+
{"id":"i-dvoe","uuid":"ad511324-6191-4e0c-bbf4-5be94f92a63e","title":"Implement registry system for path collision prevention","content":"## Overview\nManage the `.minimem-registry.json` file in central repo to track all sync mappings and prevent path collisions.\n\n## Acceptance Criteria\n- [ ] Registry schema with mappings array:\n - `path`: central repo path\n - `localPath`: local directory path\n - `machineId`: machine identifier\n - `lastSync`: ISO timestamp\n- [ ] `readRegistry(centralRepo)` loads registry\n- [ ] `writeRegistry(centralRepo, registry)` saves registry\n- [ ] `checkCollision(registry, path, localPath, machineId)` returns:\n - `none`: path is free\n - `same-machine`: can remap (update)\n - `collision`: different machine has this path\n- [ ] `addMapping(registry, mapping)` adds/updates entry\n- [ ] `removeMapping(registry, path, machineId)` removes entry\n- [ ] Registry file is created if missing\n\n## Technical Notes\n- Atomic writes (write to temp, rename)\n- Handle concurrent access gracefully\n\n## Implements\n[[s-2wx5]] - Central Repo Registry","status":"closed","priority":1,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:56:22","updated_at":"2026-02-03 05:40:20","closed_at":"2026-02-03 05:40:20","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-dvoe","from_type":"issue","to":"i-1ll7","to_type":"issue","type":"blocks"},{"from":"i-dvoe","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["central-repo","registry"]}
|
|
6
|
+
{"id":"i-1ll7","uuid":"9ea75ed5-2fa2-430b-87d1-4f7a7f518d4a","title":"Implement sync init command with collision validation","content":"## Overview\nInitialize sync for a memory directory, mapping it to a path in the central repo with collision checking.\n\n## Acceptance Criteria\n- [ ] `minimem sync init --path <central-path>` for current directory\n- [ ] `minimem sync init --local <dir> --path <central-path>` for explicit directory\n- [ ] Validates central repo is configured\n- [ ] Checks registry for path collisions, blocks if collision detected\n- [ ] Creates `.minimem/config.json` with sync settings\n- [ ] Registers mapping in central repo registry\n- [ ] Performs initial sync (pull if central has content, push if local-only)\n- [ ] Shows clear error messages for:\n - Central repo not configured\n - Path already mapped by different directory\n - Local directory doesn't exist\n\n## Technical Notes\n- Requires: config system, registry system, machine ID\n- Initial sync direction based on which side has content\n\n## Implements\n[[s-2wx5]] - Bootstrap Flow C","status":"closed","priority":1,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:56:29","updated_at":"2026-02-03 05:42:51","closed_at":"2026-02-03 05:42:51","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-1ll7","from_type":"issue","to":"i-7gne","to_type":"issue","type":"blocks"},{"from":"i-1ll7","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["cli","sync-setup"]}
|
|
7
|
+
{"id":"i-7gne","uuid":"b793a113-8ab4-4921-82e7-273f16320a0a","title":"Implement sync list and sync remove commands","content":"## Overview\nCommands to view all sync mappings and remove a directory from sync.\n\n## Acceptance Criteria\n- [ ] `minimem sync list` shows all mappings from registry:\n - Central path\n - Local path\n - Machine ID\n - Last sync time\n - Highlights current machine's mappings\n- [ ] `minimem sync remove` removes current directory from sync:\n - Removes from local `.minimem/config.json`\n - Removes from central repo registry\n - Does NOT delete synced files (just unlinks)\n- [ ] `minimem sync remove --local <dir>` for explicit directory\n- [ ] Confirms before removing\n\n## Technical Notes\n- Read registry from central repo\n- Format output as table\n\n## Implements\n[[s-2wx5]] - CLI commands for sync management","status":"closed","priority":2,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:56:33","updated_at":"2026-02-03 05:42:57","closed_at":"2026-02-03 05:42:57","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-7gne","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["cli","sync-setup"]}
|
|
8
|
+
{"id":"i-8gam","uuid":"4450c802-d293-45e1-8a6b-76c476764814","title":"Implement sync state tracking with content hashing","content":"## Overview\nTrack the sync state of files using content hashes to detect changes and conflicts.\n\n## Acceptance Criteria\n- [ ] Sync state stored in `.minimem/sync-state.json`:\n - `lastSync`: ISO timestamp\n - `files`: map of filename to hash info\n- [ ] Each file entry has:\n - `localHash`: SHA-256 of local content\n - `remoteHash`: SHA-256 of remote content\n - `lastSyncedHash`: hash at last successful sync\n- [ ] `computeFileHash(filePath)` returns SHA-256 hex\n- [ ] `loadSyncState(dir)` reads state file\n- [ ] `saveSyncState(dir, state)` writes state file\n- [ ] `updateSyncState(dir, files)` updates hashes after sync\n- [ ] Handles missing state file (first sync)\n\n## Technical Notes\n- Use `crypto.createHash('sha256')`\n- Atomic writes for state file\n- Only track files matching include/exclude patterns\n\n## Implements\n[[s-2wx5]] - Conflict Detection (Hash + Shadow)","status":"closed","priority":1,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:56:41","updated_at":"2026-02-03 05:42:50","closed_at":"2026-02-03 05:42:50","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-8gam","from_type":"issue","to":"i-3jn4","to_type":"issue","type":"blocks"},{"from":"i-8gam","from_type":"issue","to":"i-5ooa","to_type":"issue","type":"blocks"},{"from":"i-8gam","from_type":"issue","to":"i-9fm3","to_type":"issue","type":"blocks"},{"from":"i-8gam","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["core-sync","state"]}
|
|
9
|
+
{"id":"i-5ooa","uuid":"17bc44e4-1373-4fde-8114-06320d27b71e","title":"Implement push command","content":"## Overview\nPush local memory files to the central repository.\n\n## Acceptance Criteria\n- [ ] `minimem push` syncs current directory to central repo\n- [ ] `minimem push --dir <path>` for explicit directory\n- [ ] Only pushes files matching include/exclude patterns\n- [ ] Uses atomic staging:\n 1. Copy to `.minimem/staging/{timestamp}/`\n 2. Validate all files copied\n 3. Move to central repo path\n 4. Clean up staging\n- [ ] Updates sync state after successful push\n- [ ] Updates registry `lastSync` timestamp\n- [ ] Detects conflicts (both sides changed) and delegates to conflict handler\n- [ ] Shows summary: files pushed, conflicts found, errors\n\n## Technical Notes\n- Requires: sync state, config, registry\n- Use conflict detection before overwriting\n\n## Implements\n[[s-2wx5]] - Push command","status":"closed","priority":1,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:56:46","updated_at":"2026-02-03 05:45:16","closed_at":"2026-02-03 05:45:16","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-5ooa","from_type":"issue","to":"i-25ys","to_type":"issue","type":"blocks"},{"from":"i-5ooa","from_type":"issue","to":"i-7l8f","to_type":"issue","type":"blocks"},{"from":"i-5ooa","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["cli","core-sync"]}
|
|
10
|
+
{"id":"i-3jn4","uuid":"5c9b07bf-718d-47b2-bc32-5b19b9087d33","title":"Implement pull command","content":"## Overview\nPull memory files from the central repository to local directory.\n\n## Acceptance Criteria\n- [ ] `minimem pull` syncs central repo to current directory\n- [ ] `minimem pull --dir <path>` for explicit directory\n- [ ] Only pulls files matching include/exclude patterns\n- [ ] Uses atomic staging:\n 1. Copy from central to `.minimem/staging/{timestamp}/`\n 2. Validate all files copied\n 3. Move to local directory\n 4. Clean up staging\n- [ ] Updates sync state after successful pull\n- [ ] Detects conflicts (both sides changed) and delegates to conflict handler\n- [ ] Shows summary: files pulled, conflicts found, errors\n- [ ] Creates local directories as needed\n\n## Technical Notes\n- Requires: sync state, config, registry\n- Mirror of push logic but reversed direction\n\n## Implements\n[[s-2wx5]] - Pull command","status":"closed","priority":1,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:56:48","updated_at":"2026-02-03 05:45:16","closed_at":"2026-02-03 05:45:16","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-3jn4","from_type":"issue","to":"i-25ys","to_type":"issue","type":"blocks"},{"from":"i-3jn4","from_type":"issue","to":"i-7l8f","to_type":"issue","type":"blocks"},{"from":"i-3jn4","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["cli","core-sync"]}
|
|
11
|
+
{"id":"i-9fm3","uuid":"f5cb95c3-ba65-4ffe-a863-da414d6dc801","title":"Implement conflict detection algorithm","content":"## Overview\nDetect when both local and remote have changed since last sync, requiring conflict resolution.\n\n## Acceptance Criteria\n- [ ] `detectConflicts(dir, centralRepo)` returns list of:\n - `file`: filename\n - `status`: `no-change` | `local-only` | `remote-only` | `conflict`\n - `localHash`, `remoteHash`, `baseHash`\n- [ ] Algorithm per file:\n - If localHash == remoteHash → `no-change`\n - If localHash == baseHash → `remote-only` (pull)\n - If remoteHash == baseHash → `local-only` (push)\n - Else → `conflict`\n- [ ] Creates shadow copy for conflicts:\n - `.minimem/shadows/{filename}.base` from lastSyncedHash content\n- [ ] Handles new files (no base hash)\n- [ ] Handles deleted files\n\n## Technical Notes\n- Shadow copies needed for 3-way merge\n- Consider file renames (future enhancement)\n\n## Implements\n[[s-2wx5]] - Conflict Detection Algorithm","status":"closed","priority":1,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:56:56","updated_at":"2026-02-03 05:45:12","closed_at":"2026-02-03 05:45:12","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-9fm3","from_type":"issue","to":"i-3jn4","to_type":"issue","type":"blocks"},{"from":"i-9fm3","from_type":"issue","to":"i-5ooa","to_type":"issue","type":"blocks"},{"from":"i-9fm3","from_type":"issue","to":"i-8t0z","to_type":"issue","type":"blocks"},{"from":"i-9fm3","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["conflict","core-sync"]}
|
|
12
|
+
{"id":"i-8t0z","uuid":"f4a413ac-3349-4d99-9c24-b6ba0cbe982e","title":"Implement merge resolution strategies","content":"## Overview\nApply configured merge strategy when conflicts are detected.\n\n## Acceptance Criteria\n- [ ] `resolveConflict(file, strategy, options)` applies strategy:\n - `keep-both`: Append both with conflict markers and timestamps\n - `merge`: Git-style 3-way merge using diff3\n - `manual`: Move to quarantine, fail sync for this file\n - `last-write-wins`: Use file with later mtime\n- [ ] Keep-both format:\n ```\n <<<<<<< LOCAL (2024-01-15 10:30)\n local content\n =======\n remote content\n >>>>>>> REMOTE (2024-01-15 09:45)\n ```\n- [ ] Merge resolver hook support:\n - If `mergeResolver` configured, spawn external tool\n - Wait for tool to exit\n - Read merged result\n- [ ] Returns: `resolved` | `quarantined` | `failed`\n\n## Technical Notes\n- Use `diff3` or similar for 3-way merge\n- External tools get paths: base, local, remote, output\n\n## Implements\n[[s-2wx5]] - Merge Resolution Strategies","status":"closed","priority":1,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:57:02","updated_at":"2026-02-03 05:45:17","closed_at":"2026-02-03 05:45:17","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-8t0z","from_type":"issue","to":"i-9a8e","to_type":"issue","type":"blocks"},{"from":"i-8t0z","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["conflict","merge"]}
|
|
13
|
+
{"id":"i-9a8e","uuid":"57a30353-f397-4bce-9478-3b429da858ee","title":"Implement quarantine and recovery system","content":"## Overview\nQuarantine conflicted files and provide recovery commands for failed syncs.\n\n## Acceptance Criteria\n- [ ] Quarantine structure:\n ```\n .minimem/conflicts/{timestamp}/\n ├── {filename}.local\n ├── {filename}.remote\n └── {filename}.base\n ```\n- [ ] `quarantineConflict(file, local, remote, base)` saves copies\n- [ ] `minimem sync conflicts` lists all quarantined conflicts:\n - Timestamp, filename, local/remote timestamps\n- [ ] `minimem sync resolve <file>` opens merge tool for manual resolution\n- [ ] `minimem sync recover` retries last failed sync\n- [ ] Sync log at `.minimem/sync.log`:\n - Timestamp, operation, result, errors\n- [ ] Cleanup old quarantine (configurable retention)\n\n## Technical Notes\n- Quarantine preserves all versions for safety\n- Recovery reads from staging if present\n\n## Implements\n[[s-2wx5]] - Sync Failure Recovery","status":"closed","priority":2,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:57:08","updated_at":"2026-02-03 07:24:05","closed_at":"2026-02-03 07:24:05","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-9a8e","from_type":"issue","to":"i-65zj","to_type":"issue","type":"blocks"},{"from":"i-9a8e","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["cli","conflict","recovery"],"feedback":[{"id":"c65a26ed-b934-4357-89e3-05ab096f6ced","from_id":"i-9a8e","to_id":"s-2wx5","feedback_type":"comment","content":"Implemented quarantine and recovery system:\n- Quarantine structure in `.minimem/conflicts/{timestamp}/` with `.local`, `.remote`, `.base` files\n- `quarantineConflict()` and `listQuarantinedConflicts()` in conflicts.ts\n- CLI commands: `sync:conflicts`, `sync:resolve <timestamp>`, `sync:cleanup`\n- Sync log at `.minimem/sync.log` with JSONL format\n- `sync:log` command to view history\n- Auto-detects merge tools (code, meld, kdiff3, vimdiff)\n- Cleanup supports --days and --dry-run options","agent":"alexngai","anchor":null,"dismissed":false,"created_at":"2026-02-03T07:24:04.899Z","updated_at":"2026-02-03T07:24:04.899Z"}]}
|
|
14
|
+
{"id":"i-7l8f","uuid":"95c7277b-dfb0-47c0-8092-51116a648069","title":"Implement file watcher with debouncing","content":"## Overview\nWatch memory directories for file changes with debouncing to avoid rapid-fire syncs.\n\n## Acceptance Criteria\n- [ ] `createFileWatcher(dir, options)` returns watcher instance\n- [ ] Watches files matching include/exclude patterns\n- [ ] Debounces changes (default 2 seconds):\n - Multiple rapid changes trigger single callback\n - Configurable debounce interval\n- [ ] Emits events: `change`, `add`, `unlink`\n- [ ] Ignores `.minimem/` directory (staging, conflicts, db)\n- [ ] `watcher.close()` cleans up\n- [ ] Works cross-platform (macOS, Linux, Windows)\n\n## Technical Notes\n- Use `chokidar` for cross-platform watching\n- Debounce per-file or batch all changes\n- Consider `usePolling` fallback for network drives\n\n## Implements\n[[s-2wx5]] - Daemon file watching","status":"closed","priority":2,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:57:15","updated_at":"2026-02-03 07:30:17","closed_at":"2026-02-03 07:30:17","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-7l8f","from_type":"issue","to":"i-3ko0","to_type":"issue","type":"blocks"},{"from":"i-7l8f","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["daemon","watcher"],"feedback":[{"id":"9ec16de1-c190-4de5-871d-80cd5eebdf1d","from_id":"i-7l8f","to_id":"s-2wx5","feedback_type":"comment","content":"Implemented file watcher with debouncing in src/cli/sync/watcher.ts:\n- `createFileWatcher(dir, options)` returns watcher instance\n- Watches files matching include/exclude patterns (default: MEMORY.md, memory/*.md)\n- Debounces changes (default 2 seconds, configurable)\n- Emits batched 'changes' events with event type (add, change, unlink)\n- Ignores .minimem/ directory automatically\n- `createMultiDirWatcher()` for watching multiple directories\n- Uses chokidar for cross-platform support\n- Supports usePolling option for network drives\n- `watcher.close()` cleans up resources","agent":"alexngai","anchor":null,"dismissed":false,"created_at":"2026-02-03T07:30:17.354Z","updated_at":"2026-02-03T07:30:17.354Z"}]}
|
|
15
|
+
{"id":"i-3ko0","uuid":"d113f827-40c7-4072-9c1e-d7b95c10c661","title":"Implement daemon core with auto-sync","content":"## Overview\nBackground daemon that watches configured directories and syncs automatically.\n\n## Acceptance Criteria\n- [ ] `minimem daemon` starts daemon in foreground\n- [ ] `minimem daemon --background` detaches (writes PID file)\n- [ ] `minimem daemon stop` stops running daemon\n- [ ] `minimem daemon status` shows daemon state\n- [ ] Daemon behavior:\n - Reads all directories with sync config from registry\n - Starts file watcher for each\n - On local change: triggers push (if autoSync enabled)\n - Watches central repo for changes (polling or git hooks)\n - On central change: triggers pull to affected directories\n- [ ] Respects `autoCommit` setting (stage only vs commit)\n- [ ] Logs activity to `.minimem/daemon.log`\n- [ ] Graceful shutdown on SIGTERM/SIGINT\n\n## Technical Notes\n- Use PID file for singleton daemon\n- Consider systemd/launchd integration later\n\n## Implements\n[[s-2wx5]] - Daemon Architecture","status":"closed","priority":2,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:57:21","updated_at":"2026-02-03 07:32:36","closed_at":"2026-02-03 07:32:36","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-3ko0","from_type":"issue","to":"i-5skx","to_type":"issue","type":"blocks"},{"from":"i-3ko0","from_type":"issue","to":"i-65zj","to_type":"issue","type":"blocks"},{"from":"i-3ko0","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["auto-sync","daemon"],"feedback":[{"id":"a6defc05-2fc0-4c4c-ba67-33e9a311330e","from_id":"i-3ko0","to_id":"s-2wx5","feedback_type":"comment","content":"Implemented daemon core in src/cli/sync/daemon.ts and src/cli/commands/daemon.ts:\n- `minimem daemon` starts daemon in foreground\n- `minimem daemon --background` detaches with PID file\n- `minimem daemon:stop` stops running daemon\n- `minimem daemon:status` shows daemon state\n- `minimem daemon:logs` shows daemon log with -f/--follow option\n- Daemon reads sync-enabled directories from registry\n- Auto-syncs on local changes when autoSync is enabled\n- Polls central repo for remote changes\n- Logs activity to ~/.minimem/daemon.log with rotation\n- Graceful shutdown on SIGTERM/SIGINT","agent":"alexngai","anchor":null,"dismissed":false,"created_at":"2026-02-03T07:32:36.150Z","updated_at":"2026-02-03T07:32:36.150Z"}]}
|
|
16
|
+
{"id":"i-5skx","uuid":"66e3932f-7064-4d65-a2f5-8c40dd69ed76","title":"Implement registry validation in daemon","content":"## Overview\nDaemon periodically validates registry for path collisions and warns users.\n\n## Acceptance Criteria\n- [ ] Daemon checks registry on startup\n- [ ] Periodic validation (configurable interval, default 5 minutes)\n- [ ] Detects invalid states:\n - Same path mapped by multiple machines\n - Stale mappings (machine not seen in X days)\n - Local directory no longer exists\n- [ ] Warnings logged and optionally shown to user\n- [ ] Does not auto-fix, just warns\n- [ ] `minimem sync validate` manual validation command\n\n## Technical Notes\n- Avoid spamming warnings (once per issue per session)\n- Consider notification system integration\n\n## Implements\n[[s-2wx5]] - Daemon validates registry","status":"closed","priority":3,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:57:25","updated_at":"2026-02-03 07:35:11","closed_at":"2026-02-03 07:35:11","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-5skx","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["daemon","registry","validation"],"feedback":[{"id":"7235dfb2-ab25-4b72-b673-e9472ae54bdf","from_id":"i-5skx","to_id":"s-2wx5","feedback_type":"comment","content":"Implemented registry validation in src/cli/sync/validation.ts:\n- Detects path collisions (same path mapped by different machines)\n- Detects stale mappings (not synced in 30+ days)\n- Detects missing local directories (for current machine only)\n- `minimem sync:validate` CLI command with JSON output option\n- Daemon validates registry on startup and periodically (every 5 minutes)\n- Warnings logged to daemon.log without spamming","agent":"alexngai","anchor":null,"dismissed":false,"created_at":"2026-02-03T07:35:11.209Z","updated_at":"2026-02-03T07:35:11.209Z"}]}
|
|
17
|
+
{"id":"i-25ys","uuid":"93fdc287-ae2b-49fa-905f-d109eb12da84","title":"Implement sync status command","content":"## Overview\nShow sync status across all configured directories.\n\n## Acceptance Criteria\n- [ ] `minimem sync status` shows for each synced directory:\n - Local path\n - Central repo path\n - Last sync time\n - Status: `synced` | `local-changes` | `remote-changes` | `conflicts`\n - Number of pending changes\n- [ ] `minimem sync status --dir <path>` for specific directory\n- [ ] Color-coded output (green=synced, yellow=changes, red=conflicts)\n- [ ] Shows daemon status (running/stopped)\n- [ ] Quick summary line at end\n\n## Technical Notes\n- Reads sync state files\n- Compares current hashes to detect pending changes\n- Does not perform sync, just reports\n\n## Implements\n[[s-2wx5]] - Status command (nice to have)","status":"closed","priority":3,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:57:32","updated_at":"2026-02-03 07:20:56","closed_at":"2026-02-03 07:20:56","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-25ys","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["cli","status"],"feedback":[{"id":"b06307fd-5ecc-4c1c-ad85-bce61065228e","from_id":"i-25ys","to_id":"s-2wx5","feedback_type":"comment","content":"Implemented sync:status command in src/cli/commands/push-pull.ts. Shows sync status with counts for unchanged, local changes, remote changes, new files, deleted files, and conflicts. Color-coding deferred to future enhancement. Daemon status will be added when daemon is implemented.","agent":"alexngai","anchor":null,"dismissed":false,"created_at":"2026-02-03T07:20:56.704Z","updated_at":"2026-02-03T07:20:56.704Z"}]}
|
|
18
|
+
{"id":"i-65zj","uuid":"3f63eb98-b13e-4ba9-8a97-7e2b28d019ce","title":"Write integration tests for git sync system","content":"## Overview\nEnd-to-end tests for the complete sync workflow.\n\n## Acceptance Criteria\n- [ ] Test bootstrap flows:\n - Fresh central repo creation\n - Existing repo as central\n - Directory sync init\n - Clone setup on \"new machine\" (simulated)\n- [ ] Test sync operations:\n - Push local changes\n - Pull remote changes\n - Bidirectional sync\n- [ ] Test conflict scenarios:\n - Both sides changed, keep-both resolution\n - Conflict quarantine\n - Recovery from failed sync\n- [ ] Test collision prevention:\n - Block duplicate path mapping\n - Allow same-machine remap\n- [ ] Test daemon (if feasible):\n - Auto-sync on file change\n - Registry validation warnings\n- [ ] Use temp directories, no real git remotes\n\n## Technical Notes\n- Mock git operations or use real local repos\n- Clean up temp directories after tests\n- Consider test isolation\n\n## Implements\n[[s-2wx5]] - Success Criteria validation","status":"closed","priority":3,"assignee":null,"archived":0,"archived_at":null,"created_at":"2026-02-02 23:57:37","updated_at":"2026-02-03 18:40:36","closed_at":"2026-02-03 18:40:36","parent_id":null,"parent_uuid":null,"relationships":[{"from":"i-65zj","from_type":"issue","to":"s-2wx5","to_type":"spec","type":"implements"}],"tags":["integration","testing"],"feedback":[{"id":"ee25b64f-eaa8-4f55-ae5f-73863958c6a6","from_id":"i-65zj","to_id":"s-2wx5","feedback_type":"comment","content":"Implemented comprehensive integration tests in src/cli/sync/__tests__/integration.test.ts:\n\n**Bootstrap Flows:**\n- Fresh central repo creation and validation\n- XDG config setup with central repo path\n- Directory sync initialization\n- Clone setup simulation on \"new machine\"\n\n**Sync Operations:**\n- Push local changes to central\n- Pull remote changes to local\n- Bidirectional sync\n\n**Conflict Scenarios:**\n- Detect conflicts when both sides changed\n- Keep-both strategy for conflict resolution\n- Quarantine conflicts for manual resolution\n\n**Collision Prevention:**\n- Block duplicate path mapping from different machines\n- Allow same machine to remap path\n- Allow different paths for different machines\n- Detect collisions in validation\n\n**Full Workflow Test:**\n- Complete end-to-end sync workflow covering all components\n\nTotal: 133 tests across 10 test files, all passing.","agent":"alexngai","anchor":null,"dismissed":false,"created_at":"2026-02-03T18:40:35.831Z","updated_at":"2026-02-03T18:40:35.831Z"}]}
|