kirograph 0.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1171 -0
- package/dist/architecture/index.d.ts +11 -0
- package/dist/architecture/index.d.ts.map +1 -0
- package/dist/architecture/index.js +207 -0
- package/dist/architecture/index.js.map +7 -0
- package/dist/architecture/layers/csharp.d.ts +6 -0
- package/dist/architecture/layers/csharp.d.ts.map +1 -0
- package/dist/architecture/layers/csharp.js +100 -0
- package/dist/architecture/layers/csharp.js.map +7 -0
- package/dist/architecture/layers/elixir.js +116 -0
- package/dist/architecture/layers/elixir.js.map +7 -0
- package/dist/architecture/layers/go.d.ts +7 -0
- package/dist/architecture/layers/go.d.ts.map +1 -0
- package/dist/architecture/layers/go.js +117 -0
- package/dist/architecture/layers/go.js.map +7 -0
- package/dist/architecture/layers/index.d.ts +30 -0
- package/dist/architecture/layers/index.d.ts.map +1 -0
- package/dist/architecture/layers/index.js +100 -0
- package/dist/architecture/layers/index.js.map +7 -0
- package/dist/architecture/layers/java.d.ts +7 -0
- package/dist/architecture/layers/java.d.ts.map +1 -0
- package/dist/architecture/layers/java.js +119 -0
- package/dist/architecture/layers/java.js.map +7 -0
- package/dist/architecture/layers/python.d.ts +7 -0
- package/dist/architecture/layers/python.d.ts.map +1 -0
- package/dist/architecture/layers/python.js +111 -0
- package/dist/architecture/layers/python.js.map +7 -0
- package/dist/architecture/layers/ruby.d.ts +6 -0
- package/dist/architecture/layers/ruby.d.ts.map +1 -0
- package/dist/architecture/layers/ruby.js +95 -0
- package/dist/architecture/layers/ruby.js.map +7 -0
- package/dist/architecture/layers/rust.d.ts +6 -0
- package/dist/architecture/layers/rust.d.ts.map +1 -0
- package/dist/architecture/layers/rust.js +98 -0
- package/dist/architecture/layers/rust.js.map +7 -0
- package/dist/architecture/layers/types.d.ts +2 -0
- package/dist/architecture/layers/types.d.ts.map +1 -0
- package/dist/architecture/layers/types.js +17 -0
- package/dist/architecture/layers/types.js.map +7 -0
- package/dist/architecture/layers/typescript.d.ts +9 -0
- package/dist/architecture/layers/typescript.d.ts.map +1 -0
- package/dist/architecture/layers/typescript.js +143 -0
- package/dist/architecture/layers/typescript.js.map +7 -0
- package/dist/architecture/manifest/cargo.d.ts +3 -0
- package/dist/architecture/manifest/cargo.d.ts.map +1 -0
- package/dist/architecture/manifest/cargo.js +94 -0
- package/dist/architecture/manifest/cargo.js.map +7 -0
- package/dist/architecture/manifest/csproj.d.ts +3 -0
- package/dist/architecture/manifest/csproj.d.ts.map +1 -0
- package/dist/architecture/manifest/csproj.js +75 -0
- package/dist/architecture/manifest/csproj.js.map +7 -0
- package/dist/architecture/manifest/go.d.ts +3 -0
- package/dist/architecture/manifest/go.d.ts.map +1 -0
- package/dist/architecture/manifest/go.js +85 -0
- package/dist/architecture/manifest/go.js.map +7 -0
- package/dist/architecture/manifest/gradle.d.ts +3 -0
- package/dist/architecture/manifest/gradle.d.ts.map +1 -0
- package/dist/architecture/manifest/gradle.js +80 -0
- package/dist/architecture/manifest/gradle.js.map +7 -0
- package/dist/architecture/manifest/index.d.ts +12 -0
- package/dist/architecture/manifest/index.d.ts.map +1 -0
- package/dist/architecture/manifest/index.js +130 -0
- package/dist/architecture/manifest/index.js.map +7 -0
- package/dist/architecture/manifest/maven.d.ts +3 -0
- package/dist/architecture/manifest/maven.d.ts.map +1 -0
- package/dist/architecture/manifest/maven.js +76 -0
- package/dist/architecture/manifest/maven.js.map +7 -0
- package/dist/architecture/manifest/npm.d.ts +3 -0
- package/dist/architecture/manifest/npm.d.ts.map +1 -0
- package/dist/architecture/manifest/npm.js +103 -0
- package/dist/architecture/manifest/npm.js.map +7 -0
- package/dist/architecture/manifest/python.d.ts +3 -0
- package/dist/architecture/manifest/python.d.ts.map +1 -0
- package/dist/architecture/manifest/python.js +105 -0
- package/dist/architecture/manifest/python.js.map +7 -0
- package/dist/architecture/manifest/types.d.ts +2 -0
- package/dist/architecture/manifest/types.d.ts.map +1 -0
- package/dist/architecture/manifest/types.js +17 -0
- package/dist/architecture/manifest/types.js.map +7 -0
- package/dist/architecture/types.d.ts +91 -0
- package/dist/architecture/types.d.ts.map +1 -0
- package/dist/architecture/types.js +17 -0
- package/dist/architecture/types.js.map +7 -0
- package/dist/assets/logo.png +0 -0
- package/dist/banner.d.ts +6 -0
- package/dist/banner.d.ts.map +1 -0
- package/dist/banner.js +67 -0
- package/dist/banner.js.map +1 -0
- package/dist/bin/banner.d.ts +6 -0
- package/dist/bin/banner.d.ts.map +1 -0
- package/dist/bin/banner.js +88 -0
- package/dist/bin/banner.js.map +7 -0
- package/dist/bin/commands/affected.d.ts +3 -0
- package/dist/bin/commands/affected.d.ts.map +1 -0
- package/dist/bin/commands/affected.js +78 -0
- package/dist/bin/commands/affected.js.map +7 -0
- package/dist/bin/commands/architecture.d.ts +3 -0
- package/dist/bin/commands/architecture.d.ts.map +1 -0
- package/dist/bin/commands/architecture.js +125 -0
- package/dist/bin/commands/architecture.js.map +7 -0
- package/dist/bin/commands/caveman.js +136 -0
- package/dist/bin/commands/caveman.js.map +7 -0
- package/dist/bin/commands/context.d.ts +3 -0
- package/dist/bin/commands/context.d.ts.map +1 -0
- package/dist/bin/commands/context.js +81 -0
- package/dist/bin/commands/context.js.map +7 -0
- package/dist/bin/commands/coupling.d.ts +3 -0
- package/dist/bin/commands/coupling.d.ts.map +1 -0
- package/dist/bin/commands/coupling.js +164 -0
- package/dist/bin/commands/coupling.js.map +7 -0
- package/dist/bin/commands/dashboard.d.ts +3 -0
- package/dist/bin/commands/dashboard.d.ts.map +1 -0
- package/dist/bin/commands/dashboard.js +209 -0
- package/dist/bin/commands/dashboard.js.map +7 -0
- package/dist/bin/commands/dead-code.js +77 -0
- package/dist/bin/commands/dead-code.js.map +7 -0
- package/dist/bin/commands/export.js +2620 -0
- package/dist/bin/commands/export.js.map +7 -0
- package/dist/bin/commands/files.d.ts +3 -0
- package/dist/bin/commands/files.d.ts.map +1 -0
- package/dist/bin/commands/files.js +104 -0
- package/dist/bin/commands/files.js.map +7 -0
- package/dist/bin/commands/help.d.ts +4 -0
- package/dist/bin/commands/help.d.ts.map +1 -0
- package/dist/bin/commands/help.js +212 -0
- package/dist/bin/commands/help.js.map +7 -0
- package/dist/bin/commands/hotspots.js +77 -0
- package/dist/bin/commands/hotspots.js.map +7 -0
- package/dist/bin/commands/index.d.ts +3 -0
- package/dist/bin/commands/index.d.ts.map +1 -0
- package/dist/bin/commands/index.js +58 -0
- package/dist/bin/commands/index.js.map +7 -0
- package/dist/bin/commands/init.d.ts +3 -0
- package/dist/bin/commands/init.d.ts.map +1 -0
- package/dist/bin/commands/init.js +68 -0
- package/dist/bin/commands/init.js.map +7 -0
- package/dist/bin/commands/install.d.ts +3 -0
- package/dist/bin/commands/install.d.ts.map +1 -0
- package/dist/bin/commands/install.js +34 -0
- package/dist/bin/commands/install.js.map +7 -0
- package/dist/bin/commands/mark-dirty.d.ts +3 -0
- package/dist/bin/commands/mark-dirty.d.ts.map +1 -0
- package/dist/bin/commands/mark-dirty.js +51 -0
- package/dist/bin/commands/mark-dirty.js.map +7 -0
- package/dist/bin/commands/package.d.ts +3 -0
- package/dist/bin/commands/package.d.ts.map +1 -0
- package/dist/bin/commands/package.js +139 -0
- package/dist/bin/commands/package.js.map +7 -0
- package/dist/bin/commands/path.js +93 -0
- package/dist/bin/commands/path.js.map +7 -0
- package/dist/bin/commands/qdrant.d.ts +3 -0
- package/dist/bin/commands/qdrant.d.ts.map +1 -0
- package/dist/bin/commands/qdrant.js +159 -0
- package/dist/bin/commands/qdrant.js.map +1 -0
- package/dist/bin/commands/query.d.ts +3 -0
- package/dist/bin/commands/query.d.ts.map +1 -0
- package/dist/bin/commands/query.js +47 -0
- package/dist/bin/commands/query.js.map +7 -0
- package/dist/bin/commands/serve.d.ts +3 -0
- package/dist/bin/commands/serve.d.ts.map +1 -0
- package/dist/bin/commands/serve.js +59 -0
- package/dist/bin/commands/serve.js.map +7 -0
- package/dist/bin/commands/snapshot.js +122 -0
- package/dist/bin/commands/snapshot.js.map +7 -0
- package/dist/bin/commands/status.d.ts +3 -0
- package/dist/bin/commands/status.d.ts.map +1 -0
- package/dist/bin/commands/status.js +107 -0
- package/dist/bin/commands/status.js.map +7 -0
- package/dist/bin/commands/stop.d.ts +3 -0
- package/dist/bin/commands/stop.d.ts.map +1 -0
- package/dist/bin/commands/stop.js +81 -0
- package/dist/bin/commands/stop.js.map +1 -0
- package/dist/bin/commands/surprising.js +79 -0
- package/dist/bin/commands/surprising.js.map +7 -0
- package/dist/bin/commands/sync-if-dirty.d.ts +3 -0
- package/dist/bin/commands/sync-if-dirty.d.ts.map +1 -0
- package/dist/bin/commands/sync-if-dirty.js +67 -0
- package/dist/bin/commands/sync-if-dirty.js.map +7 -0
- package/dist/bin/commands/sync.d.ts +3 -0
- package/dist/bin/commands/sync.d.ts.map +1 -0
- package/dist/bin/commands/sync.js +81 -0
- package/dist/bin/commands/sync.js.map +7 -0
- package/dist/bin/commands/typesense.d.ts +3 -0
- package/dist/bin/commands/typesense.d.ts.map +1 -0
- package/dist/bin/commands/typesense.js +126 -0
- package/dist/bin/commands/typesense.js.map +1 -0
- package/dist/bin/commands/uninit.d.ts +4 -0
- package/dist/bin/commands/uninit.d.ts.map +1 -0
- package/dist/bin/commands/uninit.js +123 -0
- package/dist/bin/commands/uninit.js.map +7 -0
- package/dist/bin/commands/unlock.d.ts +3 -0
- package/dist/bin/commands/unlock.d.ts.map +1 -0
- package/dist/bin/commands/unlock.js +53 -0
- package/dist/bin/commands/unlock.js.map +7 -0
- package/dist/bin/commands/utils.d.ts +12 -0
- package/dist/bin/commands/utils.d.ts.map +1 -0
- package/dist/bin/commands/utils.js +56 -0
- package/dist/bin/commands/utils.js.map +7 -0
- package/dist/bin/installer/archive.js +230 -0
- package/dist/bin/installer/archive.js.map +7 -0
- package/dist/bin/installer/caveman.js +57 -0
- package/dist/bin/installer/caveman.js.map +7 -0
- package/dist/bin/installer/cli-agent.d.ts +15 -0
- package/dist/bin/installer/cli-agent.d.ts.map +1 -0
- package/dist/bin/installer/cli-agent.js +89 -0
- package/dist/bin/installer/cli-agent.js.map +7 -0
- package/dist/bin/installer/config-prompt.d.ts +13 -0
- package/dist/bin/installer/config-prompt.d.ts.map +1 -0
- package/dist/bin/installer/config-prompt.js +158 -0
- package/dist/bin/installer/config-prompt.js.map +7 -0
- package/dist/bin/installer/dashboard.d.ts +3 -0
- package/dist/bin/installer/dashboard.d.ts.map +1 -0
- package/dist/bin/installer/dashboard.js +149 -0
- package/dist/bin/installer/dashboard.js.map +7 -0
- package/dist/bin/installer/hooks.d.ts +5 -0
- package/dist/bin/installer/hooks.d.ts.map +1 -0
- package/dist/bin/installer/hooks.js +155 -0
- package/dist/bin/installer/hooks.js.map +7 -0
- package/dist/bin/installer/index.d.ts +11 -0
- package/dist/bin/installer/index.d.ts.map +1 -0
- package/dist/bin/installer/index.js +228 -0
- package/dist/bin/installer/index.js.map +7 -0
- package/dist/bin/installer/mcp.d.ts +5 -0
- package/dist/bin/installer/mcp.d.ts.map +1 -0
- package/dist/bin/installer/mcp.js +80 -0
- package/dist/bin/installer/mcp.js.map +7 -0
- package/dist/bin/installer/prompts.d.ts +28 -0
- package/dist/bin/installer/prompts.d.ts.map +1 -0
- package/dist/bin/installer/prompts.js +134 -0
- package/dist/bin/installer/prompts.js.map +7 -0
- package/dist/bin/installer/qdrant-dashboard.d.ts +4 -0
- package/dist/bin/installer/qdrant-dashboard.d.ts.map +1 -0
- package/dist/bin/installer/qdrant-dashboard.js +115 -0
- package/dist/bin/installer/qdrant-dashboard.js.map +7 -0
- package/dist/bin/installer/steering.d.ts +5 -0
- package/dist/bin/installer/steering.d.ts.map +1 -0
- package/dist/bin/installer/steering.js +283 -0
- package/dist/bin/installer/steering.js.map +7 -0
- package/dist/bin/kirograph.d.ts +6 -0
- package/dist/bin/kirograph.d.ts.map +1 -0
- package/dist/bin/kirograph.js +95 -0
- package/dist/bin/kirograph.js.map +7 -0
- package/dist/bin/progress.d.ts +14 -0
- package/dist/bin/progress.d.ts.map +1 -0
- package/dist/bin/progress.js +201 -0
- package/dist/bin/progress.js.map +7 -0
- package/dist/bin/ui.d.ts +11 -0
- package/dist/bin/ui.d.ts.map +1 -0
- package/dist/bin/ui.js +71 -0
- package/dist/bin/ui.js.map +7 -0
- package/dist/config.d.ts +48 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +273 -0
- package/dist/config.js.map +7 -0
- package/dist/context/index.d.ts +61 -0
- package/dist/context/index.d.ts.map +1 -0
- package/dist/context/index.js +224 -0
- package/dist/context/index.js.map +7 -0
- package/dist/core/file-tree.d.ts +15 -0
- package/dist/core/file-tree.d.ts.map +1 -0
- package/dist/core/file-tree.js +69 -0
- package/dist/core/file-tree.js.map +7 -0
- package/dist/core/lock-manager.d.ts +20 -0
- package/dist/core/lock-manager.d.ts.map +1 -0
- package/dist/core/lock-manager.js +120 -0
- package/dist/core/lock-manager.js.map +7 -0
- package/dist/core/pipeline.d.ts +37 -0
- package/dist/core/pipeline.d.ts.map +1 -0
- package/dist/core/pipeline.js +375 -0
- package/dist/core/pipeline.js.map +7 -0
- package/dist/core/snapshot.js +141 -0
- package/dist/core/snapshot.js.map +7 -0
- package/dist/db/database.d.ts +133 -0
- package/dist/db/database.d.ts.map +1 -0
- package/dist/db/database.js +929 -0
- package/dist/db/database.js.map +7 -0
- package/dist/db/schema.sql +174 -0
- package/dist/errors.d.ts +49 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +160 -0
- package/dist/errors.js.map +7 -0
- package/dist/extraction/extractor.d.ts +29 -0
- package/dist/extraction/extractor.d.ts.map +1 -0
- package/dist/extraction/extractor.js +764 -0
- package/dist/extraction/extractor.js.map +7 -0
- package/dist/extraction/grammars.d.ts +48 -0
- package/dist/extraction/grammars.d.ts.map +1 -0
- package/dist/extraction/grammars.js +166 -0
- package/dist/extraction/grammars.js.map +7 -0
- package/dist/extraction/languages.d.ts +9 -0
- package/dist/extraction/languages.d.ts.map +1 -0
- package/dist/extraction/languages.js +103 -0
- package/dist/extraction/languages.js.map +7 -0
- package/dist/extraction/wasm/tree-sitter-pascal.wasm +0 -0
- package/dist/frameworks/csharp.d.ts +8 -0
- package/dist/frameworks/csharp.d.ts.map +1 -0
- package/dist/frameworks/csharp.js +93 -0
- package/dist/frameworks/csharp.js.map +7 -0
- package/dist/frameworks/elixir.js +142 -0
- package/dist/frameworks/elixir.js.map +7 -0
- package/dist/frameworks/express.d.ts +8 -0
- package/dist/frameworks/express.d.ts.map +1 -0
- package/dist/frameworks/express.js +143 -0
- package/dist/frameworks/express.js.map +7 -0
- package/dist/frameworks/go.d.ts +8 -0
- package/dist/frameworks/go.d.ts.map +1 -0
- package/dist/frameworks/go.js +85 -0
- package/dist/frameworks/go.js.map +7 -0
- package/dist/frameworks/index.d.ts +30 -0
- package/dist/frameworks/index.d.ts.map +1 -0
- package/dist/frameworks/index.js +243 -0
- package/dist/frameworks/index.js.map +7 -0
- package/dist/frameworks/java.d.ts +8 -0
- package/dist/frameworks/java.d.ts.map +1 -0
- package/dist/frameworks/java.js +87 -0
- package/dist/frameworks/java.js.map +7 -0
- package/dist/frameworks/laravel.d.ts +9 -0
- package/dist/frameworks/laravel.d.ts.map +1 -0
- package/dist/frameworks/laravel.js +115 -0
- package/dist/frameworks/laravel.js.map +7 -0
- package/dist/frameworks/python.d.ts +10 -0
- package/dist/frameworks/python.d.ts.map +1 -0
- package/dist/frameworks/python.js +158 -0
- package/dist/frameworks/python.js.map +7 -0
- package/dist/frameworks/react.d.ts +9 -0
- package/dist/frameworks/react.d.ts.map +1 -0
- package/dist/frameworks/react.js +230 -0
- package/dist/frameworks/react.js.map +7 -0
- package/dist/frameworks/ruby.d.ts +8 -0
- package/dist/frameworks/ruby.d.ts.map +1 -0
- package/dist/frameworks/ruby.js +136 -0
- package/dist/frameworks/ruby.js.map +7 -0
- package/dist/frameworks/rust.d.ts +8 -0
- package/dist/frameworks/rust.d.ts.map +1 -0
- package/dist/frameworks/rust.js +82 -0
- package/dist/frameworks/rust.js.map +7 -0
- package/dist/frameworks/svelte.d.ts +8 -0
- package/dist/frameworks/svelte.d.ts.map +1 -0
- package/dist/frameworks/svelte.js +174 -0
- package/dist/frameworks/svelte.js.map +7 -0
- package/dist/frameworks/swift.d.ts +10 -0
- package/dist/frameworks/swift.d.ts.map +1 -0
- package/dist/frameworks/swift.js +151 -0
- package/dist/frameworks/swift.js.map +7 -0
- package/dist/frameworks/types.d.ts +37 -0
- package/dist/frameworks/types.d.ts.map +1 -0
- package/dist/frameworks/types.js +17 -0
- package/dist/frameworks/types.js.map +7 -0
- package/dist/graph/queries.d.ts +53 -0
- package/dist/graph/queries.d.ts.map +1 -0
- package/dist/graph/queries.js +224 -0
- package/dist/graph/queries.js.map +7 -0
- package/dist/graph/traversal.d.ts +35 -0
- package/dist/graph/traversal.d.ts.map +1 -0
- package/dist/graph/traversal.js +148 -0
- package/dist/graph/traversal.js.map +7 -0
- package/dist/index.d.ts +102 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +303 -0
- package/dist/index.js.map +7 -0
- package/dist/installer/index.d.ts +10 -0
- package/dist/installer/index.d.ts.map +1 -0
- package/dist/installer/index.js +526 -0
- package/dist/installer/index.js.map +1 -0
- package/dist/mcp/server.d.ts +16 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +116 -0
- package/dist/mcp/server.js.map +7 -0
- package/dist/mcp/tools.d.ts +37 -0
- package/dist/mcp/tools.d.ts.map +1 -0
- package/dist/mcp/tools.js +779 -0
- package/dist/mcp/tools.js.map +7 -0
- package/dist/mcp/transport.d.ts +29 -0
- package/dist/mcp/transport.d.ts.map +1 -0
- package/dist/mcp/transport.js +70 -0
- package/dist/mcp/transport.js.map +7 -0
- package/dist/resolution/index.d.ts +56 -0
- package/dist/resolution/index.d.ts.map +1 -0
- package/dist/resolution/index.js +384 -0
- package/dist/resolution/index.js.map +7 -0
- package/dist/resolution/name-matcher.d.ts +25 -0
- package/dist/resolution/name-matcher.d.ts.map +1 -0
- package/dist/resolution/name-matcher.js +60 -0
- package/dist/resolution/name-matcher.js.map +7 -0
- package/dist/scripts/postinstall.js +64 -0
- package/dist/search/query-utils.d.ts +21 -0
- package/dist/search/query-utils.d.ts.map +1 -0
- package/dist/search/query-utils.js +219 -0
- package/dist/search/query-utils.js.map +7 -0
- package/dist/search/searcher.d.ts +15 -0
- package/dist/search/searcher.d.ts.map +1 -0
- package/dist/search/searcher.js +49 -0
- package/dist/search/searcher.js.map +7 -0
- package/dist/sync/index.d.ts +33 -0
- package/dist/sync/index.d.ts.map +1 -0
- package/dist/sync/index.js +200 -0
- package/dist/sync/index.js.map +7 -0
- package/dist/types.d.ts +131 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +37 -0
- package/dist/types.js.map +7 -0
- package/dist/utils.d.ts +52 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +254 -0
- package/dist/utils.js.map +7 -0
- package/dist/vectors/index.d.ts +71 -0
- package/dist/vectors/index.d.ts.map +1 -0
- package/dist/vectors/index.js +480 -0
- package/dist/vectors/index.js.map +7 -0
- package/dist/vectors/lancedb-index.d.ts +50 -0
- package/dist/vectors/lancedb-index.d.ts.map +1 -0
- package/dist/vectors/lancedb-index.js +153 -0
- package/dist/vectors/lancedb-index.js.map +7 -0
- package/dist/vectors/orama-index.d.ts +54 -0
- package/dist/vectors/orama-index.d.ts.map +1 -0
- package/dist/vectors/orama-index.js +213 -0
- package/dist/vectors/orama-index.js.map +7 -0
- package/dist/vectors/pglite-index.d.ts +53 -0
- package/dist/vectors/pglite-index.d.ts.map +1 -0
- package/dist/vectors/pglite-index.js +194 -0
- package/dist/vectors/pglite-index.js.map +7 -0
- package/dist/vectors/qdrant-index.d.ts +70 -0
- package/dist/vectors/qdrant-index.d.ts.map +1 -0
- package/dist/vectors/qdrant-index.js +364 -0
- package/dist/vectors/qdrant-index.js.map +7 -0
- package/dist/vectors/typesense-index.d.ts +75 -0
- package/dist/vectors/typesense-index.d.ts.map +1 -0
- package/dist/vectors/typesense-index.js +453 -0
- package/dist/vectors/typesense-index.js.map +7 -0
- package/dist/vectors/vec-index.d.ts +52 -0
- package/dist/vectors/vec-index.d.ts.map +1 -0
- package/dist/vectors/vec-index.js +198 -0
- package/dist/vectors/vec-index.js.map +7 -0
- package/package.json +67 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var affected_exports = {};
|
|
30
|
+
__export(affected_exports, {
|
|
31
|
+
register: () => register
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(affected_exports);
|
|
34
|
+
var path = __toESM(require("path"));
|
|
35
|
+
var fs = __toESM(require("fs"));
|
|
36
|
+
var import_ui = require("../ui");
|
|
37
|
+
function register(program) {
|
|
38
|
+
program.command("affected [files...]").description("Find test files affected by changed source files").option("--stdin", "Read file list from stdin (one per line)").option("-d, --depth <n>", "Max dependency traversal depth", "5").option("-f, --filter <glob>", "Custom glob to identify test files").option("-j, --json", "Output as JSON").option("-q, --quiet", "Output file paths only").option("-p, --path <path>", "Project path").action(async (files, opts) => {
|
|
39
|
+
const KiroGraph = (await Promise.resolve().then(() => require("../../index.js"))).default;
|
|
40
|
+
const target = path.resolve(opts.path ?? process.cwd());
|
|
41
|
+
const cg = await KiroGraph.open(target);
|
|
42
|
+
let changedFiles = [...files];
|
|
43
|
+
if (opts.stdin) {
|
|
44
|
+
const lines = fs.readFileSync("/dev/stdin", "utf8").split("\n").map((l) => l.trim()).filter(Boolean);
|
|
45
|
+
changedFiles.push(...lines);
|
|
46
|
+
}
|
|
47
|
+
if (changedFiles.length === 0) {
|
|
48
|
+
console.error("No files provided. Pass files as arguments or use --stdin.");
|
|
49
|
+
cg.close();
|
|
50
|
+
process.exit(1);
|
|
51
|
+
}
|
|
52
|
+
const affected = cg.getAffectedTests(changedFiles, {
|
|
53
|
+
depth: parseInt(opts.depth),
|
|
54
|
+
testPattern: opts.filter
|
|
55
|
+
});
|
|
56
|
+
if (opts.json) {
|
|
57
|
+
console.log(JSON.stringify({ changedFiles, affectedTests: affected }, null, 2));
|
|
58
|
+
} else if (opts.quiet) {
|
|
59
|
+
for (const f of affected) console.log(f);
|
|
60
|
+
} else {
|
|
61
|
+
if (affected.length === 0) {
|
|
62
|
+
console.log(` ${import_ui.dim}No affected test files found.${import_ui.reset}`);
|
|
63
|
+
} else {
|
|
64
|
+
console.log(`
|
|
65
|
+
${(0, import_ui.section)("Affected test files")} ${import_ui.dim}(${affected.length})${import_ui.reset}
|
|
66
|
+
`);
|
|
67
|
+
for (const f of affected) console.log(` ${import_ui.violet}${import_ui.bold}${f}${import_ui.reset}`);
|
|
68
|
+
console.log();
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
cg.close();
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
75
|
+
0 && (module.exports = {
|
|
76
|
+
register
|
|
77
|
+
});
|
|
78
|
+
//# sourceMappingURL=affected.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/bin/commands/affected.ts"],
|
|
4
|
+
"sourcesContent": ["import { Command } from 'commander';\nimport * as path from 'path';\nimport * as fs from 'fs';\nimport { dim, reset, violet, bold, section } from '../ui';\n\nexport function register(program: Command): void {\n program\n .command('affected [files...]')\n .description('Find test files affected by changed source files')\n .option('--stdin', 'Read file list from stdin (one per line)')\n .option('-d, --depth <n>', 'Max dependency traversal depth', '5')\n .option('-f, --filter <glob>', 'Custom glob to identify test files')\n .option('-j, --json', 'Output as JSON')\n .option('-q, --quiet', 'Output file paths only')\n .option('-p, --path <path>', 'Project path')\n .action(async (files: string[], opts: {\n stdin?: boolean; depth: string; filter?: string;\n json?: boolean; quiet?: boolean; path?: string;\n }) => {\n const KiroGraph = (await Promise.resolve().then(() => require('../../index.js'))).default;\n const target = path.resolve(opts.path ?? process.cwd());\n const cg = await KiroGraph.open(target);\n\n let changedFiles = [...files];\n\n if (opts.stdin) {\n const lines = fs.readFileSync('/dev/stdin', 'utf8').split('\\n').map((l: string) => l.trim()).filter(Boolean);\n changedFiles.push(...lines);\n }\n\n if (changedFiles.length === 0) {\n console.error('No files provided. Pass files as arguments or use --stdin.');\n cg.close(); process.exit(1);\n }\n\n const affected = cg.getAffectedTests(changedFiles, {\n depth: parseInt(opts.depth),\n testPattern: opts.filter,\n });\n\n if (opts.json) {\n console.log(JSON.stringify({ changedFiles, affectedTests: affected }, null, 2));\n } else if (opts.quiet) {\n for (const f of affected) console.log(f);\n } else {\n if (affected.length === 0) {\n console.log(` ${dim}No affected test files found.${reset}`);\n } else {\n console.log(`\\n ${section('Affected test files')} ${dim}(${affected.length})${reset}\\n`);\n for (const f of affected) console.log(` ${violet}${bold}${f}${reset}`);\n console.log();\n }\n }\n cg.close();\n });\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,WAAsB;AACtB,SAAoB;AACpB,gBAAkD;AAE3C,SAAS,SAAS,SAAwB;AAC/C,UACG,QAAQ,qBAAqB,EAC7B,YAAY,kDAAkD,EAC9D,OAAO,WAAW,0CAA0C,EAC5D,OAAO,mBAAmB,kCAAkC,GAAG,EAC/D,OAAO,uBAAuB,oCAAoC,EAClE,OAAO,cAAc,gBAAgB,EACrC,OAAO,eAAe,wBAAwB,EAC9C,OAAO,qBAAqB,cAAc,EAC1C,OAAO,OAAO,OAAiB,SAG1B;AACJ,UAAM,aAAa,MAAM,QAAQ,QAAQ,EAAE,KAAK,MAAM,QAAQ,gBAAgB,CAAC,GAAG;AAClF,UAAM,SAAS,KAAK,QAAQ,KAAK,QAAQ,QAAQ,IAAI,CAAC;AACtD,UAAM,KAAK,MAAM,UAAU,KAAK,MAAM;AAEtC,QAAI,eAAe,CAAC,GAAG,KAAK;AAE5B,QAAI,KAAK,OAAO;AACd,YAAM,QAAQ,GAAG,aAAa,cAAc,MAAM,EAAE,MAAM,IAAI,EAAE,IAAI,CAAC,MAAc,EAAE,KAAK,CAAC,EAAE,OAAO,OAAO;AAC3G,mBAAa,KAAK,GAAG,KAAK;AAAA,IAC5B;AAEA,QAAI,aAAa,WAAW,GAAG;AAC7B,cAAQ,MAAM,4DAA4D;AAC1E,SAAG,MAAM;AAAG,cAAQ,KAAK,CAAC;AAAA,IAC5B;AAEA,UAAM,WAAW,GAAG,iBAAiB,cAAc;AAAA,MACjD,OAAO,SAAS,KAAK,KAAK;AAAA,MAC1B,aAAa,KAAK;AAAA,IACpB,CAAC;AAED,QAAI,KAAK,MAAM;AACb,cAAQ,IAAI,KAAK,UAAU,EAAE,cAAc,eAAe,SAAS,GAAG,MAAM,CAAC,CAAC;AAAA,IAChF,WAAW,KAAK,OAAO;AACrB,iBAAW,KAAK,SAAU,SAAQ,IAAI,CAAC;AAAA,IACzC,OAAO;AACL,UAAI,SAAS,WAAW,GAAG;AACzB,gBAAQ,IAAI,KAAK,aAAG,gCAAgC,eAAK,EAAE;AAAA,MAC7D,OAAO;AACL,gBAAQ,IAAI;AAAA,QAAO,mBAAQ,qBAAqB,CAAC,KAAK,aAAG,IAAI,SAAS,MAAM,IAAI,eAAK;AAAA,CAAI;AACzF,mBAAW,KAAK,SAAU,SAAQ,IAAI,KAAK,gBAAM,GAAG,cAAI,GAAG,CAAC,GAAG,eAAK,EAAE;AACtE,gBAAQ,IAAI;AAAA,MACd;AAAA,IACF;AACA,OAAG,MAAM;AAAA,EACX,CAAC;AACL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"architecture.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/architecture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA6F/C"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var architecture_exports = {};
|
|
30
|
+
__export(architecture_exports, {
|
|
31
|
+
register: () => register
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(architecture_exports);
|
|
34
|
+
var path = __toESM(require("path"));
|
|
35
|
+
var import_ui = require("../ui");
|
|
36
|
+
function register(program) {
|
|
37
|
+
program.command("architecture [projectPath]").description("Show the detected package graph and architectural layers").option("--format <fmt>", "Output format: markdown, json", "markdown").option("--packages", "Show packages only").option("--layers", "Show layers only").action(async (projectPath, opts) => {
|
|
38
|
+
const KiroGraph = (await Promise.resolve().then(() => require("../../index.js"))).default;
|
|
39
|
+
const target = path.resolve(projectPath ?? process.cwd());
|
|
40
|
+
const cg = await KiroGraph.open(target);
|
|
41
|
+
if (!cg.isArchitectureEnabled()) {
|
|
42
|
+
console.error(`
|
|
43
|
+
${"\x1B[33m"}\u26A0 Architecture analysis is disabled.${import_ui.reset}`);
|
|
44
|
+
console.error(` ${import_ui.dim}Enable it in .kirograph/config.json:${import_ui.reset} ${import_ui.violet}${import_ui.bold}"enableArchitecture": true${import_ui.reset}`);
|
|
45
|
+
console.error(` ${import_ui.dim}Then re-run:${import_ui.reset} ${import_ui.violet}${import_ui.bold}kirograph index${import_ui.reset}
|
|
46
|
+
`);
|
|
47
|
+
cg.close();
|
|
48
|
+
process.exit(1);
|
|
49
|
+
}
|
|
50
|
+
const arch = cg.getArchitecture();
|
|
51
|
+
if (opts.format === "json") {
|
|
52
|
+
console.log(JSON.stringify(arch, null, 2));
|
|
53
|
+
cg.close();
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
const showPackages = !opts.layers || opts.packages;
|
|
57
|
+
const showLayers = !opts.packages || opts.layers;
|
|
58
|
+
if (showPackages) {
|
|
59
|
+
console.log(`
|
|
60
|
+
${(0, import_ui.section)("Packages")} ${import_ui.dim}(${arch.packages.length})${import_ui.reset}
|
|
61
|
+
`);
|
|
62
|
+
if (arch.packages.length === 0) {
|
|
63
|
+
console.log(` ${import_ui.dim}No packages detected.${import_ui.reset}`);
|
|
64
|
+
} else {
|
|
65
|
+
for (const pkg of arch.packages) {
|
|
66
|
+
const src = pkg.source === "manifest" ? `${import_ui.green}manifest${import_ui.reset}` : `${import_ui.dim}directory${import_ui.reset}`;
|
|
67
|
+
const lang = pkg.language ? ` ${import_ui.dim}${pkg.language}${import_ui.reset}` : "";
|
|
68
|
+
const ver = pkg.version ? ` ${import_ui.dim}v${pkg.version}${import_ui.reset}` : "";
|
|
69
|
+
console.log(` ${import_ui.violet}${import_ui.bold}${pkg.name}${import_ui.reset}${ver}${lang} ${import_ui.dim}[${src}${import_ui.dim}]${import_ui.reset}`);
|
|
70
|
+
console.log(` ${import_ui.dim} path: ${pkg.path}${import_ui.reset}`);
|
|
71
|
+
if (pkg.externalDeps && pkg.externalDeps.length > 0) {
|
|
72
|
+
console.log(` ${import_ui.dim} deps: ${pkg.externalDeps.slice(0, 6).join(", ")}${pkg.externalDeps.length > 6 ? ` +${pkg.externalDeps.length - 6} more` : ""}${import_ui.reset}`);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
if (arch.packageDeps.length > 0) {
|
|
77
|
+
console.log(`
|
|
78
|
+
${(0, import_ui.section)("Package Dependencies")} ${import_ui.dim}(${arch.packageDeps.length} edges)${import_ui.reset}
|
|
79
|
+
`);
|
|
80
|
+
for (const dep of arch.packageDeps) {
|
|
81
|
+
const from = dep.sourcePkg.replace(/^pkg:[^:]+:/, "");
|
|
82
|
+
const to = dep.targetPkg.replace(/^pkg:[^:]+:/, "");
|
|
83
|
+
console.log(` ${import_ui.violet}${from}${import_ui.reset} ${import_ui.dim}\u2192${import_ui.reset} ${import_ui.violet}${to}${import_ui.reset} ${import_ui.dim}(${dep.depCount} import${dep.depCount !== 1 ? "s" : ""})${import_ui.reset}`);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
if (showLayers) {
|
|
88
|
+
console.log(`
|
|
89
|
+
${(0, import_ui.section)("Layers")} ${import_ui.dim}(${arch.layers.length})${import_ui.reset}
|
|
90
|
+
`);
|
|
91
|
+
if (arch.layers.length === 0) {
|
|
92
|
+
console.log(` ${import_ui.dim}No layers detected.${import_ui.reset}`);
|
|
93
|
+
} else {
|
|
94
|
+
const layerFileCounts = {};
|
|
95
|
+
for (const assignments of Object.values(arch.fileLayers)) {
|
|
96
|
+
for (const a of assignments) {
|
|
97
|
+
layerFileCounts[a.layerId] = (layerFileCounts[a.layerId] ?? 0) + 1;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
const rows = arch.layers.map((l) => [
|
|
101
|
+
l.name,
|
|
102
|
+
`${layerFileCounts[l.id] ?? 0} files`
|
|
103
|
+
]);
|
|
104
|
+
console.log((0, import_ui.renderTable)(rows));
|
|
105
|
+
}
|
|
106
|
+
if (arch.layerDeps.length > 0) {
|
|
107
|
+
console.log(`
|
|
108
|
+
${(0, import_ui.section)("Layer Dependencies")} ${import_ui.dim}(${arch.layerDeps.length} edges)${import_ui.reset}
|
|
109
|
+
`);
|
|
110
|
+
for (const dep of arch.layerDeps) {
|
|
111
|
+
const from = dep.sourceLayer.replace(/^layer:/, "");
|
|
112
|
+
const to = dep.targetLayer.replace(/^layer:/, "");
|
|
113
|
+
console.log(` ${import_ui.violet}${from}${import_ui.reset} ${import_ui.dim}\u2192${import_ui.reset} ${import_ui.violet}${to}${import_ui.reset} ${import_ui.dim}(${dep.depCount})${import_ui.reset}`);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
console.log();
|
|
118
|
+
cg.close();
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
122
|
+
0 && (module.exports = {
|
|
123
|
+
register
|
|
124
|
+
});
|
|
125
|
+
//# sourceMappingURL=architecture.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/bin/commands/architecture.ts"],
|
|
4
|
+
"sourcesContent": ["import { Command } from 'commander';\nimport * as path from 'path';\nimport { dim, reset, violet, bold, green, label, value, section, renderTable } from '../ui';\n\nexport function register(program: Command): void {\n program\n .command('architecture [projectPath]')\n .description('Show the detected package graph and architectural layers')\n .option('--format <fmt>', 'Output format: markdown, json', 'markdown')\n .option('--packages', 'Show packages only')\n .option('--layers', 'Show layers only')\n .action(async (projectPath: string | undefined, opts: { format: string; packages?: boolean; layers?: boolean }) => {\n const KiroGraph = (await Promise.resolve().then(() => require('../../index.js'))).default;\n const target = path.resolve(projectPath ?? process.cwd());\n const cg = await KiroGraph.open(target);\n\n if (!cg.isArchitectureEnabled()) {\n console.error(`\\n ${'\\x1b[33m'}\u26A0 Architecture analysis is disabled.${reset}`);\n console.error(` ${dim}Enable it in .kirograph/config.json:${reset} ${violet}${bold}\"enableArchitecture\": true${reset}`);\n console.error(` ${dim}Then re-run:${reset} ${violet}${bold}kirograph index${reset}\\n`);\n cg.close(); process.exit(1);\n }\n\n const arch = cg.getArchitecture();\n\n if (opts.format === 'json') {\n console.log(JSON.stringify(arch, null, 2));\n cg.close(); return;\n }\n\n const showPackages = !opts.layers || opts.packages;\n const showLayers = !opts.packages || opts.layers;\n\n // \u2500\u2500 Packages \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n if (showPackages) {\n console.log(`\\n ${section('Packages')} ${dim}(${arch.packages.length})${reset}\\n`);\n if (arch.packages.length === 0) {\n console.log(` ${dim}No packages detected.${reset}`);\n } else {\n for (const pkg of arch.packages) {\n const src = pkg.source === 'manifest'\n ? `${green}manifest${reset}`\n : `${dim}directory${reset}`;\n const lang = pkg.language ? ` ${dim}${pkg.language}${reset}` : '';\n const ver = pkg.version ? ` ${dim}v${pkg.version}${reset}` : '';\n console.log(` ${violet}${bold}${pkg.name}${reset}${ver}${lang} ${dim}[${src}${dim}]${reset}`);\n console.log(` ${dim} path: ${pkg.path}${reset}`);\n if (pkg.externalDeps && pkg.externalDeps.length > 0) {\n console.log(` ${dim} deps: ${pkg.externalDeps.slice(0, 6).join(', ')}${pkg.externalDeps.length > 6 ? ` +${pkg.externalDeps.length - 6} more` : ''}${reset}`);\n }\n }\n }\n\n if (arch.packageDeps.length > 0) {\n console.log(`\\n ${section('Package Dependencies')} ${dim}(${arch.packageDeps.length} edges)${reset}\\n`);\n for (const dep of arch.packageDeps) {\n const from = dep.sourcePkg.replace(/^pkg:[^:]+:/, '');\n const to = dep.targetPkg.replace(/^pkg:[^:]+:/, '');\n console.log(` ${violet}${from}${reset} ${dim}\u2192${reset} ${violet}${to}${reset} ${dim}(${dep.depCount} import${dep.depCount !== 1 ? 's' : ''})${reset}`);\n }\n }\n }\n\n // \u2500\u2500 Layers \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n if (showLayers) {\n console.log(`\\n ${section('Layers')} ${dim}(${arch.layers.length})${reset}\\n`);\n if (arch.layers.length === 0) {\n console.log(` ${dim}No layers detected.${reset}`);\n } else {\n // Count files per layer\n const layerFileCounts: Record<string, number> = {};\n for (const assignments of Object.values(arch.fileLayers)) {\n for (const a of assignments) {\n layerFileCounts[a.layerId] = (layerFileCounts[a.layerId] ?? 0) + 1;\n }\n }\n\n const rows: [string, string][] = arch.layers.map(l => [\n l.name,\n `${layerFileCounts[l.id] ?? 0} files`,\n ]);\n console.log(renderTable(rows));\n }\n\n if (arch.layerDeps.length > 0) {\n console.log(`\\n ${section('Layer Dependencies')} ${dim}(${arch.layerDeps.length} edges)${reset}\\n`);\n for (const dep of arch.layerDeps) {\n const from = dep.sourceLayer.replace(/^layer:/, '');\n const to = dep.targetLayer.replace(/^layer:/, '');\n console.log(` ${violet}${from}${reset} ${dim}\u2192${reset} ${violet}${to}${reset} ${dim}(${dep.depCount})${reset}`);\n }\n }\n }\n\n console.log();\n cg.close();\n });\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var caveman_exports = {};
|
|
30
|
+
__export(caveman_exports, {
|
|
31
|
+
register: () => register
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(caveman_exports);
|
|
34
|
+
var path = __toESM(require("path"));
|
|
35
|
+
var fs = __toESM(require("fs"));
|
|
36
|
+
var import_config = require("../../config");
|
|
37
|
+
var import_caveman = require("../installer/caveman");
|
|
38
|
+
var import_steering = require("../installer/steering");
|
|
39
|
+
var import_cli_agent = require("../installer/cli-agent");
|
|
40
|
+
var import_ui = require("../ui");
|
|
41
|
+
const JOKES = [
|
|
42
|
+
"Ugh. Words hard. Code easy.",
|
|
43
|
+
"Caveman not need article. Caveman have rock.",
|
|
44
|
+
"Why say lot word when few word do trick?",
|
|
45
|
+
"Token saved = mammoth fed.",
|
|
46
|
+
"Caveman compress speech. Caveman also compress mammoth.",
|
|
47
|
+
"Me not lazy. Me efficient.",
|
|
48
|
+
"Short answer good answer. Long answer... ugh.",
|
|
49
|
+
"Caveman invent fire. Caveman invent brief response.",
|
|
50
|
+
"No filler word. Only meat.",
|
|
51
|
+
"Grunt once. Mean much."
|
|
52
|
+
];
|
|
53
|
+
function joke() {
|
|
54
|
+
const line = JOKES[Math.floor(Math.random() * JOKES.length)];
|
|
55
|
+
return `
|
|
56
|
+
${import_ui.violet}\u{1FAA8} ${line}${import_ui.reset}`;
|
|
57
|
+
}
|
|
58
|
+
const MODES = [
|
|
59
|
+
{ name: "off", desc: "normal responses" },
|
|
60
|
+
{ name: "lite", desc: "compact, no filler, full sentences" },
|
|
61
|
+
{ name: "full", desc: "fragments, no articles, short synonyms" },
|
|
62
|
+
{ name: "ultra", desc: "maximum compression, abbreviations, \u2192 for causality" }
|
|
63
|
+
];
|
|
64
|
+
function register(program) {
|
|
65
|
+
program.command("caveman [mode]").description("Set caveman communication style for the Kiro agent (off | lite | full | ultra)").action(async (mode) => {
|
|
66
|
+
const cwd = process.cwd();
|
|
67
|
+
if (!mode) {
|
|
68
|
+
let current = "off";
|
|
69
|
+
try {
|
|
70
|
+
const config = await (0, import_config.loadConfig)(cwd);
|
|
71
|
+
current = config.cavemanMode ?? "off";
|
|
72
|
+
} catch {
|
|
73
|
+
}
|
|
74
|
+
console.log();
|
|
75
|
+
console.log(` ${import_ui.dim}Caveman mode${import_ui.reset} ${import_ui.violet}${import_ui.bold}${current}${import_ui.reset}`);
|
|
76
|
+
console.log();
|
|
77
|
+
console.log(` ${import_ui.dim}Available modes:${import_ui.reset}`);
|
|
78
|
+
for (const m of MODES) {
|
|
79
|
+
const active = m.name === current;
|
|
80
|
+
const marker = active ? `${import_ui.green}\u25CF${import_ui.reset}` : `${import_ui.dim}\u25CB${import_ui.reset}`;
|
|
81
|
+
const nameStr = active ? `${import_ui.violet}${import_ui.bold}${m.name}${import_ui.reset}` : `${import_ui.dim}${m.name}${import_ui.reset}`;
|
|
82
|
+
const nameW = m.name.length;
|
|
83
|
+
const pad = " ".repeat(6 - nameW);
|
|
84
|
+
console.log(` ${marker} ${nameStr}${pad}${import_ui.dim}${m.desc}${import_ui.reset}`);
|
|
85
|
+
}
|
|
86
|
+
console.log();
|
|
87
|
+
console.log(` ${import_ui.dim}Change:${import_ui.reset} kg caveman ${import_ui.dim}<mode>${import_ui.reset}`);
|
|
88
|
+
console.log(joke());
|
|
89
|
+
console.log();
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
const normalized = mode.toLowerCase();
|
|
93
|
+
const valid = MODES.map((m) => m.name);
|
|
94
|
+
if (!valid.includes(normalized)) {
|
|
95
|
+
console.error(` ${import_ui.dim}Unknown mode:${import_ui.reset} ${normalized}${import_ui.dim}. Choose from: off, lite, full, ultra${import_ui.reset}`);
|
|
96
|
+
process.exit(1);
|
|
97
|
+
}
|
|
98
|
+
await (0, import_config.updateConfig)(cwd, { cavemanMode: normalized });
|
|
99
|
+
const kiroDir = path.join(cwd, ".kiro");
|
|
100
|
+
const steeringPath = path.join(kiroDir, "steering", "kirograph.md");
|
|
101
|
+
if (fs.existsSync(steeringPath)) {
|
|
102
|
+
(0, import_steering.writeSteering)(kiroDir, normalized);
|
|
103
|
+
}
|
|
104
|
+
const agentPath = path.join(kiroDir, "agents", "kirograph.json");
|
|
105
|
+
if (fs.existsSync(agentPath)) {
|
|
106
|
+
(0, import_cli_agent.writeCliAgent)(kiroDir);
|
|
107
|
+
}
|
|
108
|
+
console.log();
|
|
109
|
+
if (normalized === "off") {
|
|
110
|
+
console.log(` ${import_ui.green}\u2713${import_ui.reset} Caveman mode ${import_ui.violet}${import_ui.bold}off${import_ui.reset}${import_ui.dim} \u2014 agent will respond normally from next session.${import_ui.reset}`);
|
|
111
|
+
console.log(joke());
|
|
112
|
+
} else {
|
|
113
|
+
console.log(` ${import_ui.green}\u2713${import_ui.reset} Caveman mode set to ${import_ui.violet}${import_ui.bold}${normalized}${import_ui.reset}`);
|
|
114
|
+
console.log(` ${import_ui.dim}Takes effect on next agent session.${import_ui.reset}`);
|
|
115
|
+
console.log();
|
|
116
|
+
console.log(` ${import_ui.dim}Rules preview:${import_ui.reset}`);
|
|
117
|
+
console.log();
|
|
118
|
+
for (const line of import_caveman.CAVEMAN_RULES[normalized].split("\n")) {
|
|
119
|
+
if (line.startsWith("## ")) {
|
|
120
|
+
console.log(` ${import_ui.violet}${import_ui.bold}${line.slice(3)}${import_ui.reset}`);
|
|
121
|
+
} else if (line === "") {
|
|
122
|
+
console.log();
|
|
123
|
+
} else {
|
|
124
|
+
console.log(` ${import_ui.dim}${line}${import_ui.reset}`);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
console.log(joke());
|
|
128
|
+
}
|
|
129
|
+
console.log();
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
133
|
+
0 && (module.exports = {
|
|
134
|
+
register
|
|
135
|
+
});
|
|
136
|
+
//# sourceMappingURL=caveman.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/bin/commands/caveman.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * kg caveman [off|lite|full|ultra] \u2014 set caveman mode for this project\n * kg caveman \u2014 show current mode\n */\n\nimport * as path from 'path';\nimport * as fs from 'fs';\nimport { Command } from 'commander';\nimport { loadConfig, updateConfig } from '../../config';\nimport { CAVEMAN_RULES, CavemanMode } from '../installer/caveman';\nimport { writeSteering } from '../installer/steering';\nimport { writeCliAgent } from '../installer/cli-agent';\nimport { bold, dim, green, reset, violet } from '../ui';\n\nconst JOKES = [\n 'Ugh. Words hard. Code easy.',\n 'Caveman not need article. Caveman have rock.',\n 'Why say lot word when few word do trick?',\n 'Token saved = mammoth fed.',\n 'Caveman compress speech. Caveman also compress mammoth.',\n 'Me not lazy. Me efficient.',\n 'Short answer good answer. Long answer... ugh.',\n 'Caveman invent fire. Caveman invent brief response.',\n 'No filler word. Only meat.',\n 'Grunt once. Mean much.',\n];\n\nfunction joke(): string {\n const line = JOKES[Math.floor(Math.random() * JOKES.length)];\n return `\\n ${violet}\uD83E\uDEA8 ${line}${reset}`;\n}\n\nconst MODES: Array<{ name: string; desc: string }> = [\n { name: 'off', desc: 'normal responses' },\n { name: 'lite', desc: 'compact, no filler, full sentences' },\n { name: 'full', desc: 'fragments, no articles, short synonyms' },\n { name: 'ultra', desc: 'maximum compression, abbreviations, \u2192 for causality' },\n];\n\nexport function register(program: Command): void {\n program\n .command('caveman [mode]')\n .description('Set caveman communication style for the Kiro agent (off | lite | full | ultra)')\n .action(async (mode: string | undefined) => {\n const cwd = process.cwd();\n\n // No mode argument: show current status\n if (!mode) {\n let current = 'off';\n try {\n const config = await loadConfig(cwd);\n current = config.cavemanMode ?? 'off';\n } catch { /* no .kirograph/ */ }\n\n console.log();\n console.log(` ${dim}Caveman mode${reset} ${violet}${bold}${current}${reset}`);\n console.log();\n console.log(` ${dim}Available modes:${reset}`);\n for (const m of MODES) {\n const active = m.name === current;\n const marker = active ? `${green}\u25CF${reset}` : `${dim}\u25CB${reset}`;\n const nameStr = active ? `${violet}${bold}${m.name}${reset}` : `${dim}${m.name}${reset}`;\n const nameW = m.name.length;\n const pad = ' '.repeat(6 - nameW);\n console.log(` ${marker} ${nameStr}${pad}${dim}${m.desc}${reset}`);\n }\n console.log();\n console.log(` ${dim}Change:${reset} kg caveman ${dim}<mode>${reset}`);\n console.log(joke());\n console.log();\n return;\n }\n\n const normalized = mode.toLowerCase();\n const valid = MODES.map(m => m.name);\n if (!valid.includes(normalized)) {\n console.error(` ${dim}Unknown mode:${reset} ${normalized}${dim}. Choose from: off, lite, full, ultra${reset}`);\n process.exit(1);\n }\n\n await updateConfig(cwd, { cavemanMode: normalized as CavemanMode | 'off' });\n\n const kiroDir = path.join(cwd, '.kiro');\n\n // Regenerate steering file if .kiro/steering/kirograph.md exists\n const steeringPath = path.join(kiroDir, 'steering', 'kirograph.md');\n if (fs.existsSync(steeringPath)) {\n writeSteering(kiroDir, normalized as CavemanMode | 'off');\n }\n\n // Regenerate CLI agent config if .kiro/agents/kirograph.json exists\n const agentPath = path.join(kiroDir, 'agents', 'kirograph.json');\n if (fs.existsSync(agentPath)) {\n writeCliAgent(kiroDir);\n }\n\n console.log();\n if (normalized === 'off') {\n console.log(` ${green}\u2713${reset} Caveman mode ${violet}${bold}off${reset}${dim} \u2014 agent will respond normally from next session.${reset}`);\n console.log(joke());\n } else {\n console.log(` ${green}\u2713${reset} Caveman mode set to ${violet}${bold}${normalized}${reset}`);\n console.log(` ${dim}Takes effect on next agent session.${reset}`);\n console.log();\n console.log(` ${dim}Rules preview:${reset}`);\n console.log();\n for (const line of CAVEMAN_RULES[normalized].split('\\n')) {\n if (line.startsWith('## ')) {\n console.log(` ${violet}${bold}${line.slice(3)}${reset}`);\n } else if (line === '') {\n console.log();\n } else {\n console.log(` ${dim}${line}${reset}`);\n }\n }\n console.log(joke());\n }\n console.log();\n });\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmD/C"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var context_exports = {};
|
|
20
|
+
__export(context_exports, {
|
|
21
|
+
register: () => register
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(context_exports);
|
|
24
|
+
var import_ui = require("../ui");
|
|
25
|
+
function register(program) {
|
|
26
|
+
program.command("context <task>").description("Build relevant code context for a task").option("--max-nodes <n>", "Max symbols to include", "20").option("--no-code", "Exclude code snippets").option("--format <fmt>", "Output format: markdown, json", "markdown").action(async (task, opts) => {
|
|
27
|
+
const KiroGraph = (await Promise.resolve().then(() => require("../../index.js"))).default;
|
|
28
|
+
const cg = await KiroGraph.open(process.cwd());
|
|
29
|
+
const ctx = await cg.buildContext(task, {
|
|
30
|
+
maxNodes: parseInt(opts.maxNodes),
|
|
31
|
+
includeCode: opts.code
|
|
32
|
+
});
|
|
33
|
+
if (opts.format === "json") {
|
|
34
|
+
console.log(JSON.stringify({
|
|
35
|
+
task: ctx.task,
|
|
36
|
+
summary: ctx.summary,
|
|
37
|
+
entryPoints: ctx.entryPoints.map((n) => ({ kind: n.kind, name: n.name, file: n.filePath, line: n.startLine })),
|
|
38
|
+
relatedNodes: ctx.relatedNodes.map((n) => ({ kind: n.kind, name: n.name, file: n.filePath, line: n.startLine })),
|
|
39
|
+
codeSnippets: Object.fromEntries(ctx.codeSnippets)
|
|
40
|
+
}, null, 2));
|
|
41
|
+
cg.close();
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
console.log(`
|
|
45
|
+
${(0, import_ui.section)("Context:")} ${import_ui.violet}${import_ui.bold}${ctx.task}${import_ui.reset}
|
|
46
|
+
`);
|
|
47
|
+
console.log(` ${import_ui.dim}${ctx.summary}${import_ui.reset}`);
|
|
48
|
+
if (ctx.entryPoints.length > 0) {
|
|
49
|
+
console.log(`
|
|
50
|
+
${(0, import_ui.section)("Entry Points")}
|
|
51
|
+
`);
|
|
52
|
+
for (const n of ctx.entryPoints) {
|
|
53
|
+
console.log(` ${import_ui.violet}${import_ui.bold}${n.name}${import_ui.reset} ${import_ui.dim}${n.kind} ${n.filePath}:${n.startLine}${import_ui.reset}`);
|
|
54
|
+
if (ctx.codeSnippets.has(n.id)) {
|
|
55
|
+
console.log(`
|
|
56
|
+
${import_ui.dim}\`\`\`${import_ui.reset}`);
|
|
57
|
+
for (const line of (ctx.codeSnippets.get(n.id) ?? "").split("\n")) {
|
|
58
|
+
console.log(` ${line}`);
|
|
59
|
+
}
|
|
60
|
+
console.log(` ${import_ui.dim}\`\`\`${import_ui.reset}
|
|
61
|
+
`);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
if (ctx.relatedNodes.length > 0) {
|
|
66
|
+
console.log(`
|
|
67
|
+
${(0, import_ui.section)("Related Symbols")}
|
|
68
|
+
`);
|
|
69
|
+
for (const n of ctx.relatedNodes) {
|
|
70
|
+
console.log(` ${import_ui.dim}\xB7${import_ui.reset} ${import_ui.violet}${n.name}${import_ui.reset} ${import_ui.dim}${n.kind} ${n.filePath}:${n.startLine}${import_ui.reset}`);
|
|
71
|
+
}
|
|
72
|
+
console.log();
|
|
73
|
+
}
|
|
74
|
+
cg.close();
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
78
|
+
0 && (module.exports = {
|
|
79
|
+
register
|
|
80
|
+
});
|
|
81
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/bin/commands/context.ts"],
|
|
4
|
+
"sourcesContent": ["import { Command } from 'commander';\nimport { dim, reset, violet, bold, section } from '../ui';\n\nexport function register(program: Command): void {\n program\n .command('context <task>')\n .description('Build relevant code context for a task')\n .option('--max-nodes <n>', 'Max symbols to include', '20')\n .option('--no-code', 'Exclude code snippets')\n .option('--format <fmt>', 'Output format: markdown, json', 'markdown')\n .action(async (task: string, opts: { maxNodes: string; code: boolean; format: string }) => {\n const KiroGraph = (await Promise.resolve().then(() => require('../../index.js'))).default;\n const cg = await KiroGraph.open(process.cwd());\n const ctx = await cg.buildContext(task, {\n maxNodes: parseInt(opts.maxNodes),\n includeCode: opts.code,\n });\n\n if (opts.format === 'json') {\n console.log(JSON.stringify({\n task: ctx.task,\n summary: ctx.summary,\n entryPoints: ctx.entryPoints.map((n: any) => ({ kind: n.kind, name: n.name, file: n.filePath, line: n.startLine })),\n relatedNodes: ctx.relatedNodes.map((n: any) => ({ kind: n.kind, name: n.name, file: n.filePath, line: n.startLine })),\n codeSnippets: Object.fromEntries(ctx.codeSnippets),\n }, null, 2));\n cg.close(); return;\n }\n\n // Markdown output\n console.log(`\\n ${section('Context:')} ${violet}${bold}${ctx.task}${reset}\\n`);\n console.log(` ${dim}${ctx.summary}${reset}`);\n if (ctx.entryPoints.length > 0) {\n console.log(`\\n ${section('Entry Points')}\\n`);\n for (const n of ctx.entryPoints) {\n console.log(` ${violet}${bold}${n.name}${reset} ${dim}${n.kind} ${n.filePath}:${n.startLine}${reset}`);\n if (ctx.codeSnippets.has(n.id)) {\n console.log(`\\n ${dim}\\`\\`\\`${reset}`);\n for (const line of (ctx.codeSnippets.get(n.id) ?? '').split('\\n')) {\n console.log(` ${line}`);\n }\n console.log(` ${dim}\\`\\`\\`${reset}\\n`);\n }\n }\n }\n if (ctx.relatedNodes.length > 0) {\n console.log(`\\n ${section('Related Symbols')}\\n`);\n for (const n of ctx.relatedNodes) {\n console.log(` ${dim}\u00B7${reset} ${violet}${n.name}${reset} ${dim}${n.kind} ${n.filePath}:${n.startLine}${reset}`);\n }\n console.log();\n }\n cg.close();\n });\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,gBAAkD;AAE3C,SAAS,SAAS,SAAwB;AAC/C,UACG,QAAQ,gBAAgB,EACxB,YAAY,wCAAwC,EACpD,OAAO,mBAAmB,0BAA0B,IAAI,EACxD,OAAO,aAAa,uBAAuB,EAC3C,OAAO,kBAAkB,iCAAiC,UAAU,EACpE,OAAO,OAAO,MAAc,SAA8D;AACzF,UAAM,aAAa,MAAM,QAAQ,QAAQ,EAAE,KAAK,MAAM,QAAQ,gBAAgB,CAAC,GAAG;AAClF,UAAM,KAAK,MAAM,UAAU,KAAK,QAAQ,IAAI,CAAC;AAC7C,UAAM,MAAM,MAAM,GAAG,aAAa,MAAM;AAAA,MACtC,UAAU,SAAS,KAAK,QAAQ;AAAA,MAChC,aAAa,KAAK;AAAA,IACpB,CAAC;AAED,QAAI,KAAK,WAAW,QAAQ;AAC1B,cAAQ,IAAI,KAAK,UAAU;AAAA,QACzB,MAAM,IAAI;AAAA,QACV,SAAS,IAAI;AAAA,QACb,aAAa,IAAI,YAAY,IAAI,CAAC,OAAY,EAAE,MAAM,EAAE,MAAM,MAAM,EAAE,MAAM,MAAM,EAAE,UAAU,MAAM,EAAE,UAAU,EAAE;AAAA,QAClH,cAAc,IAAI,aAAa,IAAI,CAAC,OAAY,EAAE,MAAM,EAAE,MAAM,MAAM,EAAE,MAAM,MAAM,EAAE,UAAU,MAAM,EAAE,UAAU,EAAE;AAAA,QACpH,cAAc,OAAO,YAAY,IAAI,YAAY;AAAA,MACnD,GAAG,MAAM,CAAC,CAAC;AACX,SAAG,MAAM;AAAG;AAAA,IACd;AAGA,YAAQ,IAAI;AAAA,QAAO,mBAAQ,UAAU,CAAC,IAAI,gBAAM,GAAG,cAAI,GAAG,IAAI,IAAI,GAAG,eAAK;AAAA,CAAI;AAC9E,YAAQ,IAAI,KAAK,aAAG,GAAG,IAAI,OAAO,GAAG,eAAK,EAAE;AAC5C,QAAI,IAAI,YAAY,SAAS,GAAG;AAC9B,cAAQ,IAAI;AAAA,QAAO,mBAAQ,cAAc,CAAC;AAAA,CAAI;AAC9C,iBAAW,KAAK,IAAI,aAAa;AAC/B,gBAAQ,IAAI,KAAK,gBAAM,GAAG,cAAI,GAAG,EAAE,IAAI,GAAG,eAAK,KAAK,aAAG,GAAG,EAAE,IAAI,KAAK,EAAE,QAAQ,IAAI,EAAE,SAAS,GAAG,eAAK,EAAE;AACxG,YAAI,IAAI,aAAa,IAAI,EAAE,EAAE,GAAG;AAC9B,kBAAQ,IAAI;AAAA,IAAO,aAAG,SAAS,eAAK,EAAE;AACtC,qBAAW,SAAS,IAAI,aAAa,IAAI,EAAE,EAAE,KAAK,IAAI,MAAM,IAAI,GAAG;AACjE,oBAAQ,IAAI,KAAK,IAAI,EAAE;AAAA,UACzB;AACA,kBAAQ,IAAI,KAAK,aAAG,SAAS,eAAK;AAAA,CAAI;AAAA,QACxC;AAAA,MACF;AAAA,IACF;AACA,QAAI,IAAI,aAAa,SAAS,GAAG;AAC/B,cAAQ,IAAI;AAAA,QAAO,mBAAQ,iBAAiB,CAAC;AAAA,CAAI;AACjD,iBAAW,KAAK,IAAI,cAAc;AAChC,gBAAQ,IAAI,KAAK,aAAG,OAAI,eAAK,IAAI,gBAAM,GAAG,EAAE,IAAI,GAAG,eAAK,KAAK,aAAG,GAAG,EAAE,IAAI,KAAK,EAAE,QAAQ,IAAI,EAAE,SAAS,GAAG,eAAK,EAAE;AAAA,MACnH;AACA,cAAQ,IAAI;AAAA,IACd;AACA,OAAG,MAAM;AAAA,EACX,CAAC;AACL;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coupling.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/coupling.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqBpC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoH/C"}
|