@ai-coders/context 0.4.0 → 0.5.1
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 +117 -146
- package/dist/fragments/compose.d.ts +30 -0
- package/dist/fragments/compose.d.ts.map +1 -0
- package/dist/fragments/compose.js +274 -0
- package/dist/fragments/compose.js.map +1 -0
- package/dist/fragments/extractors/index.d.ts +26 -0
- package/dist/fragments/extractors/index.d.ts.map +1 -0
- package/dist/fragments/extractors/index.js +58 -0
- package/dist/fragments/extractors/index.js.map +1 -0
- package/dist/fragments/extractors/module.d.ts +12 -0
- package/dist/fragments/extractors/module.d.ts.map +1 -0
- package/dist/fragments/extractors/module.js +302 -0
- package/dist/fragments/extractors/module.js.map +1 -0
- package/dist/fragments/extractors/project.d.ts +12 -0
- package/dist/fragments/extractors/project.d.ts.map +1 -0
- package/dist/fragments/extractors/project.js +274 -0
- package/dist/fragments/extractors/project.js.map +1 -0
- package/dist/fragments/extractors/semantic.d.ts +12 -0
- package/dist/fragments/extractors/semantic.d.ts.map +1 -0
- package/dist/fragments/extractors/semantic.js +329 -0
- package/dist/fragments/extractors/semantic.js.map +1 -0
- package/dist/fragments/index.d.ts +47 -0
- package/dist/fragments/index.d.ts.map +1 -0
- package/dist/fragments/index.js +75 -0
- package/dist/fragments/index.js.map +1 -0
- package/dist/fragments/query.d.ts +101 -0
- package/dist/fragments/query.d.ts.map +1 -0
- package/dist/fragments/query.js +200 -0
- package/dist/fragments/query.js.map +1 -0
- package/dist/fragments/render/compact.d.ts +15 -0
- package/dist/fragments/render/compact.d.ts.map +1 -0
- package/dist/fragments/render/compact.js +209 -0
- package/dist/fragments/render/compact.js.map +1 -0
- package/dist/fragments/render/index.d.ts +17 -0
- package/dist/fragments/render/index.d.ts.map +1 -0
- package/dist/fragments/render/index.js +40 -0
- package/dist/fragments/render/index.js.map +1 -0
- package/dist/fragments/render/json.d.ts +9 -0
- package/dist/fragments/render/json.d.ts.map +1 -0
- package/dist/fragments/render/json.js +44 -0
- package/dist/fragments/render/json.js.map +1 -0
- package/dist/fragments/render/markdown.d.ts +9 -0
- package/dist/fragments/render/markdown.d.ts.map +1 -0
- package/dist/fragments/render/markdown.js +291 -0
- package/dist/fragments/render/markdown.js.map +1 -0
- package/dist/fragments/store.d.ts +49 -0
- package/dist/fragments/store.d.ts.map +1 -0
- package/dist/fragments/store.js +161 -0
- package/dist/fragments/store.js.map +1 -0
- package/dist/fragments/types.d.ts +241 -0
- package/dist/fragments/types.d.ts.map +1 -0
- package/dist/fragments/types.js +8 -0
- package/dist/fragments/types.js.map +1 -0
- package/dist/generators/agents/agentGenerator.d.ts +8 -1
- package/dist/generators/agents/agentGenerator.d.ts.map +1 -1
- package/dist/generators/agents/agentGenerator.js +108 -10
- package/dist/generators/agents/agentGenerator.js.map +1 -1
- package/dist/generators/agents/templates/playbookTemplate.d.ts +3 -2
- package/dist/generators/agents/templates/playbookTemplate.d.ts.map +1 -1
- package/dist/generators/agents/templates/playbookTemplate.js +147 -45
- package/dist/generators/agents/templates/playbookTemplate.js.map +1 -1
- package/dist/generators/agents/templates/types.d.ts +9 -1
- package/dist/generators/agents/templates/types.d.ts.map +1 -1
- package/dist/generators/documentation/documentationGenerator.d.ts +2 -0
- package/dist/generators/documentation/documentationGenerator.d.ts.map +1 -1
- package/dist/generators/documentation/documentationGenerator.js +18 -3
- package/dist/generators/documentation/documentationGenerator.js.map +1 -1
- package/dist/generators/documentation/guideRegistry.d.ts.map +1 -1
- package/dist/generators/documentation/guideRegistry.js +0 -8
- package/dist/generators/documentation/guideRegistry.js.map +1 -1
- package/dist/generators/documentation/templates/apiReferenceTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/apiReferenceTemplate.js +3 -22
- package/dist/generators/documentation/templates/apiReferenceTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/architectureTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/architectureTemplate.js +174 -36
- package/dist/generators/documentation/templates/architectureTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/common.d.ts +33 -1
- package/dist/generators/documentation/templates/common.d.ts.map +1 -1
- package/dist/generators/documentation/templates/common.js +144 -10
- package/dist/generators/documentation/templates/common.js.map +1 -1
- package/dist/generators/documentation/templates/dataFlowTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/dataFlowTemplate.js +106 -22
- package/dist/generators/documentation/templates/dataFlowTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/developmentWorkflowTemplate.js +4 -19
- package/dist/generators/documentation/templates/developmentWorkflowTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/glossaryTemplate.d.ts +1 -1
- package/dist/generators/documentation/templates/glossaryTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/glossaryTemplate.js +57 -25
- package/dist/generators/documentation/templates/glossaryTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/indexTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/indexTemplate.js +1 -18
- package/dist/generators/documentation/templates/indexTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/migrationTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/migrationTemplate.js +3 -23
- package/dist/generators/documentation/templates/migrationTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/onboardingTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/onboardingTemplate.js +3 -23
- package/dist/generators/documentation/templates/onboardingTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/projectOverviewTemplate.js +94 -28
- package/dist/generators/documentation/templates/projectOverviewTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/securityTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/securityTemplate.js +11 -22
- package/dist/generators/documentation/templates/securityTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/testingTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/testingTemplate.js +4 -19
- package/dist/generators/documentation/templates/testingTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/toolingTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/toolingTemplate.js +11 -25
- package/dist/generators/documentation/templates/toolingTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/troubleshootingTemplate.d.ts.map +1 -1
- package/dist/generators/documentation/templates/troubleshootingTemplate.js +3 -23
- package/dist/generators/documentation/templates/troubleshootingTemplate.js.map +1 -1
- package/dist/generators/documentation/templates/types.d.ts +2 -1
- package/dist/generators/documentation/templates/types.d.ts.map +1 -1
- package/dist/generators/plans/planGenerator.d.ts +4 -0
- package/dist/generators/plans/planGenerator.d.ts.map +1 -1
- package/dist/generators/plans/planGenerator.js +30 -2
- package/dist/generators/plans/planGenerator.js.map +1 -1
- package/dist/generators/plans/templates/indexTemplate.d.ts.map +1 -1
- package/dist/generators/plans/templates/indexTemplate.js +3 -12
- package/dist/generators/plans/templates/indexTemplate.js.map +1 -1
- package/dist/generators/plans/templates/planTemplate.d.ts.map +1 -1
- package/dist/generators/plans/templates/planTemplate.js +57 -33
- package/dist/generators/plans/templates/planTemplate.js.map +1 -1
- package/dist/generators/plans/templates/types.d.ts +10 -0
- package/dist/generators/plans/templates/types.d.ts.map +1 -1
- package/dist/generators/shared/generatorUtils.d.ts.map +1 -1
- package/dist/generators/shared/generatorUtils.js +6 -9
- package/dist/generators/shared/generatorUtils.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +646 -114
- package/dist/index.js.map +1 -1
- package/dist/prompts/defaults.d.ts +2 -2
- package/dist/prompts/defaults.d.ts.map +1 -1
- package/dist/prompts/defaults.js +26 -56
- package/dist/prompts/defaults.js.map +1 -1
- package/dist/services/ai/agentEvents.d.ts +45 -0
- package/dist/services/ai/agentEvents.d.ts.map +1 -0
- package/dist/services/ai/agentEvents.js +61 -0
- package/dist/services/ai/agentEvents.js.map +1 -0
- package/dist/services/ai/agents/documentationAgent.d.ts +53 -0
- package/dist/services/ai/agents/documentationAgent.d.ts.map +1 -0
- package/dist/services/ai/agents/documentationAgent.js +217 -0
- package/dist/services/ai/agents/documentationAgent.js.map +1 -0
- package/dist/services/ai/agents/index.d.ts +7 -0
- package/dist/services/ai/agents/index.d.ts.map +1 -0
- package/dist/services/ai/agents/index.js +10 -0
- package/dist/services/ai/agents/index.js.map +1 -0
- package/dist/services/ai/agents/planAgent.d.ts +68 -0
- package/dist/services/ai/agents/planAgent.d.ts.map +1 -0
- package/dist/services/ai/agents/planAgent.js +342 -0
- package/dist/services/ai/agents/planAgent.js.map +1 -0
- package/dist/services/ai/agents/playbookAgent.d.ts +54 -0
- package/dist/services/ai/agents/playbookAgent.d.ts.map +1 -0
- package/dist/services/ai/agents/playbookAgent.js +244 -0
- package/dist/services/ai/agents/playbookAgent.js.map +1 -0
- package/dist/services/ai/aiSdkClient.d.ts +67 -0
- package/dist/services/ai/aiSdkClient.d.ts.map +1 -0
- package/dist/services/ai/aiSdkClient.js +143 -0
- package/dist/services/ai/aiSdkClient.js.map +1 -0
- package/dist/services/ai/index.d.ts +7 -0
- package/dist/services/ai/index.d.ts.map +1 -0
- package/dist/services/ai/index.js +49 -0
- package/dist/services/ai/index.js.map +1 -0
- package/dist/services/ai/prompts/index.d.ts +2 -0
- package/dist/services/ai/prompts/index.d.ts.map +1 -0
- package/dist/services/ai/prompts/index.js +12 -0
- package/dist/services/ai/prompts/index.js.map +1 -0
- package/dist/services/ai/prompts/sharedPrompts.d.ts +33 -0
- package/dist/services/ai/prompts/sharedPrompts.d.ts.map +1 -0
- package/dist/services/ai/prompts/sharedPrompts.js +136 -0
- package/dist/services/ai/prompts/sharedPrompts.js.map +1 -0
- package/dist/services/ai/providerFactory.d.ts +35 -0
- package/dist/services/ai/providerFactory.d.ts.map +1 -0
- package/dist/services/ai/providerFactory.js +107 -0
- package/dist/services/ai/providerFactory.js.map +1 -0
- package/dist/services/ai/schemas.d.ts +331 -0
- package/dist/services/ai/schemas.d.ts.map +1 -0
- package/dist/services/ai/schemas.js +236 -0
- package/dist/services/ai/schemas.js.map +1 -0
- package/dist/services/ai/toolRegistry.d.ts +27 -0
- package/dist/services/ai/toolRegistry.d.ts.map +1 -0
- package/dist/services/ai/toolRegistry.js +126 -0
- package/dist/services/ai/toolRegistry.js.map +1 -0
- package/dist/services/ai/tools/analyzeSymbolsTool.d.ts +33 -0
- package/dist/services/ai/tools/analyzeSymbolsTool.d.ts.map +1 -0
- package/dist/services/ai/tools/analyzeSymbolsTool.js +57 -0
- package/dist/services/ai/tools/analyzeSymbolsTool.js.map +1 -0
- package/dist/services/ai/tools/checkScaffoldingTool.d.ts +18 -0
- package/dist/services/ai/tools/checkScaffoldingTool.d.ts.map +1 -0
- package/dist/services/ai/tools/checkScaffoldingTool.js +86 -0
- package/dist/services/ai/tools/checkScaffoldingTool.js.map +1 -0
- package/dist/services/ai/tools/fillScaffoldingTool.d.ts +108 -0
- package/dist/services/ai/tools/fillScaffoldingTool.d.ts.map +1 -0
- package/dist/services/ai/tools/fillScaffoldingTool.js +463 -0
- package/dist/services/ai/tools/fillScaffoldingTool.js.map +1 -0
- package/dist/services/ai/tools/getFileStructureTool.d.ts +29 -0
- package/dist/services/ai/tools/getFileStructureTool.d.ts.map +1 -0
- package/dist/services/ai/tools/getFileStructureTool.js +48 -0
- package/dist/services/ai/tools/getFileStructureTool.js.map +1 -0
- package/dist/services/ai/tools/index.d.ts +20 -0
- package/dist/services/ai/tools/index.d.ts.map +1 -0
- package/dist/services/ai/tools/index.js +68 -0
- package/dist/services/ai/tools/index.js.map +1 -0
- package/dist/services/ai/tools/initializeContextTool.d.ts +25 -0
- package/dist/services/ai/tools/initializeContextTool.d.ts.map +1 -0
- package/dist/services/ai/tools/initializeContextTool.js +121 -0
- package/dist/services/ai/tools/initializeContextTool.js.map +1 -0
- package/dist/services/ai/tools/listFilesTool.d.ts +18 -0
- package/dist/services/ai/tools/listFilesTool.d.ts.map +1 -0
- package/dist/services/ai/tools/listFilesTool.js +34 -0
- package/dist/services/ai/tools/listFilesTool.js.map +1 -0
- package/dist/services/ai/tools/readFileTool.d.ts +17 -0
- package/dist/services/ai/tools/readFileTool.d.ts.map +1 -0
- package/dist/services/ai/tools/readFileTool.js +63 -0
- package/dist/services/ai/tools/readFileTool.js.map +1 -0
- package/dist/services/ai/tools/scaffoldPlanTool.d.ts +19 -0
- package/dist/services/ai/tools/scaffoldPlanTool.d.ts.map +1 -0
- package/dist/services/ai/tools/scaffoldPlanTool.js +81 -0
- package/dist/services/ai/tools/scaffoldPlanTool.js.map +1 -0
- package/dist/services/ai/tools/searchCodeTool.d.ts +25 -0
- package/dist/services/ai/tools/searchCodeTool.d.ts.map +1 -0
- package/dist/services/ai/tools/searchCodeTool.js +96 -0
- package/dist/services/ai/tools/searchCodeTool.js.map +1 -0
- package/dist/services/fill/fillService.d.ts +11 -1
- package/dist/services/fill/fillService.d.ts.map +1 -1
- package/dist/services/fill/fillService.js +157 -40
- package/dist/services/fill/fillService.js.map +1 -1
- package/dist/services/init/initService.d.ts +1 -0
- package/dist/services/init/initService.d.ts.map +1 -1
- package/dist/services/init/initService.js +12 -7
- package/dist/services/init/initService.js.map +1 -1
- package/dist/services/llmClientFactory.d.ts +36 -2
- package/dist/services/llmClientFactory.d.ts.map +1 -1
- package/dist/services/llmClientFactory.js +57 -11
- package/dist/services/llmClientFactory.js.map +1 -1
- package/dist/services/mcp/index.d.ts +2 -0
- package/dist/services/mcp/index.d.ts.map +1 -0
- package/dist/services/mcp/index.js +7 -0
- package/dist/services/mcp/index.js.map +1 -0
- package/dist/services/mcp/mcpServer.d.ts +45 -0
- package/dist/services/mcp/mcpServer.d.ts.map +1 -0
- package/dist/services/mcp/mcpServer.js +411 -0
- package/dist/services/mcp/mcpServer.js.map +1 -0
- package/dist/services/openRouterClient.js +1 -1
- package/dist/services/openRouterClient.js.map +1 -1
- package/dist/services/passthrough/commandRouter.d.ts +53 -0
- package/dist/services/passthrough/commandRouter.d.ts.map +1 -0
- package/dist/services/passthrough/commandRouter.js +349 -0
- package/dist/services/passthrough/commandRouter.js.map +1 -0
- package/dist/services/passthrough/index.d.ts +7 -0
- package/dist/services/passthrough/index.d.ts.map +1 -0
- package/dist/services/passthrough/index.js +23 -0
- package/dist/services/passthrough/index.js.map +1 -0
- package/dist/services/passthrough/protocol.d.ts +269 -0
- package/dist/services/passthrough/protocol.d.ts.map +1 -0
- package/dist/services/passthrough/protocol.js +151 -0
- package/dist/services/passthrough/protocol.js.map +1 -0
- package/dist/services/passthrough/stdinReader.d.ts +42 -0
- package/dist/services/passthrough/stdinReader.d.ts.map +1 -0
- package/dist/services/passthrough/stdinReader.js +111 -0
- package/dist/services/passthrough/stdinReader.js.map +1 -0
- package/dist/services/plan/planService.d.ts +3 -1
- package/dist/services/plan/planService.d.ts.map +1 -1
- package/dist/services/plan/planService.js +49 -41
- package/dist/services/plan/planService.js.map +1 -1
- package/dist/services/semantic/codebaseAnalyzer.d.ts +40 -0
- package/dist/services/semantic/codebaseAnalyzer.d.ts.map +1 -0
- package/dist/services/semantic/codebaseAnalyzer.js +540 -0
- package/dist/services/semantic/codebaseAnalyzer.js.map +1 -0
- package/dist/services/semantic/contextBuilder.d.ts +79 -0
- package/dist/services/semantic/contextBuilder.d.ts.map +1 -0
- package/dist/services/semantic/contextBuilder.js +538 -0
- package/dist/services/semantic/contextBuilder.js.map +1 -0
- package/dist/services/semantic/index.d.ts +12 -0
- package/dist/services/semantic/index.d.ts.map +1 -0
- package/dist/services/semantic/index.js +33 -0
- package/dist/services/semantic/index.js.map +1 -0
- package/dist/services/semantic/lsp/index.d.ts +2 -0
- package/dist/services/semantic/lsp/index.d.ts.map +1 -0
- package/dist/services/semantic/lsp/index.js +6 -0
- package/dist/services/semantic/lsp/index.js.map +1 -0
- package/dist/services/semantic/lsp/lspLayer.d.ts +32 -0
- package/dist/services/semantic/lsp/lspLayer.d.ts.map +1 -0
- package/dist/services/semantic/lsp/lspLayer.js +378 -0
- package/dist/services/semantic/lsp/lspLayer.js.map +1 -0
- package/dist/services/semantic/treeSitter/index.d.ts +2 -0
- package/dist/services/semantic/treeSitter/index.d.ts.map +1 -0
- package/dist/services/semantic/treeSitter/index.js +6 -0
- package/dist/services/semantic/treeSitter/index.js.map +1 -0
- package/dist/services/semantic/treeSitter/treeSitterLayer.d.ts +37 -0
- package/dist/services/semantic/treeSitter/treeSitterLayer.d.ts.map +1 -0
- package/dist/services/semantic/treeSitter/treeSitterLayer.js +518 -0
- package/dist/services/semantic/treeSitter/treeSitterLayer.js.map +1 -0
- package/dist/services/semantic/types.d.ts +122 -0
- package/dist/services/semantic/types.d.ts.map +1 -0
- package/dist/services/semantic/types.js +31 -0
- package/dist/services/semantic/types.js.map +1 -0
- package/dist/services/serve/index.d.ts +2 -0
- package/dist/services/serve/index.d.ts.map +1 -0
- package/dist/services/serve/index.js +6 -0
- package/dist/services/serve/index.js.map +1 -0
- package/dist/services/serve/serveService.d.ts +38 -0
- package/dist/services/serve/serveService.d.ts.map +1 -0
- package/dist/services/serve/serveService.js +99 -0
- package/dist/services/serve/serveService.js.map +1 -0
- package/dist/services/shared/llmConfig.d.ts +19 -3
- package/dist/services/shared/llmConfig.d.ts.map +1 -1
- package/dist/services/shared/llmConfig.js +39 -10
- package/dist/services/shared/llmConfig.js.map +1 -1
- package/dist/services/state/index.d.ts +2 -0
- package/dist/services/state/index.d.ts.map +1 -0
- package/dist/services/state/index.js +6 -0
- package/dist/services/state/index.js.map +1 -0
- package/dist/services/state/stateDetector.d.ts +53 -0
- package/dist/services/state/stateDetector.d.ts.map +1 -0
- package/dist/services/state/stateDetector.js +189 -0
- package/dist/services/state/stateDetector.js.map +1 -0
- package/dist/services/sync/index.d.ts +6 -0
- package/dist/services/sync/index.d.ts.map +1 -0
- package/dist/services/sync/index.js +16 -0
- package/dist/services/sync/index.js.map +1 -0
- package/dist/services/sync/markdownReferenceHandler.d.ts +3 -0
- package/dist/services/sync/markdownReferenceHandler.d.ts.map +1 -0
- package/dist/services/sync/markdownReferenceHandler.js +133 -0
- package/dist/services/sync/markdownReferenceHandler.js.map +1 -0
- package/dist/services/sync/presets.d.ts +6 -0
- package/dist/services/sync/presets.d.ts.map +1 -0
- package/dist/services/sync/presets.js +49 -0
- package/dist/services/sync/presets.js.map +1 -0
- package/dist/services/sync/symlinkHandler.d.ts +7 -0
- package/dist/services/sync/symlinkHandler.d.ts.map +1 -0
- package/dist/services/sync/symlinkHandler.js +129 -0
- package/dist/services/sync/symlinkHandler.js.map +1 -0
- package/dist/services/sync/syncService.d.ts +15 -0
- package/dist/services/sync/syncService.d.ts.map +1 -0
- package/dist/services/sync/syncService.js +222 -0
- package/dist/services/sync/syncService.js.map +1 -0
- package/dist/services/sync/types.d.ts +62 -0
- package/dist/services/sync/types.d.ts.map +1 -0
- package/dist/services/sync/types.js +3 -0
- package/dist/services/sync/types.js.map +1 -0
- package/dist/services/update/index.d.ts +2 -0
- package/dist/services/update/index.d.ts.map +1 -0
- package/dist/services/update/index.js +6 -0
- package/dist/services/update/index.js.map +1 -0
- package/dist/services/update/updateService.d.ts +64 -0
- package/dist/services/update/updateService.d.ts.map +1 -0
- package/dist/services/update/updateService.js +295 -0
- package/dist/services/update/updateService.js.map +1 -0
- package/dist/types.d.ts +2 -6
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/cliUI.d.ts +33 -0
- package/dist/utils/cliUI.d.ts.map +1 -1
- package/dist/utils/cliUI.js +157 -107
- package/dist/utils/cliUI.js.map +1 -1
- package/dist/utils/contentSanitizer.d.ts +42 -0
- package/dist/utils/contentSanitizer.d.ts.map +1 -0
- package/dist/utils/contentSanitizer.js +238 -0
- package/dist/utils/contentSanitizer.js.map +1 -0
- package/dist/utils/frontMatter.d.ts +55 -0
- package/dist/utils/frontMatter.d.ts.map +1 -0
- package/dist/utils/frontMatter.js +173 -0
- package/dist/utils/frontMatter.js.map +1 -0
- package/dist/utils/gitService.d.ts.map +1 -1
- package/dist/utils/gitService.js +12 -14
- package/dist/utils/gitService.js.map +1 -1
- package/dist/utils/i18n.d.ts +101 -13
- package/dist/utils/i18n.d.ts.map +1 -1
- package/dist/utils/i18n.js +204 -28
- package/dist/utils/i18n.js.map +1 -1
- package/dist/utils/prompts/configSummary.d.ts +7 -0
- package/dist/utils/prompts/configSummary.d.ts.map +1 -0
- package/dist/utils/prompts/configSummary.js +63 -0
- package/dist/utils/prompts/configSummary.js.map +1 -0
- package/dist/utils/prompts/index.d.ts +22 -0
- package/dist/utils/prompts/index.d.ts.map +1 -0
- package/dist/utils/prompts/index.js +122 -0
- package/dist/utils/prompts/index.js.map +1 -0
- package/dist/utils/prompts/llmPrompts.d.ts +11 -0
- package/dist/utils/prompts/llmPrompts.d.ts.map +1 -0
- package/dist/utils/prompts/llmPrompts.js +96 -0
- package/dist/utils/prompts/llmPrompts.js.map +1 -0
- package/dist/utils/prompts/smartDefaults.d.ts +15 -0
- package/dist/utils/prompts/smartDefaults.d.ts.map +1 -0
- package/dist/utils/prompts/smartDefaults.js +105 -0
- package/dist/utils/prompts/smartDefaults.js.map +1 -0
- package/dist/utils/prompts/types.d.ts +38 -0
- package/dist/utils/prompts/types.d.ts.map +1 -0
- package/dist/utils/prompts/types.js +3 -0
- package/dist/utils/prompts/types.js.map +1 -0
- package/dist/utils/theme.d.ts +66 -0
- package/dist/utils/theme.d.ts.map +1 -0
- package/dist/utils/theme.js +93 -0
- package/dist/utils/theme.js.map +1 -0
- package/dist/version.d.ts +8 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +15 -0
- package/dist/version.js.map +1 -0
- package/package.json +12 -2
- package/prompts/update_scaffold_prompt.md +14 -34
- package/dist/commands/shared/agents.d.ts +0 -2
- package/dist/commands/shared/agents.d.ts.map +0 -1
- package/dist/commands/shared/agents.js +0 -15
- package/dist/commands/shared/agents.js.map +0 -1
- package/dist/commands/shared/selection.d.ts +0 -12
- package/dist/commands/shared/selection.d.ts.map +0 -1
- package/dist/commands/shared/selection.js +0 -95
- package/dist/commands/shared/selection.js.map +0 -1
- package/dist/generators/documentation/templates/frontMatter.d.ts +0 -11
- package/dist/generators/documentation/templates/frontMatter.d.ts.map +0 -1
- package/dist/generators/documentation/templates/frontMatter.js +0 -29
- package/dist/generators/documentation/templates/frontMatter.js.map +0 -1
- package/dist/services/anthropicClient.d.ts +0 -12
- package/dist/services/anthropicClient.d.ts.map +0 -1
- package/dist/services/anthropicClient.js +0 -98
- package/dist/services/anthropicClient.js.map +0 -1
- package/dist/services/geminiClient.d.ts +0 -12
- package/dist/services/geminiClient.d.ts.map +0 -1
- package/dist/services/geminiClient.js +0 -96
- package/dist/services/geminiClient.js.map +0 -1
- package/dist/services/grokClient.d.ts +0 -12
- package/dist/services/grokClient.d.ts.map +0 -1
- package/dist/services/grokClient.js +0 -101
- package/dist/services/grokClient.js.map +0 -1
- package/dist/services/openaiClient.d.ts +0 -12
- package/dist/services/openaiClient.d.ts.map +0 -1
- package/dist/services/openaiClient.js +0 -98
- package/dist/services/openaiClient.js.map +0 -1
- package/dist/utils/pricing.d.ts +0 -14
- package/dist/utils/pricing.d.ts.map +0 -1
- package/dist/utils/pricing.js +0 -115
- package/dist/utils/pricing.js.map +0 -1
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context Fragment System
|
|
3
|
+
*
|
|
4
|
+
* Atomic, typed pieces of context that AI can query, filter, and compose freely.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```typescript
|
|
8
|
+
* import {
|
|
9
|
+
* createFragmentStore,
|
|
10
|
+
* createExtractorRegistry,
|
|
11
|
+
* queryFrom,
|
|
12
|
+
* createComposer,
|
|
13
|
+
* renderFragments,
|
|
14
|
+
* } from './fragments';
|
|
15
|
+
*
|
|
16
|
+
* // Create store and extract fragments
|
|
17
|
+
* const store = createFragmentStore();
|
|
18
|
+
* const registry = createExtractorRegistry();
|
|
19
|
+
* const fragments = registry.extractAll({ repoStructure, semantics });
|
|
20
|
+
* store.addAll(fragments);
|
|
21
|
+
*
|
|
22
|
+
* // Query fragments
|
|
23
|
+
* const types = queryFrom(store)
|
|
24
|
+
* .ofType('type-definition')
|
|
25
|
+
* .withTags('exported')
|
|
26
|
+
* .orderByPriority()
|
|
27
|
+
* .limit(10)
|
|
28
|
+
* .execute();
|
|
29
|
+
*
|
|
30
|
+
* // Compose context for a task
|
|
31
|
+
* const composer = createComposer(store);
|
|
32
|
+
* const context = composer.forTask('Add user authentication', 8000);
|
|
33
|
+
*
|
|
34
|
+
* // Render to output format
|
|
35
|
+
* const markdown = renderFragments(context, 'markdown');
|
|
36
|
+
* const json = renderFragments(context, 'json');
|
|
37
|
+
* const compact = renderFragments(context, 'compact');
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
export type { FragmentType, FragmentScope, ContextFragment, FragmentRefs, FragmentMeta, ProjectOverviewData, ModuleData, FileSummaryData, TypeDefinitionData, FunctionData, ApiEndpointData, ComponentData, DependencyGraphData, PatternData, ConventionData, ConfigData, CommandData, ProjectOverviewFragment, ModuleFragment, FileSummaryFragment, TypeDefinitionFragment, FunctionFragment, ApiEndpointFragment, ComponentFragment, DependencyGraphFragment, PatternFragment, ConventionFragment, ConfigFragment, CommandFragment, FragmentQuery, CompositionStrategy, CompositionOptions, RenderFormat, RenderOptions, FragmentStore, FragmentExtractor, } from './types.js';
|
|
41
|
+
export { InMemoryFragmentStore, createFragmentStore } from './store.js';
|
|
42
|
+
export { FragmentQueryBuilder, queryFrom, getEssentialContext, getTypesForFile, getFunctionsForFile, getApiEndpoints, getPatternsAndConventions, getContextForSymbol, getModuleContext, } from './query.js';
|
|
43
|
+
export { composeFragments, createComposer } from './compose.js';
|
|
44
|
+
export { renderFragments, getAvailableFormats, renderMarkdown, renderJSON, renderCompact, } from './render/index.js';
|
|
45
|
+
export { createExtractorRegistry, extractProjectFragments, extractModuleFragments, extractSemanticFragments, } from './extractors/index.js';
|
|
46
|
+
export type { ExtractionInput, ExtractorRegistry } from './extractors/index.js';
|
|
47
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fragments/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAGH,YAAY,EACV,YAAY,EACZ,aAAa,EACb,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,WAAW,EACX,cAAc,EACd,UAAU,EACV,WAAW,EACX,uBAAuB,EACvB,cAAc,EACd,mBAAmB,EACnB,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,aAAa,EACb,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGxE,OAAO,EACL,oBAAoB,EACpB,SAAS,EACT,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,yBAAyB,EACzB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAGhE,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,UAAU,EACV,aAAa,GACd,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Context Fragment System
|
|
4
|
+
*
|
|
5
|
+
* Atomic, typed pieces of context that AI can query, filter, and compose freely.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* import {
|
|
10
|
+
* createFragmentStore,
|
|
11
|
+
* createExtractorRegistry,
|
|
12
|
+
* queryFrom,
|
|
13
|
+
* createComposer,
|
|
14
|
+
* renderFragments,
|
|
15
|
+
* } from './fragments';
|
|
16
|
+
*
|
|
17
|
+
* // Create store and extract fragments
|
|
18
|
+
* const store = createFragmentStore();
|
|
19
|
+
* const registry = createExtractorRegistry();
|
|
20
|
+
* const fragments = registry.extractAll({ repoStructure, semantics });
|
|
21
|
+
* store.addAll(fragments);
|
|
22
|
+
*
|
|
23
|
+
* // Query fragments
|
|
24
|
+
* const types = queryFrom(store)
|
|
25
|
+
* .ofType('type-definition')
|
|
26
|
+
* .withTags('exported')
|
|
27
|
+
* .orderByPriority()
|
|
28
|
+
* .limit(10)
|
|
29
|
+
* .execute();
|
|
30
|
+
*
|
|
31
|
+
* // Compose context for a task
|
|
32
|
+
* const composer = createComposer(store);
|
|
33
|
+
* const context = composer.forTask('Add user authentication', 8000);
|
|
34
|
+
*
|
|
35
|
+
* // Render to output format
|
|
36
|
+
* const markdown = renderFragments(context, 'markdown');
|
|
37
|
+
* const json = renderFragments(context, 'json');
|
|
38
|
+
* const compact = renderFragments(context, 'compact');
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.extractSemanticFragments = exports.extractModuleFragments = exports.extractProjectFragments = exports.createExtractorRegistry = exports.renderCompact = exports.renderJSON = exports.renderMarkdown = exports.getAvailableFormats = exports.renderFragments = exports.createComposer = exports.composeFragments = exports.getModuleContext = exports.getContextForSymbol = exports.getPatternsAndConventions = exports.getApiEndpoints = exports.getFunctionsForFile = exports.getTypesForFile = exports.getEssentialContext = exports.queryFrom = exports.FragmentQueryBuilder = exports.createFragmentStore = exports.InMemoryFragmentStore = void 0;
|
|
43
|
+
// Store
|
|
44
|
+
var store_js_1 = require("./store.js");
|
|
45
|
+
Object.defineProperty(exports, "InMemoryFragmentStore", { enumerable: true, get: function () { return store_js_1.InMemoryFragmentStore; } });
|
|
46
|
+
Object.defineProperty(exports, "createFragmentStore", { enumerable: true, get: function () { return store_js_1.createFragmentStore; } });
|
|
47
|
+
// Query
|
|
48
|
+
var query_js_1 = require("./query.js");
|
|
49
|
+
Object.defineProperty(exports, "FragmentQueryBuilder", { enumerable: true, get: function () { return query_js_1.FragmentQueryBuilder; } });
|
|
50
|
+
Object.defineProperty(exports, "queryFrom", { enumerable: true, get: function () { return query_js_1.queryFrom; } });
|
|
51
|
+
Object.defineProperty(exports, "getEssentialContext", { enumerable: true, get: function () { return query_js_1.getEssentialContext; } });
|
|
52
|
+
Object.defineProperty(exports, "getTypesForFile", { enumerable: true, get: function () { return query_js_1.getTypesForFile; } });
|
|
53
|
+
Object.defineProperty(exports, "getFunctionsForFile", { enumerable: true, get: function () { return query_js_1.getFunctionsForFile; } });
|
|
54
|
+
Object.defineProperty(exports, "getApiEndpoints", { enumerable: true, get: function () { return query_js_1.getApiEndpoints; } });
|
|
55
|
+
Object.defineProperty(exports, "getPatternsAndConventions", { enumerable: true, get: function () { return query_js_1.getPatternsAndConventions; } });
|
|
56
|
+
Object.defineProperty(exports, "getContextForSymbol", { enumerable: true, get: function () { return query_js_1.getContextForSymbol; } });
|
|
57
|
+
Object.defineProperty(exports, "getModuleContext", { enumerable: true, get: function () { return query_js_1.getModuleContext; } });
|
|
58
|
+
// Composition
|
|
59
|
+
var compose_js_1 = require("./compose.js");
|
|
60
|
+
Object.defineProperty(exports, "composeFragments", { enumerable: true, get: function () { return compose_js_1.composeFragments; } });
|
|
61
|
+
Object.defineProperty(exports, "createComposer", { enumerable: true, get: function () { return compose_js_1.createComposer; } });
|
|
62
|
+
// Renderers
|
|
63
|
+
var index_js_1 = require("./render/index.js");
|
|
64
|
+
Object.defineProperty(exports, "renderFragments", { enumerable: true, get: function () { return index_js_1.renderFragments; } });
|
|
65
|
+
Object.defineProperty(exports, "getAvailableFormats", { enumerable: true, get: function () { return index_js_1.getAvailableFormats; } });
|
|
66
|
+
Object.defineProperty(exports, "renderMarkdown", { enumerable: true, get: function () { return index_js_1.renderMarkdown; } });
|
|
67
|
+
Object.defineProperty(exports, "renderJSON", { enumerable: true, get: function () { return index_js_1.renderJSON; } });
|
|
68
|
+
Object.defineProperty(exports, "renderCompact", { enumerable: true, get: function () { return index_js_1.renderCompact; } });
|
|
69
|
+
// Extractors
|
|
70
|
+
var index_js_2 = require("./extractors/index.js");
|
|
71
|
+
Object.defineProperty(exports, "createExtractorRegistry", { enumerable: true, get: function () { return index_js_2.createExtractorRegistry; } });
|
|
72
|
+
Object.defineProperty(exports, "extractProjectFragments", { enumerable: true, get: function () { return index_js_2.extractProjectFragments; } });
|
|
73
|
+
Object.defineProperty(exports, "extractModuleFragments", { enumerable: true, get: function () { return index_js_2.extractModuleFragments; } });
|
|
74
|
+
Object.defineProperty(exports, "extractSemanticFragments", { enumerable: true, get: function () { return index_js_2.extractSemanticFragments; } });
|
|
75
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fragments/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;;;AA0CH,QAAQ;AACR,uCAAwE;AAA/D,iHAAA,qBAAqB,OAAA;AAAE,+GAAA,mBAAmB,OAAA;AAEnD,QAAQ;AACR,uCAUoB;AATlB,gHAAA,oBAAoB,OAAA;AACpB,qGAAA,SAAS,OAAA;AACT,+GAAA,mBAAmB,OAAA;AACnB,2GAAA,eAAe,OAAA;AACf,+GAAA,mBAAmB,OAAA;AACnB,2GAAA,eAAe,OAAA;AACf,qHAAA,yBAAyB,OAAA;AACzB,+GAAA,mBAAmB,OAAA;AACnB,4GAAA,gBAAgB,OAAA;AAGlB,cAAc;AACd,2CAAgE;AAAvD,8GAAA,gBAAgB,OAAA;AAAE,4GAAA,cAAc,OAAA;AAEzC,YAAY;AACZ,8CAM2B;AALzB,2GAAA,eAAe,OAAA;AACf,+GAAA,mBAAmB,OAAA;AACnB,0GAAA,cAAc,OAAA;AACd,sGAAA,UAAU,OAAA;AACV,yGAAA,aAAa,OAAA;AAGf,aAAa;AACb,kDAK+B;AAJ7B,mHAAA,uBAAuB,OAAA;AACvB,mHAAA,uBAAuB,OAAA;AACvB,kHAAA,sBAAsB,OAAA;AACtB,oHAAA,wBAAwB,OAAA"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Query Builder - Fluent API for querying fragments
|
|
3
|
+
*/
|
|
4
|
+
import type { ContextFragment, FragmentQuery, FragmentScope, FragmentStore, FragmentType } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Fluent query builder for fragments
|
|
7
|
+
*/
|
|
8
|
+
export declare class FragmentQueryBuilder {
|
|
9
|
+
private store;
|
|
10
|
+
private queryDef;
|
|
11
|
+
constructor(store: FragmentStore);
|
|
12
|
+
/**
|
|
13
|
+
* Filter by fragment types
|
|
14
|
+
*/
|
|
15
|
+
ofType(...types: FragmentType[]): this;
|
|
16
|
+
/**
|
|
17
|
+
* Filter by scope
|
|
18
|
+
*/
|
|
19
|
+
inScope(...scopes: FragmentScope[]): this;
|
|
20
|
+
/**
|
|
21
|
+
* Include fragments with any of these tags
|
|
22
|
+
*/
|
|
23
|
+
withTags(...tags: string[]): this;
|
|
24
|
+
/**
|
|
25
|
+
* Exclude fragments with any of these tags
|
|
26
|
+
*/
|
|
27
|
+
withoutTags(...tags: string[]): this;
|
|
28
|
+
/**
|
|
29
|
+
* Filter by related files (partial path matching)
|
|
30
|
+
*/
|
|
31
|
+
relatedToFiles(...patterns: string[]): this;
|
|
32
|
+
/**
|
|
33
|
+
* Filter by related symbols
|
|
34
|
+
*/
|
|
35
|
+
relatedToSymbols(...symbols: string[]): this;
|
|
36
|
+
/**
|
|
37
|
+
* Order results by priority (highest first)
|
|
38
|
+
*/
|
|
39
|
+
orderByPriority(): this;
|
|
40
|
+
/**
|
|
41
|
+
* Order results by freshness (newest first)
|
|
42
|
+
*/
|
|
43
|
+
orderByFreshness(): this;
|
|
44
|
+
/**
|
|
45
|
+
* Order results by relevance
|
|
46
|
+
*/
|
|
47
|
+
orderByRelevance(): this;
|
|
48
|
+
/**
|
|
49
|
+
* Limit number of results
|
|
50
|
+
*/
|
|
51
|
+
limit(n: number): this;
|
|
52
|
+
/**
|
|
53
|
+
* Execute the query and return results
|
|
54
|
+
*/
|
|
55
|
+
execute(): ContextFragment<unknown>[];
|
|
56
|
+
/**
|
|
57
|
+
* Execute and return first result
|
|
58
|
+
*/
|
|
59
|
+
first(): ContextFragment<unknown> | undefined;
|
|
60
|
+
/**
|
|
61
|
+
* Execute and return count
|
|
62
|
+
*/
|
|
63
|
+
count(): number;
|
|
64
|
+
/**
|
|
65
|
+
* Get the raw query definition
|
|
66
|
+
*/
|
|
67
|
+
toQuery(): FragmentQuery;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Create a query builder for a store
|
|
71
|
+
*/
|
|
72
|
+
export declare function queryFrom(store: FragmentStore): FragmentQueryBuilder;
|
|
73
|
+
/**
|
|
74
|
+
* Get essential project context (overview + high priority)
|
|
75
|
+
*/
|
|
76
|
+
export declare function getEssentialContext(store: FragmentStore): ContextFragment<unknown>[];
|
|
77
|
+
/**
|
|
78
|
+
* Get type definitions for a file
|
|
79
|
+
*/
|
|
80
|
+
export declare function getTypesForFile(store: FragmentStore, filePath: string): ContextFragment<unknown>[];
|
|
81
|
+
/**
|
|
82
|
+
* Get functions for a file
|
|
83
|
+
*/
|
|
84
|
+
export declare function getFunctionsForFile(store: FragmentStore, filePath: string): ContextFragment<unknown>[];
|
|
85
|
+
/**
|
|
86
|
+
* Get all API endpoints
|
|
87
|
+
*/
|
|
88
|
+
export declare function getApiEndpoints(store: FragmentStore): ContextFragment<unknown>[];
|
|
89
|
+
/**
|
|
90
|
+
* Get patterns and conventions
|
|
91
|
+
*/
|
|
92
|
+
export declare function getPatternsAndConventions(store: FragmentStore): ContextFragment<unknown>[];
|
|
93
|
+
/**
|
|
94
|
+
* Get context related to a specific symbol
|
|
95
|
+
*/
|
|
96
|
+
export declare function getContextForSymbol(store: FragmentStore, symbol: string): ContextFragment<unknown>[];
|
|
97
|
+
/**
|
|
98
|
+
* Get module-level context
|
|
99
|
+
*/
|
|
100
|
+
export declare function getModuleContext(store: FragmentStore, modulePath: string): ContextFragment<unknown>[];
|
|
101
|
+
//# sourceMappingURL=query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/fragments/query.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,aAAa,EACb,aAAa,EACb,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,QAAQ,CAAqB;gBAEzB,KAAK,EAAE,aAAa;IAIhC;;OAEG;IACH,MAAM,CAAC,GAAG,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI;IAKtC;;OAEG;IACH,OAAO,CAAC,GAAG,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI;IAKzC;;OAEG;IACH,QAAQ,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI;IAQjC;;OAEG;IACH,WAAW,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI;IAQpC;;OAEG;IACH,cAAc,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAQ3C;;OAEG;IACH,gBAAgB,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAQ5C;;OAEG;IACH,eAAe,IAAI,IAAI;IAKvB;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAKxB;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAKxB;;OAEG;IACH,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAKtB;;OAEG;IACH,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE;IAIrC;;OAEG;IACH,KAAK,IAAI,eAAe,CAAC,OAAO,CAAC,GAAG,SAAS;IAI7C;;OAEG;IACH,KAAK,IAAI,MAAM;IAIf;;OAEG;IACH,OAAO,IAAI,aAAa;CAGzB;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,aAAa,GAAG,oBAAoB,CAEpE;AAID;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,EAAE,CAKpF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,MAAM,GACf,eAAe,CAAC,OAAO,CAAC,EAAE,CAM5B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,MAAM,GACf,eAAe,CAAC,OAAO,CAAC,EAAE,CAM5B;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,EAAE,CAEhF;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,aAAa,GACnB,eAAe,CAAC,OAAO,CAAC,EAAE,CAK5B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,MAAM,GACb,eAAe,CAAC,OAAO,CAAC,EAAE,CAK5B;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,MAAM,GACjB,eAAe,CAAC,OAAO,CAAC,EAAE,CAK5B"}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Query Builder - Fluent API for querying fragments
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.FragmentQueryBuilder = void 0;
|
|
7
|
+
exports.queryFrom = queryFrom;
|
|
8
|
+
exports.getEssentialContext = getEssentialContext;
|
|
9
|
+
exports.getTypesForFile = getTypesForFile;
|
|
10
|
+
exports.getFunctionsForFile = getFunctionsForFile;
|
|
11
|
+
exports.getApiEndpoints = getApiEndpoints;
|
|
12
|
+
exports.getPatternsAndConventions = getPatternsAndConventions;
|
|
13
|
+
exports.getContextForSymbol = getContextForSymbol;
|
|
14
|
+
exports.getModuleContext = getModuleContext;
|
|
15
|
+
/**
|
|
16
|
+
* Fluent query builder for fragments
|
|
17
|
+
*/
|
|
18
|
+
class FragmentQueryBuilder {
|
|
19
|
+
constructor(store) {
|
|
20
|
+
this.queryDef = {};
|
|
21
|
+
this.store = store;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Filter by fragment types
|
|
25
|
+
*/
|
|
26
|
+
ofType(...types) {
|
|
27
|
+
this.queryDef.types = types;
|
|
28
|
+
return this;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Filter by scope
|
|
32
|
+
*/
|
|
33
|
+
inScope(...scopes) {
|
|
34
|
+
this.queryDef.scope = scopes;
|
|
35
|
+
return this;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Include fragments with any of these tags
|
|
39
|
+
*/
|
|
40
|
+
withTags(...tags) {
|
|
41
|
+
this.queryDef.tags = {
|
|
42
|
+
...this.queryDef.tags,
|
|
43
|
+
include: tags,
|
|
44
|
+
};
|
|
45
|
+
return this;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Exclude fragments with any of these tags
|
|
49
|
+
*/
|
|
50
|
+
withoutTags(...tags) {
|
|
51
|
+
this.queryDef.tags = {
|
|
52
|
+
...this.queryDef.tags,
|
|
53
|
+
exclude: tags,
|
|
54
|
+
};
|
|
55
|
+
return this;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Filter by related files (partial path matching)
|
|
59
|
+
*/
|
|
60
|
+
relatedToFiles(...patterns) {
|
|
61
|
+
this.queryDef.relatedTo = {
|
|
62
|
+
...this.queryDef.relatedTo,
|
|
63
|
+
files: patterns,
|
|
64
|
+
};
|
|
65
|
+
return this;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Filter by related symbols
|
|
69
|
+
*/
|
|
70
|
+
relatedToSymbols(...symbols) {
|
|
71
|
+
this.queryDef.relatedTo = {
|
|
72
|
+
...this.queryDef.relatedTo,
|
|
73
|
+
symbols: symbols,
|
|
74
|
+
};
|
|
75
|
+
return this;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Order results by priority (highest first)
|
|
79
|
+
*/
|
|
80
|
+
orderByPriority() {
|
|
81
|
+
this.queryDef.orderBy = 'priority';
|
|
82
|
+
return this;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Order results by freshness (newest first)
|
|
86
|
+
*/
|
|
87
|
+
orderByFreshness() {
|
|
88
|
+
this.queryDef.orderBy = 'freshness';
|
|
89
|
+
return this;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Order results by relevance
|
|
93
|
+
*/
|
|
94
|
+
orderByRelevance() {
|
|
95
|
+
this.queryDef.orderBy = 'relevance';
|
|
96
|
+
return this;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Limit number of results
|
|
100
|
+
*/
|
|
101
|
+
limit(n) {
|
|
102
|
+
this.queryDef.limit = n;
|
|
103
|
+
return this;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Execute the query and return results
|
|
107
|
+
*/
|
|
108
|
+
execute() {
|
|
109
|
+
return this.store.query(this.queryDef);
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Execute and return first result
|
|
113
|
+
*/
|
|
114
|
+
first() {
|
|
115
|
+
return this.limit(1).execute()[0];
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Execute and return count
|
|
119
|
+
*/
|
|
120
|
+
count() {
|
|
121
|
+
return this.execute().length;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Get the raw query definition
|
|
125
|
+
*/
|
|
126
|
+
toQuery() {
|
|
127
|
+
return { ...this.queryDef };
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
exports.FragmentQueryBuilder = FragmentQueryBuilder;
|
|
131
|
+
/**
|
|
132
|
+
* Create a query builder for a store
|
|
133
|
+
*/
|
|
134
|
+
function queryFrom(store) {
|
|
135
|
+
return new FragmentQueryBuilder(store);
|
|
136
|
+
}
|
|
137
|
+
// Predefined query helpers
|
|
138
|
+
/**
|
|
139
|
+
* Get essential project context (overview + high priority)
|
|
140
|
+
*/
|
|
141
|
+
function getEssentialContext(store) {
|
|
142
|
+
return queryFrom(store)
|
|
143
|
+
.ofType('project-overview', 'module', 'config')
|
|
144
|
+
.orderByPriority()
|
|
145
|
+
.execute();
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Get type definitions for a file
|
|
149
|
+
*/
|
|
150
|
+
function getTypesForFile(store, filePath) {
|
|
151
|
+
return queryFrom(store)
|
|
152
|
+
.ofType('type-definition')
|
|
153
|
+
.relatedToFiles(filePath)
|
|
154
|
+
.orderByPriority()
|
|
155
|
+
.execute();
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Get functions for a file
|
|
159
|
+
*/
|
|
160
|
+
function getFunctionsForFile(store, filePath) {
|
|
161
|
+
return queryFrom(store)
|
|
162
|
+
.ofType('function')
|
|
163
|
+
.relatedToFiles(filePath)
|
|
164
|
+
.orderByPriority()
|
|
165
|
+
.execute();
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Get all API endpoints
|
|
169
|
+
*/
|
|
170
|
+
function getApiEndpoints(store) {
|
|
171
|
+
return queryFrom(store).ofType('api-endpoint').orderByPriority().execute();
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Get patterns and conventions
|
|
175
|
+
*/
|
|
176
|
+
function getPatternsAndConventions(store) {
|
|
177
|
+
return queryFrom(store)
|
|
178
|
+
.ofType('pattern', 'convention')
|
|
179
|
+
.orderByPriority()
|
|
180
|
+
.execute();
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Get context related to a specific symbol
|
|
184
|
+
*/
|
|
185
|
+
function getContextForSymbol(store, symbol) {
|
|
186
|
+
return queryFrom(store)
|
|
187
|
+
.relatedToSymbols(symbol)
|
|
188
|
+
.orderByPriority()
|
|
189
|
+
.execute();
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Get module-level context
|
|
193
|
+
*/
|
|
194
|
+
function getModuleContext(store, modulePath) {
|
|
195
|
+
return queryFrom(store)
|
|
196
|
+
.relatedToFiles(modulePath)
|
|
197
|
+
.orderByPriority()
|
|
198
|
+
.execute();
|
|
199
|
+
}
|
|
200
|
+
//# sourceMappingURL=query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/fragments/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compact Renderer - Token-efficient output for AI consumption
|
|
3
|
+
*
|
|
4
|
+
* Uses abbreviated format to maximize information density while
|
|
5
|
+
* remaining parseable by AI systems.
|
|
6
|
+
*/
|
|
7
|
+
import type { ContextFragment, RenderOptions } from '../types.js';
|
|
8
|
+
/**
|
|
9
|
+
* Render fragments in compact format
|
|
10
|
+
*
|
|
11
|
+
* Format:
|
|
12
|
+
* [TYPE:name] summary | key:value | key:value
|
|
13
|
+
*/
|
|
14
|
+
export declare function renderCompact(fragments: ContextFragment<unknown>[], options?: Partial<RenderOptions>): string;
|
|
15
|
+
//# sourceMappingURL=compact.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compact.d.ts","sourceRoot":"","sources":["../../../src/fragments/render/compact.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAElE;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,EACrC,OAAO,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,GAC/B,MAAM,CAqBR"}
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Compact Renderer - Token-efficient output for AI consumption
|
|
4
|
+
*
|
|
5
|
+
* Uses abbreviated format to maximize information density while
|
|
6
|
+
* remaining parseable by AI systems.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.renderCompact = renderCompact;
|
|
10
|
+
/**
|
|
11
|
+
* Render fragments in compact format
|
|
12
|
+
*
|
|
13
|
+
* Format:
|
|
14
|
+
* [TYPE:name] summary | key:value | key:value
|
|
15
|
+
*/
|
|
16
|
+
function renderCompact(fragments, options) {
|
|
17
|
+
const lines = [];
|
|
18
|
+
// Header
|
|
19
|
+
lines.push(`# Context (${fragments.length} fragments)`);
|
|
20
|
+
lines.push('');
|
|
21
|
+
// Group by type for organization
|
|
22
|
+
const grouped = groupByType(fragments);
|
|
23
|
+
for (const [type, typeFragments] of grouped) {
|
|
24
|
+
lines.push(`## ${abbreviateType(type)}`);
|
|
25
|
+
for (const fragment of typeFragments) {
|
|
26
|
+
lines.push(renderCompactFragment(fragment));
|
|
27
|
+
}
|
|
28
|
+
lines.push('');
|
|
29
|
+
}
|
|
30
|
+
return lines.join('\n');
|
|
31
|
+
}
|
|
32
|
+
function groupByType(fragments) {
|
|
33
|
+
const grouped = new Map();
|
|
34
|
+
for (const fragment of fragments) {
|
|
35
|
+
const existing = grouped.get(fragment.type) || [];
|
|
36
|
+
existing.push(fragment);
|
|
37
|
+
grouped.set(fragment.type, existing);
|
|
38
|
+
}
|
|
39
|
+
return grouped;
|
|
40
|
+
}
|
|
41
|
+
function renderCompactFragment(fragment) {
|
|
42
|
+
const parts = [];
|
|
43
|
+
// [TYPE:name]
|
|
44
|
+
const name = extractName(fragment);
|
|
45
|
+
parts.push(`[${abbreviateType(fragment.type)}:${name}]`);
|
|
46
|
+
// Core data based on type
|
|
47
|
+
parts.push(extractCoreData(fragment));
|
|
48
|
+
// Priority if high
|
|
49
|
+
if (fragment.meta.priority >= 8) {
|
|
50
|
+
parts.push(`P${fragment.meta.priority}`);
|
|
51
|
+
}
|
|
52
|
+
// Key files (abbreviated)
|
|
53
|
+
if (fragment.refs.files.length > 0) {
|
|
54
|
+
const mainFile = abbreviatePath(fragment.refs.files[0]);
|
|
55
|
+
parts.push(`@${mainFile}`);
|
|
56
|
+
}
|
|
57
|
+
return parts.filter(Boolean).join(' | ');
|
|
58
|
+
}
|
|
59
|
+
function extractName(fragment) {
|
|
60
|
+
const data = fragment.data;
|
|
61
|
+
if (data && typeof data === 'object') {
|
|
62
|
+
if ('name' in data && typeof data.name === 'string') {
|
|
63
|
+
return data.name;
|
|
64
|
+
}
|
|
65
|
+
if ('path' in data && typeof data.path === 'string') {
|
|
66
|
+
return abbreviatePath(data.path);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return fragment.id.slice(0, 20);
|
|
70
|
+
}
|
|
71
|
+
function extractCoreData(fragment) {
|
|
72
|
+
const data = fragment.data;
|
|
73
|
+
switch (fragment.type) {
|
|
74
|
+
case 'project-overview':
|
|
75
|
+
return compactProject(data);
|
|
76
|
+
case 'module':
|
|
77
|
+
return compactModule(data);
|
|
78
|
+
case 'type-definition':
|
|
79
|
+
return compactType(data);
|
|
80
|
+
case 'function':
|
|
81
|
+
return compactFunction(data);
|
|
82
|
+
case 'config':
|
|
83
|
+
return compactConfig(data);
|
|
84
|
+
case 'command':
|
|
85
|
+
return compactCommand(data);
|
|
86
|
+
case 'pattern':
|
|
87
|
+
return compactPattern(data);
|
|
88
|
+
case 'file-summary':
|
|
89
|
+
return compactFile(data);
|
|
90
|
+
default:
|
|
91
|
+
return fragment.summary || '';
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
function compactProject(data) {
|
|
95
|
+
const parts = [];
|
|
96
|
+
if (Array.isArray(data.languages)) {
|
|
97
|
+
parts.push(`lang:${data.languages.join(',')}`);
|
|
98
|
+
}
|
|
99
|
+
if (data.packageManager) {
|
|
100
|
+
parts.push(`pm:${data.packageManager}`);
|
|
101
|
+
}
|
|
102
|
+
if (Array.isArray(data.entryPoints) && data.entryPoints.length > 0) {
|
|
103
|
+
parts.push(`entry:${abbreviatePath(data.entryPoints[0])}`);
|
|
104
|
+
}
|
|
105
|
+
return parts.join(' ');
|
|
106
|
+
}
|
|
107
|
+
function compactModule(data) {
|
|
108
|
+
const parts = [];
|
|
109
|
+
if (Array.isArray(data.exports)) {
|
|
110
|
+
parts.push(`exp:${data.exports.length}`);
|
|
111
|
+
}
|
|
112
|
+
if (Array.isArray(data.dependencies)) {
|
|
113
|
+
parts.push(`dep:${data.dependencies.length}`);
|
|
114
|
+
}
|
|
115
|
+
if (data.description) {
|
|
116
|
+
parts.push(truncate(data.description, 30));
|
|
117
|
+
}
|
|
118
|
+
return parts.join(' ');
|
|
119
|
+
}
|
|
120
|
+
function compactType(data) {
|
|
121
|
+
const parts = [];
|
|
122
|
+
parts.push(`${data.kind}`);
|
|
123
|
+
if (Array.isArray(data.properties)) {
|
|
124
|
+
parts.push(`props:${data.properties.length}`);
|
|
125
|
+
}
|
|
126
|
+
if (Array.isArray(data.methods)) {
|
|
127
|
+
parts.push(`methods:${data.methods.length}`);
|
|
128
|
+
}
|
|
129
|
+
if (Array.isArray(data.extends) && data.extends.length > 0) {
|
|
130
|
+
parts.push(`<${data.extends[0]}`);
|
|
131
|
+
}
|
|
132
|
+
return parts.join(' ');
|
|
133
|
+
}
|
|
134
|
+
function compactFunction(data) {
|
|
135
|
+
const parts = [];
|
|
136
|
+
if (data.async)
|
|
137
|
+
parts.push('async');
|
|
138
|
+
if (data.exported)
|
|
139
|
+
parts.push('exp');
|
|
140
|
+
// Signature (abbreviated)
|
|
141
|
+
if (data.signature) {
|
|
142
|
+
const sig = data.signature
|
|
143
|
+
.replace(/function\s+/, '')
|
|
144
|
+
.replace(/\s+/g, '');
|
|
145
|
+
parts.push(truncate(sig, 40));
|
|
146
|
+
}
|
|
147
|
+
return parts.join(' ');
|
|
148
|
+
}
|
|
149
|
+
function compactConfig(data) {
|
|
150
|
+
return `${data.format} ${truncate(data.purpose || '', 30)}`;
|
|
151
|
+
}
|
|
152
|
+
function compactCommand(data) {
|
|
153
|
+
return truncate(data.command, 50);
|
|
154
|
+
}
|
|
155
|
+
function compactPattern(data) {
|
|
156
|
+
const parts = [];
|
|
157
|
+
parts.push(truncate(data.description, 40));
|
|
158
|
+
if (Array.isArray(data.locations)) {
|
|
159
|
+
parts.push(`(${data.locations.length} locs)`);
|
|
160
|
+
}
|
|
161
|
+
return parts.join(' ');
|
|
162
|
+
}
|
|
163
|
+
function compactFile(data) {
|
|
164
|
+
const parts = [];
|
|
165
|
+
parts.push(data.language);
|
|
166
|
+
if (Array.isArray(data.exports) && data.exports.length > 0) {
|
|
167
|
+
parts.push(`exp:${data.exports.slice(0, 3).join(',')}`);
|
|
168
|
+
}
|
|
169
|
+
if (data.purpose) {
|
|
170
|
+
parts.push(truncate(data.purpose, 30));
|
|
171
|
+
}
|
|
172
|
+
return parts.join(' ');
|
|
173
|
+
}
|
|
174
|
+
function abbreviateType(type) {
|
|
175
|
+
const abbrevs = {
|
|
176
|
+
'project-overview': 'PROJ',
|
|
177
|
+
module: 'MOD',
|
|
178
|
+
'file-summary': 'FILE',
|
|
179
|
+
'type-definition': 'TYPE',
|
|
180
|
+
function: 'FUNC',
|
|
181
|
+
'api-endpoint': 'API',
|
|
182
|
+
component: 'COMP',
|
|
183
|
+
'dependency-graph': 'DEPS',
|
|
184
|
+
'data-flow': 'FLOW',
|
|
185
|
+
'call-graph': 'CALL',
|
|
186
|
+
pattern: 'PAT',
|
|
187
|
+
convention: 'CONV',
|
|
188
|
+
example: 'EX',
|
|
189
|
+
config: 'CFG',
|
|
190
|
+
environment: 'ENV',
|
|
191
|
+
command: 'CMD',
|
|
192
|
+
};
|
|
193
|
+
return abbrevs[type] || type.toUpperCase().slice(0, 4);
|
|
194
|
+
}
|
|
195
|
+
function abbreviatePath(filePath) {
|
|
196
|
+
// Remove common prefixes and truncate
|
|
197
|
+
return filePath
|
|
198
|
+
.replace(/^src\//, '')
|
|
199
|
+
.replace(/^lib\//, '')
|
|
200
|
+
.replace(/\.ts$/, '')
|
|
201
|
+
.replace(/\.js$/, '')
|
|
202
|
+
.replace(/\/index$/, '/');
|
|
203
|
+
}
|
|
204
|
+
function truncate(str, maxLen) {
|
|
205
|
+
if (str.length <= maxLen)
|
|
206
|
+
return str;
|
|
207
|
+
return str.slice(0, maxLen - 3) + '...';
|
|
208
|
+
}
|
|
209
|
+
//# sourceMappingURL=compact.js.map
|