@vpxa/kb 0.1.12 → 0.1.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +56 -39
- package/package.json +10 -7
- package/packages/analyzers/dist/blast-radius-analyzer.d.ts +17 -20
- package/packages/analyzers/dist/blast-radius-analyzer.js +6 -12
- package/packages/analyzers/dist/dependency-analyzer.d.ts +31 -27
- package/packages/analyzers/dist/dependency-analyzer.js +7 -9
- package/packages/analyzers/dist/diagram-generator.d.ts +12 -8
- package/packages/analyzers/dist/diagram-generator.js +3 -4
- package/packages/analyzers/dist/entry-point-analyzer.d.ts +39 -17
- package/packages/analyzers/dist/entry-point-analyzer.js +5 -5
- package/packages/analyzers/dist/index.d.ts +12 -14
- package/packages/analyzers/dist/index.js +1 -1
- package/packages/analyzers/dist/knowledge-producer.d.ts +29 -25
- package/packages/analyzers/dist/knowledge-producer.js +16 -15
- package/packages/analyzers/dist/pattern-analyzer.d.ts +14 -10
- package/packages/analyzers/dist/pattern-analyzer.js +3 -5
- package/packages/analyzers/dist/regex-call-graph.d.ts +6 -12
- package/packages/analyzers/dist/regex-call-graph.js +2 -1
- package/packages/analyzers/dist/structure-analyzer.d.ts +13 -9
- package/packages/analyzers/dist/structure-analyzer.js +3 -4
- package/packages/analyzers/dist/symbol-analyzer.d.ts +12 -8
- package/packages/analyzers/dist/symbol-analyzer.js +8 -13
- package/packages/analyzers/dist/ts-call-graph.d.ts +16 -13
- package/packages/analyzers/dist/ts-call-graph.js +2 -1
- package/packages/analyzers/dist/types.d.ts +82 -79
- package/packages/analyzers/dist/types.js +1 -0
- package/packages/chunker/dist/call-graph-extractor.d.ts +13 -10
- package/packages/chunker/dist/call-graph-extractor.js +2 -1
- package/packages/chunker/dist/chunker-factory.d.ts +6 -2
- package/packages/chunker/dist/chunker-factory.js +2 -1
- package/packages/chunker/dist/chunker.interface.d.ts +8 -4
- package/packages/chunker/dist/chunker.interface.js +1 -0
- package/packages/chunker/dist/code-chunker.d.ts +16 -12
- package/packages/chunker/dist/code-chunker.js +12 -14
- package/packages/chunker/dist/generic-chunker.d.ts +14 -10
- package/packages/chunker/dist/generic-chunker.js +6 -5
- package/packages/chunker/dist/index.d.ts +8 -8
- package/packages/chunker/dist/index.js +1 -1
- package/packages/chunker/dist/markdown-chunker.d.ts +16 -12
- package/packages/chunker/dist/markdown-chunker.js +4 -10
- package/packages/chunker/dist/treesitter-chunker.d.ts +28 -31
- package/packages/chunker/dist/treesitter-chunker.js +7 -8
- package/packages/cli/dist/commands/analyze.d.ts +6 -2
- package/packages/cli/dist/commands/analyze.js +3 -3
- package/packages/cli/dist/commands/context-cmds.d.ts +6 -2
- package/packages/cli/dist/commands/context-cmds.js +2 -1
- package/packages/cli/dist/commands/environment.d.ts +6 -2
- package/packages/cli/dist/commands/environment.js +2 -2
- package/packages/cli/dist/commands/execution.d.ts +6 -2
- package/packages/cli/dist/commands/execution.js +2 -1
- package/packages/cli/dist/commands/graph.d.ts +6 -2
- package/packages/cli/dist/commands/graph.js +6 -6
- package/packages/cli/dist/commands/init/adapters.d.ts +27 -0
- package/packages/cli/dist/commands/init/adapters.js +2 -0
- package/packages/cli/dist/commands/init/config.d.ts +11 -0
- package/packages/cli/dist/commands/init/config.js +4 -0
- package/packages/cli/dist/commands/init/curated.d.ts +8 -0
- package/packages/cli/dist/commands/init/curated.js +2 -0
- package/packages/cli/dist/commands/init/index.d.ts +23 -0
- package/packages/cli/dist/commands/init/index.js +3 -0
- package/packages/cli/dist/commands/init/scaffold.d.ts +24 -0
- package/packages/cli/dist/commands/init/scaffold.js +2 -0
- package/packages/cli/dist/commands/init/templates.d.ts +10 -0
- package/packages/cli/dist/commands/init/templates.js +302 -0
- package/packages/cli/dist/commands/init.d.ts +9 -3
- package/packages/cli/dist/commands/init.js +253 -197
- package/packages/cli/dist/commands/knowledge.d.ts +6 -2
- package/packages/cli/dist/commands/knowledge.js +2 -1
- package/packages/cli/dist/commands/search.d.ts +6 -2
- package/packages/cli/dist/commands/search.js +2 -8
- package/packages/cli/dist/commands/system.d.ts +6 -2
- package/packages/cli/dist/commands/system.js +5 -4
- package/packages/cli/dist/commands/workspace.d.ts +6 -2
- package/packages/cli/dist/commands/workspace.js +2 -2
- package/packages/cli/dist/context.d.ts +7 -4
- package/packages/cli/dist/context.js +2 -1
- package/packages/cli/dist/helpers.d.ts +51 -47
- package/packages/cli/dist/helpers.js +6 -3
- package/packages/cli/dist/index.d.ts +4 -1
- package/packages/cli/dist/index.js +3 -2
- package/packages/cli/dist/kb-init.d.ts +48 -50
- package/packages/cli/dist/kb-init.js +2 -1
- package/packages/cli/dist/types.d.ts +8 -5
- package/packages/cli/dist/types.js +1 -0
- package/packages/core/dist/constants.d.ts +36 -33
- package/packages/core/dist/constants.js +2 -1
- package/packages/core/dist/content-detector.d.ts +10 -5
- package/packages/core/dist/content-detector.js +2 -1
- package/packages/core/dist/errors.d.ts +15 -12
- package/packages/core/dist/errors.js +2 -1
- package/packages/core/dist/index.d.ts +6 -6
- package/packages/core/dist/index.js +1 -1
- package/packages/core/dist/logger.d.ts +16 -7
- package/packages/core/dist/logger.js +2 -1
- package/packages/core/dist/types.d.ts +108 -90
- package/packages/core/dist/types.js +2 -0
- package/packages/embeddings/dist/embedder.interface.d.ts +22 -19
- package/packages/embeddings/dist/embedder.interface.js +1 -0
- package/packages/embeddings/dist/index.d.ts +3 -3
- package/packages/embeddings/dist/index.js +1 -1
- package/packages/embeddings/dist/onnx-embedder.d.ts +21 -22
- package/packages/embeddings/dist/onnx-embedder.js +2 -1
- package/packages/enterprise-bridge/dist/cache.d.ts +29 -0
- package/packages/enterprise-bridge/dist/cache.js +2 -0
- package/packages/enterprise-bridge/dist/er-client.d.ts +38 -0
- package/packages/enterprise-bridge/dist/er-client.js +2 -0
- package/packages/enterprise-bridge/dist/evolution-collector.d.ts +63 -0
- package/packages/enterprise-bridge/dist/evolution-collector.js +2 -0
- package/packages/enterprise-bridge/dist/index.d.ts +8 -0
- package/packages/enterprise-bridge/dist/index.js +1 -0
- package/packages/enterprise-bridge/dist/policy-store.d.ts +46 -0
- package/packages/enterprise-bridge/dist/policy-store.js +2 -0
- package/packages/enterprise-bridge/dist/push-adapter.d.ts +24 -0
- package/packages/enterprise-bridge/dist/push-adapter.js +2 -0
- package/packages/enterprise-bridge/dist/result-merger.d.ts +15 -0
- package/packages/enterprise-bridge/dist/result-merger.js +2 -0
- package/packages/enterprise-bridge/dist/types.d.ts +82 -0
- package/packages/enterprise-bridge/dist/types.js +2 -0
- package/packages/indexer/dist/file-hasher.d.ts +5 -2
- package/packages/indexer/dist/file-hasher.js +2 -1
- package/packages/indexer/dist/filesystem-crawler.d.ts +23 -20
- package/packages/indexer/dist/filesystem-crawler.js +2 -1
- package/packages/indexer/dist/graph-extractor.d.ts +9 -12
- package/packages/indexer/dist/graph-extractor.js +2 -1
- package/packages/indexer/dist/incremental-indexer.d.ts +49 -43
- package/packages/indexer/dist/incremental-indexer.js +2 -1
- package/packages/indexer/dist/index.d.ts +5 -5
- package/packages/indexer/dist/index.js +1 -1
- package/packages/server/dist/api.d.ts +3 -8
- package/packages/server/dist/api.js +1 -1
- package/packages/server/dist/config.d.ts +6 -2
- package/packages/server/dist/config.js +2 -1
- package/packages/server/dist/curated-manager.d.ts +79 -76
- package/packages/server/dist/curated-manager.js +6 -10
- package/packages/server/dist/index.d.ts +1 -2
- package/packages/server/dist/index.js +2 -1
- package/packages/server/dist/replay-interceptor.d.ts +6 -6
- package/packages/server/dist/replay-interceptor.js +2 -1
- package/packages/server/dist/resources/resources.d.ts +7 -3
- package/packages/server/dist/resources/resources.js +3 -2
- package/packages/server/dist/server.d.ts +34 -24
- package/packages/server/dist/server.js +2 -1
- package/packages/server/dist/tools/analyze.tools.d.ts +14 -10
- package/packages/server/dist/tools/analyze.tools.js +2 -1
- package/packages/server/dist/tools/audit.tool.d.ts +9 -0
- package/packages/server/dist/tools/audit.tool.js +2 -0
- package/packages/server/dist/tools/bridge.tools.d.ts +35 -0
- package/packages/server/dist/tools/bridge.tools.js +16 -0
- package/packages/server/dist/tools/evolution.tools.d.ts +8 -0
- package/packages/server/dist/tools/evolution.tools.js +6 -0
- package/packages/server/dist/tools/forge.tools.d.ts +13 -11
- package/packages/server/dist/tools/forge.tools.js +11 -13
- package/packages/server/dist/tools/forget.tool.d.ts +7 -3
- package/packages/server/dist/tools/forget.tool.js +2 -7
- package/packages/server/dist/tools/graph.tool.d.ts +7 -3
- package/packages/server/dist/tools/graph.tool.js +5 -5
- package/packages/server/dist/tools/list.tool.d.ts +7 -3
- package/packages/server/dist/tools/list.tool.js +3 -8
- package/packages/server/dist/tools/lookup.tool.d.ts +7 -3
- package/packages/server/dist/tools/lookup.tool.js +3 -9
- package/packages/server/dist/tools/onboard.tool.d.ts +8 -4
- package/packages/server/dist/tools/onboard.tool.js +3 -2
- package/packages/server/dist/tools/policy.tools.d.ts +8 -0
- package/packages/server/dist/tools/policy.tools.js +3 -0
- package/packages/server/dist/tools/produce.tool.d.ts +6 -2
- package/packages/server/dist/tools/produce.tool.js +3 -2
- package/packages/server/dist/tools/read.tool.d.ts +7 -3
- package/packages/server/dist/tools/read.tool.js +3 -6
- package/packages/server/dist/tools/reindex.tool.d.ts +10 -6
- package/packages/server/dist/tools/reindex.tool.js +3 -2
- package/packages/server/dist/tools/remember.tool.d.ts +8 -3
- package/packages/server/dist/tools/remember.tool.js +4 -5
- package/packages/server/dist/tools/replay.tool.d.ts +6 -2
- package/packages/server/dist/tools/replay.tool.js +3 -6
- package/packages/server/dist/tools/search.tool.d.ts +10 -4
- package/packages/server/dist/tools/search.tool.js +7 -18
- package/packages/server/dist/tools/status.tool.d.ts +7 -3
- package/packages/server/dist/tools/status.tool.js +3 -3
- package/packages/server/dist/tools/toolkit.tools.d.ts +36 -34
- package/packages/server/dist/tools/toolkit.tools.js +20 -21
- package/packages/server/dist/tools/update.tool.d.ts +7 -3
- package/packages/server/dist/tools/update.tool.js +2 -6
- package/packages/server/dist/tools/utility.tools.d.ts +15 -14
- package/packages/server/dist/tools/utility.tools.js +11 -23
- package/packages/server/dist/version-check.d.ts +5 -1
- package/packages/server/dist/version-check.js +2 -1
- package/packages/store/dist/graph-store.interface.d.ts +89 -86
- package/packages/store/dist/graph-store.interface.js +1 -0
- package/packages/store/dist/index.d.ts +6 -6
- package/packages/store/dist/index.js +1 -1
- package/packages/store/dist/lance-store.d.ts +37 -30
- package/packages/store/dist/lance-store.js +2 -1
- package/packages/store/dist/sqlite-graph-store.d.ts +43 -46
- package/packages/store/dist/sqlite-graph-store.js +14 -13
- package/packages/store/dist/store-factory.d.ts +11 -7
- package/packages/store/dist/store-factory.js +2 -1
- package/packages/store/dist/store.interface.d.ts +47 -44
- package/packages/store/dist/store.interface.js +1 -0
- package/packages/tools/dist/audit.d.ts +66 -0
- package/packages/tools/dist/audit.js +7 -0
- package/packages/tools/dist/batch.d.ts +20 -17
- package/packages/tools/dist/batch.js +2 -1
- package/packages/tools/dist/changelog.d.ts +29 -26
- package/packages/tools/dist/changelog.js +3 -2
- package/packages/tools/dist/check.d.ts +45 -22
- package/packages/tools/dist/check.js +3 -2
- package/packages/tools/dist/checkpoint.d.ts +17 -14
- package/packages/tools/dist/checkpoint.js +2 -2
- package/packages/tools/dist/codemod.d.ts +35 -32
- package/packages/tools/dist/codemod.js +3 -2
- package/packages/tools/dist/compact.d.ts +34 -35
- package/packages/tools/dist/compact.js +3 -2
- package/packages/tools/dist/data-transform.d.ts +10 -7
- package/packages/tools/dist/data-transform.js +2 -1
- package/packages/tools/dist/dead-symbols.d.ts +29 -17
- package/packages/tools/dist/dead-symbols.js +3 -2
- package/packages/tools/dist/delegate.d.ts +26 -23
- package/packages/tools/dist/delegate.js +2 -5
- package/packages/tools/dist/diff-parse.d.ts +24 -21
- package/packages/tools/dist/diff-parse.js +4 -3
- package/packages/tools/dist/digest.d.ts +43 -45
- package/packages/tools/dist/digest.js +5 -5
- package/packages/tools/dist/encode.d.ts +11 -8
- package/packages/tools/dist/encode.js +2 -1
- package/packages/tools/dist/env-info.d.ts +25 -22
- package/packages/tools/dist/env-info.js +2 -1
- package/packages/tools/dist/eval.d.ts +13 -10
- package/packages/tools/dist/eval.js +3 -3
- package/packages/tools/dist/evidence-map.d.ts +64 -61
- package/packages/tools/dist/evidence-map.js +3 -3
- package/packages/tools/dist/file-cache.d.ts +42 -0
- package/packages/tools/dist/file-cache.js +4 -0
- package/packages/tools/dist/file-summary.d.ts +34 -29
- package/packages/tools/dist/file-summary.js +3 -2
- package/packages/tools/dist/file-walk.d.ts +6 -3
- package/packages/tools/dist/file-walk.js +2 -1
- package/packages/tools/dist/find-examples.d.ts +26 -21
- package/packages/tools/dist/find-examples.js +4 -3
- package/packages/tools/dist/find.d.ts +39 -40
- package/packages/tools/dist/find.js +2 -1
- package/packages/tools/dist/forge-classify.d.ts +35 -38
- package/packages/tools/dist/forge-classify.js +3 -2
- package/packages/tools/dist/forge-ground.d.ts +58 -60
- package/packages/tools/dist/forge-ground.js +2 -1
- package/packages/tools/dist/git-context.d.ts +22 -19
- package/packages/tools/dist/git-context.js +4 -3
- package/packages/tools/dist/graph-query.d.ts +75 -78
- package/packages/tools/dist/graph-query.js +2 -1
- package/packages/tools/dist/guide.d.ts +26 -0
- package/packages/tools/dist/guide.js +2 -0
- package/packages/tools/dist/health.d.ts +13 -10
- package/packages/tools/dist/health.js +3 -1
- package/packages/tools/dist/http-request.d.ts +20 -17
- package/packages/tools/dist/http-request.js +2 -1
- package/packages/tools/dist/index.d.ts +54 -49
- package/packages/tools/dist/index.js +1 -1
- package/packages/tools/dist/lane.d.ts +28 -25
- package/packages/tools/dist/lane.js +7 -7
- package/packages/tools/dist/measure.d.ts +32 -29
- package/packages/tools/dist/measure.js +3 -2
- package/packages/tools/dist/onboard.d.ts +29 -26
- package/packages/tools/dist/onboard.js +18 -41
- package/packages/tools/dist/parse-output.d.ts +48 -45
- package/packages/tools/dist/parse-output.js +3 -2
- package/packages/tools/dist/path-resolver.d.ts +15 -0
- package/packages/tools/dist/path-resolver.js +2 -0
- package/packages/tools/dist/process-manager.d.ts +18 -15
- package/packages/tools/dist/process-manager.js +2 -1
- package/packages/tools/dist/queue.d.ts +28 -25
- package/packages/tools/dist/queue.js +2 -2
- package/packages/tools/dist/regex-test.d.ts +26 -23
- package/packages/tools/dist/regex-test.js +2 -1
- package/packages/tools/dist/rename.d.ts +28 -25
- package/packages/tools/dist/rename.js +3 -2
- package/packages/tools/dist/replay.d.ts +33 -30
- package/packages/tools/dist/replay.js +5 -6
- package/packages/tools/dist/response-envelope.d.ts +44 -0
- package/packages/tools/dist/response-envelope.js +2 -0
- package/packages/tools/dist/schema-validate.d.ts +15 -12
- package/packages/tools/dist/schema-validate.js +2 -1
- package/packages/tools/dist/scope-map.d.ts +45 -45
- package/packages/tools/dist/scope-map.js +2 -1
- package/packages/tools/dist/snippet.d.ts +26 -24
- package/packages/tools/dist/snippet.js +2 -1
- package/packages/tools/dist/stash.d.ts +13 -10
- package/packages/tools/dist/stash.js +2 -2
- package/packages/tools/dist/stratum-card.d.ts +27 -27
- package/packages/tools/dist/stratum-card.js +4 -5
- package/packages/tools/dist/symbol.d.ts +29 -25
- package/packages/tools/dist/symbol.js +4 -3
- package/packages/tools/dist/test-run.d.ts +19 -15
- package/packages/tools/dist/test-run.js +3 -2
- package/packages/tools/dist/text-utils.d.ts +6 -3
- package/packages/tools/dist/text-utils.js +3 -2
- package/packages/tools/dist/time-utils.d.ts +15 -12
- package/packages/tools/dist/time-utils.js +2 -1
- package/packages/tools/dist/trace.d.ts +24 -20
- package/packages/tools/dist/trace.js +3 -2
- package/packages/tools/dist/truncation.d.ts +14 -2
- package/packages/tools/dist/truncation.js +8 -14
- package/packages/tools/dist/watch.d.ts +28 -25
- package/packages/tools/dist/watch.js +2 -1
- package/packages/tools/dist/web-fetch.d.ts +35 -32
- package/packages/tools/dist/web-fetch.js +7 -12
- package/packages/tools/dist/web-search.d.ts +16 -13
- package/packages/tools/dist/web-search.js +2 -1
- package/packages/tools/dist/workset.d.ts +19 -16
- package/packages/tools/dist/workset.js +2 -2
- package/packages/tui/dist/App-BAlmxCCw.js +3 -0
- package/packages/tui/dist/App.d.ts +11 -5
- package/packages/tui/dist/App.js +1 -450
- package/packages/tui/dist/CuratedPanel-sYdZAICX.js +3 -0
- package/packages/tui/dist/LogPanel-DVB8Sv46.js +4 -0
- package/packages/tui/dist/SearchPanel-DREo6zgt.js +3 -0
- package/packages/tui/dist/StatusPanel-2ex8fLOO.js +3 -0
- package/packages/tui/dist/chunk-D6axbAb-.js +2 -0
- package/packages/tui/dist/devtools-DUyj952l.js +8 -0
- package/packages/tui/dist/embedder.interface-D4ew0HPW.d.ts +29 -0
- package/packages/tui/dist/index-B9VpfVPP.d.ts +14 -0
- package/packages/tui/dist/index.d.ts +3 -19
- package/packages/tui/dist/index.js +2 -476
- package/packages/tui/dist/jsx-runtime-Cof-kwFn.js +317 -0
- package/packages/tui/dist/panels/CuratedPanel.d.ts +11 -5
- package/packages/tui/dist/panels/CuratedPanel.js +1 -371
- package/packages/tui/dist/panels/LogPanel.d.ts +7 -2
- package/packages/tui/dist/panels/LogPanel.js +1 -449
- package/packages/tui/dist/panels/SearchPanel.d.ts +14 -7
- package/packages/tui/dist/panels/SearchPanel.js +1 -372
- package/packages/tui/dist/panels/StatusPanel.d.ts +11 -5
- package/packages/tui/dist/panels/StatusPanel.js +1 -371
- package/packages/tui/dist/store.interface-CnY6SPOH.d.ts +151 -0
- package/scaffold/adapters/claude-code.mjs +20 -0
- package/scaffold/adapters/copilot.mjs +320 -0
- package/scaffold/copilot/agents/Architect-Reviewer-Alpha.agent.md +14 -0
- package/scaffold/copilot/agents/Architect-Reviewer-Beta.agent.md +14 -0
- package/scaffold/copilot/agents/Code-Reviewer-Alpha.agent.md +12 -0
- package/scaffold/copilot/agents/Code-Reviewer-Beta.agent.md +12 -0
- package/scaffold/copilot/agents/Debugger.agent.md +31 -0
- package/scaffold/copilot/agents/Documenter.agent.md +35 -0
- package/scaffold/copilot/agents/Explorer.agent.md +50 -0
- package/scaffold/copilot/agents/Frontend.agent.md +29 -0
- package/scaffold/copilot/agents/Implementer.agent.md +31 -0
- package/scaffold/copilot/agents/Orchestrator.agent.md +96 -0
- package/scaffold/copilot/agents/Planner.agent.md +45 -0
- package/scaffold/copilot/agents/README.md +57 -0
- package/scaffold/copilot/agents/Refactor.agent.md +30 -0
- package/scaffold/copilot/agents/Researcher-Alpha.agent.md +12 -0
- package/scaffold/copilot/agents/Researcher-Beta.agent.md +12 -0
- package/scaffold/copilot/agents/Researcher-Delta.agent.md +12 -0
- package/scaffold/copilot/agents/Researcher-Gamma.agent.md +12 -0
- package/scaffold/copilot/agents/Security.agent.md +42 -0
- package/scaffold/copilot/agents/_shared/adr-protocol.md +91 -0
- package/scaffold/copilot/agents/_shared/architect-reviewer-base.md +50 -0
- package/scaffold/copilot/agents/_shared/code-agent-base.md +70 -0
- package/scaffold/copilot/agents/_shared/code-reviewer-base.md +54 -0
- package/scaffold/copilot/agents/_shared/decision-protocol.md +27 -0
- package/scaffold/copilot/agents/_shared/forge-protocol.md +46 -0
- package/scaffold/copilot/agents/_shared/researcher-base.md +61 -0
- package/scaffold/copilot/agents/templates/adr-template.md +27 -0
- package/scaffold/copilot/agents/templates/execution-state.md +25 -0
- package/scaffold/copilot/prompts/ask.prompt.md +20 -0
- package/scaffold/copilot/prompts/debug.prompt.md +25 -0
- package/scaffold/copilot/prompts/design.prompt.md +22 -0
- package/scaffold/copilot/prompts/implement.prompt.md +26 -0
- package/scaffold/copilot/prompts/plan.prompt.md +24 -0
- package/scaffold/copilot/prompts/review.prompt.md +31 -0
- package/scaffold/definitions/agents.mjs +165 -0
- package/scaffold/definitions/bodies.mjs +292 -0
- package/scaffold/definitions/hooks.mjs +43 -0
- package/scaffold/definitions/models.mjs +56 -0
- package/scaffold/definitions/plugins.mjs +24 -0
- package/scaffold/definitions/prompts.mjs +145 -0
- package/scaffold/definitions/protocols.mjs +322 -0
- package/scaffold/definitions/tools.mjs +176 -0
- package/scaffold/generate.mjs +74 -0
- package/skills/brainstorming/SKILL.md +259 -0
- package/skills/brainstorming/scripts/frame-template.html +365 -0
- package/skills/brainstorming/scripts/helper.js +216 -0
- package/skills/brainstorming/scripts/server.cjs +9 -0
- package/skills/brainstorming/scripts/server.src.cjs +249 -0
- package/skills/brainstorming/spec-document-reviewer-prompt.md +49 -0
- package/skills/brainstorming/visual-companion.md +430 -0
- package/skills/knowledge-base/SKILL.md +34 -21
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import { createRequire as __createRequire } from 'node:module'; const require = __createRequire(import.meta.url);
|
|
2
|
+
//#region packages/core/dist/types.d.ts
|
|
3
|
+
//#region packages/core/src/types.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Core types for the MCP Knowledge Base system.
|
|
6
|
+
*/
|
|
7
|
+
/** The origin of a knowledge record — how it was created */
|
|
8
|
+
declare const KNOWLEDGE_ORIGINS: readonly ["indexed", "curated", "produced"];
|
|
9
|
+
type KnowledgeOrigin = (typeof KNOWLEDGE_ORIGINS)[number];
|
|
10
|
+
/** Coarse source classification derived from ContentType */
|
|
11
|
+
declare const SOURCE_TYPES: readonly ["source", "documentation", "test", "config", "generated"];
|
|
12
|
+
type SourceType = (typeof SOURCE_TYPES)[number];
|
|
13
|
+
/** Content type classification */
|
|
14
|
+
declare const CONTENT_TYPES: readonly ["documentation", "code-typescript", "code-javascript", "code-python", "code-other", "config-json", "config-yaml", "config-toml", "config-env", "test-code", "cdk-stack", "markdown", "curated-knowledge", "produced-knowledge", "unknown"];
|
|
15
|
+
type ContentType = (typeof CONTENT_TYPES)[number];
|
|
16
|
+
/** A single knowledge record stored in the vector DB */
|
|
17
|
+
interface KnowledgeRecord {
|
|
18
|
+
/** Unique identifier (deterministic hash of source + chunk index) */
|
|
19
|
+
id: string;
|
|
20
|
+
/** The text content of this chunk */
|
|
21
|
+
content: string;
|
|
22
|
+
/** Source file path relative to workspace root */
|
|
23
|
+
sourcePath: string;
|
|
24
|
+
/** Content type classification */
|
|
25
|
+
contentType: ContentType;
|
|
26
|
+
/** Heading path for markdown (e.g., "## Setup > ### Prerequisites") */
|
|
27
|
+
headingPath?: string;
|
|
28
|
+
/** Zero-based chunk index within the source file */
|
|
29
|
+
chunkIndex: number;
|
|
30
|
+
/** Total number of chunks from this source file */
|
|
31
|
+
totalChunks: number;
|
|
32
|
+
/** Start line in source file (1-based) */
|
|
33
|
+
startLine: number;
|
|
34
|
+
/** End line in source file (1-based) */
|
|
35
|
+
endLine: number;
|
|
36
|
+
/** File hash for incremental indexing */
|
|
37
|
+
fileHash: string;
|
|
38
|
+
/** ISO timestamp when this record was created/updated */
|
|
39
|
+
indexedAt: string;
|
|
40
|
+
/** How this record was created */
|
|
41
|
+
origin: KnowledgeOrigin;
|
|
42
|
+
/** User-defined tags for categorization */
|
|
43
|
+
tags: string[];
|
|
44
|
+
/** Category for curated/produced knowledge */
|
|
45
|
+
category?: string;
|
|
46
|
+
/** Version number for curated knowledge updates */
|
|
47
|
+
version: number;
|
|
48
|
+
}
|
|
49
|
+
/** A raw chunk produced by a chunker before embedding */
|
|
50
|
+
/** Search result returned by the store */
|
|
51
|
+
interface SearchResult {
|
|
52
|
+
/** The matching knowledge record */
|
|
53
|
+
record: KnowledgeRecord;
|
|
54
|
+
/** Similarity score (0-1, higher = more similar) */
|
|
55
|
+
score: number;
|
|
56
|
+
}
|
|
57
|
+
/** Configuration loaded from kb.config.json */
|
|
58
|
+
interface KBConfig {
|
|
59
|
+
/** MCP server name. Defaults to 'kb'. */
|
|
60
|
+
serverName?: string;
|
|
61
|
+
sources: Array<{
|
|
62
|
+
path: string;
|
|
63
|
+
excludePatterns: string[];
|
|
64
|
+
}>;
|
|
65
|
+
indexing: {
|
|
66
|
+
chunkSize: number;
|
|
67
|
+
chunkOverlap: number;
|
|
68
|
+
minChunkSize: number; /** Max files processed concurrently. Defaults to half of available CPU cores. */
|
|
69
|
+
concurrency?: number;
|
|
70
|
+
};
|
|
71
|
+
embedding: {
|
|
72
|
+
model: string;
|
|
73
|
+
dimensions: number;
|
|
74
|
+
};
|
|
75
|
+
store: {
|
|
76
|
+
backend: string;
|
|
77
|
+
path: string;
|
|
78
|
+
};
|
|
79
|
+
curated: {
|
|
80
|
+
path: string;
|
|
81
|
+
};
|
|
82
|
+
/** Enterprise RAG bridge configuration (optional) */
|
|
83
|
+
er?: {
|
|
84
|
+
/** Whether ER integration is enabled */enabled: boolean; /** Base URL of the ER API (e.g., https://xxx.execute-api.region.amazonaws.com/prod) */
|
|
85
|
+
baseUrl: string; /** Request timeout in milliseconds. Defaults to 5000. */
|
|
86
|
+
timeoutMs?: number; /** Cache TTL in milliseconds. Defaults to 21600000 (6 hours). */
|
|
87
|
+
cacheTtlMs?: number; /** Maximum cache entries. Defaults to 100. */
|
|
88
|
+
cacheMaxEntries?: number; /** Vector similarity threshold below which ER fallback triggers. Defaults to 0.45. */
|
|
89
|
+
fallbackThreshold?: number;
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
/** Index statistics */
|
|
93
|
+
interface IndexStats {
|
|
94
|
+
totalRecords: number;
|
|
95
|
+
totalFiles: number;
|
|
96
|
+
contentTypeBreakdown: Record<string, number>;
|
|
97
|
+
lastIndexedAt: string | null;
|
|
98
|
+
storeBackend: string;
|
|
99
|
+
embeddingModel: string;
|
|
100
|
+
} //#endregion
|
|
101
|
+
//#endregion
|
|
102
|
+
//#region packages/store/dist/store.interface.d.ts
|
|
103
|
+
//#region packages/store/src/store.interface.d.ts
|
|
104
|
+
/** Options for searching the store */
|
|
105
|
+
interface SearchOptions {
|
|
106
|
+
/** Maximum number of results to return */
|
|
107
|
+
limit?: number;
|
|
108
|
+
/** Minimum similarity score (0-1) */
|
|
109
|
+
minScore?: number;
|
|
110
|
+
/** Filter by content type */
|
|
111
|
+
contentType?: ContentType;
|
|
112
|
+
/** Filter by coarse source type (source, documentation, test, config, generated) */
|
|
113
|
+
sourceType?: SourceType;
|
|
114
|
+
/** Filter by origin */
|
|
115
|
+
origin?: KnowledgeOrigin;
|
|
116
|
+
/** Filter by category */
|
|
117
|
+
category?: string;
|
|
118
|
+
/** Filter by tags (any match) */
|
|
119
|
+
tags?: string[];
|
|
120
|
+
}
|
|
121
|
+
interface IKnowledgeStore {
|
|
122
|
+
/** Initialize the store (create tables, etc.) */
|
|
123
|
+
initialize(): Promise<void>;
|
|
124
|
+
/** Add or update records with their embedding vectors */
|
|
125
|
+
upsert(records: KnowledgeRecord[], vectors: Float32Array[]): Promise<void>;
|
|
126
|
+
/** Search by vector similarity */
|
|
127
|
+
search(queryVector: Float32Array, options?: SearchOptions): Promise<SearchResult[]>;
|
|
128
|
+
/** Get a specific record by ID */
|
|
129
|
+
getById(id: string): Promise<KnowledgeRecord | null>;
|
|
130
|
+
/** Delete records by source path (used during re-indexing) */
|
|
131
|
+
deleteBySourcePath(sourcePath: string): Promise<number>;
|
|
132
|
+
/** Delete a specific record by ID */
|
|
133
|
+
deleteById(id: string): Promise<boolean>;
|
|
134
|
+
/** Get all records for a source path */
|
|
135
|
+
getBySourcePath(sourcePath: string): Promise<KnowledgeRecord[]>;
|
|
136
|
+
/** Get index statistics */
|
|
137
|
+
getStats(): Promise<IndexStats>;
|
|
138
|
+
/** List all unique source paths in the store */
|
|
139
|
+
listSourcePaths(): Promise<string[]>;
|
|
140
|
+
/** Create a full-text search index on the content column for keyword search */
|
|
141
|
+
createFtsIndex(): Promise<void>;
|
|
142
|
+
/** Full-text keyword search (requires FTS index) */
|
|
143
|
+
ftsSearch(query: string, options?: SearchOptions): Promise<SearchResult[]>;
|
|
144
|
+
/** Drop the backing table entirely — used for hard resets (e.g. dimension changes) */
|
|
145
|
+
dropTable(): Promise<void>;
|
|
146
|
+
/** Close the store connection */
|
|
147
|
+
close(): Promise<void>;
|
|
148
|
+
} //#endregion
|
|
149
|
+
//#endregion
|
|
150
|
+
export { KBConfig as n, IKnowledgeStore as t };
|
|
151
|
+
//# sourceMappingURL=store.interface-CnY6SPOH.d.ts.map
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Claude Code adapter — generates Claude Code config from definitions.
|
|
3
|
+
*
|
|
4
|
+
* Output format:
|
|
5
|
+
* CLAUDE.md — Main instructions (agents + protocols inline)
|
|
6
|
+
* .claude/settings.json — Hooks config
|
|
7
|
+
* .mcp.json — MCP server config
|
|
8
|
+
* .claude/commands/{name}.md — Slash commands (from prompts)
|
|
9
|
+
*
|
|
10
|
+
* Status: STUB — not yet implemented.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
export function generateClaudeCode() {
|
|
14
|
+
// TODO: Implement Claude Code adapter
|
|
15
|
+
// - Inline agent instructions into CLAUDE.md sections
|
|
16
|
+
// - Map prompts to slash commands
|
|
17
|
+
// - Map hooks to .claude/settings.json hooks config
|
|
18
|
+
// - Generate .mcp.json
|
|
19
|
+
return [];
|
|
20
|
+
}
|
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copilot adapter — generates GitHub Copilot agent files from definitions.
|
|
3
|
+
*
|
|
4
|
+
* Output format:
|
|
5
|
+
* agents/{Name}.agent.md — YAML frontmatter + markdown body
|
|
6
|
+
* agents/_shared/{name}.md — Shared protocol files
|
|
7
|
+
* agents/templates/execution-state.md
|
|
8
|
+
* agents/README.md
|
|
9
|
+
* prompts/{name}.prompt.md — YAML frontmatter + markdown body
|
|
10
|
+
*
|
|
11
|
+
* Copilot-specific conventions:
|
|
12
|
+
* - model field appends " (copilot)" suffix
|
|
13
|
+
* - tools are listed as YAML array in frontmatter
|
|
14
|
+
* - prompts target a specific agent via `agent:` field
|
|
15
|
+
* - hooks are embedded in copilot-instructions.md (not separate files)
|
|
16
|
+
* - plugins/skills are SKILL.md files in .github/skills/
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
import { AGENTS } from '../definitions/agents.mjs';
|
|
20
|
+
import { AGENT_BODIES } from '../definitions/bodies.mjs';
|
|
21
|
+
import { MODELS, VARIANT_GROUPS } from '../definitions/models.mjs';
|
|
22
|
+
import { PROMPTS } from '../definitions/prompts.mjs';
|
|
23
|
+
import { PROTOCOLS } from '../definitions/protocols.mjs';
|
|
24
|
+
import { IDE_CAPABILITIES, KB_TOOLS } from '../definitions/tools.mjs';
|
|
25
|
+
|
|
26
|
+
// ─── Copilot tool mapping ─────────────────────────────────────────────────
|
|
27
|
+
|
|
28
|
+
/** Map abstract IDE capability names to Copilot tool identifiers */
|
|
29
|
+
const COPILOT_TOOL_MAP = {
|
|
30
|
+
terminal: 'execute/runInTerminal',
|
|
31
|
+
problems: 'read/problems',
|
|
32
|
+
readFile: 'read/readFile',
|
|
33
|
+
lastCommand: 'read/terminalLastCommand',
|
|
34
|
+
subagent: 'agent/runSubagent',
|
|
35
|
+
createFile: 'edit/createFile',
|
|
36
|
+
editFiles: 'edit/editFiles',
|
|
37
|
+
search: 'search/changes, search/codebase, search/usages',
|
|
38
|
+
web: 'web/fetch, web/githubRepo, cai-mcp/webFetch, cai-mcp/webSearch, ms-vscode.vscode-websearchforcopilot/websearch',
|
|
39
|
+
todo: 'todo',
|
|
40
|
+
memory: 'vscode/memory',
|
|
41
|
+
runCommand: 'vscode/runCommand',
|
|
42
|
+
switchAgent: 'vscode/switchAgent',
|
|
43
|
+
killTerminal: 'execute/killTerminal',
|
|
44
|
+
createTask: 'execute/createAndRunTask',
|
|
45
|
+
terminalSel: 'read/terminalSelection',
|
|
46
|
+
fileSearch: 'search/fileSearch',
|
|
47
|
+
listDir: 'search/listDirectory',
|
|
48
|
+
textSearch: 'search/textSearch',
|
|
49
|
+
searchResults: 'search/searchResults',
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
function buildToolsYaml(toolRole) {
|
|
53
|
+
const capabilities = IDE_CAPABILITIES[toolRole] || [];
|
|
54
|
+
const copilotTools = capabilities.map((cap) => COPILOT_TOOL_MAP[cap]).filter(Boolean);
|
|
55
|
+
const kbTools = KB_TOOLS.map((t) => `knowledge-base/${t}`);
|
|
56
|
+
return `[${[...copilotTools, ...kbTools].join(', ')}]`;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
function copilotModel(agentName) {
|
|
60
|
+
const base = MODELS[agentName];
|
|
61
|
+
return base ? `${base} (copilot)` : 'Claude Opus 4.6 (copilot)';
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
// ─── Agent file generators ────────────────────────────────────────────────
|
|
65
|
+
|
|
66
|
+
function buildAgentTable() {
|
|
67
|
+
const rows = [];
|
|
68
|
+
for (const [name, def] of Object.entries(AGENTS)) {
|
|
69
|
+
if (def.variants) {
|
|
70
|
+
for (const suffix of VARIANT_GROUPS[name] || []) {
|
|
71
|
+
const fullName = `${name}-${suffix}`;
|
|
72
|
+
const model = MODELS[fullName] || 'Unknown';
|
|
73
|
+
const varDef = def.variants[suffix] || {};
|
|
74
|
+
const desc = varDef.description || def.description;
|
|
75
|
+
rows.push(`| **${fullName}** | ${desc} | ${model} | ${def.category} |`);
|
|
76
|
+
}
|
|
77
|
+
} else {
|
|
78
|
+
const model = MODELS[name] || 'Unknown';
|
|
79
|
+
rows.push(`| **${name}** | ${def.description} | ${model} | ${def.category} |`);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return `| Agent | Purpose | Model | Category |\n|-------|---------|-------|----------|\n${rows.join('\n')}`;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
function generateVariantAgent(roleName, suffix, def) {
|
|
86
|
+
const fullName = `${roleName}-${suffix}`;
|
|
87
|
+
const varDef = def.variants[suffix] || {};
|
|
88
|
+
const model = copilotModel(fullName);
|
|
89
|
+
const desc = varDef.description || def.description;
|
|
90
|
+
const identity =
|
|
91
|
+
varDef.identity ||
|
|
92
|
+
(suffix === VARIANT_GROUPS[roleName]?.[0]
|
|
93
|
+
? `, the primary ${roleName} agent.`
|
|
94
|
+
: `, a variant of ${roleName}. Same responsibilities, different model perspective.`);
|
|
95
|
+
|
|
96
|
+
const sharedRef = def.sharedBase
|
|
97
|
+
? `\n**Read .github/agents/_shared/${def.sharedBase}.md NOW** — it contains your complete workflow and guidelines. All instructions there apply to you.`
|
|
98
|
+
: '';
|
|
99
|
+
|
|
100
|
+
const extra = def.extraBody ? `\n\n${def.extraBody}` : '';
|
|
101
|
+
|
|
102
|
+
const titleMap = {
|
|
103
|
+
Researcher: 'The Context Gatherer',
|
|
104
|
+
'Code-Reviewer': 'The Quality Guardian',
|
|
105
|
+
'Architect-Reviewer': 'The Structural Guardian',
|
|
106
|
+
};
|
|
107
|
+
const title = titleMap[roleName] || roleName;
|
|
108
|
+
|
|
109
|
+
return `---
|
|
110
|
+
description: '${desc}'
|
|
111
|
+
${def.argumentHint ? `argument-hint: ${def.argumentHint}\n` : ''}tools: ${buildToolsYaml(def.toolRole)}
|
|
112
|
+
model: ${model}
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
# ${fullName} - ${title}
|
|
116
|
+
|
|
117
|
+
You are **${fullName}**${identity}${extra}
|
|
118
|
+
${sharedRef}
|
|
119
|
+
`;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
function generateSingleAgent(name, def) {
|
|
123
|
+
const model = copilotModel(name);
|
|
124
|
+
const body =
|
|
125
|
+
typeof AGENT_BODIES[name] === 'function'
|
|
126
|
+
? AGENT_BODIES[name](buildAgentTable())
|
|
127
|
+
: AGENT_BODIES[name] || '';
|
|
128
|
+
|
|
129
|
+
const titleMap = {
|
|
130
|
+
Orchestrator: 'The Master Conductor',
|
|
131
|
+
Planner: 'The Strategic Architect',
|
|
132
|
+
Implementer: 'The Code Builder',
|
|
133
|
+
Frontend: 'The UI Specialist',
|
|
134
|
+
Debugger: 'The Problem Solver',
|
|
135
|
+
Refactor: 'The Code Sculptor',
|
|
136
|
+
Security: 'The Vulnerability Hunter',
|
|
137
|
+
Documenter: 'The Knowledge Keeper',
|
|
138
|
+
Explorer: 'The Rapid Scout',
|
|
139
|
+
};
|
|
140
|
+
const title = titleMap[name] || name;
|
|
141
|
+
|
|
142
|
+
return `---
|
|
143
|
+
description: '${def.description}'
|
|
144
|
+
${def.argumentHint ? `argument-hint: ${def.argumentHint}\n` : ''}tools: ${buildToolsYaml(def.toolRole)}
|
|
145
|
+
model: ${model}
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
# ${name} - ${title}
|
|
149
|
+
|
|
150
|
+
You are the **${name}**, ${def.description.toLowerCase().replace(/^./, (c) => c.toLowerCase())}
|
|
151
|
+
|
|
152
|
+
${body}
|
|
153
|
+
`;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
// ─── Prompt file generator ────────────────────────────────────────────────
|
|
157
|
+
|
|
158
|
+
function generatePrompt(_name, def) {
|
|
159
|
+
const kbTools = (def.tools || []).map((t) => `knowledge-base/${t}`);
|
|
160
|
+
const toolsYaml = kbTools.map((t) => ` - ${t}`).join('\n');
|
|
161
|
+
return `---
|
|
162
|
+
description: "${def.description}"
|
|
163
|
+
agent: "${def.agent}"
|
|
164
|
+
tools:
|
|
165
|
+
${toolsYaml}
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
${def.content}
|
|
169
|
+
`;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
// ─── Templates ────────────────────────────────────────────────────────────
|
|
173
|
+
|
|
174
|
+
const EXECUTION_STATE = `# Execution State: {Task Title}
|
|
175
|
+
|
|
176
|
+
**Status:** PLANNING | IN_PROGRESS | REVIEW | COMPLETED | BLOCKED
|
|
177
|
+
**Started:** {timestamp}
|
|
178
|
+
**Plan:** {link to plan file}
|
|
179
|
+
|
|
180
|
+
## Phases
|
|
181
|
+
|
|
182
|
+
| # | Title | Agent | Status | Batch |
|
|
183
|
+
|---|-------|-------|--------|-------|
|
|
184
|
+
|
|
185
|
+
## Current Batch
|
|
186
|
+
|
|
187
|
+
**Batch {N}:** {phases in this batch}
|
|
188
|
+
**Status:** IMPLEMENTING | REVIEWING | APPROVED
|
|
189
|
+
|
|
190
|
+
## Decisions Log
|
|
191
|
+
|
|
192
|
+
| Decision | Rationale | ADR |
|
|
193
|
+
|----------|-----------|-----|
|
|
194
|
+
|
|
195
|
+
## Blockers
|
|
196
|
+
|
|
197
|
+
| Issue | Severity | Assigned |
|
|
198
|
+
|-------|----------|----------|
|
|
199
|
+
`;
|
|
200
|
+
|
|
201
|
+
const ADR_TEMPLATE = `# DR-NNN: {Short Title}
|
|
202
|
+
|
|
203
|
+
**Status:** Proposed | Accepted | Rejected | Deprecated | Superseded
|
|
204
|
+
**Date:** YYYY-MM-DD
|
|
205
|
+
**Participants:** {which Researcher variants participated}
|
|
206
|
+
|
|
207
|
+
## Context
|
|
208
|
+
{What is the issue? Why are we making this decision?}
|
|
209
|
+
{If superseding, link: "Supersedes DR-NNN."}
|
|
210
|
+
|
|
211
|
+
## Decision
|
|
212
|
+
{What was decided and why — 2-5 sentences max}
|
|
213
|
+
|
|
214
|
+
## Decision Analysis Summary
|
|
215
|
+
| Model | Recommendation | Key Reasoning |
|
|
216
|
+
|-------|---------------|---------------|
|
|
217
|
+
|
|
218
|
+
**Agreements:** {what 3+ models agreed on}
|
|
219
|
+
**Disagreements:** {where they diverged}
|
|
220
|
+
|
|
221
|
+
## Consequences
|
|
222
|
+
**Positive:** {benefits}
|
|
223
|
+
**Negative:** {trade-offs accepted}
|
|
224
|
+
**Risks:** {what could go wrong, and any mitigations}
|
|
225
|
+
|
|
226
|
+
## Alternatives Considered
|
|
227
|
+
{Other approaches evaluated and why they were rejected — keeps the "why not" alongside the "why"}
|
|
228
|
+
`;
|
|
229
|
+
|
|
230
|
+
// ─── README generator ─────────────────────────────────────────────────────
|
|
231
|
+
|
|
232
|
+
function generateReadme() {
|
|
233
|
+
return `# Agents
|
|
234
|
+
|
|
235
|
+
This directory contains AI agent definitions generated by \`@vpxa/kb init\`.
|
|
236
|
+
|
|
237
|
+
## Agent Roster
|
|
238
|
+
|
|
239
|
+
${buildAgentTable()}
|
|
240
|
+
|
|
241
|
+
## Multi-Model Pattern
|
|
242
|
+
|
|
243
|
+
Variant agents (Researcher-Alpha/Beta/Gamma/Delta, Code-Reviewer-Alpha/Beta, Architect-Reviewer-Alpha/Beta) share the same methodology via files in \`_shared/\`. They differ only in which LLM model backs them — enabling multi-model decision analysis and dual-review workflows.
|
|
244
|
+
|
|
245
|
+
**Agent names are model-agnostic.** The model behind Alpha/Beta/Gamma/Delta can be changed in \`scaffold/definitions/models.mjs\` without renaming any agent files.
|
|
246
|
+
|
|
247
|
+
## Structure
|
|
248
|
+
|
|
249
|
+
\`\`\`
|
|
250
|
+
agents/
|
|
251
|
+
{Name}.agent.md — Agent definition (YAML frontmatter + instructions)
|
|
252
|
+
_shared/ — Shared protocols referenced by multiple agents
|
|
253
|
+
code-agent-base.md — Base for all code-modifying agents
|
|
254
|
+
researcher-base.md — Base for all Researcher variants
|
|
255
|
+
code-reviewer-base.md — Base for all Code-Reviewer variants
|
|
256
|
+
architect-reviewer-base.md — Base for all Architect-Reviewer variants
|
|
257
|
+
decision-protocol.md — Multi-model decision protocol rules
|
|
258
|
+
forge-protocol.md — FORGE quality gate protocol
|
|
259
|
+
templates/
|
|
260
|
+
execution-state.md — Orchestrator state tracking template
|
|
261
|
+
adr-template.md — Architecture Decision Record template
|
|
262
|
+
\`\`\`
|
|
263
|
+
|
|
264
|
+
## Regenerating
|
|
265
|
+
|
|
266
|
+
To regenerate after changing models or agent definitions:
|
|
267
|
+
|
|
268
|
+
\`\`\`bash
|
|
269
|
+
cd knowledge-base
|
|
270
|
+
node scaffold/generate.mjs
|
|
271
|
+
\`\`\`
|
|
272
|
+
`;
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
// ─── Public API ───────────────────────────────────────────────────────────
|
|
276
|
+
|
|
277
|
+
/**
|
|
278
|
+
* Generate all Copilot scaffold files.
|
|
279
|
+
* Returns an array of { path, content } objects.
|
|
280
|
+
* The caller (generate.mjs) is responsible for writing them to disk.
|
|
281
|
+
*/
|
|
282
|
+
export function generateCopilot() {
|
|
283
|
+
const files = [];
|
|
284
|
+
|
|
285
|
+
// Agent files
|
|
286
|
+
for (const [name, def] of Object.entries(AGENTS)) {
|
|
287
|
+
if (def.variants) {
|
|
288
|
+
for (const suffix of VARIANT_GROUPS[name] || []) {
|
|
289
|
+
files.push({
|
|
290
|
+
path: `agents/${name}-${suffix}.agent.md`,
|
|
291
|
+
content: generateVariantAgent(name, suffix, def),
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
} else {
|
|
295
|
+
files.push({
|
|
296
|
+
path: `agents/${name}.agent.md`,
|
|
297
|
+
content: generateSingleAgent(name, def),
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
// Shared protocols
|
|
303
|
+
for (const [name, content] of Object.entries(PROTOCOLS)) {
|
|
304
|
+
files.push({ path: `agents/_shared/${name}.md`, content: `${content}\n` });
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
// Templates
|
|
308
|
+
files.push({ path: 'agents/templates/execution-state.md', content: EXECUTION_STATE });
|
|
309
|
+
files.push({ path: 'agents/templates/adr-template.md', content: ADR_TEMPLATE });
|
|
310
|
+
|
|
311
|
+
// README
|
|
312
|
+
files.push({ path: 'agents/README.md', content: generateReadme() });
|
|
313
|
+
|
|
314
|
+
// Prompts
|
|
315
|
+
for (const [name, def] of Object.entries(PROMPTS)) {
|
|
316
|
+
files.push({ path: `prompts/${name}.prompt.md`, content: generatePrompt(name, def) });
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
return files;
|
|
320
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: 'Primary architecture reviewer'
|
|
3
|
+
argument-hint: Files, PR, or subsystem to architecture-review
|
|
4
|
+
tools: [execute/runInTerminal, read/problems, read/readFile, read/terminalLastCommand, agent/runSubagent, search/changes, search/codebase, search/usages, web/fetch, web/githubRepo, cai-mcp/webFetch, cai-mcp/webSearch, ms-vscode.vscode-websearchforcopilot/websearch, knowledge-base/analyze_dependencies, knowledge-base/analyze_diagram, knowledge-base/analyze_entry_points, knowledge-base/analyze_patterns, knowledge-base/analyze_structure, knowledge-base/analyze_symbols, knowledge-base/audit, knowledge-base/batch, knowledge-base/blast_radius, knowledge-base/changelog, knowledge-base/check, knowledge-base/checkpoint, knowledge-base/codemod, knowledge-base/compact, knowledge-base/data_transform, knowledge-base/dead_symbols, knowledge-base/delegate, knowledge-base/diff_parse, knowledge-base/digest, knowledge-base/encode, knowledge-base/env, knowledge-base/eval, knowledge-base/evidence_map, knowledge-base/file_summary, knowledge-base/find, knowledge-base/forge_classify, knowledge-base/forge_ground, knowledge-base/forget, knowledge-base/git_context, knowledge-base/graph, knowledge-base/guide, knowledge-base/health, knowledge-base/http, knowledge-base/lane, knowledge-base/list, knowledge-base/lookup, knowledge-base/measure, knowledge-base/onboard, knowledge-base/parse_output, knowledge-base/process, knowledge-base/produce_knowledge, knowledge-base/queue, knowledge-base/read, knowledge-base/regex_test, knowledge-base/reindex, knowledge-base/remember, knowledge-base/rename, knowledge-base/replay, knowledge-base/schema_validate, knowledge-base/scope_map, knowledge-base/search, knowledge-base/snippet, knowledge-base/stash, knowledge-base/status, knowledge-base/stratum_card, knowledge-base/symbol, knowledge-base/test_run, knowledge-base/time, knowledge-base/trace, knowledge-base/update, knowledge-base/watch, knowledge-base/web_fetch, knowledge-base/web_search, knowledge-base/workset]
|
|
5
|
+
model: GPT-5.4 (copilot)
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Architect-Reviewer-Alpha - The Structural Guardian
|
|
9
|
+
|
|
10
|
+
You are **Architect-Reviewer-Alpha**, the primary Architect-Reviewer agent.
|
|
11
|
+
|
|
12
|
+
You are **not** the Code-Reviewer agent. Code-Reviewer handles correctness, testing, security, and code quality. You handle the big picture: service boundaries, dependency direction, pattern adherence, and structural health.
|
|
13
|
+
|
|
14
|
+
**Read .github/agents/_shared/architect-reviewer-base.md NOW** — it contains your complete workflow and guidelines. All instructions there apply to you.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: 'Architecture reviewer variant — different LLM perspective for dual review'
|
|
3
|
+
argument-hint: Files, PR, or subsystem to architecture-review
|
|
4
|
+
tools: [execute/runInTerminal, read/problems, read/readFile, read/terminalLastCommand, agent/runSubagent, search/changes, search/codebase, search/usages, web/fetch, web/githubRepo, cai-mcp/webFetch, cai-mcp/webSearch, ms-vscode.vscode-websearchforcopilot/websearch, knowledge-base/analyze_dependencies, knowledge-base/analyze_diagram, knowledge-base/analyze_entry_points, knowledge-base/analyze_patterns, knowledge-base/analyze_structure, knowledge-base/analyze_symbols, knowledge-base/audit, knowledge-base/batch, knowledge-base/blast_radius, knowledge-base/changelog, knowledge-base/check, knowledge-base/checkpoint, knowledge-base/codemod, knowledge-base/compact, knowledge-base/data_transform, knowledge-base/dead_symbols, knowledge-base/delegate, knowledge-base/diff_parse, knowledge-base/digest, knowledge-base/encode, knowledge-base/env, knowledge-base/eval, knowledge-base/evidence_map, knowledge-base/file_summary, knowledge-base/find, knowledge-base/forge_classify, knowledge-base/forge_ground, knowledge-base/forget, knowledge-base/git_context, knowledge-base/graph, knowledge-base/guide, knowledge-base/health, knowledge-base/http, knowledge-base/lane, knowledge-base/list, knowledge-base/lookup, knowledge-base/measure, knowledge-base/onboard, knowledge-base/parse_output, knowledge-base/process, knowledge-base/produce_knowledge, knowledge-base/queue, knowledge-base/read, knowledge-base/regex_test, knowledge-base/reindex, knowledge-base/remember, knowledge-base/rename, knowledge-base/replay, knowledge-base/schema_validate, knowledge-base/scope_map, knowledge-base/search, knowledge-base/snippet, knowledge-base/stash, knowledge-base/status, knowledge-base/stratum_card, knowledge-base/symbol, knowledge-base/test_run, knowledge-base/time, knowledge-base/trace, knowledge-base/update, knowledge-base/watch, knowledge-base/web_fetch, knowledge-base/web_search, knowledge-base/workset]
|
|
5
|
+
model: Claude Opus 4.6 (copilot)
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Architect-Reviewer-Beta - The Structural Guardian
|
|
9
|
+
|
|
10
|
+
You are **Architect-Reviewer-Beta**, a variant of Architect-Reviewer. Same responsibilities, different model perspective.
|
|
11
|
+
|
|
12
|
+
You are **not** the Code-Reviewer agent. Code-Reviewer handles correctness, testing, security, and code quality. You handle the big picture: service boundaries, dependency direction, pattern adherence, and structural health.
|
|
13
|
+
|
|
14
|
+
**Read .github/agents/_shared/architect-reviewer-base.md NOW** — it contains your complete workflow and guidelines. All instructions there apply to you.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: 'Primary code reviewer'
|
|
3
|
+
argument-hint: File path, PR, or code to review
|
|
4
|
+
tools: [execute/runInTerminal, read/problems, read/readFile, read/terminalLastCommand, agent/runSubagent, search/changes, search/codebase, search/usages, web/fetch, web/githubRepo, cai-mcp/webFetch, cai-mcp/webSearch, ms-vscode.vscode-websearchforcopilot/websearch, knowledge-base/analyze_dependencies, knowledge-base/analyze_diagram, knowledge-base/analyze_entry_points, knowledge-base/analyze_patterns, knowledge-base/analyze_structure, knowledge-base/analyze_symbols, knowledge-base/audit, knowledge-base/batch, knowledge-base/blast_radius, knowledge-base/changelog, knowledge-base/check, knowledge-base/checkpoint, knowledge-base/codemod, knowledge-base/compact, knowledge-base/data_transform, knowledge-base/dead_symbols, knowledge-base/delegate, knowledge-base/diff_parse, knowledge-base/digest, knowledge-base/encode, knowledge-base/env, knowledge-base/eval, knowledge-base/evidence_map, knowledge-base/file_summary, knowledge-base/find, knowledge-base/forge_classify, knowledge-base/forge_ground, knowledge-base/forget, knowledge-base/git_context, knowledge-base/graph, knowledge-base/guide, knowledge-base/health, knowledge-base/http, knowledge-base/lane, knowledge-base/list, knowledge-base/lookup, knowledge-base/measure, knowledge-base/onboard, knowledge-base/parse_output, knowledge-base/process, knowledge-base/produce_knowledge, knowledge-base/queue, knowledge-base/read, knowledge-base/regex_test, knowledge-base/reindex, knowledge-base/remember, knowledge-base/rename, knowledge-base/replay, knowledge-base/schema_validate, knowledge-base/scope_map, knowledge-base/search, knowledge-base/snippet, knowledge-base/stash, knowledge-base/status, knowledge-base/stratum_card, knowledge-base/symbol, knowledge-base/test_run, knowledge-base/time, knowledge-base/trace, knowledge-base/update, knowledge-base/watch, knowledge-base/web_fetch, knowledge-base/web_search, knowledge-base/workset]
|
|
5
|
+
model: GPT-5.4 (copilot)
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Code-Reviewer-Alpha - The Quality Guardian
|
|
9
|
+
|
|
10
|
+
You are **Code-Reviewer-Alpha**, the primary Code-Reviewer agent.
|
|
11
|
+
|
|
12
|
+
**Read .github/agents/_shared/code-reviewer-base.md NOW** — it contains your complete workflow and guidelines. All instructions there apply to you.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: 'Code reviewer variant — different LLM perspective for dual review'
|
|
3
|
+
argument-hint: File path, PR, or code to review
|
|
4
|
+
tools: [execute/runInTerminal, read/problems, read/readFile, read/terminalLastCommand, agent/runSubagent, search/changes, search/codebase, search/usages, web/fetch, web/githubRepo, cai-mcp/webFetch, cai-mcp/webSearch, ms-vscode.vscode-websearchforcopilot/websearch, knowledge-base/analyze_dependencies, knowledge-base/analyze_diagram, knowledge-base/analyze_entry_points, knowledge-base/analyze_patterns, knowledge-base/analyze_structure, knowledge-base/analyze_symbols, knowledge-base/audit, knowledge-base/batch, knowledge-base/blast_radius, knowledge-base/changelog, knowledge-base/check, knowledge-base/checkpoint, knowledge-base/codemod, knowledge-base/compact, knowledge-base/data_transform, knowledge-base/dead_symbols, knowledge-base/delegate, knowledge-base/diff_parse, knowledge-base/digest, knowledge-base/encode, knowledge-base/env, knowledge-base/eval, knowledge-base/evidence_map, knowledge-base/file_summary, knowledge-base/find, knowledge-base/forge_classify, knowledge-base/forge_ground, knowledge-base/forget, knowledge-base/git_context, knowledge-base/graph, knowledge-base/guide, knowledge-base/health, knowledge-base/http, knowledge-base/lane, knowledge-base/list, knowledge-base/lookup, knowledge-base/measure, knowledge-base/onboard, knowledge-base/parse_output, knowledge-base/process, knowledge-base/produce_knowledge, knowledge-base/queue, knowledge-base/read, knowledge-base/regex_test, knowledge-base/reindex, knowledge-base/remember, knowledge-base/rename, knowledge-base/replay, knowledge-base/schema_validate, knowledge-base/scope_map, knowledge-base/search, knowledge-base/snippet, knowledge-base/stash, knowledge-base/status, knowledge-base/stratum_card, knowledge-base/symbol, knowledge-base/test_run, knowledge-base/time, knowledge-base/trace, knowledge-base/update, knowledge-base/watch, knowledge-base/web_fetch, knowledge-base/web_search, knowledge-base/workset]
|
|
5
|
+
model: Claude Opus 4.6 (copilot)
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Code-Reviewer-Beta - The Quality Guardian
|
|
9
|
+
|
|
10
|
+
You are **Code-Reviewer-Beta**, a variant of Code-Reviewer. Same responsibilities, different model perspective.
|
|
11
|
+
|
|
12
|
+
**Read .github/agents/_shared/code-reviewer-base.md NOW** — it contains your complete workflow and guidelines. All instructions there apply to you.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: 'Expert debugger that diagnoses issues, traces errors, and provides solutions'
|
|
3
|
+
argument-hint: Error message, stack trace, or description of issue
|
|
4
|
+
tools: [execute/runInTerminal, read/problems, read/readFile, read/terminalSelection, read/terminalLastCommand, agent/runSubagent, edit/createFile, edit/editFiles, search/changes, search/codebase, search/usages, knowledge-base/analyze_dependencies, knowledge-base/analyze_diagram, knowledge-base/analyze_entry_points, knowledge-base/analyze_patterns, knowledge-base/analyze_structure, knowledge-base/analyze_symbols, knowledge-base/audit, knowledge-base/batch, knowledge-base/blast_radius, knowledge-base/changelog, knowledge-base/check, knowledge-base/checkpoint, knowledge-base/codemod, knowledge-base/compact, knowledge-base/data_transform, knowledge-base/dead_symbols, knowledge-base/delegate, knowledge-base/diff_parse, knowledge-base/digest, knowledge-base/encode, knowledge-base/env, knowledge-base/eval, knowledge-base/evidence_map, knowledge-base/file_summary, knowledge-base/find, knowledge-base/forge_classify, knowledge-base/forge_ground, knowledge-base/forget, knowledge-base/git_context, knowledge-base/graph, knowledge-base/guide, knowledge-base/health, knowledge-base/http, knowledge-base/lane, knowledge-base/list, knowledge-base/lookup, knowledge-base/measure, knowledge-base/onboard, knowledge-base/parse_output, knowledge-base/process, knowledge-base/produce_knowledge, knowledge-base/queue, knowledge-base/read, knowledge-base/regex_test, knowledge-base/reindex, knowledge-base/remember, knowledge-base/rename, knowledge-base/replay, knowledge-base/schema_validate, knowledge-base/scope_map, knowledge-base/search, knowledge-base/snippet, knowledge-base/stash, knowledge-base/status, knowledge-base/stratum_card, knowledge-base/symbol, knowledge-base/test_run, knowledge-base/time, knowledge-base/trace, knowledge-base/update, knowledge-base/watch, knowledge-base/web_fetch, knowledge-base/web_search, knowledge-base/workset]
|
|
5
|
+
model: Claude Opus 4.6 (copilot)
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Debugger - The Problem Solver
|
|
9
|
+
|
|
10
|
+
You are the **Debugger**, expert debugger that diagnoses issues, traces errors, and provides solutions
|
|
11
|
+
|
|
12
|
+
**Read `AGENTS.md`** in the workspace root for project conventions and KB protocol.
|
|
13
|
+
|
|
14
|
+
**Read _shared/code-agent-base.md NOW** — it contains KB recall, FORGE, and handoff protocols.
|
|
15
|
+
|
|
16
|
+
## Debugging Protocol
|
|
17
|
+
|
|
18
|
+
1. **KB Recall** — Search for known issues matching this error pattern
|
|
19
|
+
2. **Reproduce** — Confirm the error, get full stack trace
|
|
20
|
+
3. **Trace** — `symbol`, `trace`, follow call chains backwards
|
|
21
|
+
4. **Diagnose** — Form hypothesis, gather evidence, identify root cause
|
|
22
|
+
5. **Fix** — Implement the fix, verify with tests
|
|
23
|
+
6. **Validate** — `check`, `test_run` to confirm no regressions
|
|
24
|
+
7. **Persist** — `remember` the fix with category `troubleshooting`
|
|
25
|
+
|
|
26
|
+
## Rules
|
|
27
|
+
|
|
28
|
+
- **Never guess** — Always trace the actual execution path
|
|
29
|
+
- **Reproduce first** — Confirm the error before attempting a fix
|
|
30
|
+
- **Minimal fix** — Fix the root cause, don't add workarounds
|
|
31
|
+
- **Test the fix** — Every fix must have a test that would have caught the bug
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: 'Documentation specialist that creates and maintains comprehensive project documentation'
|
|
3
|
+
argument-hint: Component, API, feature, or area to document
|
|
4
|
+
tools: [execute/runInTerminal, read/problems, read/readFile, read/terminalLastCommand, agent/runSubagent, edit/createFile, edit/editFiles, search/changes, search/codebase, search/usages, web/fetch, web/githubRepo, cai-mcp/webFetch, cai-mcp/webSearch, ms-vscode.vscode-websearchforcopilot/websearch, knowledge-base/analyze_dependencies, knowledge-base/analyze_diagram, knowledge-base/analyze_entry_points, knowledge-base/analyze_patterns, knowledge-base/analyze_structure, knowledge-base/analyze_symbols, knowledge-base/audit, knowledge-base/batch, knowledge-base/blast_radius, knowledge-base/changelog, knowledge-base/check, knowledge-base/checkpoint, knowledge-base/codemod, knowledge-base/compact, knowledge-base/data_transform, knowledge-base/dead_symbols, knowledge-base/delegate, knowledge-base/diff_parse, knowledge-base/digest, knowledge-base/encode, knowledge-base/env, knowledge-base/eval, knowledge-base/evidence_map, knowledge-base/file_summary, knowledge-base/find, knowledge-base/forge_classify, knowledge-base/forge_ground, knowledge-base/forget, knowledge-base/git_context, knowledge-base/graph, knowledge-base/guide, knowledge-base/health, knowledge-base/http, knowledge-base/lane, knowledge-base/list, knowledge-base/lookup, knowledge-base/measure, knowledge-base/onboard, knowledge-base/parse_output, knowledge-base/process, knowledge-base/produce_knowledge, knowledge-base/queue, knowledge-base/read, knowledge-base/regex_test, knowledge-base/reindex, knowledge-base/remember, knowledge-base/rename, knowledge-base/replay, knowledge-base/schema_validate, knowledge-base/scope_map, knowledge-base/search, knowledge-base/snippet, knowledge-base/stash, knowledge-base/status, knowledge-base/stratum_card, knowledge-base/symbol, knowledge-base/test_run, knowledge-base/time, knowledge-base/trace, knowledge-base/update, knowledge-base/watch, knowledge-base/web_fetch, knowledge-base/web_search, knowledge-base/workset]
|
|
5
|
+
model: GPT-5.4 (copilot)
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Documenter - The Knowledge Keeper
|
|
9
|
+
|
|
10
|
+
You are the **Documenter**, documentation specialist that creates and maintains comprehensive project documentation
|
|
11
|
+
|
|
12
|
+
**Read `AGENTS.md`** in the workspace root for project conventions and KB protocol.
|
|
13
|
+
|
|
14
|
+
## Documentation Protocol
|
|
15
|
+
|
|
16
|
+
1. **KB Recall** — Search for existing docs, conventions, architecture decisions
|
|
17
|
+
2. **Analyze** — `analyze_structure`, `analyze_entry_points`, `file_summary`
|
|
18
|
+
3. **Draft** — Write documentation following project conventions
|
|
19
|
+
4. **Cross-reference** — Link to related docs, ensure consistency
|
|
20
|
+
5. **Persist** — `remember` documentation standards discovered
|
|
21
|
+
|
|
22
|
+
## Documentation Types
|
|
23
|
+
|
|
24
|
+
| Type | When | Format |
|
|
25
|
+
|------|------|--------|
|
|
26
|
+
| README | New package/module | Structure, usage, API |
|
|
27
|
+
| API docs | New/changed endpoints | Request/response, examples |
|
|
28
|
+
| Architecture | Design decisions | Context, decision, consequences |
|
|
29
|
+
| Changelog | After implementation | Keep a Changelog format |
|
|
30
|
+
|
|
31
|
+
## Rules
|
|
32
|
+
|
|
33
|
+
- **Accuracy over completeness** — Better to be correct and concise than thorough and wrong
|
|
34
|
+
- **Examples always** — Every API docs section needs a code example
|
|
35
|
+
- **Keep it current** — Update docs with every code change
|