codesift-mcp 0.10.2 → 0.11.0
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/dist/cache/hono-cache.d.ts.map +1 -1
- package/dist/cli/commands.d.ts.map +1 -1
- package/dist/cli/commands.js +46 -0
- package/dist/cli/commands.js.map +1 -1
- package/dist/cli/git-hooks-installer.js.map +1 -1
- package/dist/cli/help.d.ts +1 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +22 -0
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/hooks/pre-tool-use.d.ts.map +1 -1
- package/dist/cli/hooks/pre-tool-use.js +182 -7
- package/dist/cli/hooks/pre-tool-use.js.map +1 -1
- package/dist/cli/hooks/shared.d.ts.map +1 -1
- package/dist/cli/hooks/shared.js +6 -1
- package/dist/cli/hooks/shared.js.map +1 -1
- package/dist/cli/service.d.ts +133 -0
- package/dist/cli/service.d.ts.map +1 -0
- package/dist/cli/service.js +317 -0
- package/dist/cli/service.js.map +1 -0
- package/dist/cli/setup/fs.js.map +1 -1
- package/dist/cli/setup/mcp.d.ts.map +1 -1
- package/dist/cli/setup/mcp.js +5 -2
- package/dist/cli/setup/mcp.js.map +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/telemetry-commands.js.map +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +2 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +5 -0
- package/dist/config.js.map +1 -1
- package/dist/formatter-dispatch.d.ts.map +1 -1
- package/dist/instructions.d.ts +1 -1
- package/dist/instructions.d.ts.map +1 -1
- package/dist/instructions.js +1 -0
- package/dist/instructions.js.map +1 -1
- package/dist/lsp/lsp-client.d.ts.map +1 -1
- package/dist/lsp/lsp-client.js.map +1 -1
- package/dist/lsp/lsp-manager.d.ts.map +1 -1
- package/dist/lsp/lsp-tools.d.ts.map +1 -1
- package/dist/lsp/lsp-tools.js +21 -1
- package/dist/lsp/lsp-tools.js.map +1 -1
- package/dist/parser/astro-template/state.d.ts.map +1 -1
- package/dist/parser/extractors/_shared.d.ts +4 -4
- package/dist/parser/extractors/_shared.d.ts.map +1 -1
- package/dist/parser/extractors/_shared.js.map +1 -1
- package/dist/parser/extractors/conversation.js.map +1 -1
- package/dist/parser/extractors/go.d.ts +2 -2
- package/dist/parser/extractors/go.d.ts.map +1 -1
- package/dist/parser/extractors/go.js.map +1 -1
- package/dist/parser/extractors/gradle-kts.d.ts +2 -2
- package/dist/parser/extractors/gradle-kts.d.ts.map +1 -1
- package/dist/parser/extractors/gradle-kts.js.map +1 -1
- package/dist/parser/extractors/hono-app-discovery.d.ts +2 -2
- package/dist/parser/extractors/hono-app-discovery.d.ts.map +1 -1
- package/dist/parser/extractors/hono-app-discovery.js.map +1 -1
- package/dist/parser/extractors/hono-ast-utils.d.ts +4 -4
- package/dist/parser/extractors/hono-ast-utils.d.ts.map +1 -1
- package/dist/parser/extractors/hono-ast-utils.js.map +1 -1
- package/dist/parser/extractors/hono-context-extractor.d.ts +2 -2
- package/dist/parser/extractors/hono-context-extractor.d.ts.map +1 -1
- package/dist/parser/extractors/hono-context-extractor.js.map +1 -1
- package/dist/parser/extractors/hono-inline-analyzer.d.ts +2 -2
- package/dist/parser/extractors/hono-inline-analyzer.d.ts.map +1 -1
- package/dist/parser/extractors/hono-inline-analyzer.js.map +1 -1
- package/dist/parser/extractors/hono-middleware-extractor.d.ts +2 -2
- package/dist/parser/extractors/hono-middleware-extractor.d.ts.map +1 -1
- package/dist/parser/extractors/hono-middleware-extractor.js.map +1 -1
- package/dist/parser/extractors/hono-openapi-extractor.d.ts +2 -2
- package/dist/parser/extractors/hono-openapi-extractor.d.ts.map +1 -1
- package/dist/parser/extractors/hono-openapi-extractor.js.map +1 -1
- package/dist/parser/extractors/hono-route-extractor.d.ts +2 -2
- package/dist/parser/extractors/hono-route-extractor.d.ts.map +1 -1
- package/dist/parser/extractors/hono-route-extractor.js.map +1 -1
- package/dist/parser/extractors/hono-route-utils.d.ts +2 -2
- package/dist/parser/extractors/hono-route-utils.d.ts.map +1 -1
- package/dist/parser/extractors/hono-route-utils.js.map +1 -1
- package/dist/parser/extractors/hono-runtime-extractor.d.ts +2 -2
- package/dist/parser/extractors/hono-runtime-extractor.d.ts.map +1 -1
- package/dist/parser/extractors/hono-runtime-extractor.js.map +1 -1
- package/dist/parser/extractors/hono.d.ts.map +1 -1
- package/dist/parser/extractors/hono.js.map +1 -1
- package/dist/parser/extractors/javascript.d.ts +2 -2
- package/dist/parser/extractors/javascript.d.ts.map +1 -1
- package/dist/parser/extractors/javascript.js.map +1 -1
- package/dist/parser/extractors/kotlin-ast-helpers.d.ts +9 -9
- package/dist/parser/extractors/kotlin-ast-helpers.d.ts.map +1 -1
- package/dist/parser/extractors/kotlin-ast-helpers.js.map +1 -1
- package/dist/parser/extractors/kotlin-test-symbols.d.ts +4 -4
- package/dist/parser/extractors/kotlin-test-symbols.d.ts.map +1 -1
- package/dist/parser/extractors/kotlin-test-symbols.js.map +1 -1
- package/dist/parser/extractors/kotlin.d.ts +2 -2
- package/dist/parser/extractors/kotlin.d.ts.map +1 -1
- package/dist/parser/extractors/kotlin.js.map +1 -1
- package/dist/parser/extractors/php.d.ts +2 -2
- package/dist/parser/extractors/php.d.ts.map +1 -1
- package/dist/parser/extractors/php.js.map +1 -1
- package/dist/parser/extractors/python.d.ts +2 -2
- package/dist/parser/extractors/python.d.ts.map +1 -1
- package/dist/parser/extractors/python.js.map +1 -1
- package/dist/parser/extractors/rust.d.ts +2 -2
- package/dist/parser/extractors/rust.d.ts.map +1 -1
- package/dist/parser/extractors/rust.js.map +1 -1
- package/dist/parser/extractors/sql-boundaries.js.map +1 -1
- package/dist/parser/extractors/typescript-cjs-nodes.d.ts +3 -3
- package/dist/parser/extractors/typescript-cjs-nodes.d.ts.map +1 -1
- package/dist/parser/extractors/typescript-cjs-nodes.js.map +1 -1
- package/dist/parser/extractors/typescript-class-nodes.d.ts +6 -6
- package/dist/parser/extractors/typescript-class-nodes.d.ts.map +1 -1
- package/dist/parser/extractors/typescript-class-nodes.js.map +1 -1
- package/dist/parser/extractors/typescript-declaration-nodes.d.ts +3 -3
- package/dist/parser/extractors/typescript-declaration-nodes.d.ts.map +1 -1
- package/dist/parser/extractors/typescript-declaration-nodes.js.map +1 -1
- package/dist/parser/extractors/typescript-module-nodes.d.ts +4 -4
- package/dist/parser/extractors/typescript-module-nodes.d.ts.map +1 -1
- package/dist/parser/extractors/typescript-module-nodes.js.map +1 -1
- package/dist/parser/extractors/typescript-react.d.ts +6 -6
- package/dist/parser/extractors/typescript-react.d.ts.map +1 -1
- package/dist/parser/extractors/typescript-react.js.map +1 -1
- package/dist/parser/extractors/typescript-shared.d.ts +8 -8
- package/dist/parser/extractors/typescript-shared.d.ts.map +1 -1
- package/dist/parser/extractors/typescript-shared.js.map +1 -1
- package/dist/parser/extractors/typescript-test-nodes.d.ts +2 -2
- package/dist/parser/extractors/typescript-test-nodes.d.ts.map +1 -1
- package/dist/parser/extractors/typescript-test-nodes.js.map +1 -1
- package/dist/parser/extractors/typescript-type-nodes.d.ts +4 -4
- package/dist/parser/extractors/typescript-type-nodes.d.ts.map +1 -1
- package/dist/parser/extractors/typescript-type-nodes.js.map +1 -1
- package/dist/parser/extractors/typescript.d.ts +2 -2
- package/dist/parser/extractors/typescript.d.ts.map +1 -1
- package/dist/parser/extractors/typescript.js.map +1 -1
- package/dist/parser/parse-cache.d.ts +3 -3
- package/dist/parser/parse-cache.d.ts.map +1 -1
- package/dist/parser/parse-cache.js.map +1 -1
- package/dist/parser/parser-manager.d.ts +3 -2
- package/dist/parser/parser-manager.d.ts.map +1 -1
- package/dist/parser/parser-manager.js +9 -3
- package/dist/parser/parser-manager.js.map +1 -1
- package/dist/parser/parser-pool.js.map +1 -1
- package/dist/parser/symbol-extractor.d.ts +2 -2
- package/dist/parser/symbol-extractor.d.ts.map +1 -1
- package/dist/parser/symbol-extractor.js.map +1 -1
- package/dist/register-tool-groups/meta.js.map +1 -1
- package/dist/register-tool-groups/shared.d.ts.map +1 -1
- package/dist/register-tools/discovery.d.ts +18 -0
- package/dist/register-tools/discovery.d.ts.map +1 -1
- package/dist/register-tools/discovery.js +63 -0
- package/dist/register-tools/discovery.js.map +1 -1
- package/dist/register-tools.d.ts +31 -1
- package/dist/register-tools.d.ts.map +1 -1
- package/dist/register-tools.js +76 -6
- package/dist/register-tools.js.map +1 -1
- package/dist/retrieval/codebase-retrieval.js.map +1 -1
- package/dist/retrieval/retrieval-schemas.d.ts +13 -13
- package/dist/search/semantic.d.ts +6 -4
- package/dist/search/semantic.d.ts.map +1 -1
- package/dist/search/semantic.js +54 -31
- package/dist/search/semantic.js.map +1 -1
- package/dist/search/static-embedding-provider.d.ts.map +1 -1
- package/dist/search/static-embedding-provider.js.map +1 -1
- package/dist/search/tool-embedding-storage.d.ts.map +1 -1
- package/dist/search/tool-embedding-storage.js +5 -1
- package/dist/search/tool-embedding-storage.js.map +1 -1
- package/dist/server-helpers/repo-resolution.d.ts +18 -4
- package/dist/server-helpers/repo-resolution.d.ts.map +1 -1
- package/dist/server-helpers/repo-resolution.js +50 -11
- package/dist/server-helpers/repo-resolution.js.map +1 -1
- package/dist/server-helpers/response-hints.d.ts.map +1 -1
- package/dist/server-helpers/response-hints.js +41 -0
- package/dist/server-helpers/response-hints.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +15 -3
- package/dist/server.js.map +1 -1
- package/dist/storage/_shared.d.ts +15 -0
- package/dist/storage/_shared.d.ts.map +1 -1
- package/dist/storage/_shared.js +39 -2
- package/dist/storage/_shared.js.map +1 -1
- package/dist/storage/chunk-store.d.ts.map +1 -1
- package/dist/storage/chunk-store.js +38 -6
- package/dist/storage/chunk-store.js.map +1 -1
- package/dist/storage/embedding-store.d.ts.map +1 -1
- package/dist/storage/embedding-store.js +5 -1
- package/dist/storage/embedding-store.js.map +1 -1
- package/dist/storage/index-store.d.ts +2 -0
- package/dist/storage/index-store.d.ts.map +1 -1
- package/dist/storage/index-store.js +101 -22
- package/dist/storage/index-store.js.map +1 -1
- package/dist/storage/registry.d.ts.map +1 -1
- package/dist/storage/registry.js +48 -19
- package/dist/storage/registry.js.map +1 -1
- package/dist/storage/telemetry/env-profile.js.map +1 -1
- package/dist/storage/usage-tracker.d.ts +13 -0
- package/dist/storage/usage-tracker.d.ts.map +1 -1
- package/dist/storage/usage-tracker.js +58 -4
- package/dist/storage/usage-tracker.js.map +1 -1
- package/dist/tools/agent-config-tools.js.map +1 -1
- package/dist/tools/ast-query-tools.d.ts.map +1 -1
- package/dist/tools/ast-query-tools.js +12 -2
- package/dist/tools/ast-query-tools.js.map +1 -1
- package/dist/tools/astro-actions/ast.d.ts +7 -7
- package/dist/tools/astro-actions/ast.d.ts.map +1 -1
- package/dist/tools/astro-actions/ast.js.map +1 -1
- package/dist/tools/astro-actions/parser.d.ts.map +1 -1
- package/dist/tools/astro-actions/parser.js +3 -0
- package/dist/tools/astro-actions/parser.js.map +1 -1
- package/dist/tools/astro-actions/types.d.ts.map +1 -1
- package/dist/tools/astro-actions/zod-ast.d.ts +3 -3
- package/dist/tools/astro-actions/zod-ast.d.ts.map +1 -1
- package/dist/tools/astro-actions/zod-ast.js.map +1 -1
- package/dist/tools/astro-audit.js.map +1 -1
- package/dist/tools/astro-config.d.ts.map +1 -1
- package/dist/tools/astro-config.js +3 -0
- package/dist/tools/astro-config.js.map +1 -1
- package/dist/tools/astro-content-collections/discovery.d.ts +2 -2
- package/dist/tools/astro-content-collections/discovery.d.ts.map +1 -1
- package/dist/tools/astro-content-collections/discovery.js.map +1 -1
- package/dist/tools/astro-content-collections/schema.d.ts +2 -2
- package/dist/tools/astro-content-collections/schema.d.ts.map +1 -1
- package/dist/tools/astro-content-collections/schema.js.map +1 -1
- package/dist/tools/astro-content-collections.d.ts.map +1 -1
- package/dist/tools/astro-content-collections.js +5 -1
- package/dist/tools/astro-content-collections.js.map +1 -1
- package/dist/tools/astro-db-audit.d.ts.map +1 -1
- package/dist/tools/astro-db-audit.js +8 -0
- package/dist/tools/astro-db-audit.js.map +1 -1
- package/dist/tools/astro-db-parser.d.ts.map +1 -1
- package/dist/tools/astro-db-parser.js +3 -0
- package/dist/tools/astro-db-parser.js.map +1 -1
- package/dist/tools/astro-env-validator.d.ts.map +1 -1
- package/dist/tools/astro-env-validator.js +4 -0
- package/dist/tools/astro-env-validator.js.map +1 -1
- package/dist/tools/astro-helpers.d.ts +6 -6
- package/dist/tools/astro-helpers.d.ts.map +1 -1
- package/dist/tools/astro-helpers.js.map +1 -1
- package/dist/tools/astro-middleware.d.ts.map +1 -1
- package/dist/tools/astro-middleware.js +4 -0
- package/dist/tools/astro-middleware.js.map +1 -1
- package/dist/tools/astro-sessions.d.ts.map +1 -1
- package/dist/tools/astro-sessions.js +4 -0
- package/dist/tools/astro-sessions.js.map +1 -1
- package/dist/tools/complexity-tools.d.ts.map +1 -1
- package/dist/tools/complexity-tools.js +51 -15
- package/dist/tools/complexity-tools.js.map +1 -1
- package/dist/tools/context-tools.js.map +1 -1
- package/dist/tools/cross-repo-outbound-lexer/context.d.ts.map +1 -1
- package/dist/tools/cross-repo-outbound-lexer/context.js.map +1 -1
- package/dist/tools/dependency-audit-lockfile-tools.js.map +1 -1
- package/dist/tools/hono-api-contract.js.map +1 -1
- package/dist/tools/hono-visualize.js.map +1 -1
- package/dist/tools/index-shared.d.ts.map +1 -1
- package/dist/tools/index-tools/registry.js +1 -1
- package/dist/tools/index-tools/registry.js.map +1 -1
- package/dist/tools/index-tools/snapshots.js.map +1 -1
- package/dist/tools/insights-tools.js.map +1 -1
- package/dist/tools/journal-generator-helpers.d.ts.map +1 -1
- package/dist/tools/journal-generator-helpers.js.map +1 -1
- package/dist/tools/journal-git-client.js.map +1 -1
- package/dist/tools/journal-llm-client.d.ts.map +1 -1
- package/dist/tools/journal-llm-client.js.map +1 -1
- package/dist/tools/journal-migrator.d.ts.map +1 -1
- package/dist/tools/journal-phase-detector.d.ts.map +1 -1
- package/dist/tools/journal-sentinel.d.ts.map +1 -1
- package/dist/tools/nest-audit-tools.js.map +1 -1
- package/dist/tools/nest-ext-tools.js.map +1 -1
- package/dist/tools/nextjs-api-contract-readers.d.ts +5 -5
- package/dist/tools/nextjs-api-contract-readers.d.ts.map +1 -1
- package/dist/tools/nextjs-api-contract-readers.js.map +1 -1
- package/dist/tools/nextjs-boundary-tools.d.ts +2 -2
- package/dist/tools/nextjs-boundary-tools.d.ts.map +1 -1
- package/dist/tools/nextjs-boundary-tools.js.map +1 -1
- package/dist/tools/nextjs-component-readers.d.ts +3 -3
- package/dist/tools/nextjs-component-readers.d.ts.map +1 -1
- package/dist/tools/nextjs-component-readers.js.map +1 -1
- package/dist/tools/nextjs-framework-audit-tools.js.map +1 -1
- package/dist/tools/nextjs-metadata-tools.d.ts.map +1 -1
- package/dist/tools/nextjs-route-readers.d.ts +2 -2
- package/dist/tools/nextjs-route-readers.d.ts.map +1 -1
- package/dist/tools/nextjs-route-readers.js.map +1 -1
- package/dist/tools/nextjs-security-readers.d.ts +6 -6
- package/dist/tools/nextjs-security-readers.d.ts.map +1 -1
- package/dist/tools/nextjs-security-readers.js.map +1 -1
- package/dist/tools/pg-introspection.js.map +1 -1
- package/dist/tools/php-active-record-tools.js.map +1 -1
- package/dist/tools/php-view-tools.js.map +1 -1
- package/dist/tools/plan-turn/orchestrator.d.ts.map +1 -1
- package/dist/tools/plan-turn/orchestrator.js +14 -4
- package/dist/tools/plan-turn/orchestrator.js.map +1 -1
- package/dist/tools/plan-turn/recommendations.js +2 -2
- package/dist/tools/plan-turn/recommendations.js.map +1 -1
- package/dist/tools/project-profile-extractors.js.map +1 -1
- package/dist/tools/project-tools.d.ts.map +1 -1
- package/dist/tools/project-tools.js.map +1 -1
- package/dist/tools/pydantic-models.js.map +1 -1
- package/dist/tools/python-audit/aggregate.js.map +1 -1
- package/dist/tools/python-circular-imports.d.ts.map +1 -1
- package/dist/tools/python-circular-imports.js +3 -0
- package/dist/tools/python-circular-imports.js.map +1 -1
- package/dist/tools/python-constants-tools.d.ts.map +1 -1
- package/dist/tools/python-constants-tools.js +14 -0
- package/dist/tools/python-constants-tools.js.map +1 -1
- package/dist/tools/query-tools.js.map +1 -1
- package/dist/tools/review-diff/constants.d.ts.map +1 -1
- package/dist/tools/search-tools/text-search.js.map +1 -1
- package/dist/tools/taint-tools.d.ts.map +1 -1
- package/dist/tools/taint-tools.js +4 -0
- package/dist/tools/taint-tools.js.map +1 -1
- package/dist/tools/typescript-constants-tools.d.ts.map +1 -1
- package/dist/tools/typescript-constants-tools.js +14 -0
- package/dist/tools/typescript-constants-tools.js.map +1 -1
- package/dist/tools/wiki-manifest.js.map +1 -1
- package/dist/tools/workspace-tools.d.ts.map +1 -1
- package/dist/tools/yii-migrations-tools.js.map +1 -1
- package/dist/tools/yii-modules-tools.js.map +1 -1
- package/dist/utils/git-head.js.map +1 -1
- package/dist/utils/git-validation.d.ts.map +1 -1
- package/dist/utils/import-graph.d.ts.map +1 -1
- package/dist/utils/import-graph.js +10 -0
- package/dist/utils/import-graph.js.map +1 -1
- package/dist/utils/language-detect.d.ts.map +1 -1
- package/dist/utils/language-detect.js +6 -3
- package/dist/utils/language-detect.js.map +1 -1
- package/dist/utils/nextjs-ast-readers.d.ts +3 -3
- package/dist/utils/nextjs-ast-readers.d.ts.map +1 -1
- package/dist/utils/nextjs-ast-readers.js.map +1 -1
- package/dist/utils/nextjs-audit-cache.d.ts +3 -3
- package/dist/utils/nextjs-audit-cache.d.ts.map +1 -1
- package/dist/utils/nextjs-audit-cache.js.map +1 -1
- package/dist/utils/nextjs-metadata-readers.d.ts +4 -4
- package/dist/utils/nextjs-metadata-readers.d.ts.map +1 -1
- package/dist/utils/nextjs-metadata-readers.js.map +1 -1
- package/dist/utils/overlay-cache.d.ts.map +1 -1
- package/dist/utils/overlay-cache.js.map +1 -1
- package/dist/utils/python-imports.d.ts +2 -2
- package/dist/utils/python-imports.d.ts.map +1 -1
- package/dist/utils/python-imports.js.map +1 -1
- package/dist/utils/ts-imports.d.ts +2 -2
- package/dist/utils/ts-imports.d.ts.map +1 -1
- package/dist/utils/ts-imports.js.map +1 -1
- package/dist/utils/walk/limits.d.ts.map +1 -1
- package/dist/utils/worktree.d.ts +60 -0
- package/dist/utils/worktree.d.ts.map +1 -0
- package/dist/utils/worktree.js +170 -0
- package/dist/utils/worktree.js.map +1 -0
- package/package.json +10 -7
- package/rules/codesift.md +5 -1
- package/rules/codesift.mdc +5 -1
- package/rules/codex.md +5 -1
- package/rules/gemini.md +5 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/cli/hooks/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,KAAK,IAAI,SAAS,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,CAAC,MAAM,eAAe,GAAwB,IAAI,GAAG,CAAC;IAC1D,KAAK;IACL,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;IACL,OAAO;IACP,IAAI;IACJ,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,QAAQ;IACR,KAAK;IACL,QAAQ;IACR,MAAM;IACN,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAErC,SAAS,eAAe;IACtB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,eAAe,CAAC,CAAC;AACjG,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAW,EAAE,QAAgB;IAC3D,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IACtF,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC5C,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAC5B,OAAO,GAAG,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACzF,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,uBAAuB;IACrC,IAAI,CAAC;QACH,8EAA8E;QAC9E,4EAA4E;QAC5E,8EAA8E;QAC9E,qCAAqC;QACrC,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE;YACjD,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;SAC3B,CAAC,CAAC;QACH,oEAAoE;QACpE,4DAA4D;QAC5D,+CAA+C;QAC/C,0EAA0E;QAC1E,0DAA0D;QAC1D,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACnC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YACxB,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC;gBAAE,OAAO,KAAK,CAAC;YAClF,IAAI,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAAE,OAAO,IAAI,CAAC,CAAW,kCAAkC;YAC7F,OAAO,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAe,sCAAsC;QACnG,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/cli/hooks/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `codesift service` — run the shared daemon as a supervised background service.
|
|
3
|
+
*
|
|
4
|
+
* Without this, `codesift serve` is a foreground process: it dies with the
|
|
5
|
+
* terminal that launched it, does not come back after a crash, and is not there
|
|
6
|
+
* after a reboot. Every client is then configured to talk to a daemon that
|
|
7
|
+
* isn't running. Supervision is what makes the shared-daemon model safe to
|
|
8
|
+
* depend on — it turns "one process for everyone" from a single point of
|
|
9
|
+
* failure into a service that restarts itself.
|
|
10
|
+
*
|
|
11
|
+
* macOS gets a per-user LaunchAgent, Linux a systemd *user* unit. Both are
|
|
12
|
+
* per-user and unprivileged by design: nothing here needs root, and a daemon
|
|
13
|
+
* holding every index on the machine is exactly the thing that should not run
|
|
14
|
+
* as root.
|
|
15
|
+
*/
|
|
16
|
+
export declare const SERVICE_LABEL = "com.codesift.daemon";
|
|
17
|
+
export declare const DEFAULT_SERVICE_PORT = 7077;
|
|
18
|
+
/**
|
|
19
|
+
* PATH handed to the service.
|
|
20
|
+
*
|
|
21
|
+
* launchd does NOT give an agent the login shell's PATH — it gets a minimal
|
|
22
|
+
* one. CodeSift shells out to `git` (repo detection, churn analysis, diff
|
|
23
|
+
* tools) and optionally to `rg`, so a daemon started by launchd with the
|
|
24
|
+
* default PATH silently loses those features while looking healthy. Homebrew
|
|
25
|
+
* differs by arch (/opt/homebrew on Apple Silicon, /usr/local on Intel), so
|
|
26
|
+
* both are listed.
|
|
27
|
+
*/
|
|
28
|
+
export declare const SERVICE_PATH_ENTRIES: string[];
|
|
29
|
+
export interface ServicePlan {
|
|
30
|
+
label: string;
|
|
31
|
+
port: number;
|
|
32
|
+
host: string;
|
|
33
|
+
/** Absolute path to the node binary that will run the daemon. */
|
|
34
|
+
execPath: string;
|
|
35
|
+
/** Absolute path to the codesift CLI entry point. */
|
|
36
|
+
cliPath: string;
|
|
37
|
+
/** Where the unit file goes. */
|
|
38
|
+
unitPath: string;
|
|
39
|
+
stdoutLog: string;
|
|
40
|
+
stderrLog: string;
|
|
41
|
+
dataDir: string;
|
|
42
|
+
}
|
|
43
|
+
/** Escape a string for inclusion in XML text content. */
|
|
44
|
+
export declare function escapeXml(value: string): string;
|
|
45
|
+
/**
|
|
46
|
+
* True for addresses that keep the daemon reachable only from this machine.
|
|
47
|
+
*
|
|
48
|
+
* This matters more than it looks: the daemon answers MCP tool calls that read
|
|
49
|
+
* any indexed repository, so binding it to a routable interface publishes the
|
|
50
|
+
* user's entire source tree — and their indexed conversation history — to
|
|
51
|
+
* anything that can reach the port. There is no authentication by default.
|
|
52
|
+
*/
|
|
53
|
+
export declare function isLoopbackHost(host: string): boolean;
|
|
54
|
+
/** Resolve the CLI entry point for the currently running codesift install. */
|
|
55
|
+
export declare function resolveCliPath(): string;
|
|
56
|
+
export declare function buildServicePlan(opts: {
|
|
57
|
+
port?: number;
|
|
58
|
+
host?: string;
|
|
59
|
+
dataDir: string;
|
|
60
|
+
execPath?: string;
|
|
61
|
+
cliPath?: string;
|
|
62
|
+
home?: string;
|
|
63
|
+
os?: NodeJS.Platform;
|
|
64
|
+
}): ServicePlan;
|
|
65
|
+
/**
|
|
66
|
+
* macOS LaunchAgent.
|
|
67
|
+
*
|
|
68
|
+
* `KeepAlive` restarts the daemon whenever it exits for any reason — crash, OOM
|
|
69
|
+
* kill, or a `kill` from a user cleaning up processes. `ThrottleInterval` is the
|
|
70
|
+
* guard that keeps that from becoming a restart storm if the daemon cannot
|
|
71
|
+
* start at all (port taken by something else, corrupt install): launchd waits
|
|
72
|
+
* between attempts instead of spinning. `RunAtLoad` covers login and reboot.
|
|
73
|
+
*
|
|
74
|
+
* To stop it deliberately, unload the agent (`codesift service uninstall`) —
|
|
75
|
+
* killing the process alone just makes launchd start it again, which is the
|
|
76
|
+
* whole point.
|
|
77
|
+
*/
|
|
78
|
+
export declare function buildLaunchAgentPlist(plan: ServicePlan): string;
|
|
79
|
+
/** Linux systemd *user* unit — same supervision contract as the LaunchAgent. */
|
|
80
|
+
export declare function buildSystemdUnit(plan: ServicePlan): string;
|
|
81
|
+
export declare function renderUnit(plan: ServicePlan, os: NodeJS.Platform): string;
|
|
82
|
+
export interface InstallResult {
|
|
83
|
+
status: "installed" | "already-installed" | "unsupported";
|
|
84
|
+
unitPath: string;
|
|
85
|
+
url: string;
|
|
86
|
+
activated: boolean;
|
|
87
|
+
note?: string;
|
|
88
|
+
}
|
|
89
|
+
/** Injectable so tests can exercise install/uninstall without touching launchd. */
|
|
90
|
+
export type CommandRunner = (cmd: string, args: string[]) => {
|
|
91
|
+
ok: boolean;
|
|
92
|
+
message: string;
|
|
93
|
+
};
|
|
94
|
+
export declare function installService(opts: {
|
|
95
|
+
port?: number;
|
|
96
|
+
host?: string;
|
|
97
|
+
dataDir: string;
|
|
98
|
+
force?: boolean;
|
|
99
|
+
os?: NodeJS.Platform;
|
|
100
|
+
home?: string;
|
|
101
|
+
runner?: CommandRunner;
|
|
102
|
+
}): InstallResult;
|
|
103
|
+
export declare function uninstallService(opts: {
|
|
104
|
+
dataDir: string;
|
|
105
|
+
os?: NodeJS.Platform;
|
|
106
|
+
home?: string;
|
|
107
|
+
runner?: CommandRunner;
|
|
108
|
+
}): {
|
|
109
|
+
status: "removed" | "not-installed";
|
|
110
|
+
unitPath: string;
|
|
111
|
+
};
|
|
112
|
+
/**
|
|
113
|
+
* Installed / starting / running, kept distinct on purpose.
|
|
114
|
+
*
|
|
115
|
+
* The daemon writes `daemon.pid` when it takes the lock but `daemon.port` only
|
|
116
|
+
* once the HTTP listener is actually up, and on a machine with large indexes
|
|
117
|
+
* that gap is tens of seconds. Collapsing the gap into "running" reports a
|
|
118
|
+
* daemon nothing can connect to yet as healthy, which sends whoever is
|
|
119
|
+
* debugging a client straight past the real answer ("wait, then retry").
|
|
120
|
+
*/
|
|
121
|
+
export declare function serviceStatus(opts: {
|
|
122
|
+
dataDir: string;
|
|
123
|
+
os?: NodeJS.Platform;
|
|
124
|
+
home?: string;
|
|
125
|
+
}): {
|
|
126
|
+
installed: boolean;
|
|
127
|
+
unitPath: string;
|
|
128
|
+
state: "not-installed" | "stopped" | "starting" | "running";
|
|
129
|
+
running: boolean;
|
|
130
|
+
pid: number | null;
|
|
131
|
+
port: number | null;
|
|
132
|
+
};
|
|
133
|
+
//# sourceMappingURL=service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/cli/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
import { mkdirSync, writeFileSync, readFileSync, existsSync, unlinkSync } from "node:fs";
|
|
2
|
+
import { homedir, platform } from "node:os";
|
|
3
|
+
import { join, dirname } from "node:path";
|
|
4
|
+
import { fileURLToPath } from "node:url";
|
|
5
|
+
import { execFileSync } from "node:child_process";
|
|
6
|
+
/**
|
|
7
|
+
* `codesift service` — run the shared daemon as a supervised background service.
|
|
8
|
+
*
|
|
9
|
+
* Without this, `codesift serve` is a foreground process: it dies with the
|
|
10
|
+
* terminal that launched it, does not come back after a crash, and is not there
|
|
11
|
+
* after a reboot. Every client is then configured to talk to a daemon that
|
|
12
|
+
* isn't running. Supervision is what makes the shared-daemon model safe to
|
|
13
|
+
* depend on — it turns "one process for everyone" from a single point of
|
|
14
|
+
* failure into a service that restarts itself.
|
|
15
|
+
*
|
|
16
|
+
* macOS gets a per-user LaunchAgent, Linux a systemd *user* unit. Both are
|
|
17
|
+
* per-user and unprivileged by design: nothing here needs root, and a daemon
|
|
18
|
+
* holding every index on the machine is exactly the thing that should not run
|
|
19
|
+
* as root.
|
|
20
|
+
*/
|
|
21
|
+
export const SERVICE_LABEL = "com.codesift.daemon";
|
|
22
|
+
export const DEFAULT_SERVICE_PORT = 7077;
|
|
23
|
+
/**
|
|
24
|
+
* PATH handed to the service.
|
|
25
|
+
*
|
|
26
|
+
* launchd does NOT give an agent the login shell's PATH — it gets a minimal
|
|
27
|
+
* one. CodeSift shells out to `git` (repo detection, churn analysis, diff
|
|
28
|
+
* tools) and optionally to `rg`, so a daemon started by launchd with the
|
|
29
|
+
* default PATH silently loses those features while looking healthy. Homebrew
|
|
30
|
+
* differs by arch (/opt/homebrew on Apple Silicon, /usr/local on Intel), so
|
|
31
|
+
* both are listed.
|
|
32
|
+
*/
|
|
33
|
+
export const SERVICE_PATH_ENTRIES = [
|
|
34
|
+
"/opt/homebrew/bin",
|
|
35
|
+
"/usr/local/bin",
|
|
36
|
+
"/usr/bin",
|
|
37
|
+
"/bin",
|
|
38
|
+
"/usr/sbin",
|
|
39
|
+
"/sbin",
|
|
40
|
+
];
|
|
41
|
+
/** Escape a string for inclusion in XML text content. */
|
|
42
|
+
export function escapeXml(value) {
|
|
43
|
+
return value
|
|
44
|
+
.replace(/&/g, "&")
|
|
45
|
+
.replace(/</g, "<")
|
|
46
|
+
.replace(/>/g, ">")
|
|
47
|
+
.replace(/"/g, """)
|
|
48
|
+
.replace(/'/g, "'");
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* True for addresses that keep the daemon reachable only from this machine.
|
|
52
|
+
*
|
|
53
|
+
* This matters more than it looks: the daemon answers MCP tool calls that read
|
|
54
|
+
* any indexed repository, so binding it to a routable interface publishes the
|
|
55
|
+
* user's entire source tree — and their indexed conversation history — to
|
|
56
|
+
* anything that can reach the port. There is no authentication by default.
|
|
57
|
+
*/
|
|
58
|
+
export function isLoopbackHost(host) {
|
|
59
|
+
const h = host.trim().toLowerCase().replace(/^\[|\]$/g, "");
|
|
60
|
+
return h === "127.0.0.1" || h === "localhost" || h === "::1";
|
|
61
|
+
}
|
|
62
|
+
/** Resolve the CLI entry point for the currently running codesift install. */
|
|
63
|
+
export function resolveCliPath() {
|
|
64
|
+
// dist/cli/service.js -> dist/cli.js
|
|
65
|
+
return join(dirname(dirname(fileURLToPath(import.meta.url))), "cli.js");
|
|
66
|
+
}
|
|
67
|
+
export function buildServicePlan(opts) {
|
|
68
|
+
const home = opts.home ?? homedir();
|
|
69
|
+
const os = opts.os ?? platform();
|
|
70
|
+
const port = opts.port ?? DEFAULT_SERVICE_PORT;
|
|
71
|
+
const host = opts.host ?? "127.0.0.1";
|
|
72
|
+
const logDir = join(opts.dataDir, "logs");
|
|
73
|
+
const unitPath = os === "darwin"
|
|
74
|
+
? join(home, "Library", "LaunchAgents", `${SERVICE_LABEL}.plist`)
|
|
75
|
+
: join(home, ".config", "systemd", "user", "codesift-daemon.service");
|
|
76
|
+
return {
|
|
77
|
+
label: SERVICE_LABEL,
|
|
78
|
+
port,
|
|
79
|
+
host,
|
|
80
|
+
execPath: opts.execPath ?? process.execPath,
|
|
81
|
+
cliPath: opts.cliPath ?? resolveCliPath(),
|
|
82
|
+
unitPath,
|
|
83
|
+
stdoutLog: join(logDir, "daemon.out.log"),
|
|
84
|
+
stderrLog: join(logDir, "daemon.err.log"),
|
|
85
|
+
dataDir: opts.dataDir,
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* macOS LaunchAgent.
|
|
90
|
+
*
|
|
91
|
+
* `KeepAlive` restarts the daemon whenever it exits for any reason — crash, OOM
|
|
92
|
+
* kill, or a `kill` from a user cleaning up processes. `ThrottleInterval` is the
|
|
93
|
+
* guard that keeps that from becoming a restart storm if the daemon cannot
|
|
94
|
+
* start at all (port taken by something else, corrupt install): launchd waits
|
|
95
|
+
* between attempts instead of spinning. `RunAtLoad` covers login and reboot.
|
|
96
|
+
*
|
|
97
|
+
* To stop it deliberately, unload the agent (`codesift service uninstall`) —
|
|
98
|
+
* killing the process alone just makes launchd start it again, which is the
|
|
99
|
+
* whole point.
|
|
100
|
+
*/
|
|
101
|
+
export function buildLaunchAgentPlist(plan) {
|
|
102
|
+
const args = [plan.cliPath, "serve", "--port", String(plan.port), "--host", plan.host];
|
|
103
|
+
const argLines = [plan.execPath, ...args]
|
|
104
|
+
.map((a) => ` <string>${escapeXml(a)}</string>`)
|
|
105
|
+
.join("\n");
|
|
106
|
+
return `<?xml version="1.0" encoding="UTF-8"?>
|
|
107
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
108
|
+
<plist version="1.0">
|
|
109
|
+
<dict>
|
|
110
|
+
<key>Label</key>
|
|
111
|
+
<string>${escapeXml(plan.label)}</string>
|
|
112
|
+
<key>ProgramArguments</key>
|
|
113
|
+
<array>
|
|
114
|
+
${argLines}
|
|
115
|
+
</array>
|
|
116
|
+
<key>RunAtLoad</key>
|
|
117
|
+
<true/>
|
|
118
|
+
<key>KeepAlive</key>
|
|
119
|
+
<true/>
|
|
120
|
+
<key>ThrottleInterval</key>
|
|
121
|
+
<integer>10</integer>
|
|
122
|
+
<key>ProcessType</key>
|
|
123
|
+
<string>Background</string>
|
|
124
|
+
<key>EnvironmentVariables</key>
|
|
125
|
+
<dict>
|
|
126
|
+
<key>PATH</key>
|
|
127
|
+
<string>${escapeXml(SERVICE_PATH_ENTRIES.join(":"))}</string>
|
|
128
|
+
<key>CODESIFT_DATA_DIR</key>
|
|
129
|
+
<string>${escapeXml(plan.dataDir)}</string>
|
|
130
|
+
</dict>
|
|
131
|
+
<key>StandardOutPath</key>
|
|
132
|
+
<string>${escapeXml(plan.stdoutLog)}</string>
|
|
133
|
+
<key>StandardErrorPath</key>
|
|
134
|
+
<string>${escapeXml(plan.stderrLog)}</string>
|
|
135
|
+
</dict>
|
|
136
|
+
</plist>
|
|
137
|
+
`;
|
|
138
|
+
}
|
|
139
|
+
/** Linux systemd *user* unit — same supervision contract as the LaunchAgent. */
|
|
140
|
+
export function buildSystemdUnit(plan) {
|
|
141
|
+
const exec = [plan.execPath, plan.cliPath, "serve", "--port", String(plan.port), "--host", plan.host]
|
|
142
|
+
.map((a) => (/[\s"']/.test(a) ? JSON.stringify(a) : a))
|
|
143
|
+
.join(" ");
|
|
144
|
+
return `[Unit]
|
|
145
|
+
Description=CodeSift shared MCP daemon
|
|
146
|
+
Documentation=https://github.com/greglas75/codesift
|
|
147
|
+
After=network.target
|
|
148
|
+
|
|
149
|
+
[Service]
|
|
150
|
+
Type=simple
|
|
151
|
+
ExecStart=${exec}
|
|
152
|
+
Restart=always
|
|
153
|
+
RestartSec=10
|
|
154
|
+
Environment=PATH=${SERVICE_PATH_ENTRIES.join(":")}
|
|
155
|
+
Environment=CODESIFT_DATA_DIR=${plan.dataDir}
|
|
156
|
+
StandardOutput=append:${plan.stdoutLog}
|
|
157
|
+
StandardError=append:${plan.stderrLog}
|
|
158
|
+
|
|
159
|
+
[Install]
|
|
160
|
+
WantedBy=default.target
|
|
161
|
+
`;
|
|
162
|
+
}
|
|
163
|
+
export function renderUnit(plan, os) {
|
|
164
|
+
return os === "darwin" ? buildLaunchAgentPlist(plan) : buildSystemdUnit(plan);
|
|
165
|
+
}
|
|
166
|
+
const defaultRunner = (cmd, args) => {
|
|
167
|
+
try {
|
|
168
|
+
execFileSync(cmd, args, { stdio: "pipe" });
|
|
169
|
+
return { ok: true, message: "" };
|
|
170
|
+
}
|
|
171
|
+
catch (e) {
|
|
172
|
+
const err = e;
|
|
173
|
+
return { ok: false, message: err.stderr?.toString().trim() || err.message || "failed" };
|
|
174
|
+
}
|
|
175
|
+
};
|
|
176
|
+
/**
|
|
177
|
+
* GUI domain target for launchctl, e.g. `gui/501`.
|
|
178
|
+
*
|
|
179
|
+
* Never guesses. A hardcoded fallback here would aim `bootstrap`/`bootout` at
|
|
180
|
+
* whichever user happens to own that uid — 501 is simply the first account
|
|
181
|
+
* macOS creates, not necessarily this one — so a wrong guess would touch
|
|
182
|
+
* another user's launchd domain. Absent uid means we cannot address a domain
|
|
183
|
+
* at all, and saying so beats acting on a guess.
|
|
184
|
+
*/
|
|
185
|
+
function guiDomain() {
|
|
186
|
+
const uid = process.getuid?.();
|
|
187
|
+
return typeof uid === "number" ? `gui/${uid}` : null;
|
|
188
|
+
}
|
|
189
|
+
export function installService(opts) {
|
|
190
|
+
const run = opts.runner ?? defaultRunner;
|
|
191
|
+
const os = opts.os ?? platform();
|
|
192
|
+
if (os !== "darwin" && os !== "linux") {
|
|
193
|
+
return {
|
|
194
|
+
status: "unsupported",
|
|
195
|
+
unitPath: "",
|
|
196
|
+
url: "",
|
|
197
|
+
activated: false,
|
|
198
|
+
note: `no service integration for ${os} — run 'codesift serve' yourself`,
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
const plan = buildServicePlan({ ...opts, ...(opts.os ? { os: opts.os } : {}) });
|
|
202
|
+
if (!isLoopbackHost(plan.host)) {
|
|
203
|
+
throw new Error(`refusing to install a service bound to ${plan.host}: the daemon serves every indexed `
|
|
204
|
+
+ `repository and has no authentication, so a non-loopback bind publishes your source `
|
|
205
|
+
+ `tree to the network. Use 127.0.0.1.`);
|
|
206
|
+
}
|
|
207
|
+
if (existsSync(plan.unitPath) && opts.force !== true) {
|
|
208
|
+
return {
|
|
209
|
+
status: "already-installed",
|
|
210
|
+
unitPath: plan.unitPath,
|
|
211
|
+
url: `http://${plan.host}:${plan.port}/mcp`,
|
|
212
|
+
activated: false,
|
|
213
|
+
note: "pass --force to overwrite",
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
mkdirSync(dirname(plan.unitPath), { recursive: true });
|
|
217
|
+
mkdirSync(join(plan.dataDir, "logs"), { recursive: true });
|
|
218
|
+
writeFileSync(plan.unitPath, renderUnit(plan, os), "utf-8");
|
|
219
|
+
let activated = false;
|
|
220
|
+
let note;
|
|
221
|
+
if (os === "darwin") {
|
|
222
|
+
const domain = guiDomain();
|
|
223
|
+
if (!domain) {
|
|
224
|
+
note = "unit written, but this process has no uid — activate with "
|
|
225
|
+
+ `launchctl bootstrap gui/$(id -u) ${plan.unitPath}`;
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
// `bootout` on a label that is not loaded is a normal no-op, so its
|
|
229
|
+
// failure is not an error — it exists to replace a previous registration.
|
|
230
|
+
run("launchctl", ["bootout", `${domain}/${plan.label}`]);
|
|
231
|
+
const r = run("launchctl", ["bootstrap", domain, plan.unitPath]);
|
|
232
|
+
activated = r.ok;
|
|
233
|
+
if (!r.ok)
|
|
234
|
+
note = `unit written, but launchctl bootstrap failed: ${r.message}`;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
else {
|
|
238
|
+
run("systemctl", ["--user", "daemon-reload"]);
|
|
239
|
+
const r = run("systemctl", ["--user", "enable", "--now", "codesift-daemon.service"]);
|
|
240
|
+
activated = r.ok;
|
|
241
|
+
if (!r.ok)
|
|
242
|
+
note = `unit written, but systemctl enable failed: ${r.message}`;
|
|
243
|
+
}
|
|
244
|
+
return {
|
|
245
|
+
status: "installed",
|
|
246
|
+
unitPath: plan.unitPath,
|
|
247
|
+
url: `http://${plan.host}:${plan.port}/mcp`,
|
|
248
|
+
activated,
|
|
249
|
+
...(note ? { note } : {}),
|
|
250
|
+
};
|
|
251
|
+
}
|
|
252
|
+
export function uninstallService(opts) {
|
|
253
|
+
const run = opts.runner ?? defaultRunner;
|
|
254
|
+
const os = opts.os ?? platform();
|
|
255
|
+
const plan = buildServicePlan({ ...opts, ...(opts.os ? { os: opts.os } : {}) });
|
|
256
|
+
const existed = existsSync(plan.unitPath);
|
|
257
|
+
if (os === "darwin") {
|
|
258
|
+
const domain = guiDomain();
|
|
259
|
+
if (domain)
|
|
260
|
+
run("launchctl", ["bootout", `${domain}/${plan.label}`]);
|
|
261
|
+
}
|
|
262
|
+
else {
|
|
263
|
+
run("systemctl", ["--user", "disable", "--now", "codesift-daemon.service"]);
|
|
264
|
+
}
|
|
265
|
+
if (existed) {
|
|
266
|
+
try {
|
|
267
|
+
unlinkSync(plan.unitPath);
|
|
268
|
+
}
|
|
269
|
+
catch { /* best-effort */ }
|
|
270
|
+
}
|
|
271
|
+
return { status: existed ? "removed" : "not-installed", unitPath: plan.unitPath };
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Installed / starting / running, kept distinct on purpose.
|
|
275
|
+
*
|
|
276
|
+
* The daemon writes `daemon.pid` when it takes the lock but `daemon.port` only
|
|
277
|
+
* once the HTTP listener is actually up, and on a machine with large indexes
|
|
278
|
+
* that gap is tens of seconds. Collapsing the gap into "running" reports a
|
|
279
|
+
* daemon nothing can connect to yet as healthy, which sends whoever is
|
|
280
|
+
* debugging a client straight past the real answer ("wait, then retry").
|
|
281
|
+
*/
|
|
282
|
+
export function serviceStatus(opts) {
|
|
283
|
+
const plan = buildServicePlan({ ...opts, ...(opts.os ? { os: opts.os } : {}) });
|
|
284
|
+
const installed = existsSync(plan.unitPath);
|
|
285
|
+
let pid = null;
|
|
286
|
+
let port = null;
|
|
287
|
+
try {
|
|
288
|
+
pid = parseInt(readFileSync(join(opts.dataDir, "daemon.pid"), "utf-8").trim(), 10);
|
|
289
|
+
port = parseInt(readFileSync(join(opts.dataDir, "daemon.port"), "utf-8").trim(), 10);
|
|
290
|
+
}
|
|
291
|
+
catch { /* no lock — not running */ }
|
|
292
|
+
let running = false;
|
|
293
|
+
if (pid !== null && Number.isInteger(pid) && pid > 0) {
|
|
294
|
+
try {
|
|
295
|
+
process.kill(pid, 0);
|
|
296
|
+
running = true;
|
|
297
|
+
}
|
|
298
|
+
catch (e) {
|
|
299
|
+
running = e.code === "EPERM";
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
const hasPort = port !== null && Number.isInteger(port) && port > 0;
|
|
303
|
+
const state = !installed && !running
|
|
304
|
+
? "not-installed"
|
|
305
|
+
: running
|
|
306
|
+
? (hasPort ? "running" : "starting")
|
|
307
|
+
: "stopped";
|
|
308
|
+
return {
|
|
309
|
+
installed,
|
|
310
|
+
unitPath: plan.unitPath,
|
|
311
|
+
state,
|
|
312
|
+
running: state === "running",
|
|
313
|
+
pid: running ? pid : null,
|
|
314
|
+
port: state === "running" ? port : null,
|
|
315
|
+
};
|
|
316
|
+
}
|
|
317
|
+
//# sourceMappingURL=service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/cli/service.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/setup/fs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../../src/cli/setup/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY;IAC7C,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACtB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,kBAAkB,GAAG,IAAI,GAAG,mCAAmC,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3E,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,IAAI,GAAG,QAAQ,GAAG,OAAO,MAAM,GAAG,GAAG,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,MAAiC,CAAC;AAC3C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY,EAAE,IAA6B;IAC7E,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,YAAoB;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../../src/cli/setup/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY;IAC7C,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACtB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,kBAAkB,GAAG,IAAI,GAAG,mCAAmC,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3E,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,IAAI,GAAG,QAAQ,GAAG,OAAO,MAAM,GAAG,GAAG,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,MAAiC,CAAC;AAC3C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY,EAAE,IAA6B;IAC7E,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,YAAoB;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACxD,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QAChF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC3C,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1B,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,kCAAkC,GAAG,YAAY,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,OAAe;IACpC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACzE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/cli/setup/mcp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/cli/setup/mcp.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG5D,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CACxB;AAID,wBAAgB,qBAAqB,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAoB3E;AAID,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAKpF;AAqDD,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,kBAAkB,EAC1B,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,WAAW,CAAC,CAwBtB"}
|
package/dist/cli/setup/mcp.js
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
|
+
import { execSync } from "node:child_process";
|
|
1
2
|
import { existsSync } from "node:fs";
|
|
2
3
|
import { homedir } from "node:os";
|
|
3
4
|
import { join } from "node:path";
|
|
4
5
|
import { ensureDir, readJsonFile, writeJsonFile } from "./fs.js";
|
|
5
6
|
const DEFAULT_DAEMON_PORT = 7077;
|
|
6
7
|
export function resolveMcpServerEntry() {
|
|
8
|
+
// NOTE: these two lookups used to `require("node:child_process")`. The package
|
|
9
|
+
// is ESM, so the bare require threw ReferenceError, both try blocks fell
|
|
10
|
+
// through, and setup ALWAYS wrote the `npx -y codesift-mcp` fallback — even
|
|
11
|
+
// with codesift-mcp installed globally. Keep execSync a static import.
|
|
7
12
|
try {
|
|
8
|
-
const { execSync } = require("node:child_process");
|
|
9
13
|
const serverPath = execSync("which codesift-mcp", { encoding: "utf-8" }).trim();
|
|
10
14
|
if (serverPath) {
|
|
11
15
|
return { command: serverPath, args: [] };
|
|
@@ -13,7 +17,6 @@ export function resolveMcpServerEntry() {
|
|
|
13
17
|
}
|
|
14
18
|
catch { /* not globally installed — fall back to npx */ }
|
|
15
19
|
try {
|
|
16
|
-
const { execSync } = require("node:child_process");
|
|
17
20
|
const npxPath = execSync("which npx", { encoding: "utf-8" }).trim();
|
|
18
21
|
if (npxPath) {
|
|
19
22
|
return { command: npxPath, args: ["-y", "codesift-mcp"] };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/cli/setup/mcp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAOjE,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAEjC,MAAM,UAAU,qBAAqB;IACnC,
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/cli/setup/mcp.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/setup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAe,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAEL,eAAe,EACf,kCAAkC,EAClC,yCAAyC,EAC1C,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAiC,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAyB,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEtF,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAe,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAEL,eAAe,EACf,kCAAkC,EAClC,yCAAyC,EAC1C,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAiC,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAyB,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEtF,eAAO,MAAM,mBAAmB,YAAI,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAU,CAAC;AACnG,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC5D,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEtF,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,yCAAyC,EACzC,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,kCAAkC,GACnC,CAAC;AAgCF,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAKjF;AAED,wBAAsB,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAmB1F;AAED,wBAAsB,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAU7E;AAcD,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,WAAW,EACnB,WAAW,CAAC,EAAE,kBAAkB,GAC/B,MAAM,CASR;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,EAAE,CAAC,CAoCnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry-commands.js","sourceRoot":"","sources":["../../src/cli/telemetry-commands.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,yEAAyE;AACzE,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,yBAAyB,GAC1B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,SAAS,WAAW;IAClB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,eAAe,EAAE,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,MAAM,MAAM,GAAG,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACtC,OAAO,CAAC,GAAG,CAAC,6EAA6E,CAAC,CAAC;IAC3F,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC;IACnF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,qFAAqF,CAAC,CAAC;IACnG,OAAO,CAAC,GAAG,CAAC,aAAa,aAAa,EAAE,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAc;IAClD,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IAEhD,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"telemetry-commands.js","sourceRoot":"","sources":["../../src/cli/telemetry-commands.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,yEAAyE;AACzE,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,yBAAyB,GAC1B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,SAAS,WAAW;IAClB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,eAAe,EAAE,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,MAAM,MAAM,GAAG,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACtC,OAAO,CAAC,GAAG,CAAC,6EAA6E,CAAC,CAAC;IAC3F,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC;IACnF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,qFAAqF,CAAC,CAAC;IACnG,OAAO,CAAC,GAAG,CAAC,aAAa,aAAa,EAAE,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAc;IAClD,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IAEhD,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,MAAM,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAC5D,OAAO,CAAC,GAAG,CACT,4EAA4E;gBAC5E,sEAAsE,CACvE,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,qBAAqB,qBAAqB,EAAE,GAAG,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QACD,KAAK,KAAK;YACR,yBAAyB,CAAC,KAAK,CAAC,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;YACrE,OAAO;QACT,KAAK,IAAI,CAAC;QACV,KAAK,MAAM;YACT,yBAAyB,CAAC,MAAM,CAAC,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;YAC7D,OAAO;QACT,KAAK,MAAM;YACT,yBAAyB,CAAC,MAAM,CAAC,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;YACvF,OAAO;QACT,KAAK,QAAQ;YACX,WAAW,EAAE,CAAC;YACd,OAAO;QACT;YACE,OAAO,CAAC,KAAK,CAAC,sBAAsB,GAAG,wCAAwC,CAAC,CAAC;YACjF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;IACX,CAAC;AACH,CAAC"}
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,KAAK,UAAU,UAAU;IACvB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -29,6 +29,8 @@ export interface Config {
|
|
|
29
29
|
voyageApiKey: string | null;
|
|
30
30
|
openaiApiKey: string | null;
|
|
31
31
|
ollamaUrl: string | null;
|
|
32
|
+
ollamaModel: string | null;
|
|
33
|
+
ollamaDimensions: number | null;
|
|
32
34
|
localModel: string | null;
|
|
33
35
|
embeddingBatchSize: number;
|
|
34
36
|
defaultTokenBudget: number;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,CAAC;AAiBhF;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAiBjD;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAShD;AAED,MAAM,WAAW,MAAM;IAErB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IAGrB,eAAe,EAAE,MAAM,CAAC;IAGxB,gBAAgB,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAGF,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAG3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IAGpB,iBAAiB,EAAE,OAAO,CAAC;IAG3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAID,wBAAgB,UAAU,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,CAAC;AAiBhF;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAiBjD;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAShD;AAED,MAAM,WAAW,MAAM;IAErB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IAGrB,eAAe,EAAE,MAAM,CAAC;IAGxB,gBAAgB,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAGF,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAG3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IAGpB,iBAAiB,EAAE,OAAO,CAAC;IAG3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAID,wBAAgB,UAAU,IAAI,MAAM,CAqDnC;AAED,8CAA8C;AAC9C,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC"}
|
package/dist/config.js
CHANGED
|
@@ -62,6 +62,9 @@ export function loadConfig() {
|
|
|
62
62
|
const voyageApiKey = process.env["CODESIFT_VOYAGE_API_KEY"] ?? null;
|
|
63
63
|
const openaiApiKey = process.env["CODESIFT_OPENAI_API_KEY"] ?? null;
|
|
64
64
|
const ollamaUrl = process.env["CODESIFT_OLLAMA_URL"] ?? null;
|
|
65
|
+
const ollamaModel = process.env["CODESIFT_OLLAMA_MODEL"] ?? null;
|
|
66
|
+
const ollamaDimsRaw = process.env["CODESIFT_OLLAMA_DIMENSIONS"];
|
|
67
|
+
const ollamaDimensions = ollamaDimsRaw ? Number.parseInt(ollamaDimsRaw, 10) : null;
|
|
65
68
|
const localModel = process.env["CODESIFT_LOCAL_MODEL"] ?? null;
|
|
66
69
|
const localDisabled = localEmbeddingsDisabled();
|
|
67
70
|
const explicitProvider = process.env["CODESIFT_EMBEDDING_PROVIDER"] ?? null;
|
|
@@ -92,6 +95,8 @@ export function loadConfig() {
|
|
|
92
95
|
voyageApiKey,
|
|
93
96
|
openaiApiKey,
|
|
94
97
|
ollamaUrl,
|
|
98
|
+
ollamaModel,
|
|
99
|
+
ollamaDimensions: ollamaDimensions && Number.isFinite(ollamaDimensions) ? ollamaDimensions : null,
|
|
95
100
|
localModel,
|
|
96
101
|
embeddingBatchSize: parseIntEnv("CODESIFT_EMBEDDING_BATCH_SIZE", 128),
|
|
97
102
|
defaultTokenBudget: parseIntEnv("CODESIFT_DEFAULT_TOKEN_BUDGET", 8000),
|