maestro-flow 0.5.42 → 0.5.43
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/.agents/skills/domain-add/SKILL.md +3 -0
- package/.agents/skills/learn-decompose/SKILL.md +7 -4
- package/.agents/skills/learn-follow/SKILL.md +4 -2
- package/.agents/skills/learn-investigate/SKILL.md +8 -6
- package/.agents/skills/learn-second-opinion/SKILL.md +6 -3
- package/.agents/skills/maestro/SKILL.md +1 -1
- package/.agents/skills/maestro-amend/SKILL.md +1 -1
- package/.agents/skills/maestro-analyze/SKILL.md +1 -1
- package/.agents/skills/maestro-blueprint/SKILL.md +1 -1
- package/.agents/skills/maestro-brainstorm/SKILL.md +4 -1
- package/.agents/skills/maestro-collab/SKILL.md +6 -2
- package/.agents/skills/maestro-companion/SKILL.md +4 -1
- package/.agents/skills/maestro-composer/SKILL.md +4 -2
- package/.agents/skills/maestro-execute/SKILL.md +26 -8
- package/.agents/skills/maestro-fork/SKILL.md +4 -3
- package/.agents/skills/maestro-grill/SKILL.md +1 -1
- package/.agents/skills/maestro-guard/SKILL.md +2 -2
- package/.agents/skills/maestro-impeccable/SKILL.md +2 -1
- package/.agents/skills/maestro-init/SKILL.md +1 -1
- package/.agents/skills/maestro-merge/SKILL.md +12 -1
- package/.agents/skills/maestro-milestone-audit/SKILL.md +1 -0
- package/.agents/skills/maestro-milestone-complete/SKILL.md +8 -3
- package/.agents/skills/maestro-milestone-release/SKILL.md +8 -4
- package/.agents/skills/maestro-overlay/SKILL.md +9 -0
- package/.agents/skills/maestro-plan/SKILL.md +1 -0
- package/.agents/skills/maestro-player/SKILL.md +2 -2
- package/.agents/skills/maestro-quick/SKILL.md +5 -3
- package/.agents/skills/maestro-ralph/SKILL.md +8 -8
- package/.agents/skills/maestro-ralph-cli/SKILL.md +665 -0
- package/.agents/skills/maestro-ralph-cli-execute/SKILL.md +239 -0
- package/.agents/skills/maestro-ralph-execute/SKILL.md +127 -11
- package/.agents/skills/maestro-roadmap/SKILL.md +1 -1
- package/.agents/skills/maestro-swarm-workflow/SKILL.md +16 -14
- package/.agents/skills/maestro-tools-register/SKILL.md +16 -1
- package/.agents/skills/maestro-ui-codify/SKILL.md +11 -1
- package/.agents/skills/maestro-universal-workflow/SKILL.md +28 -5
- package/.agents/skills/maestro-update/SKILL.md +10 -7
- package/.agents/skills/manage-codebase-rebuild/SKILL.md +5 -1
- package/.agents/skills/manage-drift-realign/SKILL.md +6 -2
- package/.agents/skills/manage-harvest/SKILL.md +4 -1
- package/.agents/skills/manage-issue-discover/SKILL.md +1 -0
- package/.agents/skills/manage-kg-extractors/SKILL.md +5 -1
- package/.agents/skills/manage-knowhow-capture/SKILL.md +1 -0
- package/.agents/skills/manage-knowledge-audit/SKILL.md +3 -0
- package/.agents/skills/manage-wiki/SKILL.md +1 -0
- package/.agents/skills/odyssey-debug/SKILL.md +2 -1
- package/.agents/skills/odyssey-improve/SKILL.md +2 -2
- package/.agents/skills/odyssey-planex/SKILL.md +8 -7
- package/.agents/skills/odyssey-review-test-fix/SKILL.md +4 -1
- package/.agents/skills/odyssey-ui/SKILL.md +4 -4
- package/.agents/skills/quality-auto-test/SKILL.md +11 -1
- package/.agents/skills/quality-debug/SKILL.md +16 -2
- package/.agents/skills/quality-retrospective/SKILL.md +9 -1
- package/.agents/skills/quality-review/SKILL.md +8 -0
- package/.agents/skills/quality-sync/SKILL.md +2 -2
- package/.agents/skills/quality-test/SKILL.md +9 -1
- package/.agents/skills/security-audit/SKILL.md +14 -4
- package/.agents/skills/spec-add/SKILL.md +5 -2
- package/.agents/skills/spec-load/SKILL.md +1 -1
- package/.agents/skills/spec-remove/SKILL.md +1 -1
- package/.agents/skills/spec-setup/SKILL.md +3 -0
- package/.agy/skills/domain-add/SKILL.md +3 -0
- package/.agy/skills/learn-decompose/SKILL.md +7 -4
- package/.agy/skills/learn-follow/SKILL.md +4 -2
- package/.agy/skills/learn-investigate/SKILL.md +8 -6
- package/.agy/skills/learn-second-opinion/SKILL.md +6 -3
- package/.agy/skills/maestro/SKILL.md +1 -1
- package/.agy/skills/maestro-amend/SKILL.md +1 -1
- package/.agy/skills/maestro-analyze/SKILL.md +1 -1
- package/.agy/skills/maestro-blueprint/SKILL.md +1 -1
- package/.agy/skills/maestro-brainstorm/SKILL.md +4 -1
- package/.agy/skills/maestro-collab/SKILL.md +6 -2
- package/.agy/skills/maestro-companion/SKILL.md +4 -1
- package/.agy/skills/maestro-composer/SKILL.md +4 -2
- package/.agy/skills/maestro-execute/SKILL.md +26 -8
- package/.agy/skills/maestro-fork/SKILL.md +4 -3
- package/.agy/skills/maestro-grill/SKILL.md +1 -1
- package/.agy/skills/maestro-guard/SKILL.md +2 -2
- package/.agy/skills/maestro-impeccable/SKILL.md +2 -1
- package/.agy/skills/maestro-init/SKILL.md +1 -1
- package/.agy/skills/maestro-merge/SKILL.md +12 -1
- package/.agy/skills/maestro-milestone-audit/SKILL.md +1 -0
- package/.agy/skills/maestro-milestone-complete/SKILL.md +8 -3
- package/.agy/skills/maestro-milestone-release/SKILL.md +8 -4
- package/.agy/skills/maestro-overlay/SKILL.md +9 -0
- package/.agy/skills/maestro-plan/SKILL.md +1 -0
- package/.agy/skills/maestro-player/SKILL.md +2 -2
- package/.agy/skills/maestro-quick/SKILL.md +5 -3
- package/.agy/skills/maestro-ralph/SKILL.md +8 -8
- package/.agy/skills/maestro-ralph-cli/SKILL.md +661 -0
- package/.agy/skills/maestro-ralph-cli-execute/SKILL.md +235 -0
- package/.agy/skills/maestro-ralph-execute/SKILL.md +127 -11
- package/.agy/skills/maestro-roadmap/SKILL.md +1 -1
- package/.agy/skills/maestro-swarm-workflow/SKILL.md +16 -14
- package/.agy/skills/maestro-tools-register/SKILL.md +16 -1
- package/.agy/skills/maestro-ui-codify/SKILL.md +11 -1
- package/.agy/skills/maestro-universal-workflow/SKILL.md +28 -5
- package/.agy/skills/maestro-update/SKILL.md +10 -7
- package/.agy/skills/manage-codebase-rebuild/SKILL.md +5 -1
- package/.agy/skills/manage-drift-realign/SKILL.md +6 -2
- package/.agy/skills/manage-harvest/SKILL.md +4 -1
- package/.agy/skills/manage-issue-discover/SKILL.md +1 -0
- package/.agy/skills/manage-kg-extractors/SKILL.md +5 -1
- package/.agy/skills/manage-knowhow-capture/SKILL.md +1 -0
- package/.agy/skills/manage-knowledge-audit/SKILL.md +3 -0
- package/.agy/skills/manage-wiki/SKILL.md +1 -0
- package/.agy/skills/odyssey-debug/SKILL.md +2 -1
- package/.agy/skills/odyssey-improve/SKILL.md +2 -2
- package/.agy/skills/odyssey-planex/SKILL.md +8 -7
- package/.agy/skills/odyssey-review-test-fix/SKILL.md +4 -1
- package/.agy/skills/odyssey-ui/SKILL.md +4 -4
- package/.agy/skills/quality-auto-test/SKILL.md +11 -1
- package/.agy/skills/quality-debug/SKILL.md +16 -2
- package/.agy/skills/quality-retrospective/SKILL.md +9 -1
- package/.agy/skills/quality-review/SKILL.md +8 -0
- package/.agy/skills/quality-sync/SKILL.md +2 -2
- package/.agy/skills/quality-test/SKILL.md +9 -1
- package/.agy/skills/security-audit/SKILL.md +14 -4
- package/.agy/skills/spec-add/SKILL.md +5 -2
- package/.agy/skills/spec-load/SKILL.md +1 -1
- package/.agy/skills/spec-remove/SKILL.md +1 -1
- package/.agy/skills/spec-setup/SKILL.md +3 -0
- package/.claude/commands/domain-add.md +3 -0
- package/.claude/commands/learn-decompose.md +7 -4
- package/.claude/commands/learn-follow.md +4 -2
- package/.claude/commands/learn-investigate.md +8 -6
- package/.claude/commands/learn-second-opinion.md +6 -3
- package/.claude/commands/maestro-amend.md +1 -1
- package/.claude/commands/maestro-analyze.md +1 -1
- package/.claude/commands/maestro-blueprint.md +1 -1
- package/.claude/commands/maestro-brainstorm.md +4 -1
- package/.claude/commands/maestro-collab.md +6 -2
- package/.claude/commands/maestro-companion.md +4 -1
- package/.claude/commands/maestro-composer.md +4 -2
- package/.claude/commands/maestro-execute.md +26 -8
- package/.claude/commands/maestro-fork.md +4 -3
- package/.claude/commands/maestro-grill.md +1 -1
- package/.claude/commands/maestro-guard.md +2 -2
- package/.claude/commands/maestro-impeccable.md +2 -1
- package/.claude/commands/maestro-init.md +1 -1
- package/.claude/commands/maestro-merge.md +12 -1
- package/.claude/commands/maestro-milestone-audit.md +1 -0
- package/.claude/commands/maestro-milestone-complete.md +8 -3
- package/.claude/commands/maestro-milestone-release.md +8 -4
- package/.claude/commands/maestro-overlay.md +9 -0
- package/.claude/commands/maestro-plan.md +1 -0
- package/.claude/commands/maestro-player.md +2 -2
- package/.claude/commands/maestro-quick.md +5 -3
- package/.claude/commands/maestro-ralph-cli-execute.md +237 -0
- package/.claude/commands/maestro-ralph-cli.md +663 -0
- package/.claude/commands/maestro-ralph-execute.md +127 -11
- package/.claude/commands/maestro-ralph.md +8 -8
- package/.claude/commands/maestro-roadmap.md +1 -1
- package/.claude/commands/maestro-swarm-workflow.md +16 -14
- package/.claude/commands/maestro-tools-register.md +16 -1
- package/.claude/commands/maestro-ui-codify.md +11 -1
- package/.claude/commands/maestro-universal-workflow.md +28 -5
- package/.claude/commands/maestro-update.md +10 -7
- package/.claude/commands/maestro.md +1 -1
- package/.claude/commands/manage-codebase-rebuild.md +5 -1
- package/.claude/commands/manage-drift-realign.md +6 -2
- package/.claude/commands/manage-harvest.md +4 -1
- package/.claude/commands/manage-issue-discover.md +1 -0
- package/.claude/commands/manage-kg-extractors.md +5 -1
- package/.claude/commands/manage-knowhow-capture.md +1 -0
- package/.claude/commands/manage-knowledge-audit.md +3 -0
- package/.claude/commands/manage-wiki.md +1 -0
- package/.claude/commands/odyssey-debug.md +2 -1
- package/.claude/commands/odyssey-improve.md +2 -2
- package/.claude/commands/odyssey-planex.md +8 -7
- package/.claude/commands/odyssey-review-test-fix.md +4 -1
- package/.claude/commands/odyssey-ui.md +4 -4
- package/.claude/commands/quality-auto-test.md +11 -1
- package/.claude/commands/quality-debug.md +16 -2
- package/.claude/commands/quality-retrospective.md +9 -1
- package/.claude/commands/quality-review.md +8 -0
- package/.claude/commands/quality-sync.md +2 -2
- package/.claude/commands/quality-test.md +9 -1
- package/.claude/commands/security-audit.md +14 -4
- package/.claude/commands/spec-add.md +5 -2
- package/.claude/commands/spec-load.md +1 -1
- package/.claude/commands/spec-remove.md +1 -1
- package/.claude/commands/spec-setup.md +3 -0
- package/.codex/skills/codify-to-knowhow/SKILL.md +27 -15
- package/.codex/skills/domain-add/SKILL.md +5 -3
- package/.codex/skills/learn-decompose/SKILL.md +22 -4
- package/.codex/skills/learn-follow/SKILL.md +12 -6
- package/.codex/skills/learn-investigate/SKILL.md +11 -6
- package/.codex/skills/learn-retro/SKILL.md +12 -6
- package/.codex/skills/learn-second-opinion/SKILL.md +11 -3
- package/.codex/skills/maestro/SKILL.md +19 -13
- package/.codex/skills/maestro-amend/SKILL.md +10 -2
- package/.codex/skills/maestro-analyze/SKILL.md +7 -1
- package/.codex/skills/maestro-blueprint/SKILL.md +1 -1
- package/.codex/skills/maestro-brainstorm/SKILL.md +11 -8
- package/.codex/skills/maestro-collab/SKILL.md +5 -5
- package/.codex/skills/maestro-companion/SKILL.md +4 -1
- package/.codex/skills/maestro-composer/SKILL.md +6 -3
- package/.codex/skills/maestro-execute/SKILL.md +11 -8
- package/.codex/skills/maestro-fork/SKILL.md +4 -3
- package/.codex/skills/maestro-grill/SKILL.md +1 -1
- package/.codex/skills/maestro-guard/SKILL.md +1 -1
- package/.codex/skills/maestro-impeccable/SKILL.md +5 -5
- package/.codex/skills/maestro-init/SKILL.md +3 -2
- package/.codex/skills/maestro-milestone-audit/SKILL.md +21 -9
- package/.codex/skills/maestro-milestone-complete/SKILL.md +3 -3
- package/.codex/skills/maestro-milestone-release/SKILL.md +18 -1
- package/.codex/skills/maestro-next/SKILL.md +11 -10
- package/.codex/skills/maestro-overlay/SKILL.md +16 -6
- package/.codex/skills/maestro-player/SKILL.md +11 -5
- package/.codex/skills/maestro-quick/SKILL.md +2 -2
- package/.codex/skills/maestro-ralph/SKILL.md +44 -31
- package/.codex/skills/maestro-ralph-cli/SKILL.md +394 -0
- package/.codex/skills/maestro-ralph-cli-execute/SKILL.md +146 -0
- package/.codex/skills/maestro-ralph-execute/SKILL.md +105 -24
- package/.codex/skills/maestro-roadmap/SKILL.md +8 -2
- package/.codex/skills/maestro-tools-execute/SKILL.md +8 -4
- package/.codex/skills/maestro-tools-register/SKILL.md +10 -6
- package/.codex/skills/maestro-ui-codify/SKILL.md +14 -9
- package/.codex/skills/manage-codebase-rebuild/SKILL.md +36 -14
- package/.codex/skills/manage-codebase-refresh/SKILL.md +1 -1
- package/.codex/skills/manage-drift-realign/SKILL.md +15 -12
- package/.codex/skills/manage-harvest/SKILL.md +1 -1
- package/.codex/skills/manage-issue/SKILL.md +8 -4
- package/.codex/skills/manage-issue-discover/SKILL.md +15 -14
- package/.codex/skills/manage-knowhow/SKILL.md +3 -2
- package/.codex/skills/manage-knowhow-capture/SKILL.md +4 -3
- package/.codex/skills/manage-learn/SKILL.md +2 -2
- package/.codex/skills/odyssey-debug/SKILL.md +12 -7
- package/.codex/skills/odyssey-improve/SKILL.md +11 -6
- package/.codex/skills/odyssey-planex/SKILL.md +14 -8
- package/.codex/skills/odyssey-review-test-fix/SKILL.md +12 -7
- package/.codex/skills/odyssey-ui/SKILL.md +10 -5
- package/.codex/skills/quality-auto-test/SKILL.md +13 -5
- package/.codex/skills/quality-debug/SKILL.md +18 -11
- package/.codex/skills/quality-refactor/SKILL.md +4 -4
- package/.codex/skills/quality-retrospective/SKILL.md +5 -6
- package/.codex/skills/quality-review/SKILL.md +18 -11
- package/.codex/skills/quality-sync/SKILL.md +2 -2
- package/.codex/skills/quality-test/SKILL.md +7 -5
- package/.codex/skills/security-audit/SKILL.md +7 -5
- package/.codex/skills/spec-add/SKILL.md +9 -7
- package/.codex/skills/spec-load/SKILL.md +3 -2
- package/.codex/skills/spec-map/SKILL.md +10 -1
- package/.codex/skills/spec-remove/SKILL.md +3 -2
- package/.codex/skills/team-coordinate/SKILL.md +10 -4
- package/.codex/skills/team-lifecycle-v4/SKILL.md +33 -26
- package/.codex/skills/team-quality-assurance/SKILL.md +43 -0
- package/.codex/skills/team-review/SKILL.md +50 -6
- package/.codex/skills/team-tech-debt/SKILL.md +53 -7
- package/.codex/skills/team-testing/SKILL.md +50 -2
- package/.codex/skills/wiki-connect/SKILL.md +3 -1
- package/.codex/skills/wiki-digest/SKILL.md +6 -4
- package/dashboard/dist-server/dashboard/src/server/wiki/embedding.d.ts +16 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/embedding.js +419 -44
- package/dashboard/dist-server/dashboard/src/server/wiki/embedding.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +43 -5
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
- package/dashboard/dist-server/src/graph/kg/db/types.d.ts +3 -0
- package/dashboard/dist-server/src/graph/kg/embedding/code-embedding.d.ts +46 -0
- package/dashboard/dist-server/src/graph/kg/embedding/code-embedding.js +329 -0
- package/dashboard/dist-server/src/graph/kg/embedding/code-embedding.js.map +1 -0
- package/dashboard/dist-server/src/graph/kg/embedding/index.d.ts +2 -0
- package/dashboard/dist-server/src/graph/kg/embedding/index.js +3 -0
- package/dashboard/dist-server/src/graph/kg/embedding/index.js.map +1 -0
- package/dashboard/dist-server/src/graph/kg/engine.d.ts +19 -1
- package/dashboard/dist-server/src/graph/kg/engine.js +71 -1
- package/dashboard/dist-server/src/graph/kg/engine.js.map +1 -1
- package/dashboard/dist-server/src/graph/kg/query/scoring.d.ts +5 -0
- package/dashboard/dist-server/src/graph/kg/query/scoring.js +85 -1
- package/dashboard/dist-server/src/graph/kg/query/scoring.js.map +1 -1
- package/dashboard/dist-server/src/graph/kg/query/search.d.ts +7 -0
- package/dashboard/dist-server/src/graph/kg/query/search.js +117 -1
- package/dashboard/dist-server/src/graph/kg/query/search.js.map +1 -1
- package/dashboard/dist-server/src/graph/kg/surface/mcp-tools.js +49 -0
- package/dashboard/dist-server/src/graph/kg/surface/mcp-tools.js.map +1 -1
- package/dashboard/dist-server/src/hooks/kg-sync-hook.js +3 -0
- package/dashboard/dist-server/src/hooks/kg-sync-hook.js.map +1 -1
- package/dist/src/core/plugin-bridge.d.ts.map +1 -1
- package/dist/src/core/plugin-bridge.js +17 -0
- package/dist/src/core/plugin-bridge.js.map +1 -1
- package/dist/src/graph/kg/db/types.d.ts +3 -0
- package/dist/src/graph/kg/db/types.d.ts.map +1 -1
- package/dist/src/graph/kg/embedding/code-embedding.d.ts +47 -0
- package/dist/src/graph/kg/embedding/code-embedding.d.ts.map +1 -0
- package/dist/src/graph/kg/embedding/code-embedding.js +329 -0
- package/dist/src/graph/kg/embedding/code-embedding.js.map +1 -0
- package/dist/src/graph/kg/embedding/index.d.ts +3 -0
- package/dist/src/graph/kg/embedding/index.d.ts.map +1 -0
- package/dist/src/graph/kg/embedding/index.js +3 -0
- package/dist/src/graph/kg/embedding/index.js.map +1 -0
- package/dist/src/graph/kg/engine.d.ts +19 -1
- package/dist/src/graph/kg/engine.d.ts.map +1 -1
- package/dist/src/graph/kg/engine.js +71 -1
- package/dist/src/graph/kg/engine.js.map +1 -1
- package/dist/src/graph/kg/query/scoring.d.ts +5 -0
- package/dist/src/graph/kg/query/scoring.d.ts.map +1 -1
- package/dist/src/graph/kg/query/scoring.js +85 -1
- package/dist/src/graph/kg/query/scoring.js.map +1 -1
- package/dist/src/graph/kg/query/search.d.ts +7 -0
- package/dist/src/graph/kg/query/search.d.ts.map +1 -1
- package/dist/src/graph/kg/query/search.js +117 -1
- package/dist/src/graph/kg/query/search.js.map +1 -1
- package/dist/src/graph/kg/surface/mcp-tools.d.ts.map +1 -1
- package/dist/src/graph/kg/surface/mcp-tools.js +49 -0
- package/dist/src/graph/kg/surface/mcp-tools.js.map +1 -1
- package/dist/src/hooks/kg-sync-hook.d.ts.map +1 -1
- package/dist/src/hooks/kg-sync-hook.js +3 -0
- package/dist/src/hooks/kg-sync-hook.js.map +1 -1
- package/dist/src/tools/code-semantic-search.d.ts +10 -0
- package/dist/src/tools/code-semantic-search.d.ts.map +1 -0
- package/dist/src/tools/code-semantic-search.js +81 -0
- package/dist/src/tools/code-semantic-search.js.map +1 -0
- package/dist/src/tools/index.d.ts.map +1 -1
- package/dist/src/tools/index.js +4 -0
- package/dist/src/tools/index.js.map +1 -1
- package/dist/src/tools/wiki-search.d.ts +13 -0
- package/dist/src/tools/wiki-search.d.ts.map +1 -0
- package/dist/src/tools/wiki-search.js +114 -0
- package/dist/src/tools/wiki-search.js.map +1 -0
- package/dist/src/utils/update-notices.js +12 -0
- package/dist/src/utils/update-notices.js.map +1 -1
- package/package.json +4 -1
|
@@ -60,7 +60,91 @@ export function extractSearchTerms(query) {
|
|
|
60
60
|
return [...new Set(terms)];
|
|
61
61
|
}
|
|
62
62
|
// ---------------------------------------------------------------------------
|
|
63
|
-
// 4.
|
|
63
|
+
// 4. 代码查询扩展 (缩写 ↔ 全称同义词)
|
|
64
|
+
// ---------------------------------------------------------------------------
|
|
65
|
+
const CODE_SYNONYMS = new Map([
|
|
66
|
+
['auth', ['authentication', 'authorization']],
|
|
67
|
+
['authentication', ['auth']],
|
|
68
|
+
['authorization', ['auth']],
|
|
69
|
+
['db', ['database']],
|
|
70
|
+
['database', ['db']],
|
|
71
|
+
['config', ['configuration', 'settings']],
|
|
72
|
+
['configuration', ['config']],
|
|
73
|
+
['settings', ['config', 'options']],
|
|
74
|
+
['btn', ['button']],
|
|
75
|
+
['button', ['btn']],
|
|
76
|
+
['msg', ['message']],
|
|
77
|
+
['message', ['msg']],
|
|
78
|
+
['req', ['request']],
|
|
79
|
+
['request', ['req']],
|
|
80
|
+
['res', ['response']],
|
|
81
|
+
['response', ['res']],
|
|
82
|
+
['err', ['error', 'exception']],
|
|
83
|
+
['error', ['err', 'exception']],
|
|
84
|
+
['exception', ['err', 'error']],
|
|
85
|
+
['fn', ['function']],
|
|
86
|
+
['cb', ['callback']],
|
|
87
|
+
['callback', ['cb']],
|
|
88
|
+
['ctx', ['context']],
|
|
89
|
+
['context', ['ctx']],
|
|
90
|
+
['env', ['environment']],
|
|
91
|
+
['environment', ['env']],
|
|
92
|
+
['param', ['parameter', 'arg', 'argument']],
|
|
93
|
+
['parameter', ['param']],
|
|
94
|
+
['arg', ['argument', 'param']],
|
|
95
|
+
['argument', ['arg', 'param']],
|
|
96
|
+
['init', ['initialize', 'initialization', 'setup']],
|
|
97
|
+
['initialize', ['init']],
|
|
98
|
+
['setup', ['init', 'configure']],
|
|
99
|
+
['util', ['utility', 'helper']],
|
|
100
|
+
['utility', ['util', 'helper']],
|
|
101
|
+
['helper', ['util', 'utility']],
|
|
102
|
+
['repo', ['repository']],
|
|
103
|
+
['repository', ['repo']],
|
|
104
|
+
['info', ['information']],
|
|
105
|
+
['information', ['info']],
|
|
106
|
+
['mgr', ['manager']],
|
|
107
|
+
['manager', ['mgr']],
|
|
108
|
+
['svc', ['service']],
|
|
109
|
+
['service', ['svc']],
|
|
110
|
+
['cmd', ['command']],
|
|
111
|
+
['command', ['cmd']],
|
|
112
|
+
['nav', ['navigation']],
|
|
113
|
+
['navigation', ['nav']],
|
|
114
|
+
['idx', ['index']],
|
|
115
|
+
['val', ['validate', 'validation']],
|
|
116
|
+
['validate', ['val', 'validation']],
|
|
117
|
+
['validation', ['val', 'validate']],
|
|
118
|
+
['sync', ['synchronize']],
|
|
119
|
+
['synchronize', ['sync']],
|
|
120
|
+
['async', ['asynchronous']],
|
|
121
|
+
['middleware', ['mw']],
|
|
122
|
+
['mw', ['middleware']],
|
|
123
|
+
]);
|
|
124
|
+
/**
|
|
125
|
+
* 代码查询扩展 — 基于 extractSearchTerms 分词 + 缩写同义词 + 词干变体
|
|
126
|
+
* 返回包含原始 term、同义词和词干变体的扩展查询字符串
|
|
127
|
+
*/
|
|
128
|
+
export function expandCodeQuery(query) {
|
|
129
|
+
const terms = extractSearchTerms(query);
|
|
130
|
+
const expanded = new Set(terms);
|
|
131
|
+
for (const term of terms) {
|
|
132
|
+
const lower = term.toLowerCase();
|
|
133
|
+
const synonyms = CODE_SYNONYMS.get(lower);
|
|
134
|
+
if (synonyms) {
|
|
135
|
+
for (const syn of synonyms)
|
|
136
|
+
expanded.add(syn);
|
|
137
|
+
}
|
|
138
|
+
const stems = getStemVariants(lower);
|
|
139
|
+
for (const stem of stems) {
|
|
140
|
+
if (stem.length >= 3)
|
|
141
|
+
expanded.add(stem);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
return [...expanded].join(' ');
|
|
145
|
+
}
|
|
146
|
+
// ---------------------------------------------------------------------------
|
|
147
|
+
// 5. 多信号评分
|
|
64
148
|
// ---------------------------------------------------------------------------
|
|
65
149
|
export function kindBonus(kind) {
|
|
66
150
|
switch (kind) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scoring.js","sourceRoot":"","sources":["../../../../../src/graph/kg/query/scoring.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scoring.js","sourceRoot":"","sources":["../../../../../src/graph/kg/query/scoring.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { KgQueryBuilder } from '../db/queries.js';
|
|
2
2
|
import type { UnifiedNode, UnifiedSearchResult, SourceType } from '../db/types.js';
|
|
3
|
+
import type { VectorSearchResult } from '../embedding/code-embedding.js';
|
|
3
4
|
export interface SearchOptions {
|
|
4
5
|
/** 限定来源类型 */
|
|
5
6
|
sourceTypes?: SourceType[];
|
|
@@ -56,4 +57,10 @@ export interface ParsedQuery {
|
|
|
56
57
|
* 支持: kind: lang: path: source:
|
|
57
58
|
*/
|
|
58
59
|
export declare function parseQuery(query: string): ParsedQuery;
|
|
60
|
+
/**
|
|
61
|
+
* Merge FTS5 search results with vector search results using RRF (Reciprocal Rank Fusion).
|
|
62
|
+
* Imports mergeHybrid from the wiki embedding module and maps between UnifiedSearchResult
|
|
63
|
+
* and RankedResult formats.
|
|
64
|
+
*/
|
|
65
|
+
export declare function mergeCodeSearchResults(ftsResults: UnifiedSearchResult[], vecResults: VectorSearchResult[], queries: KgQueryBuilder, limit: number): UnifiedSearchResult[];
|
|
59
66
|
//# sourceMappingURL=search.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../../../src/graph/kg/query/search.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../../../src/graph/kg/query/search.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACnF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAQzE,MAAM,WAAW,aAAa;IAC5B,aAAa;IACb,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,aAAa;IACb,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW;IACX,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,sBAAsB;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAMD,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,mBAAmB,EAAE,CAAC;IACrC,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,aAAa,GACtB,mBAAmB,CAqIrB;AAMD,wBAAgB,cAAc,CAC5B,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACnE,WAAW,EAAE,CAMf;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACvD,WAAW,EAAE,CAKf;AAMD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CA8BrD;AAMD;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,mBAAmB,EAAE,EACjC,UAAU,EAAE,kBAAkB,EAAE,EAChC,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,MAAM,GACZ,mBAAmB,EAAE,CAuEvB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// src/graph/kg/query/search.ts — FTS5 统一搜索
|
|
2
2
|
// 参考: plan-maestrograph.md Gap 修补 6 — 搜索策略链: FTS5 → LIKE → Fuzzy
|
|
3
|
-
import { computeScore, extractSearchTerms, removeStopWords } from './scoring.js';
|
|
3
|
+
import { computeScore, extractSearchTerms, removeStopWords, expandCodeQuery, getStemVariants } from './scoring.js';
|
|
4
4
|
/**
|
|
5
5
|
* 统一搜索 — 跨代码 + 知识层查询
|
|
6
6
|
*
|
|
@@ -55,6 +55,53 @@ export function searchUnified(queries, query, options) {
|
|
|
55
55
|
});
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
+
// 策略 3: 代码同义词扩展查询(auth→authentication 等缩写映射 + 词干变体)
|
|
59
|
+
const expandedQuery = expandCodeQuery(effectiveQuery);
|
|
60
|
+
if (expandedQuery !== effectiveQuery && expandedQuery !== query) {
|
|
61
|
+
const expandedResults = queries.searchCodeFTS(expandedQuery, {
|
|
62
|
+
limit: limit * 2,
|
|
63
|
+
kinds: codeKinds,
|
|
64
|
+
languages: options?.languages,
|
|
65
|
+
});
|
|
66
|
+
for (const node of expandedResults) {
|
|
67
|
+
if (seenIds.has(node.id))
|
|
68
|
+
continue;
|
|
69
|
+
seenIds.add(node.id);
|
|
70
|
+
allResults.push({
|
|
71
|
+
node,
|
|
72
|
+
score: computeScore(node, query),
|
|
73
|
+
matchReason: { kind: 'direct', field: 'name' },
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
// 策略 4: 词干变体独立搜索 — 覆盖 morphological variants (e.g. "validate" → "valid")
|
|
78
|
+
if (allResults.length < limit) {
|
|
79
|
+
const stemTerms = new Set();
|
|
80
|
+
for (const term of meaningfulTerms) {
|
|
81
|
+
for (const stem of getStemVariants(term)) {
|
|
82
|
+
if (stem.length >= 3 && !meaningfulTerms.includes(stem))
|
|
83
|
+
stemTerms.add(stem);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
if (stemTerms.size > 0) {
|
|
87
|
+
const stemQuery = [...stemTerms].join(' ');
|
|
88
|
+
const stemResults = queries.searchCodeFTS(stemQuery, {
|
|
89
|
+
limit: limit,
|
|
90
|
+
kinds: codeKinds,
|
|
91
|
+
languages: options?.languages,
|
|
92
|
+
});
|
|
93
|
+
for (const node of stemResults) {
|
|
94
|
+
if (seenIds.has(node.id))
|
|
95
|
+
continue;
|
|
96
|
+
seenIds.add(node.id);
|
|
97
|
+
allResults.push({
|
|
98
|
+
node,
|
|
99
|
+
score: computeScore(node, query) * 0.8,
|
|
100
|
+
matchReason: { kind: 'direct', field: 'name' },
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
58
105
|
}
|
|
59
106
|
// 知识 FTS5 搜索 (P2: _bm25Score 透传给 computeScore)
|
|
60
107
|
if (includeKnowledge) {
|
|
@@ -155,4 +202,73 @@ export function parseQuery(query) {
|
|
|
155
202
|
result.text = textParts.join(' ');
|
|
156
203
|
return result;
|
|
157
204
|
}
|
|
205
|
+
// ---------------------------------------------------------------------------
|
|
206
|
+
// Hybrid merge — RRF fusion of FTS5 + vector search results for code search
|
|
207
|
+
// ---------------------------------------------------------------------------
|
|
208
|
+
/**
|
|
209
|
+
* Merge FTS5 search results with vector search results using RRF (Reciprocal Rank Fusion).
|
|
210
|
+
* Imports mergeHybrid from the wiki embedding module and maps between UnifiedSearchResult
|
|
211
|
+
* and RankedResult formats.
|
|
212
|
+
*/
|
|
213
|
+
export function mergeCodeSearchResults(ftsResults, vecResults, queries, limit) {
|
|
214
|
+
// Lazy import mergeHybrid at call site would be async — but mergeHybrid is a pure
|
|
215
|
+
// computation function. We inline the RRF logic here to keep this function synchronous,
|
|
216
|
+
// matching the same algorithm as mergeHybrid in wiki/embedding.ts.
|
|
217
|
+
const RRF_K = 10;
|
|
218
|
+
const BM25_WEIGHT = 0.6;
|
|
219
|
+
const VECTOR_WEIGHT = 0.4;
|
|
220
|
+
const ALPHA = 0.4;
|
|
221
|
+
// Phase 1: RRF score accumulation
|
|
222
|
+
const rrfScores = new Map();
|
|
223
|
+
for (let i = 0; i < ftsResults.length; i++) {
|
|
224
|
+
const rrf = BM25_WEIGHT / (RRF_K + i + 1);
|
|
225
|
+
rrfScores.set(ftsResults[i].node.id, (rrfScores.get(ftsResults[i].node.id) ?? 0) + rrf);
|
|
226
|
+
}
|
|
227
|
+
for (let i = 0; i < vecResults.length; i++) {
|
|
228
|
+
const rrf = VECTOR_WEIGHT / (RRF_K + i + 1);
|
|
229
|
+
rrfScores.set(vecResults[i].nodeId, (rrfScores.get(vecResults[i].nodeId) ?? 0) + rrf);
|
|
230
|
+
}
|
|
231
|
+
// Sort by RRF score descending, take top limit*3 for normalization
|
|
232
|
+
const rrfSorted = [...rrfScores.entries()]
|
|
233
|
+
.sort((a, b) => b[1] - a[1])
|
|
234
|
+
.slice(0, limit * 3);
|
|
235
|
+
const maxRrf = rrfSorted.length > 0 ? rrfSorted[0][1] : 1;
|
|
236
|
+
const rrfNorm = new Map(rrfSorted.map(([id, s]) => [id, maxRrf > 0 ? s / maxRrf : 0]));
|
|
237
|
+
// Phase 2: BM25 normalization
|
|
238
|
+
const maxBm25 = ftsResults.length > 0 ? ftsResults[0].score : 1;
|
|
239
|
+
const bm25Norm = new Map(ftsResults.map(r => [r.node.id, maxBm25 > 0 ? r.score / maxBm25 : 0]));
|
|
240
|
+
// Phase 3: Final score = alpha * rrfNorm + (1-alpha) * bm25Norm
|
|
241
|
+
const ftsNodeMap = new Map(ftsResults.map(r => [r.node.id, r]));
|
|
242
|
+
// Collect vector-only nodeIds that need DB lookup
|
|
243
|
+
const vecOnlyIds = rrfSorted
|
|
244
|
+
.map(([id]) => id)
|
|
245
|
+
.filter(id => !ftsNodeMap.has(id));
|
|
246
|
+
// Batch-fetch vector-only nodes from DB
|
|
247
|
+
const vecNodeMap = vecOnlyIds.length > 0
|
|
248
|
+
? queries.getNodesByIds(vecOnlyIds)
|
|
249
|
+
: new Map();
|
|
250
|
+
const merged = [];
|
|
251
|
+
const seen = new Set();
|
|
252
|
+
for (const [id] of rrfSorted) {
|
|
253
|
+
if (seen.has(id))
|
|
254
|
+
continue;
|
|
255
|
+
seen.add(id);
|
|
256
|
+
const rn = rrfNorm.get(id) ?? 0;
|
|
257
|
+
const bn = bm25Norm.get(id) ?? 0;
|
|
258
|
+
const finalScore = ALPHA * rn + (1 - ALPHA) * bn;
|
|
259
|
+
// Look up node: prefer FTS result (already has matchReason), fall back to DB
|
|
260
|
+
const ftsHit = ftsNodeMap.get(id);
|
|
261
|
+
if (ftsHit) {
|
|
262
|
+
merged.push({ node: ftsHit.node, score: finalScore, matchReason: ftsHit.matchReason });
|
|
263
|
+
}
|
|
264
|
+
else {
|
|
265
|
+
const node = vecNodeMap.get(id);
|
|
266
|
+
if (node) {
|
|
267
|
+
merged.push({ node, score: finalScore, matchReason: { kind: 'vector', field: 'embedding' } });
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
merged.sort((a, b) => b.score - a.score);
|
|
272
|
+
return merged.slice(0, limit);
|
|
273
|
+
}
|
|
158
274
|
//# sourceMappingURL=search.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../../src/graph/kg/query/search.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,iEAAiE;
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../../../../src/graph/kg/query/search.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-tools.d.ts","sourceRoot":"","sources":["../../../../../src/graph/kg/surface/mcp-tools.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,eAAO,MAAM,YAAY,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"mcp-tools.d.ts","sourceRoot":"","sources":["../../../../../src/graph/kg/surface/mcp-tools.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,eAAO,MAAM,YAAY,EAAE,UAAU,EAiHpC,CAAC;AAMF,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,eAAe,CAAC;AAE3D,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,QAAQ,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CAS1D;AAMD,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAmL/E"}
|
|
@@ -5,6 +5,7 @@ import { bfs, getCallers, getCallees, getImpactRadius, traceCallChain } from '..
|
|
|
5
5
|
import { buildContext } from '../query/context-builder.js';
|
|
6
6
|
import { getKgDatabasePath } from '../db/connection.js';
|
|
7
7
|
import { existsSync } from 'node:fs';
|
|
8
|
+
import { resolve } from 'node:path';
|
|
8
9
|
export const KG_MCP_TOOLS = [
|
|
9
10
|
{
|
|
10
11
|
name: 'maestro_kg_search',
|
|
@@ -113,6 +114,11 @@ export const KG_MCP_TOOLS = [
|
|
|
113
114
|
description: 'Index status: node/edge/file counts, DB size, last update',
|
|
114
115
|
inputSchema: { type: 'object', properties: {} },
|
|
115
116
|
},
|
|
117
|
+
{
|
|
118
|
+
name: 'maestro_kg_build_embeddings',
|
|
119
|
+
description: 'Build or rebuild code embedding index for semantic search',
|
|
120
|
+
inputSchema: { type: 'object', properties: {} },
|
|
121
|
+
},
|
|
116
122
|
];
|
|
117
123
|
export function precheckKg(projectPath) {
|
|
118
124
|
const dbPath = getKgDatabasePath(projectPath);
|
|
@@ -147,6 +153,37 @@ export async function handleMcpTool(toolName, input, projectPath) {
|
|
|
147
153
|
let result;
|
|
148
154
|
switch (toolName) {
|
|
149
155
|
case 'maestro_kg_search': {
|
|
156
|
+
// Try hybrid search first (FTS5 + vector) when embedding index file exists on disk
|
|
157
|
+
try {
|
|
158
|
+
const embPath = resolve(projectPath, '.workflow', 'kg', 'code-embedding-index.bin');
|
|
159
|
+
if (!existsSync(embPath))
|
|
160
|
+
throw null; // fast skip — no disk I/O for index loading
|
|
161
|
+
const embIdx = await mg.getCodeEmbeddingIndex();
|
|
162
|
+
if (embIdx && embIdx.nodeIds.length > 0) {
|
|
163
|
+
const hybridResults = await mg.searchHybrid(safeStr(input.query, ''), {
|
|
164
|
+
sourceTypes: input.sourceTypes, // eslint-disable-line @typescript-eslint/no-explicit-any
|
|
165
|
+
limit: safeInt(input.limit, 20, 100),
|
|
166
|
+
});
|
|
167
|
+
result = {
|
|
168
|
+
results: hybridResults.map(r => ({
|
|
169
|
+
id: r.node.id, kind: r.node.kind, name: r.node.name, sourceType: r.node.sourceType,
|
|
170
|
+
definition: r.node.definition.substring(0, 300),
|
|
171
|
+
filePath: r.node.filePath, startLine: r.node.startLine, score: r.score,
|
|
172
|
+
})),
|
|
173
|
+
summary: {
|
|
174
|
+
codeSymbols: hybridResults.filter(r => r.node.sourceType === 'codegraph').length,
|
|
175
|
+
domainTerms: hybridResults.filter(r => r.node.sourceType === 'domain').length,
|
|
176
|
+
specRules: hybridResults.filter(r => r.node.sourceType === 'spec').length,
|
|
177
|
+
knowhowDocs: hybridResults.filter(r => r.node.sourceType === 'knowhow').length,
|
|
178
|
+
total: hybridResults.length,
|
|
179
|
+
hybridSearch: true,
|
|
180
|
+
},
|
|
181
|
+
};
|
|
182
|
+
break;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
catch { /* fallback to FTS5 only */ }
|
|
186
|
+
// Fallback: FTS5 only (original behavior)
|
|
150
187
|
const searchOutput = mg.searchUnified(safeStr(input.query, ''), {
|
|
151
188
|
sourceTypes: input.sourceTypes, // eslint-disable-line @typescript-eslint/no-explicit-any
|
|
152
189
|
limit: safeInt(input.limit, 20, 100),
|
|
@@ -231,6 +268,18 @@ export async function handleMcpTool(toolName, input, projectPath) {
|
|
|
231
268
|
result = mg.getStats();
|
|
232
269
|
break;
|
|
233
270
|
}
|
|
271
|
+
case 'maestro_kg_build_embeddings': {
|
|
272
|
+
const startTime = Date.now();
|
|
273
|
+
const index = await mg.buildCodeEmbeddings();
|
|
274
|
+
result = {
|
|
275
|
+
status: 'completed',
|
|
276
|
+
nodeCount: index.nodeIds.length,
|
|
277
|
+
dimension: index.dimension,
|
|
278
|
+
modelId: index.modelId,
|
|
279
|
+
buildTimeMs: Date.now() - startTime,
|
|
280
|
+
};
|
|
281
|
+
break;
|
|
282
|
+
}
|
|
234
283
|
default:
|
|
235
284
|
result = { error: `Unknown tool: ${toolName}` };
|
|
236
285
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-tools.js","sourceRoot":"","sources":["../../../../../src/graph/kg/surface/mcp-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-tools.js","sourceRoot":"","sources":["../../../../../src/graph/kg/surface/mcp-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kg-sync-hook.d.ts","sourceRoot":"","sources":["../../../src/hooks/kg-sync-hook.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAeH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAMD,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"kg-sync-hook.d.ts","sourceRoot":"","sources":["../../../src/hooks/kg-sync-hook.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAeH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAMD,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,CAAC,CAuCvB"}
|
|
@@ -35,6 +35,9 @@ export async function evaluateKgSync(projectPath, sessionId) {
|
|
|
35
35
|
kgSyncGuard.markDone(sessionId);
|
|
36
36
|
if (filesChanged > 0) {
|
|
37
37
|
invalidateSearchIndex(resolve(projectPath, '.workflow')).catch(() => { });
|
|
38
|
+
// Best-effort code embedding rebuild — fire-and-forget with own MaestroGraph instance
|
|
39
|
+
// to avoid blocking the sync hook (embedding can take 5-30s on first load)
|
|
40
|
+
import('../graph/kg/engine.js').then(({ MaestroGraph: MG }) => MG.open(projectPath).then(mg2 => mg2.buildCodeEmbeddings().catch(() => { }).finally(() => mg2.close()))).catch(() => { });
|
|
38
41
|
}
|
|
39
42
|
return { synced: true, filesChanged, durationMs: Date.now() - start };
|
|
40
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kg-sync-hook.js","sourceRoot":"","sources":["../../../src/hooks/kg-sync-hook.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO;CAC3D,CAAC,CAAC;AAaH,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,WAAmB,EACnB,SAAiB;IAEjB,IAAI,CAAC;QACH,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QAC/D,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC;YAC7C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,8BAA8B,EAAE,CAAC;QACnE,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACtC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAC/C,CAAC;QAED,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,EAAE,CAAC;YACtC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAChC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;QACjD,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,EAAE,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YACxF,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAChC,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;gBACrB,qBAAqB,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"kg-sync-hook.js","sourceRoot":"","sources":["../../../src/hooks/kg-sync-hook.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO;CAC3D,CAAC,CAAC;AAaH,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,WAAmB,EACnB,SAAiB;IAEjB,IAAI,CAAC;QACH,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QAC/D,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC;YAC7C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,8BAA8B,EAAE,CAAC;QACnE,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACtC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAC/C,CAAC;QAED,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,EAAE,CAAC;YACtC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAChC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;QACjD,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,EAAE,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YACxF,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAChC,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;gBACrB,qBAAqB,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACzE,sFAAsF;gBACtF,2EAA2E;gBAC3E,MAAM,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,EAAE,CAC5D,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAC9B,GAAG,CAAC,mBAAmB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CACrE,CACF,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACpB,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;QACxE,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IACjD,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,SAAS,mBAAmB,CAAC,WAAmB;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,wBAAwB,EAAE;YAChD,GAAG,EAAE,WAAW;YAChB,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAAE,OAAO,KAAK,CAAC;QACjC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACpF,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,MAAM,IAAI,CAAC,IAAI,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;gBAAE,OAAO,IAAI,CAAC;QAChG,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Code Semantic Search Tool — MCP tool exposing hybrid FTS5 + embedding vector search.
|
|
3
|
+
*
|
|
4
|
+
* Wraps MaestroGraph.searchHybrid() for code symbol search.
|
|
5
|
+
* Returns simplified result shape: { id, name, kind, filePath, startLine, score, signature, definition }
|
|
6
|
+
*/
|
|
7
|
+
import type { ToolSchema, CcwToolResult } from '../types/tool-schema.js';
|
|
8
|
+
export declare const schema: ToolSchema;
|
|
9
|
+
export declare function handler(params: Record<string, unknown>): Promise<CcwToolResult>;
|
|
10
|
+
//# sourceMappingURL=code-semantic-search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-semantic-search.d.ts","sourceRoot":"","sources":["../../../src/tools/code-semantic-search.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAIzE,eAAO,MAAM,MAAM,EAAE,UAuBpB,CAAC;AAIF,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAqDrF"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Code Semantic Search Tool — MCP tool exposing hybrid FTS5 + embedding vector search.
|
|
3
|
+
*
|
|
4
|
+
* Wraps MaestroGraph.searchHybrid() for code symbol search.
|
|
5
|
+
* Returns simplified result shape: { id, name, kind, filePath, startLine, score, signature, definition }
|
|
6
|
+
*/
|
|
7
|
+
// --- Tool Schema ---
|
|
8
|
+
export const schema = {
|
|
9
|
+
name: 'maestro_code_semantic_search',
|
|
10
|
+
description: 'Semantic code search across code symbols using hybrid FTS5 + embedding vector search.',
|
|
11
|
+
inputSchema: {
|
|
12
|
+
type: 'object',
|
|
13
|
+
properties: {
|
|
14
|
+
query: {
|
|
15
|
+
type: 'string',
|
|
16
|
+
description: 'Search query (natural language or code symbol)',
|
|
17
|
+
},
|
|
18
|
+
limit: {
|
|
19
|
+
type: 'number',
|
|
20
|
+
description: 'Max results (default 20)',
|
|
21
|
+
},
|
|
22
|
+
kinds: {
|
|
23
|
+
type: 'array',
|
|
24
|
+
items: { type: 'string' },
|
|
25
|
+
description: 'Filter by node kinds (e.g. function, class, interface)',
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
required: ['query'],
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
// --- Handler ---
|
|
32
|
+
export async function handler(params) {
|
|
33
|
+
const query = String(params.query || '');
|
|
34
|
+
const limit = typeof params.limit === 'number' ? params.limit : 20;
|
|
35
|
+
const kinds = Array.isArray(params.kinds) ? params.kinds : undefined;
|
|
36
|
+
if (!query.trim()) {
|
|
37
|
+
return { success: false, error: 'Parameter "query" is required' };
|
|
38
|
+
}
|
|
39
|
+
try {
|
|
40
|
+
const { MaestroGraph } = await import('../graph/kg/engine.js');
|
|
41
|
+
const projectPath = process.cwd();
|
|
42
|
+
if (!MaestroGraph.isInitialized(projectPath)) {
|
|
43
|
+
return {
|
|
44
|
+
success: false,
|
|
45
|
+
error: 'MaestroGraph not initialized. Run: maestro kg init && maestro kg sync',
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
const mg = await MaestroGraph.open(projectPath);
|
|
49
|
+
try {
|
|
50
|
+
let results = await mg.searchHybrid(query, { limit: limit * 2 });
|
|
51
|
+
// Filter by kinds if specified
|
|
52
|
+
if (kinds && kinds.length > 0) {
|
|
53
|
+
results = results.filter(r => kinds.includes(r.node.kind));
|
|
54
|
+
}
|
|
55
|
+
results = results.slice(0, limit);
|
|
56
|
+
return {
|
|
57
|
+
success: true,
|
|
58
|
+
result: {
|
|
59
|
+
results: results.map(r => ({
|
|
60
|
+
id: r.node.id,
|
|
61
|
+
name: r.node.name,
|
|
62
|
+
kind: r.node.kind,
|
|
63
|
+
filePath: r.node.filePath,
|
|
64
|
+
startLine: r.node.startLine,
|
|
65
|
+
score: r.score,
|
|
66
|
+
signature: r.node.signature || '',
|
|
67
|
+
definition: (r.node.definition || '').slice(0, 200),
|
|
68
|
+
})),
|
|
69
|
+
totalResults: results.length,
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
finally {
|
|
74
|
+
mg.close();
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
catch (err) {
|
|
78
|
+
return { success: false, error: err instanceof Error ? err.message : String(err) };
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=code-semantic-search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-semantic-search.js","sourceRoot":"","sources":["../../../src/tools/code-semantic-search.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,sBAAsB;AAEtB,MAAM,CAAC,MAAM,MAAM,GAAe;IAChC,IAAI,EAAE,8BAA8B;IACpC,WAAW,EACT,uFAAuF;IACzF,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gDAAgD;aAC9D;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,0BAA0B;aACxC;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,wDAAwD;aACtE;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;CACF,CAAC;AAEF,kBAAkB;AAElB,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,MAA+B;IAC3D,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IACzC,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAiB,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjF,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAClB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAAC;IACpE,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAElC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC;YAC7C,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,uEAAuE;aAC/E,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChD,IAAI,CAAC;YACH,IAAI,OAAO,GAAG,MAAM,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;YAEjE,+BAA+B;YAC/B,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7D,CAAC;YAED,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAElC,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE;oBACN,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBACzB,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE;wBACb,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI;wBACjB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI;wBACjB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;wBACzB,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS;wBAC3B,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE;wBACjC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;qBACpD,CAAC,CAAC;oBACH,YAAY,EAAE,OAAO,CAAC,MAAM;iBAC7B;aACF,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;IACrF,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAoC7D,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAYjE"}
|
package/dist/src/tools/index.js
CHANGED
|
@@ -9,6 +9,8 @@ import * as teamMailboxTool from './team-mailbox.js';
|
|
|
9
9
|
import * as storeKnowhowTool from './store-knowhow.js';
|
|
10
10
|
import * as teamTasksMcpTool from './team-tasks-mcp.js';
|
|
11
11
|
import * as teamAgentsTool from './team-agents.js';
|
|
12
|
+
import * as wikiSearchTool from './wiki-search.js';
|
|
13
|
+
import * as codeSemanticSearchTool from './code-semantic-search.js';
|
|
12
14
|
/**
|
|
13
15
|
* Register a CCW-style tool (with schema + handler exports) into the maestro registry.
|
|
14
16
|
* Adapts CCW's { success, result, error } format to maestro's { content, isError } format.
|
|
@@ -34,5 +36,7 @@ export function registerBuiltinTools(registry) {
|
|
|
34
36
|
registerCcwTool(registry, storeKnowhowTool);
|
|
35
37
|
registerCcwTool(registry, teamTasksMcpTool);
|
|
36
38
|
registerCcwTool(registry, teamAgentsTool);
|
|
39
|
+
registerCcwTool(registry, wikiSearchTool);
|
|
40
|
+
registerCcwTool(registry, codeSemanticSearchTool);
|
|
37
41
|
}
|
|
38
42
|
//# sourceMappingURL=index.js.map
|