@decaf-ts/mcp-server 0.4.2 → 0.4.6
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/LICENSE.md +31 -0
- package/dist/mcp-server.cjs +2 -2360
- package/dist/mcp-server.cjs.map +1 -0
- package/dist/mcp-server.js +2 -0
- package/dist/mcp-server.js.map +1 -0
- package/lib/bin/cli.cjs +7 -35
- package/lib/bin/cli.js.map +1 -0
- package/lib/builders/builder.cjs +91 -0
- package/lib/builders/builder.d.ts +25 -0
- package/lib/builders/builder.js.map +1 -0
- package/lib/{mcp/resources → builders}/index.cjs +5 -2
- package/lib/builders/index.d.ts +4 -0
- package/lib/builders/index.js.map +1 -0
- package/lib/builders/prompt-builder.cjs +76 -0
- package/lib/builders/prompt-builder.d.ts +12 -0
- package/lib/builders/prompt-builder.js.map +1 -0
- package/lib/builders/resource-builder.cjs +83 -0
- package/lib/builders/resource-builder.d.ts +14 -0
- package/lib/builders/resource-builder.js.map +1 -0
- package/lib/builders/tool-builder.cjs +104 -0
- package/lib/builders/tool-builder.d.ts +16 -0
- package/lib/builders/tool-builder.js.map +1 -0
- package/lib/constants.cjs +28 -30
- package/lib/constants.d.ts +19 -24
- package/lib/constants.js.map +1 -0
- package/lib/environment.cjs +32 -0
- package/lib/environment.d.ts +71 -0
- package/lib/environment.js.map +1 -0
- package/lib/esm/bin/cli.js +7 -35
- package/lib/esm/bin/cli.js.map +1 -0
- package/lib/esm/builders/builder.d.ts +25 -0
- package/lib/esm/builders/builder.js +86 -0
- package/lib/esm/builders/builder.js.map +1 -0
- package/lib/esm/builders/index.d.ts +4 -0
- package/lib/esm/builders/index.js +5 -0
- package/lib/esm/builders/index.js.map +1 -0
- package/lib/esm/builders/prompt-builder.d.ts +12 -0
- package/lib/esm/builders/prompt-builder.js +72 -0
- package/lib/esm/builders/prompt-builder.js.map +1 -0
- package/lib/esm/builders/resource-builder.d.ts +14 -0
- package/lib/esm/builders/resource-builder.js +79 -0
- package/lib/esm/builders/resource-builder.js.map +1 -0
- package/lib/esm/builders/tool-builder.d.ts +16 -0
- package/lib/esm/builders/tool-builder.js +100 -0
- package/lib/esm/builders/tool-builder.js.map +1 -0
- package/lib/esm/constants.d.ts +19 -24
- package/lib/esm/constants.js +27 -29
- package/lib/esm/constants.js.map +1 -0
- package/lib/esm/environment.d.ts +71 -0
- package/lib/esm/environment.js +29 -0
- package/lib/esm/environment.js.map +1 -0
- package/lib/esm/index.d.ts +3 -10
- package/lib/esm/index.js +4 -11
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/mcp-server.d.ts +10 -0
- package/lib/esm/mcp-server.js +189 -0
- package/lib/esm/mcp-server.js.map +1 -0
- package/lib/esm/modules/template-module/index.d.ts +6 -0
- package/lib/esm/modules/template-module/index.js +4 -0
- package/lib/esm/modules/template-module/index.js.map +1 -0
- package/lib/esm/prompts/code/constants.d.ts +1 -0
- package/lib/esm/prompts/code/constants.js +2 -0
- package/lib/esm/prompts/code/constants.js.map +1 -0
- package/lib/esm/prompts/code/design-patterns/builder.d.ts +2 -0
- package/lib/esm/prompts/code/design-patterns/builder.js +118 -0
- package/lib/esm/prompts/code/design-patterns/builder.js.map +1 -0
- package/lib/esm/prompts/code/design-patterns/constants.d.ts +1 -0
- package/lib/esm/prompts/code/design-patterns/constants.js +3 -0
- package/lib/esm/prompts/code/design-patterns/constants.js.map +1 -0
- package/lib/esm/prompts/example-prompt/index.d.ts +2 -0
- package/lib/esm/prompts/example-prompt/index.js +18 -0
- package/lib/esm/prompts/example-prompt/index.js.map +1 -0
- package/lib/esm/prompts/index.d.ts +2 -0
- package/lib/esm/prompts/index.js +26 -0
- package/lib/esm/prompts/index.js.map +1 -0
- package/lib/esm/prompts/interactive-jsdoc/index.d.ts +2 -0
- package/lib/esm/prompts/interactive-jsdoc/index.js +18 -0
- package/lib/esm/prompts/interactive-jsdoc/index.js.map +1 -0
- package/lib/esm/prompts/jsdocs/class-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/class-prompt.js +52 -0
- package/lib/esm/prompts/jsdocs/class-prompt.js.map +1 -0
- package/lib/esm/prompts/jsdocs/const-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/const-prompt.js +24 -0
- package/lib/esm/prompts/jsdocs/const-prompt.js.map +1 -0
- package/lib/esm/prompts/jsdocs/constants.d.ts +4 -0
- package/lib/esm/prompts/jsdocs/constants.js +46 -0
- package/lib/esm/prompts/jsdocs/constants.js.map +1 -0
- package/lib/esm/prompts/jsdocs/decorator-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/decorator-prompt.js +42 -0
- package/lib/esm/prompts/jsdocs/decorator-prompt.js.map +1 -0
- package/lib/esm/prompts/jsdocs/enum-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/enum-prompt.js +24 -0
- package/lib/esm/prompts/jsdocs/enum-prompt.js.map +1 -0
- package/lib/esm/prompts/jsdocs/function-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/function-prompt.js +43 -0
- package/lib/esm/prompts/jsdocs/function-prompt.js.map +1 -0
- package/lib/esm/prompts/jsdocs/interface-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/interface-prompt.js +24 -0
- package/lib/esm/prompts/jsdocs/interface-prompt.js.map +1 -0
- package/lib/esm/prompts/jsdocs/types-prompt.d.ts +2 -0
- package/lib/esm/prompts/jsdocs/types-prompt.js +24 -0
- package/lib/esm/prompts/jsdocs/types-prompt.js.map +1 -0
- package/lib/esm/resources/example-resource/index.d.ts +2 -0
- package/lib/esm/resources/example-resource/index.js +19 -0
- package/lib/esm/resources/example-resource/index.js.map +1 -0
- package/lib/esm/resources/index.d.ts +2 -0
- package/lib/esm/resources/index.js +4 -0
- package/lib/esm/resources/index.js.map +1 -0
- package/lib/esm/resources/repo-metadata/index.d.ts +2 -0
- package/lib/esm/resources/repo-metadata/index.js +25 -0
- package/lib/esm/resources/repo-metadata/index.js.map +1 -0
- package/lib/esm/tools/ast/ts-ast-tool.d.ts +2 -0
- package/lib/esm/tools/ast/ts-ast-tool.js +67 -0
- package/lib/esm/tools/ast/ts-ast-tool.js.map +1 -0
- package/lib/esm/tools/ast/types.d.ts +105 -0
- package/lib/esm/tools/ast/types.js +33 -0
- package/lib/esm/tools/ast/types.js.map +1 -0
- package/lib/esm/tools/ast/utils.d.ts +5 -0
- package/lib/esm/tools/ast/utils.js +58 -0
- package/lib/esm/tools/ast/utils.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/apply.d.ts +6 -0
- package/lib/esm/tools/ast-jsdoc-tools/apply.js +29 -0
- package/lib/esm/tools/ast-jsdoc-tools/apply.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/cli.js +33 -0
- package/lib/esm/tools/ast-jsdoc-tools/cli.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/enumerator.d.ts +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/enumerator.js +25 -0
- package/lib/esm/tools/ast-jsdoc-tools/enumerator.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/fileRunner.d.ts +11 -0
- package/lib/esm/tools/ast-jsdoc-tools/fileRunner.js +29 -0
- package/lib/esm/tools/ast-jsdoc-tools/fileRunner.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/formatter.d.ts +6 -0
- package/lib/esm/tools/ast-jsdoc-tools/formatter.js +18 -0
- package/lib/esm/tools/ast-jsdoc-tools/formatter.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/generator.d.ts +12 -0
- package/lib/esm/tools/ast-jsdoc-tools/generator.js +55 -0
- package/lib/esm/tools/ast-jsdoc-tools/generator.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/index.d.ts +7 -0
- package/lib/esm/tools/ast-jsdoc-tools/index.js +29 -0
- package/lib/esm/tools/ast-jsdoc-tools/index.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/interactive.d.ts +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/interactive.js +7 -0
- package/lib/esm/tools/ast-jsdoc-tools/interactive.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/parser.d.ts +13 -0
- package/lib/esm/tools/ast-jsdoc-tools/parser.js +71 -0
- package/lib/esm/tools/ast-jsdoc-tools/parser.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/patch.d.ts +2 -0
- package/lib/esm/tools/ast-jsdoc-tools/patch.js +23 -0
- package/lib/esm/tools/ast-jsdoc-tools/patch.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/prompts/loader.d.ts +10 -0
- package/lib/esm/tools/ast-jsdoc-tools/prompts/loader.js +26 -0
- package/lib/esm/tools/ast-jsdoc-tools/prompts/loader.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/repoRunner.d.ts +16 -0
- package/lib/esm/tools/ast-jsdoc-tools/repoRunner.js +61 -0
- package/lib/esm/tools/ast-jsdoc-tools/repoRunner.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/tools/jsdoc-generator.d.ts +5 -0
- package/lib/esm/tools/ast-jsdoc-tools/tools/jsdoc-generator.js +78 -0
- package/lib/esm/tools/ast-jsdoc-tools/tools/jsdoc-generator.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/conflict-detector.d.ts +5 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/conflict-detector.js +30 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/conflict-detector.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/context-schema.d.ts +7 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/context-schema.js +29 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/context-schema.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/heuristics.d.ts +2 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/heuristics.js +31 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/heuristics.js.map +1 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/ts-project.d.ts +12 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/ts-project.js +21 -0
- package/lib/esm/tools/ast-jsdoc-tools/utils/ts-project.js.map +1 -0
- package/lib/esm/tools/example-tool/index.d.ts +2 -0
- package/lib/esm/tools/example-tool/index.js +29 -0
- package/lib/esm/tools/example-tool/index.js.map +1 -0
- package/lib/esm/tools/file-summarizer/index.d.ts +2 -0
- package/lib/esm/tools/file-summarizer/index.js +29 -0
- package/lib/esm/tools/file-summarizer/index.js.map +1 -0
- package/lib/esm/tools/index.d.ts +2 -0
- package/lib/esm/tools/index.js +6 -0
- package/lib/esm/tools/index.js.map +1 -0
- package/lib/esm/tools/jsdoc/ts-jsdoc-element-tool.d.ts +2 -0
- package/lib/esm/tools/jsdoc/ts-jsdoc-element-tool.js +84 -0
- package/lib/esm/tools/jsdoc/ts-jsdoc-element-tool.js.map +1 -0
- package/lib/esm/tools/jsdoc/utils.d.ts +5 -0
- package/lib/esm/tools/jsdoc/utils.js +53 -0
- package/lib/esm/tools/jsdoc/utils.js.map +1 -0
- package/lib/esm/tools/testing/ts-jest-list-tests.d.ts +2 -0
- package/lib/esm/tools/testing/ts-jest-list-tests.js +53 -0
- package/lib/esm/tools/testing/ts-jest-list-tests.js.map +1 -0
- package/lib/esm/types.d.ts +56 -47
- package/lib/esm/types.js +1 -1
- package/lib/esm/types.js.map +1 -0
- package/lib/esm/utils/banner.d.ts +3 -0
- package/lib/esm/utils/banner.js +107 -0
- package/lib/esm/utils/banner.js.map +1 -0
- package/lib/esm/version.d.ts +2 -0
- package/lib/esm/version.js +5 -0
- package/lib/esm/version.js.map +1 -0
- package/lib/index.cjs +4 -11
- package/lib/index.d.ts +3 -10
- package/lib/index.js.map +1 -0
- package/lib/mcp-server.cjs +226 -0
- package/lib/mcp-server.d.ts +10 -0
- package/lib/mcp-server.js.map +1 -0
- package/lib/modules/template-module/index.cjs +7 -0
- package/lib/modules/template-module/index.d.ts +6 -0
- package/lib/modules/template-module/index.js.map +1 -0
- package/lib/prompts/code/constants.cjs +5 -0
- package/lib/prompts/code/constants.d.ts +1 -0
- package/lib/prompts/code/constants.js.map +1 -0
- package/lib/prompts/code/design-patterns/builder.cjs +121 -0
- package/lib/prompts/code/design-patterns/builder.d.ts +2 -0
- package/lib/prompts/code/design-patterns/builder.js.map +1 -0
- package/lib/prompts/code/design-patterns/constants.cjs +6 -0
- package/lib/prompts/code/design-patterns/constants.d.ts +1 -0
- package/lib/prompts/code/design-patterns/constants.js.map +1 -0
- package/lib/prompts/example-prompt/index.cjs +21 -0
- package/lib/prompts/example-prompt/index.d.ts +2 -0
- package/lib/prompts/example-prompt/index.js.map +1 -0
- package/lib/prompts/index.cjs +29 -0
- package/lib/prompts/index.d.ts +2 -0
- package/lib/prompts/index.js.map +1 -0
- package/lib/prompts/interactive-jsdoc/index.cjs +21 -0
- package/lib/prompts/interactive-jsdoc/index.d.ts +2 -0
- package/lib/prompts/interactive-jsdoc/index.js.map +1 -0
- package/lib/prompts/jsdocs/class-prompt.cjs +55 -0
- package/lib/prompts/jsdocs/class-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/class-prompt.js.map +1 -0
- package/lib/prompts/jsdocs/const-prompt.cjs +27 -0
- package/lib/prompts/jsdocs/const-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/const-prompt.js.map +1 -0
- package/lib/prompts/jsdocs/constants.cjs +49 -0
- package/lib/prompts/jsdocs/constants.d.ts +4 -0
- package/lib/prompts/jsdocs/constants.js.map +1 -0
- package/lib/prompts/jsdocs/decorator-prompt.cjs +45 -0
- package/lib/prompts/jsdocs/decorator-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/decorator-prompt.js.map +1 -0
- package/lib/prompts/jsdocs/enum-prompt.cjs +27 -0
- package/lib/prompts/jsdocs/enum-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/enum-prompt.js.map +1 -0
- package/lib/prompts/jsdocs/function-prompt.cjs +46 -0
- package/lib/prompts/jsdocs/function-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/function-prompt.js.map +1 -0
- package/lib/prompts/jsdocs/interface-prompt.cjs +27 -0
- package/lib/prompts/jsdocs/interface-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/interface-prompt.js.map +1 -0
- package/lib/prompts/jsdocs/types-prompt.cjs +27 -0
- package/lib/prompts/jsdocs/types-prompt.d.ts +2 -0
- package/lib/prompts/jsdocs/types-prompt.js.map +1 -0
- package/lib/resources/example-resource/index.cjs +22 -0
- package/lib/resources/example-resource/index.d.ts +2 -0
- package/lib/resources/example-resource/index.js.map +1 -0
- package/lib/resources/index.cjs +7 -0
- package/lib/resources/index.d.ts +2 -0
- package/lib/resources/index.js.map +1 -0
- package/lib/resources/repo-metadata/index.cjs +28 -0
- package/lib/resources/repo-metadata/index.d.ts +2 -0
- package/lib/resources/repo-metadata/index.js.map +1 -0
- package/lib/tools/ast/ts-ast-tool.cjs +70 -0
- package/lib/tools/ast/ts-ast-tool.d.ts +2 -0
- package/lib/tools/ast/ts-ast-tool.js.map +1 -0
- package/lib/tools/ast/types.cjs +36 -0
- package/lib/tools/ast/types.d.ts +105 -0
- package/lib/tools/ast/types.js.map +1 -0
- package/lib/tools/ast/utils.cjs +65 -0
- package/lib/tools/ast/utils.d.ts +5 -0
- package/lib/tools/ast/utils.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/apply.cjs +36 -0
- package/lib/tools/ast-jsdoc-tools/apply.d.ts +6 -0
- package/lib/tools/ast-jsdoc-tools/apply.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/cli.cjs +38 -0
- package/lib/tools/ast-jsdoc-tools/cli.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/enumerator.cjs +31 -0
- package/lib/tools/ast-jsdoc-tools/enumerator.d.ts +1 -0
- package/lib/tools/ast-jsdoc-tools/enumerator.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/fileRunner.cjs +35 -0
- package/lib/tools/ast-jsdoc-tools/fileRunner.d.ts +11 -0
- package/lib/tools/ast-jsdoc-tools/fileRunner.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/formatter.cjs +21 -0
- package/lib/tools/ast-jsdoc-tools/formatter.d.ts +6 -0
- package/lib/tools/ast-jsdoc-tools/formatter.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/generator.cjs +58 -0
- package/lib/tools/ast-jsdoc-tools/generator.d.ts +12 -0
- package/lib/tools/ast-jsdoc-tools/generator.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/index.cjs +33 -0
- package/lib/tools/ast-jsdoc-tools/index.d.ts +7 -0
- package/lib/tools/ast-jsdoc-tools/index.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/interactive.cjs +10 -0
- package/lib/tools/ast-jsdoc-tools/interactive.d.ts +1 -0
- package/lib/tools/ast-jsdoc-tools/interactive.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/parser.cjs +77 -0
- package/lib/tools/ast-jsdoc-tools/parser.d.ts +13 -0
- package/lib/tools/ast-jsdoc-tools/parser.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/patch.cjs +29 -0
- package/lib/tools/ast-jsdoc-tools/patch.d.ts +2 -0
- package/lib/tools/ast-jsdoc-tools/patch.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/prompts/loader.cjs +32 -0
- package/lib/tools/ast-jsdoc-tools/prompts/loader.d.ts +10 -0
- package/lib/tools/ast-jsdoc-tools/prompts/loader.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/repoRunner.cjs +67 -0
- package/lib/tools/ast-jsdoc-tools/repoRunner.d.ts +16 -0
- package/lib/tools/ast-jsdoc-tools/repoRunner.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/tools/jsdoc-generator.cjs +81 -0
- package/lib/tools/ast-jsdoc-tools/tools/jsdoc-generator.d.ts +5 -0
- package/lib/tools/ast-jsdoc-tools/tools/jsdoc-generator.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/utils/conflict-detector.cjs +33 -0
- package/lib/tools/ast-jsdoc-tools/utils/conflict-detector.d.ts +5 -0
- package/lib/tools/ast-jsdoc-tools/utils/conflict-detector.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/utils/context-schema.cjs +32 -0
- package/lib/tools/ast-jsdoc-tools/utils/context-schema.d.ts +7 -0
- package/lib/tools/ast-jsdoc-tools/utils/context-schema.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/utils/heuristics.cjs +34 -0
- package/lib/tools/ast-jsdoc-tools/utils/heuristics.d.ts +2 -0
- package/lib/tools/ast-jsdoc-tools/utils/heuristics.js.map +1 -0
- package/lib/tools/ast-jsdoc-tools/utils/ts-project.cjs +57 -0
- package/lib/tools/ast-jsdoc-tools/utils/ts-project.d.ts +12 -0
- package/lib/tools/ast-jsdoc-tools/utils/ts-project.js.map +1 -0
- package/lib/tools/example-tool/index.cjs +32 -0
- package/lib/tools/example-tool/index.d.ts +2 -0
- package/lib/tools/example-tool/index.js.map +1 -0
- package/lib/tools/file-summarizer/index.cjs +32 -0
- package/lib/tools/file-summarizer/index.d.ts +2 -0
- package/lib/tools/file-summarizer/index.js.map +1 -0
- package/lib/tools/index.cjs +9 -0
- package/lib/tools/index.d.ts +2 -0
- package/lib/tools/index.js.map +1 -0
- package/lib/tools/jsdoc/ts-jsdoc-element-tool.cjs +87 -0
- package/lib/tools/jsdoc/ts-jsdoc-element-tool.d.ts +2 -0
- package/lib/tools/jsdoc/ts-jsdoc-element-tool.js.map +1 -0
- package/lib/tools/jsdoc/utils.cjs +60 -0
- package/lib/tools/jsdoc/utils.d.ts +5 -0
- package/lib/tools/jsdoc/utils.js.map +1 -0
- package/lib/tools/testing/ts-jest-list-tests.cjs +56 -0
- package/lib/tools/testing/ts-jest-list-tests.d.ts +2 -0
- package/lib/tools/testing/ts-jest-list-tests.js.map +1 -0
- package/lib/types.cjs +1 -1
- package/lib/types.d.ts +56 -47
- package/lib/types.js.map +1 -0
- package/lib/utils/banner.cjs +114 -0
- package/lib/utils/banner.d.ts +3 -0
- package/lib/utils/banner.js.map +1 -0
- package/lib/version.cjs +8 -0
- package/lib/version.d.ts +2 -0
- package/lib/version.js.map +1 -0
- package/package.json +14 -63
- package/dist/mcp-server.esm.cjs +0 -2314
- package/lib/McpWrapper.cjs +0 -233
- package/lib/McpWrapper.d.ts +0 -89
- package/lib/bin/validate-modules.cjs +0 -24
- package/lib/esm/McpWrapper.d.ts +0 -89
- package/lib/esm/McpWrapper.js +0 -196
- package/lib/esm/bin/validate-modules.js +0 -22
- package/lib/esm/mcp/aggregateModules.d.ts +0 -26
- package/lib/esm/mcp/aggregateModules.js +0 -185
- package/lib/esm/mcp/code.d.ts +0 -23
- package/lib/esm/mcp/code.js +0 -70
- package/lib/esm/mcp/decorator-tools.d.ts +0 -118
- package/lib/esm/mcp/decorator-tools.js +0 -237
- package/lib/esm/mcp/fastmcp-wiring.d.ts +0 -14
- package/lib/esm/mcp/fastmcp-wiring.js +0 -56
- package/lib/esm/mcp/index.d.ts +0 -9
- package/lib/esm/mcp/index.js +0 -29
- package/lib/esm/mcp/mcp-module.d.ts +0 -11
- package/lib/esm/mcp/mcp-module.js +0 -31
- package/lib/esm/mcp/moduleRegistry.d.ts +0 -14
- package/lib/esm/mcp/moduleRegistry.js +0 -47
- package/lib/esm/mcp/prompts/index.d.ts +0 -4
- package/lib/esm/mcp/prompts/index.js +0 -7
- package/lib/esm/mcp/prompts/prompts.d.ts +0 -22
- package/lib/esm/mcp/prompts/prompts.js +0 -203
- package/lib/esm/mcp/resources/index.d.ts +0 -1
- package/lib/esm/mcp/resources/index.js +0 -2
- package/lib/esm/mcp/resources/resources.d.ts +0 -2
- package/lib/esm/mcp/resources/resources.js +0 -69
- package/lib/esm/mcp/schemas.d.ts +0 -53
- package/lib/esm/mcp/schemas.js +0 -97
- package/lib/esm/mcp/templates/codex-templates.d.ts +0 -3
- package/lib/esm/mcp/templates/codex-templates.js +0 -33
- package/lib/esm/mcp/templates/index.d.ts +0 -71
- package/lib/esm/mcp/templates/index.js +0 -66
- package/lib/esm/mcp/templates/resource-templates.d.ts +0 -3
- package/lib/esm/mcp/templates/resource-templates.js +0 -60
- package/lib/esm/mcp/templates/workspace-templates.d.ts +0 -3
- package/lib/esm/mcp/templates/workspace-templates.js +0 -66
- package/lib/esm/mcp/tools/codex-tools.d.ts +0 -5
- package/lib/esm/mcp/tools/codex-tools.js +0 -244
- package/lib/esm/mcp/tools/generateMcpModule.d.ts +0 -9
- package/lib/esm/mcp/tools/generateMcpModule.js +0 -133
- package/lib/esm/mcp/tools/index.d.ts +0 -219
- package/lib/esm/mcp/tools/index.js +0 -27
- package/lib/esm/mcp/tools/tools.d.ts +0 -10
- package/lib/esm/mcp/tools/tools.js +0 -275
- package/lib/esm/mcp/types.d.ts +0 -66
- package/lib/esm/mcp/types.js +0 -2
- package/lib/esm/mcp/utils.d.ts +0 -3
- package/lib/esm/mcp/utils.js +0 -46
- package/lib/esm/mcp/validation/index.d.ts +0 -13
- package/lib/esm/mcp/validation/index.js +0 -116
- package/lib/esm/mcp/validation/scaffoldModule.d.ts +0 -9
- package/lib/esm/mcp/validation/scaffoldModule.js +0 -88
- package/lib/esm/mcp/workspace.d.ts +0 -9
- package/lib/esm/mcp/workspace.js +0 -73
- package/lib/esm/metadata.d.ts +0 -9
- package/lib/esm/metadata.js +0 -22
- package/lib/esm/modules/_template/index.d.ts +0 -32
- package/lib/esm/modules/_template/index.js +0 -16
- package/lib/esm/modules/_template/prompts/index.d.ts +0 -6
- package/lib/esm/modules/_template/prompts/index.js +0 -9
- package/lib/esm/modules/_template/resources/index.d.ts +0 -6
- package/lib/esm/modules/_template/resources/index.js +0 -9
- package/lib/esm/modules/_template/templates/index.d.ts +0 -7
- package/lib/esm/modules/_template/templates/index.js +0 -10
- package/lib/esm/modules/_template/tools/index.d.ts +0 -6
- package/lib/esm/modules/_template/tools/index.js +0 -15
- package/lib/esm/modules/decoration/index.d.ts +0 -46
- package/lib/esm/modules/decoration/index.js +0 -10
- package/lib/esm/modules/decoration/prompts/index.d.ts +0 -1
- package/lib/esm/modules/decoration/prompts/index.js +0 -2
- package/lib/esm/modules/decoration/resources/index.d.ts +0 -7
- package/lib/esm/modules/decoration/resources/index.js +0 -10
- package/lib/esm/modules/decoration/templates/index.d.ts +0 -6
- package/lib/esm/modules/decoration/templates/index.js +0 -9
- package/lib/esm/modules/decoration/tools/index.d.ts +0 -26
- package/lib/esm/modules/decoration/tools/index.js +0 -7
- package/lib/esm/modules/index.d.ts +0 -2
- package/lib/esm/modules/index.js +0 -17
- package/lib/esm/modules/mcp/decoration-assist.d.ts +0 -4
- package/lib/esm/modules/mcp/decoration-assist.js +0 -6
- package/lib/esm/modules/mcp/index.d.ts +0 -6
- package/lib/esm/modules/mcp/index.js +0 -16
- package/lib/esm/modules/mcp/prompts/index.d.ts +0 -2
- package/lib/esm/modules/mcp/prompts/index.js +0 -9
- package/lib/esm/modules/mcp/resources/index.d.ts +0 -2
- package/lib/esm/modules/mcp/resources/index.js +0 -24
- package/lib/esm/modules/mcp/templates/index.d.ts +0 -2
- package/lib/esm/modules/mcp/templates/index.js +0 -28
- package/lib/esm/modules/mcp/tools/index.d.ts +0 -6
- package/lib/esm/modules/mcp/tools/index.js +0 -15
- package/lib/esm/utils/modulePaths.d.ts +0 -6
- package/lib/esm/utils/modulePaths.js +0 -33
- package/lib/esm/utils/moduleValidator.d.ts +0 -14
- package/lib/esm/utils/moduleValidator.js +0 -176
- package/lib/esm/utils.d.ts +0 -61
- package/lib/esm/utils.js +0 -86
- package/lib/mcp/aggregateModules.cjs +0 -225
- package/lib/mcp/aggregateModules.d.ts +0 -26
- package/lib/mcp/code.cjs +0 -81
- package/lib/mcp/code.d.ts +0 -23
- package/lib/mcp/decorator-tools.cjs +0 -243
- package/lib/mcp/decorator-tools.d.ts +0 -118
- package/lib/mcp/fastmcp-wiring.cjs +0 -59
- package/lib/mcp/fastmcp-wiring.d.ts +0 -14
- package/lib/mcp/index.cjs +0 -57
- package/lib/mcp/index.d.ts +0 -9
- package/lib/mcp/mcp-module.cjs +0 -46
- package/lib/mcp/mcp-module.d.ts +0 -11
- package/lib/mcp/moduleRegistry.cjs +0 -52
- package/lib/mcp/moduleRegistry.d.ts +0 -14
- package/lib/mcp/prompts/index.cjs +0 -25
- package/lib/mcp/prompts/index.d.ts +0 -4
- package/lib/mcp/prompts/prompts.cjs +0 -217
- package/lib/mcp/prompts/prompts.d.ts +0 -22
- package/lib/mcp/resources/index.d.ts +0 -1
- package/lib/mcp/resources/resources.cjs +0 -72
- package/lib/mcp/resources/resources.d.ts +0 -2
- package/lib/mcp/schemas.cjs +0 -100
- package/lib/mcp/schemas.d.ts +0 -53
- package/lib/mcp/templates/codex-templates.cjs +0 -40
- package/lib/mcp/templates/codex-templates.d.ts +0 -3
- package/lib/mcp/templates/index.cjs +0 -76
- package/lib/mcp/templates/index.d.ts +0 -71
- package/lib/mcp/templates/resource-templates.cjs +0 -67
- package/lib/mcp/templates/resource-templates.d.ts +0 -3
- package/lib/mcp/templates/workspace-templates.cjs +0 -70
- package/lib/mcp/templates/workspace-templates.d.ts +0 -3
- package/lib/mcp/tools/codex-tools.cjs +0 -250
- package/lib/mcp/tools/codex-tools.d.ts +0 -5
- package/lib/mcp/tools/generateMcpModule.cjs +0 -139
- package/lib/mcp/tools/generateMcpModule.d.ts +0 -9
- package/lib/mcp/tools/index.cjs +0 -30
- package/lib/mcp/tools/index.d.ts +0 -219
- package/lib/mcp/tools/tools.cjs +0 -317
- package/lib/mcp/tools/tools.d.ts +0 -10
- package/lib/mcp/types.cjs +0 -3
- package/lib/mcp/types.d.ts +0 -66
- package/lib/mcp/utils.cjs +0 -54
- package/lib/mcp/utils.d.ts +0 -3
- package/lib/mcp/validation/index.cjs +0 -123
- package/lib/mcp/validation/index.d.ts +0 -13
- package/lib/mcp/validation/scaffoldModule.cjs +0 -94
- package/lib/mcp/validation/scaffoldModule.d.ts +0 -9
- package/lib/mcp/workspace.cjs +0 -119
- package/lib/mcp/workspace.d.ts +0 -9
- package/lib/metadata.cjs +0 -25
- package/lib/metadata.d.ts +0 -9
- package/lib/modules/_template/index.cjs +0 -23
- package/lib/modules/_template/index.d.ts +0 -32
- package/lib/modules/_template/prompts/index.cjs +0 -12
- package/lib/modules/_template/prompts/index.d.ts +0 -6
- package/lib/modules/_template/resources/index.cjs +0 -12
- package/lib/modules/_template/resources/index.d.ts +0 -6
- package/lib/modules/_template/templates/index.cjs +0 -13
- package/lib/modules/_template/templates/index.d.ts +0 -7
- package/lib/modules/_template/tools/index.cjs +0 -18
- package/lib/modules/_template/tools/index.d.ts +0 -6
- package/lib/modules/decoration/index.cjs +0 -17
- package/lib/modules/decoration/index.d.ts +0 -46
- package/lib/modules/decoration/prompts/index.cjs +0 -5
- package/lib/modules/decoration/prompts/index.d.ts +0 -1
- package/lib/modules/decoration/resources/index.cjs +0 -13
- package/lib/modules/decoration/resources/index.d.ts +0 -7
- package/lib/modules/decoration/templates/index.cjs +0 -12
- package/lib/modules/decoration/templates/index.d.ts +0 -6
- package/lib/modules/decoration/tools/index.cjs +0 -10
- package/lib/modules/decoration/tools/index.d.ts +0 -26
- package/lib/modules/index.cjs +0 -20
- package/lib/modules/index.d.ts +0 -2
- package/lib/modules/mcp/decoration-assist.cjs +0 -13
- package/lib/modules/mcp/decoration-assist.d.ts +0 -4
- package/lib/modules/mcp/index.cjs +0 -23
- package/lib/modules/mcp/index.d.ts +0 -6
- package/lib/modules/mcp/prompts/index.cjs +0 -12
- package/lib/modules/mcp/prompts/index.d.ts +0 -2
- package/lib/modules/mcp/resources/index.cjs +0 -27
- package/lib/modules/mcp/resources/index.d.ts +0 -2
- package/lib/modules/mcp/templates/index.cjs +0 -31
- package/lib/modules/mcp/templates/index.d.ts +0 -2
- package/lib/modules/mcp/tools/index.cjs +0 -18
- package/lib/modules/mcp/tools/index.d.ts +0 -6
- package/lib/utils/modulePaths.cjs +0 -43
- package/lib/utils/modulePaths.d.ts +0 -6
- package/lib/utils/moduleValidator.cjs +0 -184
- package/lib/utils/moduleValidator.d.ts +0 -14
- package/lib/utils.cjs +0 -129
- package/lib/utils.d.ts +0 -61
- /package/lib/{bin/validate-modules.d.ts → esm/tools/ast-jsdoc-tools/cli.d.ts} +0 -0
- /package/lib/{esm/bin/validate-modules.d.ts → tools/ast-jsdoc-tools/cli.d.ts} +0 -0
|
@@ -1,225 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.aggregateModules = aggregateModules;
|
|
40
|
-
exports.aggregateModulesSync = aggregateModulesSync;
|
|
41
|
-
// Aggregator: import module index files and merge exported arrays with provenance + duplicate detection
|
|
42
|
-
const path_1 = __importDefault(require("path"));
|
|
43
|
-
const fs_1 = __importDefault(require("fs"));
|
|
44
|
-
const url_1 = require("url");
|
|
45
|
-
const validation_1 = require("./validation/index.cjs");
|
|
46
|
-
const SUBFOLDERS = ["prompts", "resources", "templates", "tools"];
|
|
47
|
-
const INDEX_CANDIDATES = [
|
|
48
|
-
"index.ts",
|
|
49
|
-
"index.tsx",
|
|
50
|
-
"index.js",
|
|
51
|
-
"index.cjs",
|
|
52
|
-
"index.mjs",
|
|
53
|
-
];
|
|
54
|
-
function findIndexFile(folder) {
|
|
55
|
-
for (const c of INDEX_CANDIDATES) {
|
|
56
|
-
const f = path_1.default.join(folder, c);
|
|
57
|
-
if (fs_1.default.existsSync(f))
|
|
58
|
-
return f;
|
|
59
|
-
}
|
|
60
|
-
return undefined;
|
|
61
|
-
}
|
|
62
|
-
function makeKeyForItem(item) {
|
|
63
|
-
if (!item)
|
|
64
|
-
return JSON.stringify(item);
|
|
65
|
-
if (typeof item === "string")
|
|
66
|
-
return `str:${item}`;
|
|
67
|
-
if (typeof item === "number")
|
|
68
|
-
return `num:${item}`;
|
|
69
|
-
if (item.id)
|
|
70
|
-
return `id:${item.id}`;
|
|
71
|
-
if (item.name)
|
|
72
|
-
return `name:${item.name}`;
|
|
73
|
-
// fallback to stable string
|
|
74
|
-
try {
|
|
75
|
-
return `obj:${JSON.stringify(item)}`;
|
|
76
|
-
}
|
|
77
|
-
catch (e) {
|
|
78
|
-
return `obj:${String(item)}`;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
async function loadArrayFromIndex(filePath) {
|
|
82
|
-
// Prefer a fast, static parse of the first array literal found in the file.
|
|
83
|
-
try {
|
|
84
|
-
const content = fs_1.default.readFileSync(filePath, "utf8");
|
|
85
|
-
const start = content.indexOf("[");
|
|
86
|
-
if (start !== -1) {
|
|
87
|
-
let depth = 0;
|
|
88
|
-
let end = -1;
|
|
89
|
-
for (let i = start; i < content.length; i++) {
|
|
90
|
-
const ch = content[i];
|
|
91
|
-
if (ch === "[")
|
|
92
|
-
depth++;
|
|
93
|
-
else if (ch === "]") {
|
|
94
|
-
depth--;
|
|
95
|
-
if (depth === 0) {
|
|
96
|
-
end = i;
|
|
97
|
-
break;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
if (end !== -1) {
|
|
102
|
-
const arrText = content.slice(start, end + 1);
|
|
103
|
-
try {
|
|
104
|
-
return JSON.parse(arrText);
|
|
105
|
-
}
|
|
106
|
-
catch (e) {
|
|
107
|
-
// Normalize TS object literals to JSON:
|
|
108
|
-
// - convert single quotes to double quotes
|
|
109
|
-
// - quote unquoted object keys
|
|
110
|
-
// - strip trailing commas
|
|
111
|
-
const normalized = arrText
|
|
112
|
-
// unify quotes in string literals
|
|
113
|
-
.replace(/'(?:\\'|[^'])*'/g, (m) => m.replace(/'/g, '"'))
|
|
114
|
-
// quote unquoted keys after { or ,
|
|
115
|
-
.replace(/([\{,]\s*)([A-Za-z_$][\w$]*)(\s*:)/g, '$1"$2"$3')
|
|
116
|
-
// remove trailing commas before ] or }
|
|
117
|
-
.replace(/,(\s*[\}\]])/g, '$1');
|
|
118
|
-
try {
|
|
119
|
-
return JSON.parse(normalized);
|
|
120
|
-
}
|
|
121
|
-
catch (e2) {
|
|
122
|
-
// fallthrough to import attempt below
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
catch (e) {
|
|
129
|
-
// ignore static parse errors and fall back to import
|
|
130
|
-
}
|
|
131
|
-
try {
|
|
132
|
-
const fileUrl = (0, url_1.pathToFileURL)(filePath).href;
|
|
133
|
-
const mod = await Promise.resolve(`${fileUrl}`).then(s => __importStar(require(s)));
|
|
134
|
-
// Find first export that is an array
|
|
135
|
-
for (const key of Object.keys(mod)) {
|
|
136
|
-
const val = mod[key];
|
|
137
|
-
if (Array.isArray(val))
|
|
138
|
-
return val;
|
|
139
|
-
}
|
|
140
|
-
// default export check
|
|
141
|
-
if (Array.isArray(mod.default))
|
|
142
|
-
return mod.default;
|
|
143
|
-
return undefined;
|
|
144
|
-
}
|
|
145
|
-
catch (err) {
|
|
146
|
-
// fallback: if import fails, try to static-parse again (already attempted) and finally return undefined
|
|
147
|
-
return undefined;
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
async function aggregateModules(repoRoot) {
|
|
151
|
-
const dirs = (0, validation_1.findModuleDirs)(repoRoot);
|
|
152
|
-
const master = {
|
|
153
|
-
prompts: [],
|
|
154
|
-
resources: [],
|
|
155
|
-
templates: [],
|
|
156
|
-
tools: [],
|
|
157
|
-
conflicts: [],
|
|
158
|
-
};
|
|
159
|
-
// maps to detect duplicates per type
|
|
160
|
-
const maps = {
|
|
161
|
-
prompts: new Map(),
|
|
162
|
-
resources: new Map(),
|
|
163
|
-
templates: new Map(),
|
|
164
|
-
tools: new Map(),
|
|
165
|
-
};
|
|
166
|
-
for (const moduleDir of dirs) {
|
|
167
|
-
const moduleName = path_1.default.basename(moduleDir);
|
|
168
|
-
for (const sub of SUBFOLDERS) {
|
|
169
|
-
const folder = path_1.default.join(moduleDir, sub);
|
|
170
|
-
const indexFile = findIndexFile(folder);
|
|
171
|
-
if (!indexFile)
|
|
172
|
-
continue;
|
|
173
|
-
let arr;
|
|
174
|
-
try {
|
|
175
|
-
arr = await loadArrayFromIndex(indexFile);
|
|
176
|
-
}
|
|
177
|
-
catch (err) {
|
|
178
|
-
// skip module on import error but record as conflict-like issue
|
|
179
|
-
master.conflicts.push({
|
|
180
|
-
key: `import-error:${moduleName}:${sub}`,
|
|
181
|
-
existing: { moduleName, modulePath: moduleDir },
|
|
182
|
-
incoming: { moduleName, modulePath: moduleDir },
|
|
183
|
-
});
|
|
184
|
-
continue;
|
|
185
|
-
}
|
|
186
|
-
if (!arr || !Array.isArray(arr))
|
|
187
|
-
continue;
|
|
188
|
-
for (const item of arr) {
|
|
189
|
-
const key = makeKeyForItem(item);
|
|
190
|
-
const provenance = { moduleName, modulePath: moduleDir };
|
|
191
|
-
const map = maps[sub];
|
|
192
|
-
if (map.has(key)) {
|
|
193
|
-
// record conflict deterministically (existing vs incoming)
|
|
194
|
-
const existing = map.get(key);
|
|
195
|
-
master.conflicts.push({ key, existing, incoming: provenance });
|
|
196
|
-
// skip adding duplicate
|
|
197
|
-
continue;
|
|
198
|
-
}
|
|
199
|
-
map.set(key, provenance);
|
|
200
|
-
master[sub].push({ ...item, provenance });
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
|
-
return master;
|
|
205
|
-
}
|
|
206
|
-
// For compatibility with CommonJS call sites (not exported by ESM), provide a sync wrapper
|
|
207
|
-
function aggregateModulesSync(repoRoot) {
|
|
208
|
-
// synchronous wrapper that runs the async function and blocks — suitable for small module sets
|
|
209
|
-
const p = aggregateModules(repoRoot);
|
|
210
|
-
let result;
|
|
211
|
-
let done = false;
|
|
212
|
-
p.then((r) => {
|
|
213
|
-
result = r;
|
|
214
|
-
done = true;
|
|
215
|
-
}).catch((e) => {
|
|
216
|
-
throw e;
|
|
217
|
-
});
|
|
218
|
-
// spin-wait (acceptable in small dev scripts)
|
|
219
|
-
const until = Date.now() + 5000;
|
|
220
|
-
while (!done && Date.now() < until) { }
|
|
221
|
-
if (!done)
|
|
222
|
-
throw new Error("aggregateModulesSync: timeout waiting for async aggregation");
|
|
223
|
-
return result;
|
|
224
|
-
}
|
|
225
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdncmVnYXRlTW9kdWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tY3AvYWdncmVnYXRlTW9kdWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNIQSw0Q0EwREM7QUFHRCxvREFtQkM7QUF0TUQsd0dBQXdHO0FBQ3hHLGdEQUF3QjtBQUN4Qiw0Q0FBb0I7QUFDcEIsNkJBQW9DO0FBQ3BDLHVEQUE4QztBQWlCOUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUNsRSxNQUFNLGdCQUFnQixHQUFHO0lBQ3ZCLFVBQVU7SUFDVixXQUFXO0lBQ1gsVUFBVTtJQUNWLFdBQVc7SUFDWCxXQUFXO0NBQ1osQ0FBQztBQUVGLFNBQVMsYUFBYSxDQUFDLE1BQWM7SUFDbkMsS0FBSyxNQUFNLENBQUMsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxHQUFHLGNBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9CLElBQUksWUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7WUFBRSxPQUFPLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBQ0QsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQztBQUVELFNBQVMsY0FBYyxDQUFDLElBQVM7SUFDL0IsSUFBSSxDQUFDLElBQUk7UUFBRSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkMsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRO1FBQUUsT0FBTyxPQUFPLElBQUksRUFBRSxDQUFDO0lBQ25ELElBQUksT0FBTyxJQUFJLEtBQUssUUFBUTtRQUFFLE9BQU8sT0FBTyxJQUFJLEVBQUUsQ0FBQztJQUNuRCxJQUFJLElBQUksQ0FBQyxFQUFFO1FBQUUsT0FBTyxN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QyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFnZ3JlZ2F0b3I6IGltcG9ydCBtb2R1bGUgaW5kZXggZmlsZXMgYW5kIG1lcmdlIGV4cG9ydGVkIGFycmF5cyB3aXRoIHByb3ZlbmFuY2UgKyBkdXBsaWNhdGUgZGV0ZWN0aW9uXG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IGZzIGZyb20gXCJmc1wiO1xuaW1wb3J0IHsgcGF0aFRvRmlsZVVSTCB9IGZyb20gXCJ1cmxcIjtcbmltcG9ydCB7IGZpbmRNb2R1bGVEaXJzIH0gZnJvbSBcIi4vdmFsaWRhdGlvblwiO1xuXG5leHBvcnQgdHlwZSBQcm92ZW5hbmNlID0geyBtb2R1bGVOYW1lOiBzdHJpbmc7IG1vZHVsZVBhdGg6IHN0cmluZyB9O1xuZXhwb3J0IHR5cGUgQWdncmVnYXRpb25Db25mbGljdCA9IHtcbiAga2V5OiBzdHJpbmc7XG4gIGV4aXN0aW5nOiBQcm92ZW5hbmNlO1xuICBpbmNvbWluZzogUHJvdmVuYW5jZTtcbn07XG5cbmV4cG9ydCB0eXBlIEFnZ3JlZ2F0aW9uUmVzdWx0PFQgPSBhbnk+ID0ge1xuICBwcm9tcHRzOiBBcnJheTxUICYgeyBwcm92ZW5hbmNlOiBQcm92ZW5hbmNlIH0+O1xuICByZXNvdXJjZXM6IEFycmF5PFQgJiB7IHByb3ZlbmFuY2U6IFByb3ZlbmFuY2UgfT47XG4gIHRlbXBsYXRlczogQXJyYXk8VCAmIHsgcHJvdmVuYW5jZTogUHJvdmVuYW5jZSB9PjtcbiAgdG9vbHM6IEFycmF5PFQgJiB7IHByb3ZlbmFuY2U6IFByb3ZlbmFuY2UgfT47XG4gIGNvbmZsaWN0czogQWdncmVnYXRpb25Db25mbGljdFtdO1xufTtcblxuY29uc3QgU1VCRk9MREVSUyA9IFtcInByb21wdHNcIiwgXCJyZXNvdXJjZXNcIiwgXCJ0ZW1wbGF0ZXNcIiwgXCJ0b29sc1wiXTtcbmNvbnN0IElOREVYX0NBTkRJREFURVMgPSBbXG4gIFwiaW5kZXgudHNcIixcbiAgXCJpbmRleC50c3hcIixcbiAgXCJpbmRleC5qc1wiLFxuICBcImluZGV4LmNqc1wiLFxuICBcImluZGV4Lm1qc1wiLFxuXTtcblxuZnVuY3Rpb24gZmluZEluZGV4RmlsZShmb2xkZXI6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIGZvciAoY29uc3QgYyBvZiBJTkRFWF9DQU5ESURBVEVTKSB7XG4gICAgY29uc3QgZiA9IHBhdGguam9pbihmb2xkZXIsIGMpO1xuICAgIGlmIChmcy5leGlzdHNTeW5jKGYpKSByZXR1cm4gZjtcbiAgfVxuICByZXR1cm4gdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBtYWtlS2V5Rm9ySXRlbShpdGVtOiBhbnkpOiBzdHJpbmcge1xuICBpZiAoIWl0ZW0pIHJldHVybiBKU09OLnN0cmluZ2lmeShpdGVtKTtcbiAgaWYgKHR5cGVvZiBpdGVtID09PSBcInN0cmluZ1wiKSByZXR1cm4gYHN0cjoke2l0ZW19YDtcbiAgaWYgKHR5cGVvZiBpdGVtID09PSBcIm51bWJlclwiKSByZXR1cm4gYG51bToke2l0ZW19YDtcbiAgaWYgKGl0ZW0uaWQpIHJldHVybiBgaWQ6JHtpdGVtLmlkfWA7XG4gIGlmIChpdGVtLm5hbWUpIHJldHVybiBgbmFtZToke2l0ZW0ubmFtZX1gO1xuICAvLyBmYWxsYmFjayB0byBzdGFibGUgc3RyaW5nXG4gIHRyeSB7XG4gICAgcmV0dXJuIGBvYmo6JHtKU09OLnN0cmluZ2lmeShpdGVtKX1gO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGBvYmo6JHtTdHJpbmcoaXRlbSl9YDtcbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiBsb2FkQXJyYXlGcm9tSW5kZXgoXG4gIGZpbGVQYXRoOiBzdHJpbmdcbik6IFByb21pc2U8YW55W10gfCB1bmRlZmluZWQ+IHtcbiAgLy8gUHJlZmVyIGEgZmFzdCwgc3RhdGljIHBhcnNlIG9mIHRoZSBmaXJzdCBhcnJheSBsaXRlcmFsIGZvdW5kIGluIHRoZSBmaWxlLlxuICB0cnkge1xuICAgIGNvbnN0IGNvbnRlbnQgPSBmcy5yZWFkRmlsZVN5bmMoZmlsZVBhdGgsIFwidXRmOFwiKTtcbiAgICBjb25zdCBzdGFydCA9IGNvbnRlbnQuaW5kZXhPZihcIltcIik7XG4gICAgaWYgKHN0YXJ0ICE9PSAtMSkge1xuICAgICAgbGV0IGRlcHRoID0gMDtcbiAgICAgIGxldCBlbmQgPSAtMTtcbiAgICAgIGZvciAobGV0IGkgPSBzdGFydDsgaSA8IGNvbnRlbnQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgY2ggPSBjb250ZW50W2ldO1xuICAgICAgICBpZiAoY2ggPT09IFwiW1wiKSBkZXB0aCsrO1xuICAgICAgICBlbHNlIGlmIChjaCA9PT0gXCJdXCIpIHtcbiAgICAgICAgICBkZXB0aC0tO1xuICAgICAgICAgIGlmIChkZXB0aCA9PT0gMCkge1xuICAgICAgICAgICAgZW5kID0gaTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGVuZCAhPT0gLTEpIHtcbiAgICAgICAgY29uc3QgYXJyVGV4dCA9IGNvbnRlbnQuc2xpY2Uoc3RhcnQsIGVuZCArIDEpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKGFyclRleHQpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgLy8gTm9ybWFsaXplIFRTIG9iamVjdCBsaXRlcmFscyB0byBKU09OOlxuICAgICAgICAgIC8vIC0gY29udmVydCBzaW5nbGUgcXVvdGVzIHRvIGRvdWJsZSBxdW90ZXNcbiAgICAgICAgICAvLyAtIHF1b3RlIHVucXVvdGVkIG9iamVjdCBrZXlzXG4gICAgICAgICAgLy8gLSBzdHJpcCB0cmFpbGluZyBjb21tYXNcbiAgICAgICAgICBjb25zdCBub3JtYWxpemVkID0gYXJyVGV4dFxuICAgICAgICAgICAgLy8gdW5pZnkgcXVvdGVzIGluIHN0cmluZyBsaXRlcmFsc1xuICAgICAgICAgICAgLnJlcGxhY2UoLycoPzpcXFxcJ3xbXiddKSonL2csIChtKSA9PiBtLnJlcGxhY2UoLycvZywgJ1wiJykpXG4gICAgICAgICAgICAvLyBxdW90ZSB1bnF1b3RlZCBrZXlzIGFmdGVyIHsgb3IgLFxuICAgICAgICAgICAgLnJlcGxhY2UoLyhbXFx7LF1cXHMqKShbQS1aYS16XyRdW1xcdyRdKikoXFxzKjopL2csICckMVwiJDJcIiQzJylcbiAgICAgICAgICAgIC8vIHJlbW92ZSB0cmFpbGluZyBjb21tYXMgYmVmb3JlIF0gb3IgfVxuICAgICAgICAgICAgLnJlcGxhY2UoLywoXFxzKltcXH1cXF1dKS9nLCAnJDEnKTtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIEpTT04ucGFyc2Uobm9ybWFsaXplZCk7XG4gICAgICAgICAgfSBjYXRjaCAoZTIpIHtcbiAgICAgICAgICAgIC8vIGZhbGx0aHJvdWdoIHRvIGltcG9ydCBhdHRlbXB0IGJlbG93XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9IGNhdGNoIChlKSB7XG4gICAgLy8gaWdub3JlIHN0YXRpYyBwYXJzZSBlcnJvcnMgYW5kIGZhbGwgYmFjayB0byBpbXBvcnRcbiAgfVxuXG4gIHRyeSB7XG4gICAgY29uc3QgZmlsZVVybCA9IHBhdGhUb0ZpbGVVUkwoZmlsZVBhdGgpLmhyZWY7XG4gICAgY29uc3QgbW9kID0gYXdhaXQgaW1wb3J0KGZpbGVVcmwpO1xuICAgIC8vIEZpbmQgZmlyc3QgZXhwb3J0IHRoYXQgaXMgYW4gYXJyYXlcbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhtb2QpKSB7XG4gICAgICBjb25zdCB2YWwgPSAobW9kIGFzIGFueSlba2V5XTtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbCkpIHJldHVybiB2YWw7XG4gICAgfVxuICAgIC8vIGRlZmF1bHQgZXhwb3J0IGNoZWNrXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoKG1vZCBhcyBhbnkpLmRlZmF1bHQpKSByZXR1cm4gKG1vZCBhcyBhbnkpLmRlZmF1bHQ7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgLy8gZmFsbGJhY2s6IGlmIGltcG9ydCBmYWlscywgdHJ5IHRvIHN0YXRpYy1wYXJzZSBhZ2FpbiAoYWxyZWFkeSBhdHRlbXB0ZWQpIGFuZCBmaW5hbGx5IHJldHVybiB1bmRlZmluZWRcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhZ2dyZWdhdGVNb2R1bGVzKFxuICByZXBvUm9vdDogc3RyaW5nXG4pOiBQcm9taXNlPEFnZ3JlZ2F0aW9uUmVzdWx0PiB7XG4gIGNvbnN0IGRpcnMgPSBmaW5kTW9kdWxlRGlycyhyZXBvUm9vdCk7XG4gIGNvbnN0IG1hc3RlciA9IHtcbiAgICBwcm9tcHRzOiBbXSBhcyBhbnlbXSxcbiAgICByZXNvdXJjZXM6IFtdIGFzIGFueVtdLFxuICAgIHRlbXBsYXRlczogW10gYXMgYW55W10sXG4gICAgdG9vbHM6IFtdIGFzIGFueVtdLFxuICAgIGNvbmZsaWN0czogW10gYXMgQWdncmVnYXRpb25Db25mbGljdFtdLFxuICB9O1xuXG4gIC8vIG1hcHMgdG8gZGV0ZWN0IGR1cGxpY2F0ZXMgcGVyIHR5cGVcbiAgY29uc3QgbWFwczogUmVjb3JkPHN0cmluZywgTWFwPHN0cmluZywgUHJvdmVuYW5jZT4+ID0ge1xuICAgIHByb21wdHM6IG5ldyBNYXAoKSxcbiAgICByZXNvdXJjZXM6IG5ldyBNYXAoKSxcbiAgICB0ZW1wbGF0ZXM6IG5ldyBNYXAoKSxcbiAgICB0b29sczogbmV3IE1hcCgpLFxuICB9O1xuXG4gIGZvciAoY29uc3QgbW9kdWxlRGlyIG9mIGRpcnMpIHtcbiAgICBjb25zdCBtb2R1bGVOYW1lID0gcGF0aC5iYXNlbmFtZShtb2R1bGVEaXIpO1xuICAgIGZvciAoY29uc3Qgc3ViIG9mIFNVQkZPTERFUlMpIHtcbiAgICAgIGNvbnN0IGZvbGRlciA9IHBhdGguam9pbihtb2R1bGVEaXIsIHN1Yik7XG4gICAgICBjb25zdCBpbmRleEZpbGUgPSBmaW5kSW5kZXhGaWxlKGZvbGRlcik7XG4gICAgICBpZiAoIWluZGV4RmlsZSkgY29udGludWU7XG4gICAgICBsZXQgYXJyOiBhbnlbXSB8IHVuZGVmaW5lZDtcbiAgICAgIHRyeSB7XG4gICAgICAgIGFyciA9IGF3YWl0IGxvYWRBcnJheUZyb21JbmRleChpbmRleEZpbGUpO1xuICAgICAgfSBjYXRjaCAoZXJyOiBhbnkpIHtcbiAgICAgICAgLy8gc2tpcCBtb2R1bGUgb24gaW1wb3J0IGVycm9yIGJ1dCByZWNvcmQgYXMgY29uZmxpY3QtbGlrZSBpc3N1ZVxuICAgICAgICBtYXN0ZXIuY29uZmxpY3RzLnB1c2goe1xuICAgICAgICAgIGtleTogYGltcG9ydC1lcnJvcjoke21vZHVsZU5hbWV9OiR7c3VifWAsXG4gICAgICAgICAgZXhpc3Rpbmc6IHsgbW9kdWxlTmFtZSwgbW9kdWxlUGF0aDogbW9kdWxlRGlyIH0sXG4gICAgICAgICAgaW5jb21pbmc6IHsgbW9kdWxlTmFtZSwgbW9kdWxlUGF0aDogbW9kdWxlRGlyIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICAgIGlmICghYXJyIHx8ICFBcnJheS5pc0FycmF5KGFycikpIGNvbnRpbnVlO1xuXG4gICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgYXJyKSB7XG4gICAgICAgIGNvbnN0IGtleSA9IG1ha2VLZXlGb3JJdGVtKGl0ZW0pO1xuICAgICAgICBjb25zdCBwcm92ZW5hbmNlID0geyBtb2R1bGVOYW1lLCBtb2R1bGVQYXRoOiBtb2R1bGVEaXIgfTtcbiAgICAgICAgY29uc3QgbWFwID0gbWFwc1tzdWJdO1xuICAgICAgICBpZiAobWFwLmhhcyhrZXkpKSB7XG4gICAgICAgICAgLy8gcmVjb3JkIGNvbmZsaWN0IGRldGVybWluaXN0aWNhbGx5IChleGlzdGluZyB2cyBpbmNvbWluZylcbiAgICAgICAgICBjb25zdCBleGlzdGluZyA9IG1hcC5nZXQoa2V5KSE7XG4gICAgICAgICAgbWFzdGVyLmNvbmZsaWN0cy5wdXNoKHsga2V5LCBleGlzdGluZywgaW5jb21pbmc6IHByb3ZlbmFuY2UgfSk7XG4gICAgICAgICAgLy8gc2tpcCBhZGRpbmcgZHVwbGljYXRlXG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgbWFwLnNldChrZXksIHByb3ZlbmFuY2UpO1xuICAgICAgICAobWFzdGVyIGFzIGFueSlbc3ViXS5wdXNoKHsgLi4uaXRlbSwgcHJvdmVuYW5jZSB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gbWFzdGVyO1xufVxuXG4vLyBGb3IgY29tcGF0aWJpbGl0eSB3aXRoIENvbW1vbkpTIGNhbGwgc2l0ZXMgKG5vdCBleHBvcnRlZCBieSBFU00pLCBwcm92aWRlIGEgc3luYyB3cmFwcGVyXG5leHBvcnQgZnVuY3Rpb24gYWdncmVnYXRlTW9kdWxlc1N5bmMocmVwb1Jvb3Q6IHN0cmluZykge1xuICAvLyBzeW5jaHJvbm91cyB3cmFwcGVyIHRoYXQgcnVucyB0aGUgYXN5bmMgZnVuY3Rpb24gYW5kIGJsb2NrcyDigJQgc3VpdGFibGUgZm9yIHNtYWxsIG1vZHVsZSBzZXRzXG4gIGNvbnN0IHAgPSBhZ2dyZWdhdGVNb2R1bGVzKHJlcG9Sb290KTtcbiAgbGV0IHJlc3VsdDogYW55O1xuICBsZXQgZG9uZSA9IGZhbHNlO1xuICBwLnRoZW4oKHIpID0+IHtcbiAgICByZXN1bHQgPSByO1xuICAgIGRvbmUgPSB0cnVlO1xuICB9KS5jYXRjaCgoZSkgPT4ge1xuICAgIHRocm93IGU7XG4gIH0pO1xuICAvLyBzcGluLXdhaXQgKGFjY2VwdGFibGUgaW4gc21hbGwgZGV2IHNjcmlwdHMpXG4gIGNvbnN0IHVudGlsID0gRGF0ZS5ub3coKSArIDUwMDA7XG4gIHdoaWxlICghZG9uZSAmJiBEYXRlLm5vdygpIDwgdW50aWwpIHt9XG4gIGlmICghZG9uZSlcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBcImFnZ3JlZ2F0ZU1vZHVsZXNTeW5jOiB0aW1lb3V0IHdhaXRpbmcgZm9yIGFzeW5jIGFnZ3JlZ2F0aW9uXCJcbiAgICApO1xuICByZXR1cm4gcmVzdWx0IGFzIEFnZ3JlZ2F0aW9uUmVzdWx0O1xufVxuIl19
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
export type Provenance = {
|
|
2
|
-
moduleName: string;
|
|
3
|
-
modulePath: string;
|
|
4
|
-
};
|
|
5
|
-
export type AggregationConflict = {
|
|
6
|
-
key: string;
|
|
7
|
-
existing: Provenance;
|
|
8
|
-
incoming: Provenance;
|
|
9
|
-
};
|
|
10
|
-
export type AggregationResult<T = any> = {
|
|
11
|
-
prompts: Array<T & {
|
|
12
|
-
provenance: Provenance;
|
|
13
|
-
}>;
|
|
14
|
-
resources: Array<T & {
|
|
15
|
-
provenance: Provenance;
|
|
16
|
-
}>;
|
|
17
|
-
templates: Array<T & {
|
|
18
|
-
provenance: Provenance;
|
|
19
|
-
}>;
|
|
20
|
-
tools: Array<T & {
|
|
21
|
-
provenance: Provenance;
|
|
22
|
-
}>;
|
|
23
|
-
conflicts: AggregationConflict[];
|
|
24
|
-
};
|
|
25
|
-
export declare function aggregateModules(repoRoot: string): Promise<AggregationResult>;
|
|
26
|
-
export declare function aggregateModulesSync(repoRoot: string): AggregationResult;
|
package/lib/mcp/code.cjs
DELETED
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.isSourceFile = isSourceFile;
|
|
7
|
-
exports.isTestFile = isTestFile;
|
|
8
|
-
exports.extractExports = extractExports;
|
|
9
|
-
exports.extractDecorators = extractDecorators;
|
|
10
|
-
exports.summarizeReadme = summarizeReadme;
|
|
11
|
-
exports.analyzeRepo = analyzeRepo;
|
|
12
|
-
// Analysis helpers (minimal yet effective, text-based to avoid heavy AST deps)
|
|
13
|
-
const path_1 = __importDefault(require("path"));
|
|
14
|
-
const fs_1 = __importDefault(require("fs"));
|
|
15
|
-
const utils_1 = require("./utils.cjs");
|
|
16
|
-
function isSourceFile(p) {
|
|
17
|
-
return /\.(ts|tsx|js|jsx)$/.test(p) && !p.endsWith(".d.ts");
|
|
18
|
-
}
|
|
19
|
-
function isTestFile(p) {
|
|
20
|
-
return /(\.test\.|\.spec\.)/.test(p);
|
|
21
|
-
}
|
|
22
|
-
function extractExports(fileContent) {
|
|
23
|
-
const names = new Set();
|
|
24
|
-
const exportRe = /(export\s+(?:default\s+)?(?:class|function|const|let|var|interface|type|enum)\s+)([A-Za-z0-9_]+)/g;
|
|
25
|
-
const namedRe = /export\s*\{([^}]+)\}/g;
|
|
26
|
-
let m;
|
|
27
|
-
while ((m = exportRe.exec(fileContent)))
|
|
28
|
-
names.add(m[2]);
|
|
29
|
-
while ((m = namedRe.exec(fileContent))) {
|
|
30
|
-
m[1]
|
|
31
|
-
.split(",")
|
|
32
|
-
.map((s) => s.trim().split(" as ")[0].trim())
|
|
33
|
-
.forEach((n) => {
|
|
34
|
-
if (n)
|
|
35
|
-
names.add(n);
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
return [...names].sort();
|
|
39
|
-
}
|
|
40
|
-
function extractDecorators(fileContent) {
|
|
41
|
-
const decs = new Set();
|
|
42
|
-
const decRe = /@([A-Za-z_][A-Za-z0-9_]*)/g;
|
|
43
|
-
let m;
|
|
44
|
-
while ((m = decRe.exec(fileContent)))
|
|
45
|
-
decs.add(m[1]);
|
|
46
|
-
return [...decs].sort();
|
|
47
|
-
}
|
|
48
|
-
function summarizeReadme(readme) {
|
|
49
|
-
if (!readme)
|
|
50
|
-
return undefined;
|
|
51
|
-
const lines = readme.split(/\r?\n/).filter(Boolean);
|
|
52
|
-
const title = lines.find((l) => /^#\s+/.test(l))?.replace(/^#\s+/, "") || "README";
|
|
53
|
-
const bullets = lines.filter((l) => /^[-*]\s+/.test(l)).slice(0, 20);
|
|
54
|
-
return { title, bullets };
|
|
55
|
-
}
|
|
56
|
-
function analyzeRepo(root) {
|
|
57
|
-
const src = path_1.default.join(root, "src");
|
|
58
|
-
const testDir = path_1.default.join(root, "tests");
|
|
59
|
-
const readmePath = path_1.default.join(root, "README.md");
|
|
60
|
-
const readme = (0, utils_1.readFileSafe)(readmePath);
|
|
61
|
-
const files = fs_1.default.existsSync(src) ? (0, utils_1.listFilesRecursive)(src, isSourceFile) : [];
|
|
62
|
-
const testFiles = fs_1.default.existsSync(testDir)
|
|
63
|
-
? (0, utils_1.listFilesRecursive)(testDir, (f) => isSourceFile(f) && isTestFile(f))
|
|
64
|
-
: [];
|
|
65
|
-
const api = {};
|
|
66
|
-
for (const f of files) {
|
|
67
|
-
const content = (0, utils_1.readFileSafe)(f) || "";
|
|
68
|
-
api[path_1.default.relative(root, f)] = {
|
|
69
|
-
exports: extractExports(content),
|
|
70
|
-
decorators: extractDecorators(content),
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
const tests = {};
|
|
74
|
-
for (const f of testFiles) {
|
|
75
|
-
const content = (0, utils_1.readFileSafe)(f) || "";
|
|
76
|
-
const mentions = Array.from(new Set([...extractExports(content), ...extractDecorators(content)])).sort();
|
|
77
|
-
tests[path_1.default.relative(root, f)] = { mentions };
|
|
78
|
-
}
|
|
79
|
-
return { files, testFiles, api, tests, readme: summarizeReadme(readme) };
|
|
80
|
-
}
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tY3AvY29kZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUtBLG9DQUVDO0FBQ0QsZ0NBRUM7QUFFRCx3Q0FnQkM7QUFFRCw4Q0FNQztBQUVELDBDQU9DO0FBRUQsa0NBNEJDO0FBM0VELCtFQUErRTtBQUMvRSxnREFBd0I7QUFDeEIsNENBQW9CO0FBQ3BCLHVDQUEyRDtBQUUzRCxTQUFnQixZQUFZLENBQUMsQ0FBUztJQUNwQyxPQUFPLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDOUQsQ0FBQztBQUNELFNBQWdCLFVBQVUsQ0FBQyxDQUFTO0lBQ2xDLE9BQU8scUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3ZDLENBQUM7QUFFRCxTQUFnQixjQUFjLENBQUMsV0FBbUI7SUFDaEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztJQUNoQyxNQUFNLFFBQVEsR0FDWixtR0FBbUcsQ0FBQztJQUN0RyxNQUFNLE9BQU8sR0FBRyx1QkFBdUIsQ0FBQztJQUN4QyxJQUFJLENBQXlCLENBQUM7SUFDOUIsT0FBTyxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN6RCxPQUFPLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDRCxLQUFLLENBQUMsR0FBRyxDQUFDO2FBQ1YsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMs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QUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUc7WUFDNUIsT0FBTyxFQUFFLGNBQWMsQ0FBQyxPQUFPLENBQUM7WUFDaEMsVUFBVSxFQUFFLGlCQUFpQixDQUFDLE9BQU8sQ0FBQztTQUN2QyxDQUFDO0lBQ0osQ0FBQztJQUNELE1BQU0sS0FBSyxHQUEyQyxFQUFFLENBQUM7SUFDekQsS0FBSyxNQUFNLENBQUMsSUFBSSxTQUFTLEVBQUUsQ0FBQztRQUMxQixNQUFNLE9BQU8sR0FBRyxJQUFBLG9CQUFZLEVBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RDLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQ3pCLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQ3JFLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDVCxLQUFLLENBQUMsY0FBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFDRCxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxlQUFlLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztBQUMzRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5hbHlzaXMgaGVscGVycyAobWluaW1hbCB5ZXQgZWZmZWN0aXZlLCB0ZXh0LWJhc2VkIHRvIGF2b2lkIGhlYXZ5IEFTVCBkZXBzKVxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCB7IGxpc3RGaWxlc1JlY3Vyc2l2ZSwgcmVhZEZpbGVTYWZlIH0gZnJvbSBcIi4vdXRpbHNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGlzU291cmNlRmlsZShwOiBzdHJpbmcpIHtcbiAgcmV0dXJuIC9cXC4odHN8dHN4fGpzfGpzeCkkLy50ZXN0KHApICYmICFwLmVuZHNXaXRoKFwiLmQudHNcIik7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNUZXN0RmlsZShwOiBzdHJpbmcpIHtcbiAgcmV0dXJuIC8oXFwudGVzdFxcLnxcXC5zcGVjXFwuKS8udGVzdChwKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3RFeHBvcnRzKGZpbGVDb250ZW50OiBzdHJpbmcpOiBzdHJpbmdbXSB7XG4gIGNvbnN0IG5hbWVzID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gIGNvbnN0IGV4cG9ydFJlID1cbiAgICAvKGV4cG9ydFxccysoPzpkZWZhdWx0XFxzKyk/KD86Y2xhc3N8ZnVuY3Rpb258Y29uc3R8bGV0fHZhcnxpbnRlcmZhY2V8dHlwZXxlbnVtKVxccyspKFtBLVphLXowLTlfXSspL2c7XG4gIGNvbnN0IG5hbWVkUmUgPSAvZXhwb3J0XFxzKlxceyhbXn1dKylcXH0vZztcbiAgbGV0IG06IFJlZ0V4cEV4ZWNBcnJheSB8IG51bGw7XG4gIHdoaWxlICgobSA9IGV4cG9ydFJlLmV4ZWMoZmlsZUNvbnRlbnQpKSkgbmFtZXMuYWRkKG1bMl0pO1xuICB3aGlsZSAoKG0gPSBuYW1lZFJlLmV4ZWMoZmlsZUNvbnRlbnQpKSkge1xuICAgIG1bMV1cbiAgICAgIC5zcGxpdChcIixcIilcbiAgICAgIC5tYXAoKHMpID0+IHMudHJpbSgpLnNwbGl0KFwiIGFzIFwiKVswXS50cmltKCkpXG4gICAgICAuZm9yRWFjaCgobikgPT4ge1xuICAgICAgICBpZiAobikgbmFtZXMuYWRkKG4pO1xuICAgICAgfSk7XG4gIH1cbiAgcmV0dXJuIFsuLi5uYW1lc10uc29ydCgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZXh0cmFjdERlY29yYXRvcnMoZmlsZUNvbnRlbnQ6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgY29uc3QgZGVjcyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICBjb25zdCBkZWNSZSA9IC9AKFtBLVphLXpfXVtBLVphLXowLTlfXSopL2c7XG4gIGxldCBtOiBSZWdFeHBFeGVjQXJyYXkgfCBudWxsO1xuICB3aGlsZSAoKG0gPSBkZWNSZS5leGVjKGZpbGVDb250ZW50KSkpIGRlY3MuYWRkKG1bMV0pO1xuICByZXR1cm4gWy4uLmRlY3NdLnNvcnQoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN1bW1hcml6ZVJlYWRtZShyZWFkbWU/OiBzdHJpbmcpIHtcbiAgaWYgKCFyZWFkbWUpIHJldHVybiB1bmRlZmluZWQ7XG4gIGNvbnN0IGxpbmVzID0gcmVhZG1lLnNwbGl0KC9cXHI/XFxuLykuZmlsdGVyKEJvb2xlYW4pO1xuICBjb25zdCB0aXRsZSA9XG4gICAgbGluZXMuZmluZCgobCkgPT4gL14jXFxzKy8udGVzdChsKSk/LnJlcGxhY2UoL14jXFxzKy8sIFwiXCIpIHx8IFwiUkVBRE1FXCI7XG4gIGNvbnN0IGJ1bGxldHMgPSBsaW5lcy5maWx0ZXIoKGwpID0+IC9eWy0qXVxccysvLnRlc3QobCkpLnNsaWNlKDAsIDIwKTtcbiAgcmV0dXJuIHsgdGl0bGUsIGJ1bGxldHMgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFuYWx5emVSZXBvKHJvb3Q6IHN0cmluZykge1xuICBjb25zdCBzcmMgPSBwYXRoLmpvaW4ocm9vdCwgXCJzcmNcIik7XG4gIGNvbnN0IHRlc3REaXIgPSBwYXRoLmpvaW4ocm9vdCwgXCJ0ZXN0c1wiKTtcbiAgY29uc3QgcmVhZG1lUGF0aCA9IHBhdGguam9pbihyb290LCBcIlJFQURNRS5tZFwiKTtcbiAgY29uc3QgcmVhZG1lID0gcmVhZEZpbGVTYWZlKHJlYWRtZVBhdGgpO1xuXG4gIGNvbnN0IGZpbGVzID0gZnMuZXhpc3RzU3luYyhzcmMpID8gbGlzdEZpbGVzUmVjdXJzaXZlKHNyYywgaXNTb3VyY2VGaWxlKSA6IFtdO1xuICBjb25zdCB0ZXN0RmlsZXMgPSBmcy5leGlzdHNTeW5jKHRlc3REaXIpXG4gICAgPyBsaXN0RmlsZXNSZWN1cnNpdmUodGVzdERpciwgKGYpID0+IGlzU291cmNlRmlsZShmKSAmJiBpc1Rlc3RGaWxlKGYpKVxuICAgIDogW107XG5cbiAgY29uc3QgYXBpOiBSZWNvcmQ8c3RyaW5nLCB7IGV4cG9ydHM6IHN0cmluZ1tdOyBkZWNvcmF0b3JzOiBzdHJpbmdbXSB9PiA9IHt9O1xuICBmb3IgKGNvbnN0IGYgb2YgZmlsZXMpIHtcbiAgICBjb25zdCBjb250ZW50ID0gcmVhZEZpbGVTYWZlKGYpIHx8IFwiXCI7XG4gICAgYXBpW3BhdGgucmVsYXRpdmUocm9vdCwgZildID0ge1xuICAgICAgZXhwb3J0czogZXh0cmFjdEV4cG9ydHMoY29udGVudCksXG4gICAgICBkZWNvcmF0b3JzOiBleHRyYWN0RGVjb3JhdG9ycyhjb250ZW50KSxcbiAgICB9O1xuICB9XG4gIGNvbnN0IHRlc3RzOiBSZWNvcmQ8c3RyaW5nLCB7IG1lbnRpb25zOiBzdHJpbmdbXSB9PiA9IHt9O1xuICBmb3IgKGNvbnN0IGYgb2YgdGVzdEZpbGVzKSB7XG4gICAgY29uc3QgY29udGVudCA9IHJlYWRGaWxlU2FmZShmKSB8fCBcIlwiO1xuICAgIGNvbnN0IG1lbnRpb25zID0gQXJyYXkuZnJvbShcbiAgICAgIG5ldyBTZXQoWy4uLmV4dHJhY3RFeHBvcnRzKGNvbnRlbnQpLCAuLi5leHRyYWN0RGVjb3JhdG9ycyhjb250ZW50KV0pXG4gICAgKS5zb3J0KCk7XG4gICAgdGVzdHNbcGF0aC5yZWxhdGl2ZShyb290LCBmKV0gPSB7IG1lbnRpb25zIH07XG4gIH1cbiAgcmV0dXJuIHsgZmlsZXMsIHRlc3RGaWxlcywgYXBpLCB0ZXN0cywgcmVhZG1lOiBzdW1tYXJpemVSZWFkbWUocmVhZG1lKSB9O1xufVxuIl19
|
package/lib/mcp/code.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export declare function isSourceFile(p: string): boolean;
|
|
2
|
-
export declare function isTestFile(p: string): boolean;
|
|
3
|
-
export declare function extractExports(fileContent: string): string[];
|
|
4
|
-
export declare function extractDecorators(fileContent: string): string[];
|
|
5
|
-
export declare function summarizeReadme(readme?: string): {
|
|
6
|
-
title: string;
|
|
7
|
-
bullets: string[];
|
|
8
|
-
} | undefined;
|
|
9
|
-
export declare function analyzeRepo(root: string): {
|
|
10
|
-
files: string[];
|
|
11
|
-
testFiles: string[];
|
|
12
|
-
api: Record<string, {
|
|
13
|
-
exports: string[];
|
|
14
|
-
decorators: string[];
|
|
15
|
-
}>;
|
|
16
|
-
tests: Record<string, {
|
|
17
|
-
mentions: string[];
|
|
18
|
-
}>;
|
|
19
|
-
readme: {
|
|
20
|
-
title: string;
|
|
21
|
-
bullets: string[];
|
|
22
|
-
} | undefined;
|
|
23
|
-
};
|