gitnexus 1.6.10-rc.99 → 1.6.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +177 -18
- package/dist/_shared/graph/types.d.ts +21 -2
- package/dist/_shared/graph/types.d.ts.map +1 -1
- package/dist/_shared/index.d.ts +3 -3
- package/dist/_shared/index.d.ts.map +1 -1
- package/dist/_shared/index.js +1 -1
- package/dist/_shared/index.js.map +1 -1
- package/dist/_shared/integrations/circuit-breaker.d.ts.map +1 -1
- package/dist/_shared/integrations/circuit-breaker.js.map +1 -1
- package/dist/_shared/integrations/resilient-fetch.d.ts +16 -0
- package/dist/_shared/integrations/resilient-fetch.d.ts.map +1 -1
- package/dist/_shared/integrations/resilient-fetch.js +19 -7
- package/dist/_shared/integrations/resilient-fetch.js.map +1 -1
- package/dist/_shared/language-detection.d.ts.map +1 -1
- package/dist/_shared/lbug/schema-constants.d.ts +2 -2
- package/dist/_shared/lbug/schema-constants.d.ts.map +1 -1
- package/dist/_shared/lbug/schema-constants.js +3 -0
- package/dist/_shared/lbug/schema-constants.js.map +1 -1
- package/dist/_shared/scope-resolution/evidence-weights.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/finalize-algorithm.d.ts +5 -0
- package/dist/_shared/scope-resolution/finalize-algorithm.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/finalize-algorithm.js +315 -36
- package/dist/_shared/scope-resolution/finalize-algorithm.js.map +1 -1
- package/dist/_shared/scope-resolution/reference-site.d.ts +115 -0
- package/dist/_shared/scope-resolution/reference-site.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/registries/field-registry.js.map +1 -1
- package/dist/_shared/scope-resolution/registries/lookup-core.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/registries/lookup-core.js +58 -2
- package/dist/_shared/scope-resolution/registries/lookup-core.js.map +1 -1
- package/dist/_shared/scope-resolution/registries/method-registry.js.map +1 -1
- package/dist/_shared/scope-resolution/scope-tree.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/scope-tree.js.map +1 -1
- package/dist/_shared/scope-resolution/symbol-definition.d.ts +47 -0
- package/dist/_shared/scope-resolution/symbol-definition.d.ts.map +1 -1
- package/dist/_shared/scope-resolution/types.d.ts +278 -3
- package/dist/_shared/scope-resolution/types.d.ts.map +1 -1
- package/dist/cli/ai-context.d.ts +3 -2
- package/dist/cli/ai-context.js +71 -16
- package/dist/cli/analyze-config.d.ts +1 -1
- package/dist/cli/analyze-options.d.ts +131 -0
- package/dist/cli/analyze-options.js +1 -0
- package/dist/cli/analyze.d.ts +21 -113
- package/dist/cli/analyze.js +172 -29
- package/dist/cli/cli-message.d.ts +1 -1
- package/dist/cli/detect-changes-format.js +19 -2
- package/dist/cli/doctor.d.ts +12 -0
- package/dist/cli/doctor.js +32 -5
- package/dist/cli/editor-targets.js +6 -0
- package/dist/cli/eval-server.js +2 -1
- package/dist/cli/format-symbol.d.ts +15 -0
- package/dist/cli/format-symbol.js +17 -0
- package/dist/cli/generated-skill.d.ts +17 -0
- package/dist/cli/generated-skill.js +1 -0
- package/dist/cli/group.js +229 -21
- package/dist/cli/help-i18n.js +1 -2
- package/dist/cli/i18n/en.d.ts +11 -9
- package/dist/cli/i18n/en.js +13 -9
- package/dist/cli/i18n/resources.d.ts +15 -11
- package/dist/cli/i18n/zh-CN.d.ts +4 -2
- package/dist/cli/i18n/zh-CN.js +11 -9
- package/dist/cli/index.js +8 -4
- package/dist/cli/resolve-invocation.d.ts +7 -3
- package/dist/cli/resolve-invocation.js +7 -3
- package/dist/cli/setup.js +4 -3
- package/dist/cli/skill-gen.d.ts +1 -6
- package/dist/cli/tool.d.ts +1 -0
- package/dist/cli/tool.js +74 -17
- package/dist/cli/wiki.js +53 -10
- package/dist/config/ignore-service.d.ts +2 -0
- package/dist/config/ignore-service.js +54 -13
- package/dist/core/analyzer-identity.d.ts +80 -0
- package/dist/core/analyzer-identity.js +364 -26
- package/dist/core/augmentation/engine.js +86 -71
- package/dist/core/embedding-checkpoint.d.ts +143 -0
- package/dist/core/embedding-checkpoint.js +221 -0
- package/dist/core/embedding-count.d.ts +61 -0
- package/dist/core/embedding-count.js +69 -0
- package/dist/core/embeddings/ast-utils.js +9 -1
- package/dist/core/embeddings/embedding-pipeline.d.ts +8 -0
- package/dist/core/embeddings/embedding-pipeline.js +253 -14
- package/dist/core/embeddings/http-client.d.ts +5 -0
- package/dist/core/embeddings/http-client.js +142 -27
- package/dist/core/graph/graph.js +3 -0
- package/dist/core/graph/import-cycles.d.ts +194 -3
- package/dist/core/graph/import-cycles.js +522 -73
- package/dist/core/graph/types.d.ts +18 -0
- package/dist/core/group/bridge-db.d.ts +204 -1
- package/dist/core/group/bridge-db.js +401 -28
- package/dist/core/group/completeness.d.ts +130 -0
- package/dist/core/group/completeness.js +83 -0
- package/dist/core/group/config-parser.js +0 -5
- package/dist/core/group/cross-impact.d.ts +46 -1
- package/dist/core/group/cross-impact.js +220 -19
- package/dist/core/group/cross-trace.d.ts +32 -11
- package/dist/core/group/cross-trace.js +114 -20
- package/dist/core/group/extractors/http-patterns/java.js +278 -22
- package/dist/core/group/extractors/http-patterns/node.js +332 -216
- package/dist/core/group/extractors/http-patterns/types.d.ts +8 -0
- package/dist/core/group/extractors/http-route-extractor.d.ts +1 -0
- package/dist/core/group/extractors/http-route-extractor.js +122 -48
- package/dist/core/group/extractors/include-extractor.js +20 -2
- package/dist/core/group/extractors/manifest-extractor.d.ts +1 -1
- package/dist/core/group/extractors/manifest-extractor.js +7 -7
- package/dist/core/group/extractors/python-workspace-extractor.js +5 -2
- package/dist/core/group/group-lock.d.ts +31 -0
- package/dist/core/group/group-lock.js +166 -0
- package/dist/core/group/service.js +297 -16
- package/dist/core/group/storage.d.ts +3 -0
- package/dist/core/group/storage.js +7 -39
- package/dist/core/group/sync.d.ts +49 -3
- package/dist/core/group/sync.js +0 -0
- package/dist/core/group/types.d.ts +183 -8
- package/dist/core/group/types.js +28 -1
- package/dist/core/incremental/subgraph-extract.d.ts +9 -6
- package/dist/core/incremental/subgraph-extract.js +33 -10
- package/dist/core/index-freshness.d.ts +77 -2
- package/dist/core/index-freshness.js +109 -2
- package/dist/core/ingestion/call-processor.d.ts +13 -1
- package/dist/core/ingestion/call-processor.js +110 -3
- package/dist/core/ingestion/cfg/callee-cell-format.d.ts +42 -0
- package/dist/core/ingestion/cfg/callee-cell-format.js +42 -0
- package/dist/core/ingestion/cfg/emit.d.ts +8 -23
- package/dist/core/ingestion/cfg/emit.js +9 -23
- package/dist/core/ingestion/class-extractors/configs/go.js +10 -5
- package/dist/core/ingestion/cluster-enricher.js +8 -4
- package/dist/core/ingestion/community-processor.d.ts +21 -3
- package/dist/core/ingestion/community-processor.js +81 -82
- package/dist/core/ingestion/di-extractors/index.d.ts +9 -33
- package/dist/core/ingestion/di-extractors/spring.d.ts +1 -1
- package/dist/core/ingestion/di-extractors/spring.js +8 -1
- package/dist/core/ingestion/di-extractors/types.d.ts +60 -0
- package/dist/core/ingestion/di-extractors/types.js +15 -0
- package/dist/core/ingestion/filesystem-walker.js +30 -14
- package/dist/core/ingestion/finalize-orchestrator.js +1 -0
- package/dist/core/ingestion/frameworks/spring/analysis-features.d.ts +6 -0
- package/dist/core/ingestion/frameworks/spring/analysis-features.js +35 -1
- package/dist/core/ingestion/frameworks/spring/annotation-arguments.d.ts +13 -0
- package/dist/core/ingestion/frameworks/spring/annotation-arguments.js +227 -0
- package/dist/core/ingestion/frameworks/spring/aop-candidates.d.ts +15 -0
- package/dist/core/ingestion/frameworks/spring/aop-candidates.js +85 -0
- package/dist/core/ingestion/frameworks/spring/aop.d.ts +118 -0
- package/dist/core/ingestion/frameworks/spring/aop.js +476 -0
- package/dist/core/ingestion/frameworks/spring/auto-configuration.d.ts +8 -0
- package/dist/core/ingestion/frameworks/spring/auto-configuration.js +16 -0
- package/dist/core/ingestion/frameworks/spring/bean-catalog.js +1 -0
- package/dist/core/ingestion/frameworks/spring/bean-factories.d.ts +33 -0
- package/dist/core/ingestion/frameworks/spring/bean-factories.js +65 -0
- package/dist/core/ingestion/frameworks/spring/conditionals.d.ts +25 -0
- package/dist/core/ingestion/frameworks/spring/conditionals.js +319 -0
- package/dist/core/ingestion/frameworks/spring/di-metadata.d.ts +3 -0
- package/dist/core/ingestion/frameworks/spring/di-metadata.js +162 -13
- package/dist/core/ingestion/frameworks/spring/non-http-handlers.d.ts +28 -0
- package/dist/core/ingestion/frameworks/spring/non-http-handlers.js +152 -0
- package/dist/core/ingestion/frameworks/spring/resource-injection.d.ts +5 -0
- package/dist/core/ingestion/frameworks/spring/resource-injection.js +91 -0
- package/dist/core/ingestion/import-resolvers/configs/csharp.js +5 -1
- package/dist/core/ingestion/import-resolvers/configs/swift.js +13 -0
- package/dist/core/ingestion/import-resolvers/csharp.d.ts +9 -1
- package/dist/core/ingestion/import-resolvers/csharp.js +234 -27
- package/dist/core/ingestion/import-resolvers/go.d.ts +11 -1
- package/dist/core/ingestion/import-resolvers/go.js +44 -17
- package/dist/core/ingestion/import-resolvers/jvm.d.ts +2 -2
- package/dist/core/ingestion/import-resolvers/node-workspace-packages.d.ts +90 -0
- package/dist/core/ingestion/import-resolvers/node-workspace-packages.js +429 -0
- package/dist/core/ingestion/import-resolvers/package-dir-index.d.ts +124 -0
- package/dist/core/ingestion/import-resolvers/package-dir-index.js +223 -0
- package/dist/core/ingestion/import-resolvers/pass-cache.d.ts +50 -0
- package/dist/core/ingestion/import-resolvers/pass-cache.js +60 -0
- package/dist/core/ingestion/import-resolvers/per-file-set.d.ts +71 -0
- package/dist/core/ingestion/import-resolvers/per-file-set.js +11 -0
- package/dist/core/ingestion/import-resolvers/php.d.ts +1 -1
- package/dist/core/ingestion/import-resolvers/php.js +65 -19
- package/dist/core/ingestion/import-resolvers/python-file-index.d.ts +201 -0
- package/dist/core/ingestion/import-resolvers/python-file-index.js +302 -0
- package/dist/core/ingestion/import-resolvers/python.js +25 -6
- package/dist/core/ingestion/import-resolvers/ruby.d.ts +1 -1
- package/dist/core/ingestion/import-resolvers/rust.d.ts +2 -2
- package/dist/core/ingestion/import-resolvers/standard.d.ts +1 -1
- package/dist/core/ingestion/import-resolvers/types.d.ts +1 -12
- package/dist/core/ingestion/import-resolvers/utils.d.ts +65 -6
- package/dist/core/ingestion/import-resolvers/utils.js +215 -36
- package/dist/core/ingestion/import-resolvers/workspace-file-index.d.ts +72 -0
- package/dist/core/ingestion/import-resolvers/workspace-file-index.js +58 -0
- package/dist/core/ingestion/language-config.d.ts +29 -1
- package/dist/core/ingestion/language-config.js +110 -35
- package/dist/core/ingestion/language-provider.d.ts +209 -7
- package/dist/core/ingestion/language-provider.js +37 -0
- package/dist/core/ingestion/languages/c/captures.js +7 -0
- package/dist/core/ingestion/languages/c/import-target.js +12 -16
- package/dist/core/ingestion/languages/c/scope-resolver.js +20 -19
- package/dist/core/ingestion/languages/c/static-linkage.js +12 -16
- package/dist/core/ingestion/languages/c-cpp.js +13 -0
- package/dist/core/ingestion/languages/cobol/scope-resolver.js +27 -20
- package/dist/core/ingestion/languages/cobol.js +13 -0
- package/dist/core/ingestion/languages/cpp/adl.d.ts +2 -2
- package/dist/core/ingestion/languages/cpp/adl.js +67 -44
- package/dist/core/ingestion/languages/cpp/captures.js +14 -2
- package/dist/core/ingestion/languages/cpp/file-local-linkage.js +11 -15
- package/dist/core/ingestion/languages/cpp/inline-namespaces.d.ts +28 -8
- package/dist/core/ingestion/languages/cpp/inline-namespaces.js +242 -68
- package/dist/core/ingestion/languages/cpp/interpret.d.ts +2 -0
- package/dist/core/ingestion/languages/cpp/interpret.js +126 -6
- package/dist/core/ingestion/languages/cpp/query.js +106 -0
- package/dist/core/ingestion/languages/cpp/scope-resolver.js +48 -20
- package/dist/core/ingestion/languages/csharp/accessor-unwrap.d.ts +2 -15
- package/dist/core/ingestion/languages/csharp/accessor-unwrap.js +18 -10
- package/dist/core/ingestion/languages/csharp/captures.js +19 -0
- package/dist/core/ingestion/languages/csharp/import-target.js +46 -72
- package/dist/core/ingestion/languages/csharp/namespace-siblings.js +5 -1
- package/dist/core/ingestion/languages/csharp/query.js +25 -5
- package/dist/core/ingestion/languages/csharp/scope-resolver.js +75 -2
- package/dist/core/ingestion/languages/dart/captures.d.ts +10 -0
- package/dist/core/ingestion/languages/dart/captures.js +598 -16
- package/dist/core/ingestion/languages/dart/import-target.js +32 -9
- package/dist/core/ingestion/languages/dart/index.d.ts +1 -1
- package/dist/core/ingestion/languages/dart/index.js +1 -1
- package/dist/core/ingestion/languages/dart/query.js +98 -1
- package/dist/core/ingestion/languages/dart/scope-resolver.js +14 -3
- package/dist/core/ingestion/languages/dart/simple-hooks.js +9 -0
- package/dist/core/ingestion/languages/dart.js +6 -1
- package/dist/core/ingestion/languages/go/captures.js +108 -3
- package/dist/core/ingestion/languages/go/generic-type-parameters.d.ts +31 -0
- package/dist/core/ingestion/languages/go/generic-type-parameters.js +140 -0
- package/dist/core/ingestion/languages/go/import-target.d.ts +3 -10
- package/dist/core/ingestion/languages/go/import-target.js +34 -30
- package/dist/core/ingestion/languages/go/index.d.ts +1 -1
- package/dist/core/ingestion/languages/go/interface-impls.d.ts +9 -1
- package/dist/core/ingestion/languages/go/interface-impls.js +693 -87
- package/dist/core/ingestion/languages/go/interpret.d.ts +2 -0
- package/dist/core/ingestion/languages/go/interpret.js +22 -8
- package/dist/core/ingestion/languages/go/method-owners.js +31 -12
- package/dist/core/ingestion/languages/go/package-clause.d.ts +46 -0
- package/dist/core/ingestion/languages/go/package-clause.js +75 -0
- package/dist/core/ingestion/languages/go/package-siblings.js +7 -11
- package/dist/core/ingestion/languages/go/query.js +56 -3
- package/dist/core/ingestion/languages/go/scope-resolver.js +39 -0
- package/dist/core/ingestion/languages/go.js +9 -0
- package/dist/core/ingestion/languages/java/analysis-features.d.ts +4 -0
- package/dist/core/ingestion/languages/java/analysis-features.js +12 -0
- package/dist/core/ingestion/languages/java/capture-side-channel.d.ts +12 -0
- package/dist/core/ingestion/languages/java/capture-side-channel.js +48 -0
- package/dist/core/ingestion/languages/java/captures.js +77 -32
- package/dist/core/ingestion/languages/java/import-target.d.ts +49 -9
- package/dist/core/ingestion/languages/java/import-target.js +68 -88
- package/dist/core/ingestion/languages/java/interpret.js +3 -2
- package/dist/core/ingestion/languages/java/module-resolution.d.ts +62 -0
- package/dist/core/ingestion/languages/java/module-resolution.js +142 -0
- package/dist/core/ingestion/languages/java/query.js +15 -3
- package/dist/core/ingestion/languages/java/record-components.d.ts +14 -0
- package/dist/core/ingestion/languages/java/record-components.js +185 -0
- package/dist/core/ingestion/languages/java/scope-resolver.js +10 -2
- package/dist/core/ingestion/languages/java/spring-aop.d.ts +12 -0
- package/dist/core/ingestion/languages/java/spring-aop.js +49 -0
- package/dist/core/ingestion/languages/java/spring-conditionals.d.ts +11 -0
- package/dist/core/ingestion/languages/java/spring-conditionals.js +48 -0
- package/dist/core/ingestion/languages/java/spring-di.d.ts +4 -1
- package/dist/core/ingestion/languages/java/spring-di.js +41 -9
- package/dist/core/ingestion/languages/java/spring-non-http-handlers.d.ts +7 -0
- package/dist/core/ingestion/languages/java/spring-non-http-handlers.js +32 -0
- package/dist/core/ingestion/languages/java.js +94 -3
- package/dist/core/ingestion/languages/javascript/captures.d.ts +6 -1
- package/dist/core/ingestion/languages/javascript/captures.js +262 -4
- package/dist/core/ingestion/languages/javascript/import-target.d.ts +17 -21
- package/dist/core/ingestion/languages/javascript/import-target.js +24 -41
- package/dist/core/ingestion/languages/javascript/index.d.ts +54 -5
- package/dist/core/ingestion/languages/javascript/index.js +54 -5
- package/dist/core/ingestion/languages/javascript/query.d.ts +1 -0
- package/dist/core/ingestion/languages/javascript/query.js +211 -5
- package/dist/core/ingestion/languages/javascript/scope-resolver.js +12 -0
- package/dist/core/ingestion/languages/javascript/simple-hooks.js +2 -1
- package/dist/core/ingestion/languages/jvm/package-siblings.js +77 -9
- package/dist/core/ingestion/languages/kotlin/capture-side-channel.d.ts +15 -0
- package/dist/core/ingestion/languages/kotlin/capture-side-channel.js +48 -0
- package/dist/core/ingestion/languages/kotlin/captures.js +43 -1
- package/dist/core/ingestion/languages/kotlin/import-target.d.ts +8 -1
- package/dist/core/ingestion/languages/kotlin/import-target.js +20 -123
- package/dist/core/ingestion/languages/kotlin/index.d.ts +1 -0
- package/dist/core/ingestion/languages/kotlin/index.js +1 -0
- package/dist/core/ingestion/languages/kotlin/module-resolution.d.ts +22 -0
- package/dist/core/ingestion/languages/kotlin/module-resolution.js +108 -0
- package/dist/core/ingestion/languages/kotlin/query.js +28 -2
- package/dist/core/ingestion/languages/kotlin/scope-resolver.js +23 -2
- package/dist/core/ingestion/languages/kotlin/spring-aop.d.ts +12 -0
- package/dist/core/ingestion/languages/kotlin/spring-aop.js +64 -0
- package/dist/core/ingestion/languages/kotlin/spring-conditionals.d.ts +12 -0
- package/dist/core/ingestion/languages/kotlin/spring-conditionals.js +49 -0
- package/dist/core/ingestion/languages/kotlin/spring-di.d.ts +2 -0
- package/dist/core/ingestion/languages/kotlin/spring-di.js +60 -11
- package/dist/core/ingestion/languages/kotlin/spring-non-http-handlers.d.ts +10 -0
- package/dist/core/ingestion/languages/kotlin/spring-non-http-handlers.js +41 -0
- package/dist/core/ingestion/languages/php/captures.d.ts +5 -0
- package/dist/core/ingestion/languages/php/captures.js +319 -51
- package/dist/core/ingestion/languages/php/import-target.d.ts +3 -4
- package/dist/core/ingestion/languages/php/import-target.js +192 -62
- package/dist/core/ingestion/languages/php/query.js +31 -0
- package/dist/core/ingestion/languages/python/arity-metadata.d.ts +1 -0
- package/dist/core/ingestion/languages/python/arity-metadata.js +1 -0
- package/dist/core/ingestion/languages/python/captures.js +29 -0
- package/dist/core/ingestion/languages/python/import-decomposer.js +22 -1
- package/dist/core/ingestion/languages/python/import-target.d.ts +42 -1
- package/dist/core/ingestion/languages/python/import-target.js +277 -91
- package/dist/core/ingestion/languages/python/index.d.ts +1 -1
- package/dist/core/ingestion/languages/python/index.js +1 -1
- package/dist/core/ingestion/languages/python/interpret.d.ts +52 -0
- package/dist/core/ingestion/languages/python/interpret.js +249 -7
- package/dist/core/ingestion/languages/python/query.js +9 -0
- package/dist/core/ingestion/languages/python/receiver-binding.d.ts +8 -6
- package/dist/core/ingestion/languages/python/receiver-binding.js +108 -12
- package/dist/core/ingestion/languages/python/scope-resolver.js +27 -4
- package/dist/core/ingestion/languages/python/simple-hooks.js +2 -8
- package/dist/core/ingestion/languages/python.js +13 -0
- package/dist/core/ingestion/languages/ruby/captures.js +158 -0
- package/dist/core/ingestion/languages/ruby/import-target.js +7 -5
- package/dist/core/ingestion/languages/ruby/query.js +93 -0
- package/dist/core/ingestion/languages/ruby/scope-resolver.js +2 -0
- package/dist/core/ingestion/languages/ruby/simple-hooks.d.ts +1 -1
- package/dist/core/ingestion/languages/ruby/simple-hooks.js +22 -1
- package/dist/core/ingestion/languages/rust/captures.js +39 -1
- package/dist/core/ingestion/languages/rust/method-owners.js +11 -1
- package/dist/core/ingestion/languages/rust/module-path.d.ts +126 -0
- package/dist/core/ingestion/languages/rust/module-path.js +214 -0
- package/dist/core/ingestion/languages/rust/qualified-call.d.ts +41 -0
- package/dist/core/ingestion/languages/rust/qualified-call.js +481 -0
- package/dist/core/ingestion/languages/rust/query.js +39 -6
- package/dist/core/ingestion/languages/rust/scope-resolver.js +21 -2
- package/dist/core/ingestion/languages/rust.js +17 -0
- package/dist/core/ingestion/languages/swift/captures.js +87 -3
- package/dist/core/ingestion/languages/swift/conditional-directive-preprocess.d.ts +48 -0
- package/dist/core/ingestion/languages/swift/conditional-directive-preprocess.js +253 -0
- package/dist/core/ingestion/languages/swift/import-target.js +4 -9
- package/dist/core/ingestion/languages/swift/query.js +17 -0
- package/dist/core/ingestion/languages/swift/receiver-binding.d.ts +8 -0
- package/dist/core/ingestion/languages/swift/receiver-binding.js +6 -2
- package/dist/core/ingestion/languages/swift.js +2 -0
- package/dist/core/ingestion/languages/typescript/captures.d.ts +90 -1
- package/dist/core/ingestion/languages/typescript/captures.js +267 -5
- package/dist/core/ingestion/languages/typescript/cjs-export-assignment.d.ts +134 -0
- package/dist/core/ingestion/languages/typescript/cjs-export-assignment.js +523 -0
- package/dist/core/ingestion/languages/typescript/cjs-module-exports.d.ts +54 -0
- package/dist/core/ingestion/languages/typescript/cjs-module-exports.js +191 -0
- package/dist/core/ingestion/languages/typescript/convex-endpoint-metadata.d.ts +7 -0
- package/dist/core/ingestion/languages/typescript/convex-endpoint-metadata.js +92 -0
- package/dist/core/ingestion/languages/typescript/file-candidates.d.ts +29 -0
- package/dist/core/ingestion/languages/typescript/file-candidates.js +70 -0
- package/dist/core/ingestion/languages/typescript/import-decomposer.d.ts +28 -1
- package/dist/core/ingestion/languages/typescript/import-decomposer.js +125 -10
- package/dist/core/ingestion/languages/typescript/import-target.d.ts +25 -37
- package/dist/core/ingestion/languages/typescript/import-target.js +24 -26
- package/dist/core/ingestion/languages/typescript/interpret.d.ts +21 -1
- package/dist/core/ingestion/languages/typescript/interpret.js +45 -5
- package/dist/core/ingestion/languages/typescript/module-resolution.d.ts +48 -0
- package/dist/core/ingestion/languages/typescript/module-resolution.js +171 -0
- package/dist/core/ingestion/languages/typescript/query.d.ts +1 -0
- package/dist/core/ingestion/languages/typescript/query.js +303 -14
- package/dist/core/ingestion/languages/typescript/receiver-binding.d.ts +17 -0
- package/dist/core/ingestion/languages/typescript/receiver-binding.js +27 -0
- package/dist/core/ingestion/languages/typescript/scope-resolver.js +27 -40
- package/dist/core/ingestion/languages/typescript/simple-hooks.d.ts +0 -10
- package/dist/core/ingestion/languages/typescript/simple-hooks.js +22 -22
- package/dist/core/ingestion/languages/typescript/tsconfig.d.ts +59 -0
- package/dist/core/ingestion/languages/typescript/tsconfig.js +292 -0
- package/dist/core/ingestion/languages/typescript.js +93 -2
- package/dist/core/ingestion/languages/vue/import-target.d.ts +6 -22
- package/dist/core/ingestion/languages/vue/import-target.js +11 -47
- package/dist/core/ingestion/languages/vue/scope-resolver.js +4 -2
- package/dist/core/ingestion/local-symbol-pruner.js +11 -11
- package/dist/core/ingestion/method-extractors/configs/csharp.js +1 -0
- package/dist/core/ingestion/method-extractors/generic.js +1 -0
- package/dist/core/ingestion/method-types.d.ts +16 -0
- package/dist/core/ingestion/pipeline-phases/di.d.ts +1 -1
- package/dist/core/ingestion/pipeline-phases/di.js +136 -21
- package/dist/core/ingestion/pipeline-phases/index.d.ts +2 -0
- package/dist/core/ingestion/pipeline-phases/index.js +2 -0
- package/dist/core/ingestion/pipeline-phases/parse-impl.d.ts +15 -0
- package/dist/core/ingestion/pipeline-phases/parse-impl.js +154 -4
- package/dist/core/ingestion/pipeline-phases/parse.js +5 -0
- package/dist/core/ingestion/pipeline-phases/processes.d.ts +3 -2
- package/dist/core/ingestion/pipeline-phases/processes.js +91 -6
- package/dist/core/ingestion/pipeline-phases/routes.js +116 -25
- package/dist/core/ingestion/pipeline-phases/spring-aop.d.ts +34 -0
- package/dist/core/ingestion/pipeline-phases/spring-aop.js +439 -0
- package/dist/core/ingestion/pipeline-phases/spring-auto-configuration.d.ts +34 -0
- package/dist/core/ingestion/pipeline-phases/spring-auto-configuration.js +255 -0
- package/dist/core/ingestion/pipeline-phases/types.d.ts +7 -0
- package/dist/core/ingestion/pipeline.d.ts +26 -2
- package/dist/core/ingestion/pipeline.js +60 -11
- package/dist/core/ingestion/process-processor.d.ts +109 -2
- package/dist/core/ingestion/process-processor.js +464 -52
- package/dist/core/ingestion/resolve-references.d.ts +6 -1
- package/dist/core/ingestion/resolve-references.js +66 -6
- package/dist/core/ingestion/route-extractors/constant-resolver.d.ts +8 -2
- package/dist/core/ingestion/route-extractors/constant-resolver.js +11 -7
- package/dist/core/ingestion/route-extractors/data-route-table.d.ts +40 -0
- package/dist/core/ingestion/route-extractors/data-route-table.js +876 -0
- package/dist/core/ingestion/route-extractors/dispatch-guard.d.ts +96 -0
- package/dist/core/ingestion/route-extractors/dispatch-guard.js +1184 -0
- package/dist/core/ingestion/route-extractors/java-const-resolver.d.ts +114 -0
- package/dist/core/ingestion/route-extractors/java-const-resolver.js +569 -0
- package/dist/core/ingestion/route-extractors/js-const-resolver.d.ts +192 -0
- package/dist/core/ingestion/route-extractors/js-const-resolver.js +1033 -0
- package/dist/core/ingestion/route-extractors/nest.d.ts +53 -0
- package/dist/core/ingestion/route-extractors/nest.js +523 -0
- package/dist/core/ingestion/route-extractors/spring-shared.d.ts +11 -0
- package/dist/core/ingestion/route-extractors/spring-shared.js +89 -0
- package/dist/core/ingestion/route-extractors/spring.js +214 -29
- package/dist/core/ingestion/scope-extractor-bridge.js +9 -1
- package/dist/core/ingestion/scope-extractor.d.ts +22 -7
- package/dist/core/ingestion/scope-extractor.js +309 -15
- package/dist/core/ingestion/scope-resolution/contract/scope-resolver.d.ts +311 -21
- package/dist/core/ingestion/scope-resolution/contract/scope-resolver.js +16 -5
- package/dist/core/ingestion/scope-resolution/graph-bridge/edges.d.ts +12 -0
- package/dist/core/ingestion/scope-resolution/graph-bridge/edges.js +47 -0
- package/dist/core/ingestion/scope-resolution/graph-bridge/ids.d.ts +20 -15
- package/dist/core/ingestion/scope-resolution/graph-bridge/ids.js +280 -42
- package/dist/core/ingestion/scope-resolution/graph-bridge/imports-to-edges.d.ts +123 -0
- package/dist/core/ingestion/scope-resolution/graph-bridge/imports-to-edges.js +171 -17
- package/dist/core/ingestion/scope-resolution/graph-bridge/node-lookup.d.ts +58 -1
- package/dist/core/ingestion/scope-resolution/graph-bridge/node-lookup.js +137 -34
- package/dist/core/ingestion/scope-resolution/graph-bridge/references-to-edges.d.ts +30 -1
- package/dist/core/ingestion/scope-resolution/graph-bridge/references-to-edges.js +39 -1
- package/dist/core/ingestion/scope-resolution/passes/callable-value-flow.d.ts +18 -1
- package/dist/core/ingestion/scope-resolution/passes/callable-value-flow.js +113 -18
- package/dist/core/ingestion/scope-resolution/passes/compound-receiver.d.ts +107 -5
- package/dist/core/ingestion/scope-resolution/passes/compound-receiver.js +590 -33
- package/dist/core/ingestion/scope-resolution/passes/free-call-fallback.d.ts +3 -0
- package/dist/core/ingestion/scope-resolution/passes/free-call-fallback.js +101 -41
- package/dist/core/ingestion/scope-resolution/passes/imported-value-refs.d.ts +34 -0
- package/dist/core/ingestion/scope-resolution/passes/imported-value-refs.js +62 -0
- package/dist/core/ingestion/scope-resolution/passes/property-dispatch.d.ts +5 -1
- package/dist/core/ingestion/scope-resolution/passes/property-dispatch.js +8 -1
- package/dist/core/ingestion/scope-resolution/passes/receiver-bound-calls.d.ts +105 -5
- package/dist/core/ingestion/scope-resolution/passes/receiver-bound-calls.js +931 -92
- package/dist/core/ingestion/scope-resolution/passes/return-shape-members.d.ts +58 -0
- package/dist/core/ingestion/scope-resolution/passes/return-shape-members.js +458 -0
- package/dist/core/ingestion/scope-resolution/passes/unique-name-properties.d.ts +180 -0
- package/dist/core/ingestion/scope-resolution/passes/unique-name-properties.js +418 -0
- package/dist/core/ingestion/scope-resolution/pipeline/phase.d.ts +29 -0
- package/dist/core/ingestion/scope-resolution/pipeline/phase.js +57 -0
- package/dist/core/ingestion/scope-resolution/pipeline/run.d.ts +55 -1
- package/dist/core/ingestion/scope-resolution/pipeline/run.js +241 -19
- package/dist/core/ingestion/scope-resolution/resolution-outcome.d.ts +112 -2
- package/dist/core/ingestion/scope-resolution/resolution-outcome.js +38 -1
- package/dist/core/ingestion/scope-resolution/scope/namespace-targets.d.ts +25 -3
- package/dist/core/ingestion/scope-resolution/scope/namespace-targets.js +36 -16
- package/dist/core/ingestion/scope-resolution/scope/walkers.d.ts +210 -9
- package/dist/core/ingestion/scope-resolution/scope/walkers.js +905 -22
- package/dist/core/ingestion/scope-resolution/summary-maps.d.ts +28 -0
- package/dist/core/ingestion/scope-resolution/summary-maps.js +50 -0
- package/dist/core/ingestion/scope-resolution/undecided-satisfaction.d.ts +55 -0
- package/dist/core/ingestion/scope-resolution/undecided-satisfaction.js +37 -0
- package/dist/core/ingestion/scope-resolution/unresolved-receivers.d.ts +109 -0
- package/dist/core/ingestion/scope-resolution/unresolved-receivers.js +204 -0
- package/dist/core/ingestion/scope-resolution/utils/definition-id.d.ts +13 -0
- package/dist/core/ingestion/scope-resolution/utils/definition-id.js +19 -0
- package/dist/core/ingestion/scope-resolution/utils/generic-instantiation.d.ts +171 -0
- package/dist/core/ingestion/scope-resolution/utils/generic-instantiation.js +218 -0
- package/dist/core/ingestion/scope-resolution/workspace-index-types.d.ts +34 -0
- package/dist/core/ingestion/scope-resolution/workspace-index-types.js +15 -0
- package/dist/core/ingestion/scope-resolution/workspace-index.d.ts +7 -20
- package/dist/core/ingestion/tree-sitter-queries.d.ts +11 -11
- package/dist/core/ingestion/tree-sitter-queries.js +678 -4
- package/dist/core/ingestion/type-env.js +11 -7
- package/dist/core/ingestion/type-extractors/shared.d.ts +17 -0
- package/dist/core/ingestion/type-extractors/shared.js +16 -0
- package/dist/core/ingestion/type-extractors/types.d.ts +12 -0
- package/dist/core/ingestion/type-extractors/typescript.d.ts +20 -0
- package/dist/core/ingestion/type-extractors/typescript.js +26 -0
- package/dist/core/ingestion/utils/ast-helpers.d.ts +297 -15
- package/dist/core/ingestion/utils/ast-helpers.js +578 -46
- package/dist/core/ingestion/utils/call-analysis.d.ts +27 -22
- package/dist/core/ingestion/utils/call-analysis.js +202 -7
- package/dist/core/ingestion/utils/callable-flow-captures.d.ts +59 -0
- package/dist/core/ingestion/utils/callable-flow-captures.js +51 -1
- package/dist/core/ingestion/utils/callable-labels.d.ts +25 -0
- package/dist/core/ingestion/utils/callable-labels.js +31 -0
- package/dist/core/ingestion/utils/effective-ram.d.ts +40 -0
- package/dist/core/ingestion/utils/effective-ram.js +58 -0
- package/dist/core/ingestion/utils/line-base.d.ts +14 -0
- package/dist/core/ingestion/utils/line-base.js +14 -0
- package/dist/core/ingestion/utils/method-props.d.ts +27 -4
- package/dist/core/ingestion/utils/method-props.js +29 -4
- package/dist/core/ingestion/utils/receiver-chain-captures.d.ts +31 -0
- package/dist/core/ingestion/utils/receiver-chain-captures.js +57 -0
- package/dist/core/ingestion/utils/receiver-chain-codec.d.ts +89 -0
- package/dist/core/ingestion/utils/receiver-chain-codec.js +182 -0
- package/dist/core/ingestion/utils/scope-tree-walk.d.ts +22 -0
- package/dist/core/ingestion/utils/scope-tree-walk.js +33 -0
- package/dist/core/ingestion/utils/template-arguments.d.ts +96 -0
- package/dist/core/ingestion/utils/template-arguments.js +196 -0
- package/dist/core/ingestion/utils/type-parameters.d.ts +49 -0
- package/dist/core/ingestion/utils/type-parameters.js +206 -0
- package/dist/core/ingestion/workers/callable-id.d.ts +80 -0
- package/dist/core/ingestion/workers/callable-id.js +125 -0
- package/dist/core/ingestion/workers/parse-worker.d.ts +14 -1
- package/dist/core/ingestion/workers/parse-worker.js +493 -54
- package/dist/core/ingestion/workers/worker-pool.d.ts +20 -27
- package/dist/core/ingestion/workers/worker-pool.js +91 -3
- package/dist/core/lbug/csv-generator.d.ts +27 -0
- package/dist/core/lbug/csv-generator.js +72 -17
- package/dist/core/lbug/extension-load-error.js +13 -2
- package/dist/core/lbug/extension-loader.d.ts +29 -0
- package/dist/core/lbug/extension-loader.js +31 -6
- package/dist/core/lbug/graph-emit-sink.d.ts +264 -0
- package/dist/core/lbug/graph-emit-sink.js +581 -0
- package/dist/core/lbug/lbug-adapter.d.ts +290 -11
- package/dist/core/lbug/lbug-adapter.js +652 -69
- package/dist/core/lbug/native-check.d.ts +21 -0
- package/dist/core/lbug/native-check.js +248 -32
- package/dist/core/lbug/pdg-emit-sink.d.ts +13 -4
- package/dist/core/lbug/pdg-emit-sink.js +21 -111
- package/dist/core/lbug/pool-adapter.d.ts +9 -0
- package/dist/core/lbug/pool-adapter.js +164 -14
- package/dist/core/lbug/query-batch.d.ts +75 -0
- package/dist/core/lbug/query-batch.js +102 -0
- package/dist/core/lbug/rel-pair-routing.d.ts +160 -2
- package/dist/core/lbug/rel-pair-routing.js +228 -10
- package/dist/core/lbug/schema.d.ts +163 -4
- package/dist/core/lbug/schema.js +404 -159
- package/dist/core/lbug/sync-csv-writer.d.ts +47 -0
- package/dist/core/lbug/sync-csv-writer.js +108 -0
- package/dist/core/run-analyze.d.ts +147 -0
- package/dist/core/run-analyze.js +1215 -179
- package/dist/core/search/bm25-index.d.ts +11 -0
- package/dist/core/search/bm25-index.js +60 -26
- package/dist/core/search/fts-indexes.d.ts +150 -9
- package/dist/core/search/fts-indexes.js +241 -23
- package/dist/core/wiki/graph-queries.js +145 -112
- package/dist/core/wiki/llm-client.d.ts +29 -3
- package/dist/core/wiki/llm-client.js +47 -12
- package/dist/core/wiki/prompts.d.ts +19 -0
- package/dist/core/wiki/prompts.js +20 -1
- package/dist/lib/utils.d.ts +113 -0
- package/dist/lib/utils.js +185 -0
- package/dist/mcp/local/aop-metadata.d.ts +77 -0
- package/dist/mcp/local/aop-metadata.js +227 -0
- package/dist/mcp/local/bean-metadata.d.ts +2 -1
- package/dist/mcp/local/bean-metadata.js +22 -1
- package/dist/mcp/local/convex-metadata.d.ts +8 -0
- package/dist/mcp/local/convex-metadata.js +45 -0
- package/dist/mcp/local/local-backend.d.ts +174 -11
- package/dist/mcp/local/local-backend.js +1678 -331
- package/dist/mcp/local/path-predicate.d.ts +19 -0
- package/dist/mcp/local/path-predicate.js +21 -0
- package/dist/mcp/local/pdg-impact.d.ts +132 -10
- package/dist/mcp/local/pdg-impact.js +391 -98
- package/dist/mcp/repository-policy.d.ts +1 -0
- package/dist/mcp/repository-policy.js +5 -0
- package/dist/mcp/resources.js +26 -4
- package/dist/mcp/server.js +23 -13
- package/dist/mcp/tools.d.ts +8 -0
- package/dist/mcp/tools.js +76 -23
- package/dist/server/analyze-job.d.ts +37 -2
- package/dist/server/analyze-job.js +13 -2
- package/dist/server/analyze-launch.d.ts +1 -1
- package/dist/server/analyze-launch.js +79 -10
- package/dist/server/analyze-worker-core.d.ts +1 -1
- package/dist/server/analyze-worker-core.js +10 -1
- package/dist/server/analyze-worker-ipc.d.ts +1 -1
- package/dist/server/analyze-worker-ipc.js +4 -0
- package/dist/server/analyze-worker-protocol.d.ts +59 -0
- package/dist/server/analyze-worker-protocol.js +1 -0
- package/dist/server/analyze-worker.d.ts +1 -17
- package/dist/server/api.d.ts +2 -11
- package/dist/server/api.js +164 -163
- package/dist/server/embed-run-outcome.d.ts +89 -0
- package/dist/server/embed-run-outcome.js +88 -0
- package/dist/server/git-clone.js +6 -2
- package/dist/server/middleware.d.ts +116 -9
- package/dist/server/middleware.js +291 -22
- package/dist/server/sse-progress.d.ts +41 -0
- package/dist/server/sse-progress.js +125 -0
- package/dist/storage/branch-index.d.ts +11 -6
- package/dist/storage/branch-index.js +15 -7
- package/dist/storage/file-hash.js +2 -2
- package/dist/storage/fs-atomic.d.ts +25 -0
- package/dist/storage/fs-atomic.js +42 -0
- package/dist/storage/git.d.ts +131 -0
- package/dist/storage/git.js +236 -2
- package/dist/storage/index-lock.d.ts +102 -0
- package/dist/storage/index-lock.js +660 -0
- package/dist/storage/parse-cache.js +588 -6
- package/dist/storage/parsedfile-store.js +76 -6
- package/dist/storage/repo-manager.d.ts +54 -441
- package/dist/storage/repo-manager.js +312 -221
- package/dist/storage/repo-meta.d.ts +530 -0
- package/dist/storage/repo-meta.js +100 -0
- package/dist/types/pipeline.d.ts +37 -0
- package/hooks/antigravity/gitnexus-antigravity-hook.cjs +1 -1
- package/hooks/claude/gitnexus-hook.cjs +1 -1
- package/hooks/claude/resolve-analyze-cmd.cjs +80 -13
- package/package.json +11 -2
- package/scripts/cross-platform-shard.ts +153 -0
- package/scripts/cross-platform-tests.ts +122 -0
- package/scripts/run-cross-platform.ts +16 -5
- package/skills/gitnexus-cli.md +3 -3
- package/skills/gitnexus-debugging.md +37 -7
- package/skills/gitnexus-exploring.md +26 -4
- package/skills/gitnexus-impact-analysis.md +71 -10
- package/skills/gitnexus-plan/README.md +11 -6
- package/skills/gitnexus-plan/references/evidence-provenance.md +49 -12
- package/skills/gitnexus-plan/scripts/evidence-provenance.mjs +654 -372
- package/skills/gitnexus-refactoring.md +48 -5
- package/skills/gitnexus-review/SKILL.md +12 -6
- package/skills/gitnexus-review/ci-personas/ci-adversarial-lens.md +1 -1
- package/skills/gitnexus-review/ci-personas/ci-blast-radius-lens.md +1 -1
- package/skills/gitnexus-review/ci-personas/ci-correctness-lens.md +1 -1
- package/skills/gitnexus-review/ci-personas/ci-coverage-lens.md +1 -1
- package/skills/gitnexus-review/ci-personas/ci-critic-lens.md +1 -1
- package/skills/gitnexus-review/ci-personas/ci-security-lens.md +1 -1
- package/skills/gitnexus-taint-analysis.md +13 -7
- package/skills/gitnexus-work/SKILL.md +4 -1
- package/skills/gitnexus-work/references/evidence-provenance.md +49 -12
- package/skills/gitnexus-work/scripts/evidence-provenance.mjs +654 -372
- package/vendor/leiden/utils.cjs +28 -1
- package/web/assets/ProcessFlowModal-Badh2Pbg.js +24 -0
- package/web/assets/{__vite-browser-external-bMKyYQkO.js → __vite-browser-external-COxE8F0G.js} +1 -1
- package/web/assets/abnfDiagram-QNN2D4NM-Cq2djWWe.js +1 -0
- package/web/assets/agent-Dr4l5EOp.js +662 -0
- package/web/assets/architecture-TIHT7OUA-V6N4J3SY-fTePvLoe.js +1 -0
- package/web/assets/architectureDiagram-OT7VKSJ7-mKEXxkeF.js +36 -0
- package/web/assets/{blockDiagram-7IZFK4PR-DBefcjof.js → blockDiagram-54WLDVWM-Dg_hrRWE.js} +4 -4
- package/web/assets/{c4Diagram-Y2BXMSZH-EjWnjEJl.js → c4Diagram-X2LASM7V-CnhoT4aV.js} +2 -2
- package/web/assets/chunk-224SPVON-B8gxtXpy.js +1 -0
- package/web/assets/chunk-2AEHWXPW-CV4r6-1I.js +127 -0
- package/web/assets/chunk-2SREHG4O-Dip42xOq.js +1 -0
- package/web/assets/chunk-4RFN2BYJ-DHHWuC-n.js +1 -0
- package/web/assets/chunk-66DQ2XMT-CM0xjFAN.js +1 -0
- package/web/assets/chunk-6BELYETK-ChsYtfHW.js +1 -0
- package/web/assets/{chunk-LII3EMHJ-BL6lKJ_P.js → chunk-6L755F7B-CMhLBxi2.js} +1 -1
- package/web/assets/{chunk-QA3QBVWF-DVXPOIxe.js → chunk-7CWYLC5S-DRgGkkpF.js} +1 -1
- package/web/assets/{chunk-ZXARS5L4-C3v-4Fsw.js → chunk-A7VWPJGB-B4O3oQdQ.js} +1 -1
- package/web/assets/chunk-BI6VK774-D0oaWk8V.js +1 -0
- package/web/assets/chunk-D6VWDJW2-BxcBdZ9c.js +2 -0
- package/web/assets/chunk-DMV4VAQV-Bn6WXDSX.js +4 -0
- package/web/assets/chunk-E5QJAATJ-dh-5CtIV.js +2 -0
- package/web/assets/chunk-EQFTRU2I-1ix7TzW9.js +2 -0
- package/web/assets/chunk-FWYVLQTC-BgDItRzJ.js +1 -0
- package/web/assets/chunk-HNC4WDU7-DoU3KnA7.js +1 -0
- package/web/assets/chunk-L5GCOVLC-CE2w8Nm_.js +161 -0
- package/web/assets/chunk-LAHSG3N2-Bz4hcn0N.js +321 -0
- package/web/assets/chunk-LORZLZWG-B57uGw2N.js +88 -0
- package/web/assets/chunk-NLANEA3F-XpH_NPA5.js +62 -0
- package/web/assets/chunk-NV3KIAZN-5yvcpMiu.js +1 -0
- package/web/assets/chunk-OIYT25JQ-CQ6KOZGX.js +1 -0
- package/web/assets/chunk-PE7DX7ZZ-CCvRVj43.js +10 -0
- package/web/assets/chunk-Q67WD55A-BWCH2SVz.js +156 -0
- package/web/assets/chunk-RRFMTAIC-CMN0wcYA.js +1 -0
- package/web/assets/{chunk-RLI5ZMPA-CkXZ0y0U.js → chunk-SATU7PGQ-B1zhgOvc.js} +1 -1
- package/web/assets/chunk-STOV2HOB-GnExfzIX.js +1 -0
- package/web/assets/{chunk-INKRHTLW-Ckl3_KkO.js → chunk-SZD42YQK-ijyKKVr1.js} +21 -21
- package/web/assets/{chunk-LCXTWHL2-C162wE5z.js → chunk-TFPGFQPA-Dj6a-0pC.js} +3 -3
- package/web/assets/chunk-TGVD4F4B-BMc31Gj2.js +2 -0
- package/web/assets/chunk-TZUXEDM2-B7p9AcTw.js +1 -0
- package/web/assets/chunk-UAT7B5JY-DW-A_fpI.js +1 -0
- package/web/assets/{chunk-6764PJDD-C7xxk063.js → chunk-VE5CLXGZ-C1vB7wpY.js} +1 -1
- package/web/assets/{chunk-RG4AUYOV-ZNgyLFq6.js → chunk-VJFVEZTB-CX66F2ep.js} +3 -3
- package/web/assets/chunk-VY5UBI4V-yxPQAWxw.js +1 -0
- package/web/assets/chunk-WJBAP47W-BckNkuEN.js +1 -0
- package/web/assets/chunk-XNMVGMAZ-Cg_LnPtj.js +1 -0
- package/web/assets/classDiagram-VPOSVPXH-BjOiXA_C.js +1 -0
- package/web/assets/classDiagram-v2-5VFNUXQA-BjOiXA_C.js +1 -0
- package/web/assets/{cose-bilkent-UX7MHV2Q-BmnZ7Mvj.js → cose-bilkent-RZA4XIPR-BHpK4Crp.js} +1 -1
- package/web/assets/cynefin-VYW2F7L2-2VAHYKR6-DAsF6GZv.js +1 -0
- package/web/assets/cynefinDiagram-TR7LZUCG-C3Iar9lZ.js +62 -0
- package/web/assets/dagre-K64A6Z3X-CUwi79mA.js +4 -0
- package/web/assets/diagram-2TLGJV2N-C2F5Nfym.js +30 -0
- package/web/assets/diagram-JCD7PQ7C-DC5-9FRr.js +24 -0
- package/web/assets/{diagram-HNR7UZ2L-DVRltWbL.js → diagram-KFBZAVDW-Dfmf_4ti.js} +3 -3
- package/web/assets/diagram-L7DVE3PN-GIRyVUtt.js +41 -0
- package/web/assets/diagram-YP3FGXHI-CyNFYtkd.js +24 -0
- package/web/assets/ebnfDiagram-DRHRQJWO-D8_CI4ZF.js +1 -0
- package/web/assets/erDiagram-SZLJLQMB-CohQjznC.js +85 -0
- package/web/assets/error-D9MtuG9s.js +1 -0
- package/web/assets/eventmodeling-45OFAUF4-AOUJWSLX-BvTc6iQi.js +1 -0
- package/web/assets/flowDiagram-BWE6NHOH-B6RnEvD9.js +1 -0
- package/web/assets/ganttDiagram-2QTCJSNI-Cks_mEcF.js +292 -0
- package/web/assets/gitGraph-TEB2WS4Q-U5VWYIBC-Dy7CCSZ5.js +1 -0
- package/web/assets/gitGraphDiagram-VVZAVV5G-CG41cIVc.js +106 -0
- package/web/assets/{index-D7mTFcvQ.js → index-2zdvEdzg.js} +51 -51
- package/web/assets/index-CJDpyH-n.css +2 -0
- package/web/assets/info-DKCQHKI2-DX6KST54-BLJg1ikX.js +1 -0
- package/web/assets/infoDiagram-FY4PZKRE-BJ3vPVwW.js +2 -0
- package/web/assets/{ishikawaDiagram-BNXS4ZKH-XpjJRU9h.js → ishikawaDiagram-4JDSWWDM-DmqWtjkl.js} +2 -2
- package/web/assets/{journeyDiagram-M6C3CM3L-C6wjooas.js → journeyDiagram-QUS3FAKT-XAzVzrQW.js} +3 -3
- package/web/assets/{kanban-definition-75IXJCU3-5_UVY79g.js → kanban-definition-D4L7SQKK-YurRnmYn.js} +6 -6
- package/web/assets/katex-C5OPUE3Q-Bnbavtmu.js +257 -0
- package/web/assets/{mindmap-definition-2TDM6QVE-8xDLzk2e.js → mindmap-definition-66QP5TD6-ChrWWnil.js} +5 -5
- package/web/assets/node.browser-U-KyT5AW.js +1 -0
- package/web/assets/packet-7NZHBO7P-5WG45QPS-KUxcuvaA.js +1 -0
- package/web/assets/pegDiagram-YKIO5C6U-QGeQLEq2.js +1 -0
- package/web/assets/pie-RZYD4A2V-2OCZ2VTD-DPs08kJY.js +1 -0
- package/web/assets/pieDiagram-YPY3TKG5-BuT3MYzm.js +39 -0
- package/web/assets/{quadrantDiagram-VICAPDV7-DR54jOeR.js → quadrantDiagram-VO5QLCXA-B7098wSc.js} +3 -3
- package/web/assets/radar-I7S5WNFK-EPLSA35B-w5F0K3a7.js +1 -0
- package/web/assets/railroad-3IZDKUUU-PWFQV6Y6-Bu668yqY.js +1 -0
- package/web/assets/railroad-abnf-AHOZXSZD-JYYJX3BS-B6ghpETS.js +1 -0
- package/web/assets/railroad-ebnf-EBAXGLYW-RBZ4ONAP-D-XmHh3M.js +1 -0
- package/web/assets/railroad-peg-LSFZ7HO6-KHNPXGPG-mhkrhzEn.js +1 -0
- package/web/assets/railroadDiagram-M77LTMSB-AXu4vxk_.js +1 -0
- package/web/assets/{requirementDiagram-JXO7QTGE-PEkg7sKC.js → requirementDiagram-RASO5HTO-B-l8InpK.js} +4 -4
- package/web/assets/{sankeyDiagram-URQDO5SZ-DDWEtjcs.js → sankeyDiagram-F32LOJ6L-Kd7zjJgX.js} +3 -3
- package/web/assets/{sequenceDiagram-VS2MUI6T-Bv-uwANx.js → sequenceDiagram-URATNSBD-BlcdY9DS.js} +7 -7
- package/web/assets/sizeCapture-5GORAGP4-BEqQzsxs.js +1 -0
- package/web/assets/src-C5sx_gMp.js +1 -0
- package/web/assets/stateDiagram-DODFXNG5-DTdHc-fF.js +1 -0
- package/web/assets/stateDiagram-v2-JNMM5JRA-DioNLDDo.js +1 -0
- package/web/assets/swimlanes-OSWOYLSK-CA0ofdwY.js +2 -0
- package/web/assets/swimlanesDiagram-RHGX2RDE-PkwUdckC.js +8 -0
- package/web/assets/{timeline-definition-O6YCAMPW-Qmsuo7qS.js → timeline-definition-WJXWRH4I-DUfp1R3E.js} +3 -3
- package/web/assets/treeView-QDETBFTQ-EHYTSQNO-C5lpBgPm.js +1 -0
- package/web/assets/treemap-6X3UGDF4-CCWCF7EK-BB0ZyO-B.js +1 -0
- package/web/assets/vennDiagram-K3VCMQLI-Bj-FN-XS.js +34 -0
- package/web/assets/wardley-OPB4EBWU-6OWERDVT-CEA3Nq0j.js +1 -0
- package/web/assets/wardleyDiagram-XK6FUAWV-CVV0dHFr.js +78 -0
- package/web/assets/xychartDiagram-5VRUVLCW-CK_rbSWE.js +7 -0
- package/web/index.html +16 -15
- package/dist/core/ingestion/languages/python/index-stats.d.ts +0 -18
- package/dist/core/ingestion/languages/python/index-stats.js +0 -25
- package/web/assets/ProcessFlowModal-CwkpVkv-.js +0 -22
- package/web/assets/agent-Ds-lkZjX.js +0 -626
- package/web/assets/architecture-7EHR7CIX-6QZW5X65-BVWFvYz2.js +0 -1
- package/web/assets/architectureDiagram-UL44E2DR-CmG3uPWf.js +0 -36
- package/web/assets/chunk-2T2R6R2M-Bb6Sy3_j.js +0 -4
- package/web/assets/chunk-2UTLFMKG-CXlhF3Pt.js +0 -1
- package/web/assets/chunk-3SSMPTDK-rPsRM1x0.js +0 -321
- package/web/assets/chunk-4R4BOZG6-Be_F0JoX.js +0 -159
- package/web/assets/chunk-67TQ5CYL-CA7OhIEf.js +0 -124
- package/web/assets/chunk-7J6CGLKN-BlKwgXKs.js +0 -10
- package/web/assets/chunk-C62D2QBJ-3gdL8EKc.js +0 -1
- package/web/assets/chunk-CEXFNPSA-CjwtMDkc.js +0 -1
- package/web/assets/chunk-J5EP6P6S-L19oz55R.js +0 -1
- package/web/assets/chunk-KGFNY3KK-BZeP-55u.js +0 -62
- package/web/assets/chunk-KGYTTC2M-zm6n242I.js +0 -1
- package/web/assets/chunk-KNLZD3CH-BGlP6X9R.js +0 -1
- package/web/assets/chunk-LRIF4GLE-n59lhprL.js +0 -1
- package/web/assets/chunk-RERM46MO-B5dAdWpP.js +0 -1
- package/web/assets/chunk-RKZBBQEN-MyIQbGgD.js +0 -1
- package/web/assets/chunk-T2UQINTJ-BEyXhZWe.js +0 -1
- package/web/assets/chunk-UP6H54XL-BG-n7qDp.js +0 -1
- package/web/assets/chunk-UXSXWOXI-CW1_r5cS.js +0 -1
- package/web/assets/chunk-UY5QBCOK-ByqTVLvh.js +0 -1
- package/web/assets/chunk-VU6ZFW4Y-BLeasdkU.js +0 -2
- package/web/assets/classDiagram-KGZ6W3CR-olpO3fMe.js +0 -1
- package/web/assets/classDiagram-v2-72OJOZXJ-olpO3fMe.js +0 -1
- package/web/assets/dagre-ND4H6XIP-CY4iIF7v.js +0 -4
- package/web/assets/diagram-3NCE3AQN-CO6QpzEE.js +0 -43
- package/web/assets/diagram-GF46GFSD-B2atbzmU.js +0 -24
- package/web/assets/diagram-QXG6HAR7-DR6AHD2h.js +0 -24
- package/web/assets/diagram-WEQXMOUZ-DkpoMwTL.js +0 -10
- package/web/assets/erDiagram-L5TCEMPS-n8g_90bc.js +0 -85
- package/web/assets/eventmodeling-FCH6USID-MREXMVOE-CgFBM7e-.js +0 -1
- package/web/assets/flowDiagram-H6V6AXG4-SGMDiCkB.js +0 -162
- package/web/assets/ganttDiagram-JCBTUEKG-Cb3UBqRS.js +0 -292
- package/web/assets/gitGraph-WXDBUCRP-R675I2BI-DCJv7SII.js +0 -1
- package/web/assets/gitGraphDiagram-S2ZK5IYY-Bs9CR7tq.js +0 -106
- package/web/assets/index-CX_fADmQ.css +0 -2
- package/web/assets/info-J43DQDTF-KCYPFFUO-BfNy-9Nd.js +0 -1
- package/web/assets/infoDiagram-3YFTVSEB-T368on4D.js +0 -2
- package/web/assets/katex-K3KEBU37-qRQBy-EZ.js +0 -261
- package/web/assets/node-Ct_zna8U.js +0 -8
- package/web/assets/packet-YPE3B663-LP52Z2RK-D4qkeG9k.js +0 -1
- package/web/assets/pie-LRSECV5Y-TCRJHUBD-B_yMKyQa.js +0 -1
- package/web/assets/pieDiagram-CU6KROY3-Bv4LpAbr.js +0 -30
- package/web/assets/radar-GUYGQ44K-RDLRG3WG-DeD6yN_0.js +0 -1
- package/web/assets/sdk-CzHHH8tD.js +0 -37
- package/web/assets/src-Cv1eWg0o.js +0 -1
- package/web/assets/stateDiagram-7D4R322I-DVNjmkEq.js +0 -1
- package/web/assets/stateDiagram-v2-36443NZ5-CyN4Fh7_.js +0 -1
- package/web/assets/treeView-BLDUP644-QA4HXRO3-CDuSYnd4.js +0 -1
- package/web/assets/treemap-LRROVOQU-LLAWBHMP-imazucyJ.js +0 -1
- package/web/assets/vennDiagram-MWXL3ELB-BD1iK1SX.js +0 -34
- package/web/assets/wardley-L42UT6IY-5TKZOOLJ-DqrT9tB8.js +0 -1
- package/web/assets/wardleyDiagram-CUQ6CDDI-D6TzLVob.js +0 -78
- package/web/assets/xychartDiagram-N2JHSOCM-CoZ_Tits.js +0 -7
- /package/web/assets/{chunk-7W6UQGC5-pyKGssV3.js → chunk-LIEV3EAG-pyKGssV3.js} +0 -0
|
@@ -55,10 +55,13 @@ export declare const cliResources: {
|
|
|
55
55
|
readonly 'tool.usage.query': "Usage: gitnexus query [search_query] or gitnexus query --query <text>";
|
|
56
56
|
readonly 'tool.usage.context': "Usage: gitnexus context <symbol_name> [--uid <uid>] [--file <path>]";
|
|
57
57
|
readonly 'tool.usage.impact': "Usage: gitnexus impact <symbol_name> [--uid <uid>] [--file <path>] [--kind <kind>] [--direction upstream|downstream]";
|
|
58
|
-
readonly 'tool.usage.trace': "Usage: gitnexus trace <from> <to> [--from-uid <uid>] [--to-uid <uid>] [--depth <n>]";
|
|
58
|
+
readonly 'tool.usage.trace': "Usage: gitnexus trace <from> <to> [-f|--file <path>] [--from-file <path>] [--to-file <path>] [--from-uid <uid>] [--to-uid <uid>] [--depth <n>]";
|
|
59
59
|
readonly 'tool.usage.cypher': "Usage: gitnexus cypher <cypher_query>";
|
|
60
60
|
readonly 'tool.warn.unknownKind': "--kind '{{kind}}' is not a known symbol kind (e.g. Function, Class, Method); it will not narrow the result.";
|
|
61
61
|
readonly 'tool.detectChanges.noChanges': "No changes detected.";
|
|
62
|
+
readonly 'tool.detectChanges.partial': "PARTIAL RESULT: a graph query failed, so changed symbols may be missing. Do not read this as a clean pre-commit check.";
|
|
63
|
+
readonly 'tool.detectChanges.truncated': "LISTING CAPPED: the changed-symbol list was capped, so it does not name every changed symbol. The counts and risk level still cover all of them.";
|
|
64
|
+
readonly 'tool.detectChanges.truncatedDegraded': "LISTING CAPPED: the changed-symbol list was capped. The run also degraded, so the counts are a lower bound, not a total.";
|
|
62
65
|
readonly 'tool.detectChanges.changesSummary': "Changes: {{files}} files, {{symbols}} symbols";
|
|
63
66
|
readonly 'tool.detectChanges.affectedProcesses': "Affected processes: {{count}}";
|
|
64
67
|
readonly 'tool.detectChanges.riskLevel': "Risk level: {{risk}}";
|
|
@@ -154,6 +157,7 @@ export declare const cliResources: {
|
|
|
154
157
|
readonly 'help.option.analyze.skills': "Generate repo-specific skill files from detected communities (no-op when --index-only is also set).";
|
|
155
158
|
readonly 'help.option.analyze.skipAgentsMd': "Skip updating the gitnexus section in AGENTS.md and CLAUDE.md";
|
|
156
159
|
readonly 'help.option.analyze.noStats': "Omit volatile file/symbol counts from AGENTS.md and CLAUDE.md";
|
|
160
|
+
readonly 'help.option.analyze.selfCommit': "Auto-commit AGENTS.md/CLAUDE.md changes after analyze (opt-in, off by default). Scoped to only those two files (never `git add -A`); no-ops if neither exists, neither changed, or the repo has no git identity configured.";
|
|
157
161
|
readonly 'help.option.analyze.skipSkills': "Skip installing standard GitNexus skill files directly under .claude/skills/ and .agents/skills/. Does not suppress community skills from --skills (those use .claude/skills/gitnexus-area-*). Use --index-only to skip all AI-context file injection.";
|
|
158
162
|
readonly 'help.option.analyze.indexOnly': "Pure index mode: skip all file injection (AGENTS.md, CLAUDE.md, skills)";
|
|
159
163
|
readonly 'help.option.skipGit': "Treat the provided path/cwd as the index root and skip parent git-root discovery";
|
|
@@ -181,13 +185,13 @@ export declare const cliResources: {
|
|
|
181
185
|
readonly 'help.option.clean.branch': "Delete only the named branch index (not the workspace index)";
|
|
182
186
|
readonly 'help.option.clean.lbugSidecars': "Clean parked LadybugDB recovery sidecars (missing-shadow WAL quarantines and dirty-recovery parks)";
|
|
183
187
|
readonly 'help.option.wiki.force': "Force full regeneration even if up to date";
|
|
184
|
-
readonly 'help.option.wiki.provider': "LLM provider: openai, openrouter, azure, custom, cursor, claude, codex, or opencode (default:
|
|
185
|
-
readonly 'help.option.wiki.model': "LLM model or
|
|
188
|
+
readonly 'help.option.wiki.provider': "LLM provider: minimax, openai, openrouter, azure, custom, cursor, claude, codex, or opencode (default: minimax)";
|
|
189
|
+
readonly 'help.option.wiki.model': "LLM model or deployment name (default: MiniMax-M3)";
|
|
186
190
|
readonly 'help.option.wiki.baseUrl': "LLM API base URL. Azure v1: https://{resource}.openai.azure.com/openai/v1";
|
|
187
191
|
readonly 'help.option.wiki.apiKey': "LLM API key or Azure api-key (saved to ~/.gitnexus/config.json)";
|
|
188
192
|
readonly 'help.option.wiki.apiVersion': "Azure api-version query param, e.g. 2024-10-21 (legacy Azure API only)";
|
|
189
|
-
readonly 'help.option.wiki.reasoningModel': "
|
|
190
|
-
readonly 'help.option.wiki.noReasoningModel': "Disable reasoning
|
|
193
|
+
readonly 'help.option.wiki.reasoningModel': "Enable reasoning mode; MiniMax-M3 uses adaptive thinking";
|
|
194
|
+
readonly 'help.option.wiki.noReasoningModel': "Disable reasoning mode; MiniMax-M3 disables thinking";
|
|
191
195
|
readonly 'help.option.wiki.concurrency': "Parallel LLM calls (default: 3)";
|
|
192
196
|
readonly 'help.option.wiki.timeout': "LLM request timeout in seconds (default: disabled)";
|
|
193
197
|
readonly 'help.option.wiki.retries': "Max LLM retry attempts per request (default: 3)";
|
|
@@ -230,10 +234,8 @@ export declare const cliResources: {
|
|
|
230
234
|
readonly 'help.option.embeddings.install.cuda': "Also download the CUDA GPU binaries (runs onnxruntime-node's NuGet postinstall; set GLOBAL_AGENT_HTTPS_PROXY behind a proxy)";
|
|
231
235
|
readonly 'help.option.embeddings.install.force': "Install into the runtime prefix even when the stack already resolves";
|
|
232
236
|
readonly 'help.option.group.create.force': "Overwrite existing group";
|
|
233
|
-
readonly 'help.option.group.sync.
|
|
234
|
-
readonly 'help.option.group.sync.
|
|
235
|
-
readonly 'help.option.group.sync.allowStale': "Skip stale index warnings";
|
|
236
|
-
readonly 'help.option.group.sync.verbose': "Show each cross-link detail";
|
|
237
|
+
readonly 'help.option.group.sync.exactOnly': "Skip wildcard service matching; cross-link on exact contract-id match only (manifest links still apply)";
|
|
238
|
+
readonly 'help.option.group.sync.verbose': "Show additional sync diagnostics";
|
|
237
239
|
readonly 'help.option.status.json': "Emit machine-readable index and analyzer provenance";
|
|
238
240
|
readonly 'help.option.json': "JSON output";
|
|
239
241
|
readonly 'help.option.group.impact.target': "Symbol or file name to analyze";
|
|
@@ -311,6 +313,9 @@ export declare const cliResources: {
|
|
|
311
313
|
'tool.usage.cypher': string;
|
|
312
314
|
'tool.warn.unknownKind': string;
|
|
313
315
|
'tool.detectChanges.noChanges': string;
|
|
316
|
+
'tool.detectChanges.partial': string;
|
|
317
|
+
'tool.detectChanges.truncated': string;
|
|
318
|
+
'tool.detectChanges.truncatedDegraded': string;
|
|
314
319
|
'tool.detectChanges.changesSummary': string;
|
|
315
320
|
'tool.detectChanges.affectedProcesses': string;
|
|
316
321
|
'tool.detectChanges.riskLevel': string;
|
|
@@ -406,6 +411,7 @@ export declare const cliResources: {
|
|
|
406
411
|
'help.option.analyze.skills': string;
|
|
407
412
|
'help.option.analyze.skipAgentsMd': string;
|
|
408
413
|
'help.option.analyze.noStats': string;
|
|
414
|
+
'help.option.analyze.selfCommit': string;
|
|
409
415
|
'help.option.analyze.skipSkills': string;
|
|
410
416
|
'help.option.analyze.indexOnly': string;
|
|
411
417
|
'help.option.skipGit': string;
|
|
@@ -482,9 +488,7 @@ export declare const cliResources: {
|
|
|
482
488
|
'help.option.embeddings.install.cuda': string;
|
|
483
489
|
'help.option.embeddings.install.force': string;
|
|
484
490
|
'help.option.group.create.force': string;
|
|
485
|
-
'help.option.group.sync.skipEmbeddings': string;
|
|
486
491
|
'help.option.group.sync.exactOnly': string;
|
|
487
|
-
'help.option.group.sync.allowStale': string;
|
|
488
492
|
'help.option.group.sync.verbose': string;
|
|
489
493
|
'help.option.status.json': string;
|
|
490
494
|
'help.option.json': string;
|
package/dist/cli/i18n/zh-CN.d.ts
CHANGED
|
@@ -58,6 +58,9 @@ export declare const zhCN: {
|
|
|
58
58
|
'tool.usage.cypher': string;
|
|
59
59
|
'tool.warn.unknownKind': string;
|
|
60
60
|
'tool.detectChanges.noChanges': string;
|
|
61
|
+
'tool.detectChanges.partial': string;
|
|
62
|
+
'tool.detectChanges.truncated': string;
|
|
63
|
+
'tool.detectChanges.truncatedDegraded': string;
|
|
61
64
|
'tool.detectChanges.changesSummary': string;
|
|
62
65
|
'tool.detectChanges.affectedProcesses': string;
|
|
63
66
|
'tool.detectChanges.riskLevel': string;
|
|
@@ -153,6 +156,7 @@ export declare const zhCN: {
|
|
|
153
156
|
'help.option.analyze.skills': string;
|
|
154
157
|
'help.option.analyze.skipAgentsMd': string;
|
|
155
158
|
'help.option.analyze.noStats': string;
|
|
159
|
+
'help.option.analyze.selfCommit': string;
|
|
156
160
|
'help.option.analyze.skipSkills': string;
|
|
157
161
|
'help.option.analyze.indexOnly': string;
|
|
158
162
|
'help.option.skipGit': string;
|
|
@@ -229,9 +233,7 @@ export declare const zhCN: {
|
|
|
229
233
|
'help.option.embeddings.install.cuda': string;
|
|
230
234
|
'help.option.embeddings.install.force': string;
|
|
231
235
|
'help.option.group.create.force': string;
|
|
232
|
-
'help.option.group.sync.skipEmbeddings': string;
|
|
233
236
|
'help.option.group.sync.exactOnly': string;
|
|
234
|
-
'help.option.group.sync.allowStale': string;
|
|
235
237
|
'help.option.group.sync.verbose': string;
|
|
236
238
|
'help.option.status.json': string;
|
|
237
239
|
'help.option.json': string;
|
package/dist/cli/i18n/zh-CN.js
CHANGED
|
@@ -54,10 +54,13 @@ export const zhCN = {
|
|
|
54
54
|
'tool.usage.query': '用法:gitnexus query [搜索词] 或 gitnexus query --query <文本>',
|
|
55
55
|
'tool.usage.context': '用法:gitnexus context <符号名> [--uid <uid>] [--file <路径>]',
|
|
56
56
|
'tool.usage.impact': '用法:gitnexus impact <符号名> [--uid <uid>] [--file <路径>] [--kind <类型>] [--direction upstream|downstream]',
|
|
57
|
-
'tool.usage.trace': '用法:gitnexus trace <起点> <终点> [--from-uid <uid>] [--to-uid <uid>] [--depth <n>]',
|
|
57
|
+
'tool.usage.trace': '用法:gitnexus trace <起点> <终点> [-f|--file <路径>] [--from-file <路径>] [--to-file <路径>] [--from-uid <uid>] [--to-uid <uid>] [--depth <n>]',
|
|
58
58
|
'tool.usage.cypher': '用法:gitnexus cypher <Cypher 查询>',
|
|
59
59
|
'tool.warn.unknownKind': "--kind '{{kind}}' 不是已知的符号类型(如 Function、Class、Method),不会用于缩小结果范围。",
|
|
60
60
|
'tool.detectChanges.noChanges': '未检测到变更。',
|
|
61
|
+
'tool.detectChanges.partial': '结果不完整:图查询失败,可能遗漏已变更符号。请勿将其视为通过的提交前检查。',
|
|
62
|
+
'tool.detectChanges.truncated': '列表已截断:已变更符号列表被截断,未列出全部变更符号。计数与风险等级仍涵盖全部符号。',
|
|
63
|
+
'tool.detectChanges.truncatedDegraded': '列表已截断:已变更符号列表被截断。本次运行同时不完整,因此计数为下限而非总数。',
|
|
61
64
|
'tool.detectChanges.changesSummary': '变更:{{files}} 个文件,{{symbols}} 个符号',
|
|
62
65
|
'tool.detectChanges.affectedProcesses': '受影响流程:{{count}}',
|
|
63
66
|
'tool.detectChanges.riskLevel': '风险等级:{{risk}}',
|
|
@@ -153,6 +156,7 @@ export const zhCN = {
|
|
|
153
156
|
'help.option.analyze.skills': '根据检测到的社区生成仓库专属 skill 文件(同时设置 --index-only 时无效)。',
|
|
154
157
|
'help.option.analyze.skipAgentsMd': '跳过更新 AGENTS.md 和 CLAUDE.md 中的 gitnexus 区块',
|
|
155
158
|
'help.option.analyze.noStats': '从 AGENTS.md 和 CLAUDE.md 中省略易变的文件/符号计数',
|
|
159
|
+
'help.option.analyze.selfCommit': '在 analyze 后自动提交 AGENTS.md/CLAUDE.md 的变更(默认关闭,需显式开启)。仅限这两个文件(绝不使用 `git add -A`);若两者均不存在、均未变更,或仓库未配置 git 身份,则不执行任何操作。',
|
|
156
160
|
'help.option.analyze.skipSkills': '跳过直接安装在 .claude/skills/ 和 .agents/skills/ 下的标准 GitNexus skill 文件。不抑制 --skills 生成的社区 skill(位于 .claude/skills/gitnexus-area-*)。使用 --index-only 可跳过所有 AI 上下文文件注入。',
|
|
157
161
|
'help.option.analyze.indexOnly': '纯索引模式:跳过所有文件注入(AGENTS.md、CLAUDE.md、skills)',
|
|
158
162
|
'help.option.skipGit': '将提供的路径/cwd 视为索引根目录,并跳过向上查找 git 根目录',
|
|
@@ -180,13 +184,13 @@ export const zhCN = {
|
|
|
180
184
|
'help.option.clean.branch': '仅删除指定分支的索引(不影响工作区索引)',
|
|
181
185
|
'help.option.clean.lbugSidecars': '清理已暂存的 LadybugDB 恢复 sidecar(missing-shadow WAL 隔离文件与 dirty-recovery 暂存文件)',
|
|
182
186
|
'help.option.wiki.force': '即使已是最新也强制完整重新生成',
|
|
183
|
-
'help.option.wiki.provider': 'LLM 提供商:openai、openrouter、azure、custom、cursor、claude、codex 或 opencode(默认:
|
|
184
|
-
'help.option.wiki.model': 'LLM 模型或
|
|
187
|
+
'help.option.wiki.provider': 'LLM 提供商:minimax、openai、openrouter、azure、custom、cursor、claude、codex 或 opencode(默认:minimax)',
|
|
188
|
+
'help.option.wiki.model': 'LLM 模型或 deployment 名称(默认:MiniMax-M3)',
|
|
185
189
|
'help.option.wiki.baseUrl': 'LLM API base URL。Azure v1:https://{resource}.openai.azure.com/openai/v1',
|
|
186
190
|
'help.option.wiki.apiKey': 'LLM API key 或 Azure api-key(保存到 ~/.gitnexus/config.json)',
|
|
187
191
|
'help.option.wiki.apiVersion': 'Azure api-version 查询参数,例如 2024-10-21(仅旧版 Azure API)',
|
|
188
|
-
'help.option.wiki.reasoningModel': '
|
|
189
|
-
'help.option.wiki.noReasoningModel': '禁用 reasoning
|
|
192
|
+
'help.option.wiki.reasoningModel': '启用 reasoning 模式;MiniMax-M3 使用自适应 thinking',
|
|
193
|
+
'help.option.wiki.noReasoningModel': '禁用 reasoning 模式;MiniMax-M3 关闭 thinking',
|
|
190
194
|
'help.option.wiki.concurrency': '并行 LLM 调用数(默认:3)',
|
|
191
195
|
'help.option.wiki.timeout': 'LLM 请求超时时间(秒,默认:禁用)',
|
|
192
196
|
'help.option.wiki.retries': '每个请求的最大 LLM 重试次数(默认:3)',
|
|
@@ -229,10 +233,8 @@ export const zhCN = {
|
|
|
229
233
|
'help.option.embeddings.install.cuda': '同时下载 CUDA GPU 二进制文件(运行 onnxruntime-node 的 NuGet postinstall;代理后请设置 GLOBAL_AGENT_HTTPS_PROXY)',
|
|
230
234
|
'help.option.embeddings.install.force': '即使嵌入组件已可解析,也强制安装到运行时目录',
|
|
231
235
|
'help.option.group.create.force': '覆盖现有仓库组',
|
|
232
|
-
'help.option.group.sync.
|
|
233
|
-
'help.option.group.sync.
|
|
234
|
-
'help.option.group.sync.allowStale': '跳过过期索引警告',
|
|
235
|
-
'help.option.group.sync.verbose': '显示每条跨仓库链接详情',
|
|
236
|
+
'help.option.group.sync.exactOnly': '跳过通配符服务匹配,仅按契约 ID 精确匹配建立跨仓链接(清单声明的链接仍然生效)',
|
|
237
|
+
'help.option.group.sync.verbose': '显示额外的同步诊断信息',
|
|
236
238
|
'help.option.status.json': '输出机器可读的索引和分析器来源信息',
|
|
237
239
|
'help.option.json': 'JSON 输出',
|
|
238
240
|
'help.option.group.impact.target': '要分析的符号或文件名',
|
package/dist/cli/index.js
CHANGED
|
@@ -53,6 +53,9 @@ program
|
|
|
53
53
|
'Without this flag, analyze always updates the workspace index, which follows the ' +
|
|
54
54
|
'checked-out working tree. Distinct from --default-branch (cosmetic base_ref).')
|
|
55
55
|
.option('--no-stats', 'Omit volatile file/symbol counts from AGENTS.md and CLAUDE.md')
|
|
56
|
+
.option('--self-commit', 'Auto-commit AGENTS.md/CLAUDE.md changes after analyze (opt-in, off by default). ' +
|
|
57
|
+
'Scoped to only those two files (never `git add -A`); no-ops if neither exists, ' +
|
|
58
|
+
'neither changed, or the repo has no git identity configured.')
|
|
56
59
|
.option('--skip-skills', 'Skip installing standard GitNexus skill files directly under .claude/skills/ and .agents/skills/. ' +
|
|
57
60
|
'Does not suppress community skills from --skills (those use .claude/skills/gitnexus-area-*). ' +
|
|
58
61
|
'Use --index-only to skip all AI-context file injection.')
|
|
@@ -184,13 +187,13 @@ program
|
|
|
184
187
|
.command('wiki [path]')
|
|
185
188
|
.description('Generate repository wiki from knowledge graph')
|
|
186
189
|
.option('-f, --force', 'Force full regeneration even if up to date')
|
|
187
|
-
.option('--provider <provider>', 'LLM provider: openai, openrouter, azure, custom, cursor, claude, codex, or opencode (default:
|
|
188
|
-
.option('--model <model>', 'LLM model or
|
|
190
|
+
.option('--provider <provider>', 'LLM provider: minimax, openai, openrouter, azure, custom, cursor, claude, codex, or opencode (default: minimax)')
|
|
191
|
+
.option('--model <model>', 'LLM model or deployment name (default: MiniMax-M3)')
|
|
189
192
|
.option('--base-url <url>', 'LLM API base URL. Azure v1: https://{resource}.openai.azure.com/openai/v1')
|
|
190
193
|
.option('--api-key <key>', 'LLM API key or Azure api-key (saved to ~/.gitnexus/config.json)')
|
|
191
194
|
.option('--api-version <version>', 'Azure api-version query param, e.g. 2024-10-21 (legacy Azure API only)')
|
|
192
|
-
.option('--reasoning-model', '
|
|
193
|
-
.option('--no-reasoning-model', 'Disable reasoning
|
|
195
|
+
.option('--reasoning-model', 'Enable reasoning mode; MiniMax-M3 uses adaptive thinking')
|
|
196
|
+
.option('--no-reasoning-model', 'Disable reasoning mode; MiniMax-M3 disables thinking')
|
|
194
197
|
.option('--concurrency <n>', 'Parallel LLM calls (default: 3)', '3')
|
|
195
198
|
.option('--timeout <seconds>', 'LLM request timeout in seconds (default: disabled)')
|
|
196
199
|
.option('--retries <n>', 'Max LLM retry attempts per request (default: 3)')
|
|
@@ -257,6 +260,7 @@ program
|
|
|
257
260
|
.command('trace <from> <to>')
|
|
258
261
|
.description('Find the shortest directed path between two symbols (call + class-member edges)')
|
|
259
262
|
.option('--from-uid <uid>', 'Source symbol UID (zero-ambiguity)')
|
|
263
|
+
.option('-f, --file <path>', 'Source file path hint (alias for --from-file)')
|
|
260
264
|
.option('--from-file <path>', 'Source file path hint')
|
|
261
265
|
.option('--to-uid <uid>', 'Target symbol UID (zero-ambiguity)')
|
|
262
266
|
.option('--to-file <path>', 'Target file path hint')
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* npm 11.x npx-install-crash nudge for the `analyze` command (#1939).
|
|
3
3
|
*
|
|
4
|
-
* The gitnexus/pnpm/npx selection itself lives in the canonical hook helper
|
|
4
|
+
* The gitnexus/pnpm/bun/npx selection itself lives in the canonical hook helper
|
|
5
5
|
* (hooks/claude/resolve-analyze-cmd.cjs) — self-contained CJS because the copied
|
|
6
6
|
* hook runtime cannot import from the package. We reuse it here via createRequire
|
|
7
7
|
* instead of re-implementing it, so there is one source of truth for the
|
|
@@ -15,7 +15,11 @@ export { NPX_REF };
|
|
|
15
15
|
export declare function getNpmMajorVersion(): number | null;
|
|
16
16
|
/**
|
|
17
17
|
* One-line stderr nudge when an npm 11+ user is on the npx install path (#1939).
|
|
18
|
-
* Skipped when a global `gitnexus` or `
|
|
19
|
-
* nags users who are not exposed to the npx/arborist crash.
|
|
18
|
+
* Skipped when a global `gitnexus`, `pnpm` or `bunx` is already preferred, so it
|
|
19
|
+
* never nags users who are not exposed to the npx/arborist crash. "Preferred"
|
|
20
|
+
* means usable, not merely on PATH: a `bunx` shim that no longer runs fails the
|
|
21
|
+
* cjs liveness probe, resolves back to `npx`, and so still gets warned here —
|
|
22
|
+
* without that, a broken bunx would suppress the warning AND emit a command that
|
|
23
|
+
* cannot run.
|
|
20
24
|
*/
|
|
21
25
|
export declare function warnIfNpm11NpxRisk(): void;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* npm 11.x npx-install-crash nudge for the `analyze` command (#1939).
|
|
3
3
|
*
|
|
4
|
-
* The gitnexus/pnpm/npx selection itself lives in the canonical hook helper
|
|
4
|
+
* The gitnexus/pnpm/bun/npx selection itself lives in the canonical hook helper
|
|
5
5
|
* (hooks/claude/resolve-analyze-cmd.cjs) — self-contained CJS because the copied
|
|
6
6
|
* hook runtime cannot import from the package. We reuse it here via createRequire
|
|
7
7
|
* instead of re-implementing it, so there is one source of truth for the
|
|
@@ -53,8 +53,12 @@ export function getNpmMajorVersion() {
|
|
|
53
53
|
}
|
|
54
54
|
/**
|
|
55
55
|
* One-line stderr nudge when an npm 11+ user is on the npx install path (#1939).
|
|
56
|
-
* Skipped when a global `gitnexus` or `
|
|
57
|
-
* nags users who are not exposed to the npx/arborist crash.
|
|
56
|
+
* Skipped when a global `gitnexus`, `pnpm` or `bunx` is already preferred, so it
|
|
57
|
+
* never nags users who are not exposed to the npx/arborist crash. "Preferred"
|
|
58
|
+
* means usable, not merely on PATH: a `bunx` shim that no longer runs fails the
|
|
59
|
+
* cjs liveness probe, resolves back to `npx`, and so still gets warned here —
|
|
60
|
+
* without that, a broken bunx would suppress the warning AND emit a command that
|
|
61
|
+
* cannot run.
|
|
58
62
|
*/
|
|
59
63
|
export function warnIfNpm11NpxRisk() {
|
|
60
64
|
if (resolveInvocationMode() !== 'npx')
|
package/dist/cli/setup.js
CHANGED
|
@@ -697,14 +697,15 @@ async function setupOpenCode(result) {
|
|
|
697
697
|
result.skipped.push('OpenCode (not installed)');
|
|
698
698
|
return;
|
|
699
699
|
}
|
|
700
|
-
const
|
|
700
|
+
const target = mcpTarget('opencode');
|
|
701
701
|
try {
|
|
702
|
-
const
|
|
702
|
+
const configPath = await resolveMcpConfigFile(target);
|
|
703
|
+
const ok = await mergeJsoncFile(configPath, target.keyPath, getOpenCodeMcpEntry());
|
|
703
704
|
if (ok) {
|
|
704
705
|
result.configured.push('OpenCode');
|
|
705
706
|
}
|
|
706
707
|
else {
|
|
707
|
-
result.errors.push(
|
|
708
|
+
result.errors.push(`OpenCode: ${path.basename(configPath)} is corrupt — skipping to preserve existing content`);
|
|
708
709
|
}
|
|
709
710
|
}
|
|
710
711
|
catch (err) {
|
package/dist/cli/skill-gen.d.ts
CHANGED
|
@@ -7,12 +7,7 @@
|
|
|
7
7
|
* cross-community connections.
|
|
8
8
|
*/
|
|
9
9
|
import { PipelineResult } from '../types/pipeline.js';
|
|
10
|
-
|
|
11
|
-
name: string;
|
|
12
|
-
label: string;
|
|
13
|
-
symbolCount: number;
|
|
14
|
-
fileCount: number;
|
|
15
|
-
}
|
|
10
|
+
import type { GeneratedSkillInfo } from './generated-skill.js';
|
|
16
11
|
/**
|
|
17
12
|
* @brief Generate repo-specific skill files from detected communities
|
|
18
13
|
* @param {string} repoPath - Absolute path to the repository root
|
package/dist/cli/tool.d.ts
CHANGED
package/dist/cli/tool.js
CHANGED
|
@@ -39,9 +39,18 @@ async function getBackend() {
|
|
|
39
39
|
* and write directly to the real stdout fd (#324).
|
|
40
40
|
*
|
|
41
41
|
* Falls back to stderr if the fd write fails (e.g., broken pipe).
|
|
42
|
+
*
|
|
43
|
+
* `render` is for the commands that print prose instead of JSON: they hand over
|
|
44
|
+
* the STRUCTURED result and a formatter, so the payload stays visible to the
|
|
45
|
+
* exit-code test below — pre-formatting it into a string would hide the very
|
|
46
|
+
* fields that test reads.
|
|
42
47
|
*/
|
|
43
|
-
function output(data) {
|
|
44
|
-
const text =
|
|
48
|
+
function output(data, render) {
|
|
49
|
+
const text = render
|
|
50
|
+
? render(data)
|
|
51
|
+
: typeof data === 'string'
|
|
52
|
+
? data
|
|
53
|
+
: JSON.stringify(data, null, 2);
|
|
45
54
|
try {
|
|
46
55
|
writeSync(1, text + '\n');
|
|
47
56
|
}
|
|
@@ -54,16 +63,34 @@ function output(data) {
|
|
|
54
63
|
// Fallback: stderr (previous behavior, works on all platforms)
|
|
55
64
|
process.stderr.write(text + '\n');
|
|
56
65
|
}
|
|
57
|
-
//
|
|
58
|
-
//
|
|
59
|
-
//
|
|
60
|
-
//
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
66
|
+
// Every tool command routes its result through here, so this is the one place
|
|
67
|
+
// that keeps scripted callers honest — `gitnexus impact … && <edit>` and
|
|
68
|
+
// `gitnexus detect-changes && git commit` must not proceed on a result that
|
|
69
|
+
// did not complete. Two shapes say so, and both exit non-zero:
|
|
70
|
+
//
|
|
71
|
+
// • `error` — a backend failure, returned as a payload rather than thrown
|
|
72
|
+
// (#2469).
|
|
73
|
+
// • `partial` — a step failed and was SWALLOWED (#2915), so the counts and
|
|
74
|
+
// risk level are lower bounds a caller would otherwise read as clean. It
|
|
75
|
+
// is cross-tool vocabulary, not detect_changes' private flag: `query`
|
|
76
|
+
// raises it for degraded enrichment or a partial FTS failure, and `impact`
|
|
77
|
+
// for an interrupted traversal or capped per-symbol enrichment — a short
|
|
78
|
+
// caller set and an under-ranked risk, on the tool AGENTS.md makes a MUST
|
|
79
|
+
// gate before every edit.
|
|
80
|
+
//
|
|
81
|
+
// One code for both, because `&&` cannot tell two apart and a "softer" code
|
|
82
|
+
// for `partial` would invite exempting it again.
|
|
83
|
+
//
|
|
84
|
+
// NOT here: `truncated`, where only the LISTING is capped while the counts and
|
|
85
|
+
// risk are computed over the full set — the verdict is sound, so failing on it
|
|
86
|
+
// would fire on every large-but-healthy diff. Nor `partialProbe`, a narrower
|
|
87
|
+
// per-candidate flag on ambiguous impact targets.
|
|
88
|
+
if (data && typeof data === 'object') {
|
|
89
|
+
const payload = data;
|
|
90
|
+
const failed = (typeof payload.error === 'string' && payload.error.trim().length > 0) ||
|
|
91
|
+
payload.partial === true;
|
|
92
|
+
if (failed)
|
|
93
|
+
process.exitCode = 1;
|
|
67
94
|
}
|
|
68
95
|
}
|
|
69
96
|
/**
|
|
@@ -275,7 +302,9 @@ export async function detectChangesCommand(options) {
|
|
|
275
302
|
if (Array.isArray(result.affected_processes))
|
|
276
303
|
result.affected_processes = result.affected_processes.slice(0, limit);
|
|
277
304
|
}
|
|
278
|
-
|
|
305
|
+
// Hand over the structured result plus its formatter, not the formatted text:
|
|
306
|
+
// `output()` reads `error` / `partial` off the payload to set the exit code.
|
|
307
|
+
output(result, formatDetectChangesResult);
|
|
279
308
|
}
|
|
280
309
|
export async function checkCommand(options) {
|
|
281
310
|
if (!options?.cycles) {
|
|
@@ -290,21 +319,42 @@ export async function checkCommand(options) {
|
|
|
290
319
|
repo: options.repo,
|
|
291
320
|
branch: options.branch,
|
|
292
321
|
});
|
|
322
|
+
// A rendering guard, not an exit-code decision — `output()` owns that. An
|
|
323
|
+
// error payload carries no `cycles` array, so the prose branch below would
|
|
324
|
+
// throw on it; print the structured payload and stop.
|
|
293
325
|
if (result?.error) {
|
|
294
326
|
output(result);
|
|
295
|
-
process.exitCode = 1;
|
|
296
327
|
return;
|
|
297
328
|
}
|
|
298
329
|
if (options.json) {
|
|
299
330
|
output(result);
|
|
300
331
|
}
|
|
301
|
-
else if (result.
|
|
332
|
+
else if (result.status === 'clean') {
|
|
302
333
|
output('No circular imports found.');
|
|
303
334
|
}
|
|
304
335
|
else {
|
|
305
336
|
output(result.cycles.map((cycle) => cycle.files.join(' -> ')).join('\n'));
|
|
337
|
+
// Past the enumeration cap the tool reports one representative cycle per
|
|
338
|
+
// component instead of every elementary cycle. Say so, or the short list
|
|
339
|
+
// reads as the whole truth on exactly the repositories where it is not.
|
|
340
|
+
if (result.enumeration === 'component-representatives') {
|
|
341
|
+
// Phrased to need no plural: `checkCommand` predates the `t()` i18n
|
|
342
|
+
// layer and none of its output goes through it, so inventing a plural
|
|
343
|
+
// here by hand would be the only one in the file.
|
|
344
|
+
output(`\n(showing one representative cycle per circular component — ` +
|
|
345
|
+
`${result.componentCount} in total; the full enumeration exceeded the safety limit.)`);
|
|
346
|
+
}
|
|
306
347
|
}
|
|
307
|
-
|
|
348
|
+
// Policy, not degradation: a clean run that FOUND cycles is `check` failing
|
|
349
|
+
// its own check, so `output()` — which fails closed on `error` and `partial`
|
|
350
|
+
// — deliberately knows nothing about it.
|
|
351
|
+
//
|
|
352
|
+
// Keyed on `status`, NOT on `cycleCount`. Past the enumeration cap the
|
|
353
|
+
// report carries `cycleCount: null` on purpose, because a partial count must
|
|
354
|
+
// not read as a real one — and `null > 0` is false, so counting here would
|
|
355
|
+
// exit 0 on precisely the repositories with the most cycles. `status`
|
|
356
|
+
// answers "were any found" in both enumeration modes.
|
|
357
|
+
if (result.status === 'cycles_found')
|
|
308
358
|
process.exitCode = 1;
|
|
309
359
|
}
|
|
310
360
|
catch (error) {
|
|
@@ -317,6 +367,12 @@ export async function traceCommand(from, to, options) {
|
|
|
317
367
|
cliErrorKey('tool.usage.trace');
|
|
318
368
|
process.exit(1);
|
|
319
369
|
}
|
|
370
|
+
if (options?.file !== undefined &&
|
|
371
|
+
options?.fromFile !== undefined &&
|
|
372
|
+
options.file !== options.fromFile) {
|
|
373
|
+
cliErrorKey('tool.usage.trace');
|
|
374
|
+
process.exit(1);
|
|
375
|
+
}
|
|
320
376
|
if ((!from?.trim() && !options?.fromUid) || (!to?.trim() && !options?.toUid)) {
|
|
321
377
|
cliErrorKey('tool.usage.trace');
|
|
322
378
|
process.exit(1);
|
|
@@ -332,10 +388,11 @@ export async function traceCommand(from, to, options) {
|
|
|
332
388
|
}
|
|
333
389
|
try {
|
|
334
390
|
const backend = await getBackend();
|
|
391
|
+
const fromFile = options?.fromFile ?? options?.file;
|
|
335
392
|
const result = await backend.callTool('trace', {
|
|
336
393
|
from: from || undefined,
|
|
337
394
|
from_uid: options?.fromUid,
|
|
338
|
-
from_file:
|
|
395
|
+
from_file: fromFile,
|
|
339
396
|
to: to || undefined,
|
|
340
397
|
to_uid: options?.toUid,
|
|
341
398
|
to_file: options?.toFile,
|
package/dist/cli/wiki.js
CHANGED
|
@@ -11,7 +11,7 @@ import cliProgress from 'cli-progress';
|
|
|
11
11
|
import { getGitRoot, isGitRepo } from '../storage/git.js';
|
|
12
12
|
import { getStoragePaths, loadMeta, loadCLIConfig, saveCLIConfig, } from '../storage/repo-manager.js';
|
|
13
13
|
import { WikiGenerator } from '../core/wiki/generator.js';
|
|
14
|
-
import { parseLLMAllowedInsecureHttpHosts, resolveLLMConfig, } from '../core/wiki/llm-client.js';
|
|
14
|
+
import { MINIMAX_MODEL_IDS, MINIMAX_OPENAI_BASE_URLS, parseLLMAllowedInsecureHttpHosts, resolveLLMConfig, } from '../core/wiki/llm-client.js';
|
|
15
15
|
import { detectCursorCLI } from '../core/wiki/cursor-client.js';
|
|
16
16
|
import { detectLocalCLI } from '../core/wiki/local-cli-client.js';
|
|
17
17
|
import { logger } from '../core/logger.js';
|
|
@@ -176,6 +176,14 @@ const wikiCommandImpl = async (inputPath, options) => {
|
|
|
176
176
|
options?.reasoningModel !== undefined) {
|
|
177
177
|
const existing = await loadCLIConfig();
|
|
178
178
|
const updates = {};
|
|
179
|
+
const providerChanged = !!options.provider && options.provider !== existing.provider;
|
|
180
|
+
if (providerChanged) {
|
|
181
|
+
updates.apiKey = undefined;
|
|
182
|
+
updates.baseUrl = undefined;
|
|
183
|
+
updates.model = undefined;
|
|
184
|
+
updates.apiVersion = undefined;
|
|
185
|
+
updates.isReasoningModel = undefined;
|
|
186
|
+
}
|
|
179
187
|
if (options.apiKey)
|
|
180
188
|
updates.apiKey = options.apiKey;
|
|
181
189
|
if (options.baseUrl)
|
|
@@ -186,6 +194,17 @@ const wikiCommandImpl = async (inputPath, options) => {
|
|
|
186
194
|
updates.apiVersion = options.apiVersion;
|
|
187
195
|
if (options.reasoningModel !== undefined)
|
|
188
196
|
updates.isReasoningModel = options.reasoningModel;
|
|
197
|
+
if (options.provider === 'minimax') {
|
|
198
|
+
if (providerChanged && options.reasoningModel === undefined) {
|
|
199
|
+
updates.isReasoningModel = undefined;
|
|
200
|
+
}
|
|
201
|
+
if (!options.baseUrl && (providerChanged || !existing.baseUrl)) {
|
|
202
|
+
updates.baseUrl = MINIMAX_OPENAI_BASE_URLS.global_en;
|
|
203
|
+
}
|
|
204
|
+
if (!options.model && (providerChanged || !existing.model)) {
|
|
205
|
+
updates.model = MINIMAX_MODEL_IDS[0];
|
|
206
|
+
}
|
|
207
|
+
}
|
|
189
208
|
// Save model to appropriate field based on provider.
|
|
190
209
|
if (options.model) {
|
|
191
210
|
const targetProvider = options.provider ?? existing.provider;
|
|
@@ -201,7 +220,7 @@ const wikiCommandImpl = async (inputPath, options) => {
|
|
|
201
220
|
}
|
|
202
221
|
const savedConfig = await loadCLIConfig();
|
|
203
222
|
const hasSavedConfig = !!(isLocalProvider(savedConfig.provider) ||
|
|
204
|
-
(savedConfig.apiKey && savedConfig.baseUrl));
|
|
223
|
+
(savedConfig.apiKey && (savedConfig.baseUrl || savedConfig.provider === 'minimax')));
|
|
205
224
|
const hasCLIOverrides = !!(options?.apiKey ||
|
|
206
225
|
options?.model ||
|
|
207
226
|
options?.baseUrl ||
|
|
@@ -224,7 +243,7 @@ const wikiCommandImpl = async (inputPath, options) => {
|
|
|
224
243
|
// Non-interactive mode — need either API key or Cursor CLI
|
|
225
244
|
if (!llmConfig.apiKey && !isLocalProvider(llmConfig.provider)) {
|
|
226
245
|
console.log(' Error: No LLM API key found.');
|
|
227
|
-
console.log(' Set
|
|
246
|
+
console.log(' Set MINIMAX_API_KEY, GITNEXUS_API_KEY, or OPENAI_API_KEY,');
|
|
228
247
|
console.log(' or pass --api-key <key>, or use --provider cursor|claude|codex|opencode.\n');
|
|
229
248
|
process.exitCode = 1;
|
|
230
249
|
return;
|
|
@@ -233,7 +252,7 @@ const wikiCommandImpl = async (inputPath, options) => {
|
|
|
233
252
|
}
|
|
234
253
|
else {
|
|
235
254
|
console.log(" No LLM configured. Let's set it up.\n");
|
|
236
|
-
console.log(' Supports
|
|
255
|
+
console.log(' Supports MiniMax, OpenAI-compatible APIs, and local agent CLIs.\n');
|
|
237
256
|
// Check if local agent CLIs are available.
|
|
238
257
|
const hasCursor = detectCursorCLI();
|
|
239
258
|
const hasClaude = detectLocalCLI('claude');
|
|
@@ -245,7 +264,9 @@ const wikiCommandImpl = async (inputPath, options) => {
|
|
|
245
264
|
console.log(' [2] OpenRouter (openrouter.ai)');
|
|
246
265
|
console.log(' [3] Azure OpenAI');
|
|
247
266
|
console.log(' [4] Custom endpoint');
|
|
248
|
-
|
|
267
|
+
console.log(' [5] MiniMax Global (api.minimax.io)');
|
|
268
|
+
console.log(' [6] MiniMax China (api.minimaxi.com)');
|
|
269
|
+
let nextChoice = 7;
|
|
249
270
|
if (hasCursor) {
|
|
250
271
|
const choice = String(nextChoice++);
|
|
251
272
|
localChoices.push({
|
|
@@ -356,10 +377,10 @@ const wikiCommandImpl = async (inputPath, options) => {
|
|
|
356
377
|
};
|
|
357
378
|
}
|
|
358
379
|
else {
|
|
359
|
-
// OpenAI-compatible provider
|
|
380
|
+
// OpenAI-compatible provider setup
|
|
360
381
|
if (choice === '2') {
|
|
361
382
|
baseUrl = 'https://openrouter.ai/api/v1';
|
|
362
|
-
defaultModel = '
|
|
383
|
+
defaultModel = '';
|
|
363
384
|
provider = 'openrouter';
|
|
364
385
|
}
|
|
365
386
|
else if (choice === '4') {
|
|
@@ -372,16 +393,30 @@ const wikiCommandImpl = async (inputPath, options) => {
|
|
|
372
393
|
defaultModel = 'gpt-4o-mini';
|
|
373
394
|
provider = 'custom';
|
|
374
395
|
}
|
|
396
|
+
else if (choice === '5' || choice === '6') {
|
|
397
|
+
baseUrl =
|
|
398
|
+
choice === '6' ? MINIMAX_OPENAI_BASE_URLS.cn_zh : MINIMAX_OPENAI_BASE_URLS.global_en;
|
|
399
|
+
defaultModel = MINIMAX_MODEL_IDS[0];
|
|
400
|
+
provider = 'minimax';
|
|
401
|
+
}
|
|
375
402
|
else {
|
|
376
403
|
baseUrl = 'https://api.openai.com/v1';
|
|
377
404
|
defaultModel = 'gpt-4o-mini';
|
|
378
405
|
provider = 'openai';
|
|
379
406
|
}
|
|
380
407
|
// Model
|
|
381
|
-
const modelInput = await prompt(` Model (default: ${defaultModel}): `);
|
|
408
|
+
const modelInput = await prompt(defaultModel ? ` Model (default: ${defaultModel}): ` : ' Model: ');
|
|
382
409
|
const model = modelInput || defaultModel;
|
|
410
|
+
if (!model) {
|
|
411
|
+
console.log('\n No model provided. Aborting.\n');
|
|
412
|
+
process.exitCode = 1;
|
|
413
|
+
return;
|
|
414
|
+
}
|
|
383
415
|
// API key — pre-fill hint if env var exists
|
|
384
|
-
const envKey =
|
|
416
|
+
const envKey = (provider === 'minimax' ? process.env.MINIMAX_API_KEY : undefined) ||
|
|
417
|
+
process.env.GITNEXUS_API_KEY ||
|
|
418
|
+
process.env.OPENAI_API_KEY ||
|
|
419
|
+
'';
|
|
385
420
|
if (envKey) {
|
|
386
421
|
const masked = envKey.slice(0, 6) + '...' + envKey.slice(-4);
|
|
387
422
|
const useEnv = await prompt(` Use existing env key (${masked})? (Y/n): `);
|
|
@@ -401,7 +436,15 @@ const wikiCommandImpl = async (inputPath, options) => {
|
|
|
401
436
|
return;
|
|
402
437
|
}
|
|
403
438
|
// Save
|
|
404
|
-
await saveCLIConfig({
|
|
439
|
+
await saveCLIConfig({
|
|
440
|
+
...savedConfig,
|
|
441
|
+
apiKey: key,
|
|
442
|
+
baseUrl,
|
|
443
|
+
model,
|
|
444
|
+
provider,
|
|
445
|
+
apiVersion: undefined,
|
|
446
|
+
isReasoningModel: undefined,
|
|
447
|
+
});
|
|
405
448
|
console.log(' Config saved to ~/.gitnexus/config.json\n');
|
|
406
449
|
llmConfig = { ...llmConfig, apiKey: key, baseUrl, model, provider };
|
|
407
450
|
}
|
|
@@ -3,6 +3,8 @@ import type { Path } from 'path-scurry';
|
|
|
3
3
|
export declare const shouldIgnorePath: (filePath: string) => boolean;
|
|
4
4
|
/** Check if a directory name is in the hardcoded ignore list */
|
|
5
5
|
export declare const isHardcodedIgnoredDirectory: (name: string) => boolean;
|
|
6
|
+
/** Apply directory ignore rules that depend on repository-relative depth. */
|
|
7
|
+
export declare const isHardcodedIgnoredDirectoryAtPath: (repoRoot: string, directoryPath: string) => boolean;
|
|
6
8
|
/**
|
|
7
9
|
* Load .gitignore and .gitnexusignore rules from the repo root.
|
|
8
10
|
* Returns an `ignore` instance with all patterns, or null if no files found.
|