distill-mcp 0.6.0-beta
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/bin/cli.js +133 -0
- package/dist/analytics/session-tracker.d.ts +74 -0
- package/dist/analytics/session-tracker.d.ts.map +1 -0
- package/dist/analytics/session-tracker.js +123 -0
- package/dist/ast/benchmark.test.d.ts +7 -0
- package/dist/ast/benchmark.test.d.ts.map +1 -0
- package/dist/ast/benchmark.test.js +175 -0
- package/dist/ast/go/index.d.ts +9 -0
- package/dist/ast/go/index.d.ts.map +1 -0
- package/dist/ast/go/index.js +8 -0
- package/dist/ast/go/parser.d.ts +31 -0
- package/dist/ast/go/parser.d.ts.map +1 -0
- package/dist/ast/go/parser.js +428 -0
- package/dist/ast/go/parser.test.d.ts +5 -0
- package/dist/ast/go/parser.test.d.ts.map +1 -0
- package/dist/ast/go/parser.test.js +241 -0
- package/dist/ast/go/queries.d.ts +51 -0
- package/dist/ast/go/queries.d.ts.map +1 -0
- package/dist/ast/go/queries.js +114 -0
- package/dist/ast/go/utils.d.ts +66 -0
- package/dist/ast/go/utils.d.ts.map +1 -0
- package/dist/ast/go/utils.js +140 -0
- package/dist/ast/index.d.ts +39 -0
- package/dist/ast/index.d.ts.map +1 -0
- package/dist/ast/index.js +245 -0
- package/dist/ast/php/index.d.ts +9 -0
- package/dist/ast/php/index.d.ts.map +1 -0
- package/dist/ast/php/index.js +8 -0
- package/dist/ast/php/parser.d.ts +31 -0
- package/dist/ast/php/parser.d.ts.map +1 -0
- package/dist/ast/php/parser.js +388 -0
- package/dist/ast/php/parser.test.d.ts +5 -0
- package/dist/ast/php/parser.test.d.ts.map +1 -0
- package/dist/ast/php/parser.test.js +328 -0
- package/dist/ast/php/queries.d.ts +61 -0
- package/dist/ast/php/queries.d.ts.map +1 -0
- package/dist/ast/php/queries.js +117 -0
- package/dist/ast/php/utils.d.ts +83 -0
- package/dist/ast/php/utils.d.ts.map +1 -0
- package/dist/ast/php/utils.js +246 -0
- package/dist/ast/python/index.d.ts +9 -0
- package/dist/ast/python/index.d.ts.map +1 -0
- package/dist/ast/python/index.js +8 -0
- package/dist/ast/python/parser.d.ts +32 -0
- package/dist/ast/python/parser.d.ts.map +1 -0
- package/dist/ast/python/parser.js +422 -0
- package/dist/ast/python/parser.test.d.ts +5 -0
- package/dist/ast/python/parser.test.d.ts.map +1 -0
- package/dist/ast/python/parser.test.js +186 -0
- package/dist/ast/python/queries.d.ts +73 -0
- package/dist/ast/python/queries.d.ts.map +1 -0
- package/dist/ast/python/queries.js +137 -0
- package/dist/ast/python/utils.d.ts +63 -0
- package/dist/ast/python/utils.d.ts.map +1 -0
- package/dist/ast/python/utils.js +159 -0
- package/dist/ast/quick-scan.d.ts +40 -0
- package/dist/ast/quick-scan.d.ts.map +1 -0
- package/dist/ast/quick-scan.js +287 -0
- package/dist/ast/rust/index.d.ts +9 -0
- package/dist/ast/rust/index.d.ts.map +1 -0
- package/dist/ast/rust/index.js +8 -0
- package/dist/ast/rust/parser.d.ts +31 -0
- package/dist/ast/rust/parser.d.ts.map +1 -0
- package/dist/ast/rust/parser.js +416 -0
- package/dist/ast/rust/parser.test.d.ts +5 -0
- package/dist/ast/rust/parser.test.d.ts.map +1 -0
- package/dist/ast/rust/parser.test.js +329 -0
- package/dist/ast/rust/queries.d.ts +66 -0
- package/dist/ast/rust/queries.d.ts.map +1 -0
- package/dist/ast/rust/queries.js +132 -0
- package/dist/ast/rust/utils.d.ts +91 -0
- package/dist/ast/rust/utils.d.ts.map +1 -0
- package/dist/ast/rust/utils.js +254 -0
- package/dist/ast/swift/index.d.ts +10 -0
- package/dist/ast/swift/index.d.ts.map +1 -0
- package/dist/ast/swift/index.js +8 -0
- package/dist/ast/swift/parser.d.ts +31 -0
- package/dist/ast/swift/parser.d.ts.map +1 -0
- package/dist/ast/swift/parser.js +554 -0
- package/dist/ast/swift/parser.test.d.ts +5 -0
- package/dist/ast/swift/parser.test.d.ts.map +1 -0
- package/dist/ast/swift/parser.test.js +398 -0
- package/dist/ast/swift/queries.d.ts +71 -0
- package/dist/ast/swift/queries.d.ts.map +1 -0
- package/dist/ast/swift/queries.js +137 -0
- package/dist/ast/swift/utils.d.ts +94 -0
- package/dist/ast/swift/utils.d.ts.map +1 -0
- package/dist/ast/swift/utils.js +411 -0
- package/dist/ast/types.d.ts +96 -0
- package/dist/ast/types.d.ts.map +1 -0
- package/dist/ast/types.js +21 -0
- package/dist/ast/typescript.d.ts +24 -0
- package/dist/ast/typescript.d.ts.map +1 -0
- package/dist/ast/typescript.js +357 -0
- package/dist/cache/file-hash.d.ts +33 -0
- package/dist/cache/file-hash.d.ts.map +1 -0
- package/dist/cache/file-hash.js +59 -0
- package/dist/cache/index.d.ts +9 -0
- package/dist/cache/index.d.ts.map +1 -0
- package/dist/cache/index.js +8 -0
- package/dist/cache/smart-cache.d.ts +68 -0
- package/dist/cache/smart-cache.d.ts.map +1 -0
- package/dist/cache/smart-cache.js +266 -0
- package/dist/cache/types.d.ts +102 -0
- package/dist/cache/types.d.ts.map +1 -0
- package/dist/cache/types.js +6 -0
- package/dist/cli/analyze.d.ts +43 -0
- package/dist/cli/analyze.d.ts.map +1 -0
- package/dist/cli/analyze.js +250 -0
- package/dist/cli/doctor.d.ts +2 -0
- package/dist/cli/doctor.d.ts.map +1 -0
- package/dist/cli/doctor.js +127 -0
- package/dist/cli/hooks.d.ts +14 -0
- package/dist/cli/hooks.d.ts.map +1 -0
- package/dist/cli/hooks.js +229 -0
- package/dist/cli/index.d.ts +5 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +4 -0
- package/dist/cli/setup.d.ts +10 -0
- package/dist/cli/setup.d.ts.map +1 -0
- package/dist/cli/setup.js +117 -0
- package/dist/cli/utils.d.ts +30 -0
- package/dist/cli/utils.d.ts.map +1 -0
- package/dist/cli/utils.js +116 -0
- package/dist/compressors/config.d.ts +9 -0
- package/dist/compressors/config.d.ts.map +1 -0
- package/dist/compressors/config.js +183 -0
- package/dist/compressors/conversation.d.ts +109 -0
- package/dist/compressors/conversation.d.ts.map +1 -0
- package/dist/compressors/conversation.js +404 -0
- package/dist/compressors/diff.d.ts +35 -0
- package/dist/compressors/diff.d.ts.map +1 -0
- package/dist/compressors/diff.js +389 -0
- package/dist/compressors/generic.d.ts +9 -0
- package/dist/compressors/generic.d.ts.map +1 -0
- package/dist/compressors/generic.js +188 -0
- package/dist/compressors/index.d.ts +31 -0
- package/dist/compressors/index.d.ts.map +1 -0
- package/dist/compressors/index.js +82 -0
- package/dist/compressors/logs.d.ts +9 -0
- package/dist/compressors/logs.d.ts.map +1 -0
- package/dist/compressors/logs.js +245 -0
- package/dist/compressors/multifile.d.ts +106 -0
- package/dist/compressors/multifile.d.ts.map +1 -0
- package/dist/compressors/multifile.js +498 -0
- package/dist/compressors/semantic.d.ts +33 -0
- package/dist/compressors/semantic.d.ts.map +1 -0
- package/dist/compressors/semantic.js +233 -0
- package/dist/compressors/stacktrace.d.ts +9 -0
- package/dist/compressors/stacktrace.d.ts.map +1 -0
- package/dist/compressors/stacktrace.js +259 -0
- package/dist/compressors/types.d.ts +146 -0
- package/dist/compressors/types.d.ts.map +1 -0
- package/dist/compressors/types.js +6 -0
- package/dist/config/output-config.d.ts +56 -0
- package/dist/config/output-config.d.ts.map +1 -0
- package/dist/config/output-config.js +78 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +27 -0
- package/dist/middleware/chain.d.ts +49 -0
- package/dist/middleware/chain.d.ts.map +1 -0
- package/dist/middleware/chain.js +126 -0
- package/dist/middleware/index.d.ts +4 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +3 -0
- package/dist/middleware/logging.d.ts +8 -0
- package/dist/middleware/logging.d.ts.map +1 -0
- package/dist/middleware/logging.js +71 -0
- package/dist/middleware/types.d.ts +58 -0
- package/dist/middleware/types.d.ts.map +1 -0
- package/dist/middleware/types.js +7 -0
- package/dist/parsers/eslint.d.ts +8 -0
- package/dist/parsers/eslint.d.ts.map +1 -0
- package/dist/parsers/eslint.js +132 -0
- package/dist/parsers/generic.d.ts +8 -0
- package/dist/parsers/generic.d.ts.map +1 -0
- package/dist/parsers/generic.js +234 -0
- package/dist/parsers/index.d.ts +34 -0
- package/dist/parsers/index.d.ts.map +1 -0
- package/dist/parsers/index.js +216 -0
- package/dist/parsers/types.d.ts +84 -0
- package/dist/parsers/types.d.ts.map +1 -0
- package/dist/parsers/types.js +6 -0
- package/dist/parsers/typescript.d.ts +8 -0
- package/dist/parsers/typescript.d.ts.map +1 -0
- package/dist/parsers/typescript.js +107 -0
- package/dist/pipelines/definitions.d.ts +50 -0
- package/dist/pipelines/definitions.d.ts.map +1 -0
- package/dist/pipelines/definitions.js +206 -0
- package/dist/sandbox/executor.d.ts +12 -0
- package/dist/sandbox/executor.d.ts.map +1 -0
- package/dist/sandbox/executor.js +191 -0
- package/dist/sandbox/index.d.ts +11 -0
- package/dist/sandbox/index.d.ts.map +1 -0
- package/dist/sandbox/index.js +9 -0
- package/dist/sandbox/sandbox.test.d.ts +7 -0
- package/dist/sandbox/sandbox.test.d.ts.map +1 -0
- package/dist/sandbox/sandbox.test.js +202 -0
- package/dist/sandbox/sdk/analyze.d.ts +36 -0
- package/dist/sandbox/sdk/analyze.d.ts.map +1 -0
- package/dist/sandbox/sdk/analyze.js +413 -0
- package/dist/sandbox/sdk/analyze.test.d.ts +7 -0
- package/dist/sandbox/sdk/analyze.test.d.ts.map +1 -0
- package/dist/sandbox/sdk/analyze.test.js +191 -0
- package/dist/sandbox/sdk/code.d.ts +20 -0
- package/dist/sandbox/sdk/code.d.ts.map +1 -0
- package/dist/sandbox/sdk/code.js +104 -0
- package/dist/sandbox/sdk/compress.d.ts +23 -0
- package/dist/sandbox/sdk/compress.d.ts.map +1 -0
- package/dist/sandbox/sdk/compress.js +107 -0
- package/dist/sandbox/sdk/conversation.d.ts +148 -0
- package/dist/sandbox/sdk/conversation.d.ts.map +1 -0
- package/dist/sandbox/sdk/conversation.js +177 -0
- package/dist/sandbox/sdk/files.d.ts +29 -0
- package/dist/sandbox/sdk/files.d.ts.map +1 -0
- package/dist/sandbox/sdk/files.js +41 -0
- package/dist/sandbox/sdk/git.d.ts +37 -0
- package/dist/sandbox/sdk/git.d.ts.map +1 -0
- package/dist/sandbox/sdk/git.js +313 -0
- package/dist/sandbox/sdk/git.test.d.ts +8 -0
- package/dist/sandbox/sdk/git.test.d.ts.map +1 -0
- package/dist/sandbox/sdk/git.test.js +160 -0
- package/dist/sandbox/sdk/index.d.ts +16 -0
- package/dist/sandbox/sdk/index.d.ts.map +1 -0
- package/dist/sandbox/sdk/index.js +15 -0
- package/dist/sandbox/sdk/multifile.d.ts +63 -0
- package/dist/sandbox/sdk/multifile.d.ts.map +1 -0
- package/dist/sandbox/sdk/multifile.js +130 -0
- package/dist/sandbox/sdk/pipeline.d.ts +16 -0
- package/dist/sandbox/sdk/pipeline.d.ts.map +1 -0
- package/dist/sandbox/sdk/pipeline.js +454 -0
- package/dist/sandbox/sdk/pipeline.test.d.ts +7 -0
- package/dist/sandbox/sdk/pipeline.test.d.ts.map +1 -0
- package/dist/sandbox/sdk/pipeline.test.js +197 -0
- package/dist/sandbox/sdk/search.d.ts +36 -0
- package/dist/sandbox/sdk/search.d.ts.map +1 -0
- package/dist/sandbox/sdk/search.js +338 -0
- package/dist/sandbox/sdk/search.test.d.ts +7 -0
- package/dist/sandbox/sdk/search.test.d.ts.map +1 -0
- package/dist/sandbox/sdk/search.test.js +183 -0
- package/dist/sandbox/sdk/utils.d.ts +18 -0
- package/dist/sandbox/sdk/utils.d.ts.map +1 -0
- package/dist/sandbox/sdk/utils.js +24 -0
- package/dist/sandbox/security/code-analyzer.d.ts +15 -0
- package/dist/sandbox/security/code-analyzer.d.ts.map +1 -0
- package/dist/sandbox/security/code-analyzer.js +87 -0
- package/dist/sandbox/security/index.d.ts +6 -0
- package/dist/sandbox/security/index.d.ts.map +1 -0
- package/dist/sandbox/security/index.js +5 -0
- package/dist/sandbox/security/path-validator.d.ts +23 -0
- package/dist/sandbox/security/path-validator.d.ts.map +1 -0
- package/dist/sandbox/security/path-validator.js +113 -0
- package/dist/sandbox/types.d.ts +577 -0
- package/dist/sandbox/types.d.ts.map +1 -0
- package/dist/sandbox/types.js +14 -0
- package/dist/server.d.ts +36 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +133 -0
- package/dist/summarizers/build-logs.d.ts +11 -0
- package/dist/summarizers/build-logs.d.ts.map +1 -0
- package/dist/summarizers/build-logs.js +234 -0
- package/dist/summarizers/generic.d.ts +11 -0
- package/dist/summarizers/generic.d.ts.map +1 -0
- package/dist/summarizers/generic.js +93 -0
- package/dist/summarizers/index.d.ts +20 -0
- package/dist/summarizers/index.d.ts.map +1 -0
- package/dist/summarizers/index.js +43 -0
- package/dist/summarizers/server-logs.d.ts +11 -0
- package/dist/summarizers/server-logs.d.ts.map +1 -0
- package/dist/summarizers/server-logs.js +215 -0
- package/dist/summarizers/test-logs.d.ts +11 -0
- package/dist/summarizers/test-logs.d.ts.map +1 -0
- package/dist/summarizers/test-logs.js +258 -0
- package/dist/summarizers/types.d.ts +146 -0
- package/dist/summarizers/types.d.ts.map +1 -0
- package/dist/summarizers/types.js +21 -0
- package/dist/tools/analyze-build-output.d.ts +30 -0
- package/dist/tools/analyze-build-output.d.ts.map +1 -0
- package/dist/tools/analyze-build-output.js +45 -0
- package/dist/tools/analyze-context.d.ts +23 -0
- package/dist/tools/analyze-context.d.ts.map +1 -0
- package/dist/tools/analyze-context.js +78 -0
- package/dist/tools/auto-optimize.d.ts +9 -0
- package/dist/tools/auto-optimize.d.ts.map +1 -0
- package/dist/tools/auto-optimize.js +191 -0
- package/dist/tools/code-execute.d.ts +9 -0
- package/dist/tools/code-execute.d.ts.map +1 -0
- package/dist/tools/code-execute.js +84 -0
- package/dist/tools/code-skeleton.d.ts +33 -0
- package/dist/tools/code-skeleton.d.ts.map +1 -0
- package/dist/tools/code-skeleton.js +206 -0
- package/dist/tools/compress-context.d.ts +33 -0
- package/dist/tools/compress-context.d.ts.map +1 -0
- package/dist/tools/compress-context.js +64 -0
- package/dist/tools/context-budget.d.ts +43 -0
- package/dist/tools/context-budget.d.ts.map +1 -0
- package/dist/tools/context-budget.js +260 -0
- package/dist/tools/context-budget.test.d.ts +5 -0
- package/dist/tools/context-budget.test.d.ts.map +1 -0
- package/dist/tools/context-budget.test.js +219 -0
- package/dist/tools/conversation-compress.d.ts +46 -0
- package/dist/tools/conversation-compress.d.ts.map +1 -0
- package/dist/tools/conversation-compress.js +78 -0
- package/dist/tools/conversation-memory.d.ts +75 -0
- package/dist/tools/conversation-memory.d.ts.map +1 -0
- package/dist/tools/conversation-memory.js +289 -0
- package/dist/tools/deduplicate-errors.d.ts +30 -0
- package/dist/tools/deduplicate-errors.d.ts.map +1 -0
- package/dist/tools/deduplicate-errors.js +72 -0
- package/dist/tools/detect-retry-loop.d.ts +40 -0
- package/dist/tools/detect-retry-loop.d.ts.map +1 -0
- package/dist/tools/detect-retry-loop.js +212 -0
- package/dist/tools/diff-compress.d.ts +40 -0
- package/dist/tools/diff-compress.d.ts.map +1 -0
- package/dist/tools/diff-compress.js +94 -0
- package/dist/tools/discover-tools.d.ts +11 -0
- package/dist/tools/discover-tools.d.ts.map +1 -0
- package/dist/tools/discover-tools.js +163 -0
- package/dist/tools/dynamic-loader.d.ts +131 -0
- package/dist/tools/dynamic-loader.d.ts.map +1 -0
- package/dist/tools/dynamic-loader.js +378 -0
- package/dist/tools/dynamic-loader.test.d.ts +10 -0
- package/dist/tools/dynamic-loader.test.d.ts.map +1 -0
- package/dist/tools/dynamic-loader.test.js +164 -0
- package/dist/tools/lazy-mcp.d.ts +31 -0
- package/dist/tools/lazy-mcp.d.ts.map +1 -0
- package/dist/tools/lazy-mcp.js +151 -0
- package/dist/tools/lazy-mcp.test.d.ts +10 -0
- package/dist/tools/lazy-mcp.test.d.ts.map +1 -0
- package/dist/tools/lazy-mcp.test.js +172 -0
- package/dist/tools/multifile-compress.d.ts +36 -0
- package/dist/tools/multifile-compress.d.ts.map +1 -0
- package/dist/tools/multifile-compress.js +223 -0
- package/dist/tools/optimization-tips.d.ts +18 -0
- package/dist/tools/optimization-tips.d.ts.map +1 -0
- package/dist/tools/optimization-tips.js +133 -0
- package/dist/tools/registry.d.ts +70 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/registry.js +169 -0
- package/dist/tools/semantic-compress.d.ts +39 -0
- package/dist/tools/semantic-compress.d.ts.map +1 -0
- package/dist/tools/semantic-compress.js +113 -0
- package/dist/tools/semantic-compress.test.d.ts +5 -0
- package/dist/tools/semantic-compress.test.d.ts.map +1 -0
- package/dist/tools/semantic-compress.test.js +182 -0
- package/dist/tools/session-stats.d.ts +34 -0
- package/dist/tools/session-stats.d.ts.map +1 -0
- package/dist/tools/session-stats.js +194 -0
- package/dist/tools/set-output-config.d.ts +38 -0
- package/dist/tools/set-output-config.d.ts.map +1 -0
- package/dist/tools/set-output-config.js +122 -0
- package/dist/tools/smart-cache-tool.d.ts +38 -0
- package/dist/tools/smart-cache-tool.d.ts.map +1 -0
- package/dist/tools/smart-cache-tool.js +224 -0
- package/dist/tools/smart-file-read.d.ts +52 -0
- package/dist/tools/smart-file-read.d.ts.map +1 -0
- package/dist/tools/smart-file-read.js +481 -0
- package/dist/tools/smart-pipeline.d.ts +40 -0
- package/dist/tools/smart-pipeline.d.ts.map +1 -0
- package/dist/tools/smart-pipeline.js +295 -0
- package/dist/tools/summarize-logs.d.ts +36 -0
- package/dist/tools/summarize-logs.d.ts.map +1 -0
- package/dist/tools/summarize-logs.js +184 -0
- package/dist/tools/token-budget.test.d.ts +11 -0
- package/dist/tools/token-budget.test.d.ts.map +1 -0
- package/dist/tools/token-budget.test.js +275 -0
- package/dist/utils/bm25.d.ts +86 -0
- package/dist/utils/bm25.d.ts.map +1 -0
- package/dist/utils/bm25.js +153 -0
- package/dist/utils/bm25.test.d.ts +5 -0
- package/dist/utils/bm25.test.d.ts.map +1 -0
- package/dist/utils/bm25.test.js +156 -0
- package/dist/utils/command-normalizer.d.ts +39 -0
- package/dist/utils/command-normalizer.d.ts.map +1 -0
- package/dist/utils/command-normalizer.js +90 -0
- package/dist/utils/content-detector.d.ts +27 -0
- package/dist/utils/content-detector.d.ts.map +1 -0
- package/dist/utils/content-detector.js +127 -0
- package/dist/utils/embeddings.d.ts +54 -0
- package/dist/utils/embeddings.d.ts.map +1 -0
- package/dist/utils/embeddings.js +97 -0
- package/dist/utils/embeddings.test.d.ts +8 -0
- package/dist/utils/embeddings.test.d.ts.map +1 -0
- package/dist/utils/embeddings.test.js +96 -0
- package/dist/utils/error-normalizer.d.ts +39 -0
- package/dist/utils/error-normalizer.d.ts.map +1 -0
- package/dist/utils/error-normalizer.js +233 -0
- package/dist/utils/hybrid-search.d.ts +79 -0
- package/dist/utils/hybrid-search.d.ts.map +1 -0
- package/dist/utils/hybrid-search.js +146 -0
- package/dist/utils/hybrid-search.test.d.ts +5 -0
- package/dist/utils/hybrid-search.test.d.ts.map +1 -0
- package/dist/utils/hybrid-search.test.js +172 -0
- package/dist/utils/index.d.ts +13 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +12 -0
- package/dist/utils/language-detector.d.ts +27 -0
- package/dist/utils/language-detector.d.ts.map +1 -0
- package/dist/utils/language-detector.js +94 -0
- package/dist/utils/log-parser.d.ts +46 -0
- package/dist/utils/log-parser.d.ts.map +1 -0
- package/dist/utils/log-parser.js +287 -0
- package/dist/utils/output-estimator.d.ts +54 -0
- package/dist/utils/output-estimator.d.ts.map +1 -0
- package/dist/utils/output-estimator.js +119 -0
- package/dist/utils/output-estimator.test.d.ts +5 -0
- package/dist/utils/output-estimator.test.d.ts.map +1 -0
- package/dist/utils/output-estimator.test.js +115 -0
- package/dist/utils/output-similarity.d.ts +48 -0
- package/dist/utils/output-similarity.d.ts.map +1 -0
- package/dist/utils/output-similarity.js +140 -0
- package/dist/utils/project-detector.d.ts +16 -0
- package/dist/utils/project-detector.d.ts.map +1 -0
- package/dist/utils/project-detector.js +119 -0
- package/dist/utils/segment-scorer.d.ts +99 -0
- package/dist/utils/segment-scorer.d.ts.map +1 -0
- package/dist/utils/segment-scorer.js +148 -0
- package/dist/utils/signature-grouper.d.ts +58 -0
- package/dist/utils/signature-grouper.d.ts.map +1 -0
- package/dist/utils/signature-grouper.js +185 -0
- package/dist/utils/tfidf.d.ts +45 -0
- package/dist/utils/tfidf.d.ts.map +1 -0
- package/dist/utils/tfidf.js +204 -0
- package/dist/utils/tfidf.test.d.ts +5 -0
- package/dist/utils/tfidf.test.d.ts.map +1 -0
- package/dist/utils/tfidf.test.js +115 -0
- package/dist/utils/token-counter.d.ts +35 -0
- package/dist/utils/token-counter.d.ts.map +1 -0
- package/dist/utils/token-counter.js +83 -0
- package/dist/utils/toon-serializer.d.ts +120 -0
- package/dist/utils/toon-serializer.d.ts.map +1 -0
- package/dist/utils/toon-serializer.js +472 -0
- package/dist/utils/toon-serializer.test.d.ts +7 -0
- package/dist/utils/toon-serializer.test.d.ts.map +1 -0
- package/dist/utils/toon-serializer.test.js +290 -0
- package/package.json +63 -0
- package/scripts/install.ps1 +133 -0
- package/scripts/install.sh +183 -0
- package/scripts/pre-commit-hook.sh +86 -0
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rust Parser Utilities
|
|
3
|
+
*
|
|
4
|
+
* Helper functions for converting Tree-sitter nodes to CodeElements
|
|
5
|
+
* and extracting Rust-specific constructs.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Get line number from a Tree-sitter node (1-indexed)
|
|
9
|
+
*/
|
|
10
|
+
export function getLineNumber(node) {
|
|
11
|
+
return node.startPosition.row + 1;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Get end line number from a Tree-sitter node (1-indexed)
|
|
15
|
+
*/
|
|
16
|
+
export function getEndLineNumber(node) {
|
|
17
|
+
return node.endPosition.row + 1;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Extract Rust doc comment from above a declaration
|
|
21
|
+
* Rust uses /// and //! for doc comments, or block doc comments
|
|
22
|
+
*/
|
|
23
|
+
export function extractRustDoc(node, lines) {
|
|
24
|
+
const startLine = node.startPosition.row;
|
|
25
|
+
const comments = [];
|
|
26
|
+
// Look for doc comments above the node
|
|
27
|
+
// Skip attributes like #[derive(...)] and continue looking
|
|
28
|
+
for (let i = startLine - 1; i >= 0; i--) {
|
|
29
|
+
const line = lines[i]?.trim();
|
|
30
|
+
if (!line) {
|
|
31
|
+
// Empty line - continue looking
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
else if (line.startsWith("///")) {
|
|
35
|
+
// Outer doc comment
|
|
36
|
+
comments.unshift(line.slice(3).trim());
|
|
37
|
+
}
|
|
38
|
+
else if (line.startsWith("//!")) {
|
|
39
|
+
// Inner doc comment (module-level)
|
|
40
|
+
comments.unshift(line.slice(3).trim());
|
|
41
|
+
}
|
|
42
|
+
else if (line.startsWith("#[") || line.startsWith("#![")) {
|
|
43
|
+
// Attribute - skip and continue looking for doc comments
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
else if (line.startsWith("//")) {
|
|
47
|
+
// Regular comment - skip and continue
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
// Something else (code) - stop
|
|
52
|
+
break;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return comments.length > 0 ? comments.join("\n") : undefined;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Check if a node has a visibility modifier (pub, pub(crate), etc.)
|
|
59
|
+
*/
|
|
60
|
+
export function hasVisibility(node) {
|
|
61
|
+
const visibilityNode = node.childForFieldName("visibility_modifier");
|
|
62
|
+
if (visibilityNode)
|
|
63
|
+
return true;
|
|
64
|
+
// Also check first child for visibility_modifier
|
|
65
|
+
for (const child of node.children) {
|
|
66
|
+
if (child.type === "visibility_modifier") {
|
|
67
|
+
return true;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Get visibility string from a node
|
|
74
|
+
*/
|
|
75
|
+
export function getVisibility(node) {
|
|
76
|
+
for (const child of node.children) {
|
|
77
|
+
if (child.type === "visibility_modifier") {
|
|
78
|
+
return child.text;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return undefined;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Check if a function is async
|
|
85
|
+
*/
|
|
86
|
+
export function isAsyncFn(node) {
|
|
87
|
+
// Check for async keyword in function modifiers
|
|
88
|
+
for (const child of node.children) {
|
|
89
|
+
if (child.type === "async") {
|
|
90
|
+
return true;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
// Also check the text for async keyword (may have pub async, etc.)
|
|
94
|
+
const text = node.text.trimStart();
|
|
95
|
+
// Match patterns like "async fn", "pub async fn", "pub(crate) async fn"
|
|
96
|
+
return /^(?:pub(?:\([^)]*\))?\s+)?async\s+fn\s/.test(text);
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Get function signature from a function_item node
|
|
100
|
+
*/
|
|
101
|
+
export function getFunctionSignature(node) {
|
|
102
|
+
const nameNode = node.childForFieldName("name");
|
|
103
|
+
const paramsNode = node.childForFieldName("parameters");
|
|
104
|
+
const returnTypeNode = node.childForFieldName("return_type");
|
|
105
|
+
const visibility = getVisibility(node);
|
|
106
|
+
const isAsync = isAsyncFn(node);
|
|
107
|
+
const name = nameNode?.text ?? "unknown";
|
|
108
|
+
const params = paramsNode?.text ?? "()";
|
|
109
|
+
const returnType = returnTypeNode ? ` -> ${returnTypeNode.text}` : "";
|
|
110
|
+
const prefix = [visibility, isAsync ? "async" : null, "fn"]
|
|
111
|
+
.filter(Boolean)
|
|
112
|
+
.join(" ");
|
|
113
|
+
return `${prefix} ${name}${params}${returnType}`;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Get struct signature
|
|
117
|
+
*/
|
|
118
|
+
export function getStructSignature(node) {
|
|
119
|
+
const nameNode = node.childForFieldName("name");
|
|
120
|
+
const visibility = getVisibility(node);
|
|
121
|
+
const name = nameNode?.text ?? "unknown";
|
|
122
|
+
const prefix = [visibility, "struct"].filter(Boolean).join(" ");
|
|
123
|
+
return `${prefix} ${name}`;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Get enum signature
|
|
127
|
+
*/
|
|
128
|
+
export function getEnumSignature(node) {
|
|
129
|
+
const nameNode = node.childForFieldName("name");
|
|
130
|
+
const visibility = getVisibility(node);
|
|
131
|
+
const name = nameNode?.text ?? "unknown";
|
|
132
|
+
const prefix = [visibility, "enum"].filter(Boolean).join(" ");
|
|
133
|
+
return `${prefix} ${name}`;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Get trait signature
|
|
137
|
+
*/
|
|
138
|
+
export function getTraitSignature(node) {
|
|
139
|
+
const nameNode = node.childForFieldName("name");
|
|
140
|
+
const visibility = getVisibility(node);
|
|
141
|
+
const name = nameNode?.text ?? "unknown";
|
|
142
|
+
const prefix = [visibility, "trait"].filter(Boolean).join(" ");
|
|
143
|
+
return `${prefix} ${name}`;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Get impl block signature
|
|
147
|
+
*/
|
|
148
|
+
export function getImplSignature(node) {
|
|
149
|
+
const typeNode = node.childForFieldName("type");
|
|
150
|
+
const traitNode = node.childForFieldName("trait");
|
|
151
|
+
const typeName = typeNode?.text ?? "unknown";
|
|
152
|
+
if (traitNode) {
|
|
153
|
+
return `impl ${traitNode.text} for ${typeName}`;
|
|
154
|
+
}
|
|
155
|
+
return `impl ${typeName}`;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Get the type name from an impl block
|
|
159
|
+
*/
|
|
160
|
+
export function getImplTypeName(node) {
|
|
161
|
+
const typeNode = node.childForFieldName("type");
|
|
162
|
+
return typeNode?.text ?? "unknown";
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Get the trait name from an impl block (if implementing a trait)
|
|
166
|
+
*/
|
|
167
|
+
export function getImplTraitName(node) {
|
|
168
|
+
const traitNode = node.childForFieldName("trait");
|
|
169
|
+
return traitNode?.text;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Extract the use path from a use_declaration
|
|
173
|
+
*/
|
|
174
|
+
export function getUsePath(node) {
|
|
175
|
+
// The use path is typically the text minus "use " and ";"
|
|
176
|
+
const text = node.text.trim();
|
|
177
|
+
// Remove "use " prefix and trailing ";"
|
|
178
|
+
let path = text;
|
|
179
|
+
if (path.startsWith("use ")) {
|
|
180
|
+
path = path.slice(4);
|
|
181
|
+
}
|
|
182
|
+
if (path.endsWith(";")) {
|
|
183
|
+
path = path.slice(0, -1);
|
|
184
|
+
}
|
|
185
|
+
return path.trim();
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Get the short name from a use path
|
|
189
|
+
* e.g., "std::collections::HashMap" -> "HashMap"
|
|
190
|
+
*/
|
|
191
|
+
export function getUseShortName(usePath) {
|
|
192
|
+
// Handle "as Alias" syntax
|
|
193
|
+
const asMatch = usePath.match(/\s+as\s+(\w+)\s*$/);
|
|
194
|
+
if (asMatch) {
|
|
195
|
+
return asMatch[1];
|
|
196
|
+
}
|
|
197
|
+
// Handle brace syntax: use std::{A, B} or use std::io::{self, Read}
|
|
198
|
+
const braceMatch = usePath.match(/::?\{(.+)\}\s*$/);
|
|
199
|
+
if (braceMatch) {
|
|
200
|
+
const items = braceMatch[1].split(",").map((s) => s.trim());
|
|
201
|
+
// Return first non-self item or the full set
|
|
202
|
+
const nonSelf = items.filter((i) => i !== "self");
|
|
203
|
+
if (nonSelf.length === 1) {
|
|
204
|
+
return nonSelf[0];
|
|
205
|
+
}
|
|
206
|
+
return `{${items.join(", ")}}`;
|
|
207
|
+
}
|
|
208
|
+
// Handle glob: use std::*
|
|
209
|
+
if (usePath.endsWith("::*")) {
|
|
210
|
+
const parts = usePath.slice(0, -3).split("::");
|
|
211
|
+
return `${parts[parts.length - 1]}::*`;
|
|
212
|
+
}
|
|
213
|
+
// Simple path: use std::collections::HashMap
|
|
214
|
+
const parts = usePath.split("::");
|
|
215
|
+
return parts[parts.length - 1] ?? usePath;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Get const/static signature
|
|
219
|
+
*/
|
|
220
|
+
export function getConstSignature(node, kind) {
|
|
221
|
+
const nameNode = node.childForFieldName("name");
|
|
222
|
+
const typeNode = node.childForFieldName("type");
|
|
223
|
+
const visibility = getVisibility(node);
|
|
224
|
+
const name = nameNode?.text ?? "unknown";
|
|
225
|
+
const typePart = typeNode ? `: ${typeNode.text}` : "";
|
|
226
|
+
const prefix = [visibility, kind].filter(Boolean).join(" ");
|
|
227
|
+
return `${prefix} ${name}${typePart}`;
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Get type alias signature
|
|
231
|
+
*/
|
|
232
|
+
export function getTypeAliasSignature(node) {
|
|
233
|
+
const nameNode = node.childForFieldName("name");
|
|
234
|
+
const visibility = getVisibility(node);
|
|
235
|
+
const name = nameNode?.text ?? "unknown";
|
|
236
|
+
const prefix = [visibility, "type"].filter(Boolean).join(" ");
|
|
237
|
+
return `${prefix} ${name}`;
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Create a CodeElement from a Tree-sitter node
|
|
241
|
+
*/
|
|
242
|
+
export function createCodeElement(type, name, node, options) {
|
|
243
|
+
return {
|
|
244
|
+
type,
|
|
245
|
+
name,
|
|
246
|
+
startLine: getLineNumber(node),
|
|
247
|
+
endLine: getEndLineNumber(node),
|
|
248
|
+
signature: options?.signature,
|
|
249
|
+
documentation: options?.documentation,
|
|
250
|
+
isAsync: options?.isAsync,
|
|
251
|
+
isExported: options?.isExported,
|
|
252
|
+
parent: options?.parent,
|
|
253
|
+
};
|
|
254
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Swift AST Parser Module
|
|
3
|
+
*
|
|
4
|
+
* Exports all Swift parsing functionality.
|
|
5
|
+
*/
|
|
6
|
+
export { swiftTreeSitterParser, parseSwift, parseSwiftAsync, extractSwiftElement, searchSwiftElements, initSwiftParser, } from "./parser.js";
|
|
7
|
+
export { QUERIES } from "./queries.js";
|
|
8
|
+
export { getLineNumber, getEndLineNumber, extractSwiftDoc, getAccessLevel, isPublic, isAsync, isStatic, getFunctionSignature, getMethodSignature, getClassSignature, getStructSignature, getProtocolSignature, getEnumSignature, getExtensionSignature, getTypealiasSignature, getImportPath, getVariableSignature, createCodeElement, } from "./utils.js";
|
|
9
|
+
export type { SwiftAccessLevel } from "./utils.js";
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ast/swift/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,qBAAqB,EACrB,UAAU,EACV,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,GAChB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,aAAa,EACb,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Swift AST Parser Module
|
|
3
|
+
*
|
|
4
|
+
* Exports all Swift parsing functionality.
|
|
5
|
+
*/
|
|
6
|
+
export { swiftTreeSitterParser, parseSwift, parseSwiftAsync, extractSwiftElement, searchSwiftElements, initSwiftParser, } from "./parser.js";
|
|
7
|
+
export { QUERIES } from "./queries.js";
|
|
8
|
+
export { getLineNumber, getEndLineNumber, extractSwiftDoc, getAccessLevel, isPublic, isAsync, isStatic, getFunctionSignature, getMethodSignature, getClassSignature, getStructSignature, getProtocolSignature, getEnumSignature, getExtensionSignature, getTypealiasSignature, getImportPath, getVariableSignature, createCodeElement, } from "./utils.js";
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Swift Tree-sitter Parser
|
|
3
|
+
*
|
|
4
|
+
* AST parser for Swift using Tree-sitter for accurate code analysis.
|
|
5
|
+
*/
|
|
6
|
+
import type { CodeElement, FileStructure, ExtractedContent, ExtractionTarget, ExtractionOptions, LanguageParser } from "../types.js";
|
|
7
|
+
/**
|
|
8
|
+
* Parse Swift content and extract structure
|
|
9
|
+
*/
|
|
10
|
+
export declare function parseSwift(content: string): FileStructure;
|
|
11
|
+
/**
|
|
12
|
+
* Async version of parseSwift
|
|
13
|
+
*/
|
|
14
|
+
export declare function parseSwiftAsync(content: string): Promise<FileStructure>;
|
|
15
|
+
/**
|
|
16
|
+
* Extract a specific element from Swift code
|
|
17
|
+
*/
|
|
18
|
+
export declare function extractSwiftElement(content: string, target: ExtractionTarget, options: ExtractionOptions): Promise<ExtractedContent | null>;
|
|
19
|
+
/**
|
|
20
|
+
* Search for elements matching a query
|
|
21
|
+
*/
|
|
22
|
+
export declare function searchSwiftElements(content: string, query: string): Promise<CodeElement[]>;
|
|
23
|
+
/**
|
|
24
|
+
* LanguageParser implementation for Swift
|
|
25
|
+
*/
|
|
26
|
+
export declare const swiftTreeSitterParser: LanguageParser;
|
|
27
|
+
/**
|
|
28
|
+
* Initialize the Swift parser
|
|
29
|
+
*/
|
|
30
|
+
export declare function initSwiftParser(): Promise<void>;
|
|
31
|
+
//# sourceMappingURL=parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../src/ast/swift/parser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EAEjB,cAAc,EACf,MAAM,aAAa,CAAC;AA8DrB;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,CAWzD;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAW7E;AAmVD;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAoElC;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAwBhG;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,cAmHnC,CAAC;AAEF;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAErD"}
|