@hashicorp/kits 0.1.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/README.md +619 -0
- package/bin/kits.js +8 -0
- package/dist/adapters/base-adapter.d.ts +231 -0
- package/dist/adapters/base-adapter.d.ts.map +1 -0
- package/dist/adapters/base-adapter.js +703 -0
- package/dist/adapters/base-adapter.js.map +1 -0
- package/dist/adapters/claude-code/detection.d.ts +63 -0
- package/dist/adapters/claude-code/detection.d.ts.map +1 -0
- package/dist/adapters/claude-code/detection.js +154 -0
- package/dist/adapters/claude-code/detection.js.map +1 -0
- package/dist/adapters/claude-code/index.d.ts +178 -0
- package/dist/adapters/claude-code/index.d.ts.map +1 -0
- package/dist/adapters/claude-code/index.js +643 -0
- package/dist/adapters/claude-code/index.js.map +1 -0
- package/dist/adapters/claude-code/installer.d.ts +161 -0
- package/dist/adapters/claude-code/installer.d.ts.map +1 -0
- package/dist/adapters/claude-code/installer.js +413 -0
- package/dist/adapters/claude-code/installer.js.map +1 -0
- package/dist/adapters/claude-code/model-mapping.d.ts +7 -0
- package/dist/adapters/claude-code/model-mapping.d.ts.map +1 -0
- package/dist/adapters/claude-code/model-mapping.js +14 -0
- package/dist/adapters/claude-code/model-mapping.js.map +1 -0
- package/dist/adapters/claude-code/tool-mapping.d.ts +18 -0
- package/dist/adapters/claude-code/tool-mapping.d.ts.map +1 -0
- package/dist/adapters/claude-code/tool-mapping.js +31 -0
- package/dist/adapters/claude-code/tool-mapping.js.map +1 -0
- package/dist/adapters/codex/detection.d.ts +60 -0
- package/dist/adapters/codex/detection.d.ts.map +1 -0
- package/dist/adapters/codex/detection.js +146 -0
- package/dist/adapters/codex/detection.js.map +1 -0
- package/dist/adapters/codex/index.d.ts +167 -0
- package/dist/adapters/codex/index.d.ts.map +1 -0
- package/dist/adapters/codex/index.js +344 -0
- package/dist/adapters/codex/index.js.map +1 -0
- package/dist/adapters/codex/installer.d.ts +147 -0
- package/dist/adapters/codex/installer.d.ts.map +1 -0
- package/dist/adapters/codex/installer.js +229 -0
- package/dist/adapters/codex/installer.js.map +1 -0
- package/dist/adapters/codex/model-mapping.d.ts +7 -0
- package/dist/adapters/codex/model-mapping.d.ts.map +1 -0
- package/dist/adapters/codex/model-mapping.js +14 -0
- package/dist/adapters/codex/model-mapping.js.map +1 -0
- package/dist/adapters/codex/tool-mapping.d.ts +19 -0
- package/dist/adapters/codex/tool-mapping.d.ts.map +1 -0
- package/dist/adapters/codex/tool-mapping.js +32 -0
- package/dist/adapters/codex/tool-mapping.js.map +1 -0
- package/dist/adapters/command-parser.d.ts +72 -0
- package/dist/adapters/command-parser.d.ts.map +1 -0
- package/dist/adapters/command-parser.js +222 -0
- package/dist/adapters/command-parser.js.map +1 -0
- package/dist/adapters/file-operations.d.ts +164 -0
- package/dist/adapters/file-operations.d.ts.map +1 -0
- package/dist/adapters/file-operations.js +526 -0
- package/dist/adapters/file-operations.js.map +1 -0
- package/dist/adapters/gemini-cli/detection.d.ts +57 -0
- package/dist/adapters/gemini-cli/detection.d.ts.map +1 -0
- package/dist/adapters/gemini-cli/detection.js +143 -0
- package/dist/adapters/gemini-cli/detection.js.map +1 -0
- package/dist/adapters/gemini-cli/index.d.ts +182 -0
- package/dist/adapters/gemini-cli/index.d.ts.map +1 -0
- package/dist/adapters/gemini-cli/index.js +598 -0
- package/dist/adapters/gemini-cli/index.js.map +1 -0
- package/dist/adapters/gemini-cli/installer.d.ts +158 -0
- package/dist/adapters/gemini-cli/installer.d.ts.map +1 -0
- package/dist/adapters/gemini-cli/installer.js +457 -0
- package/dist/adapters/gemini-cli/installer.js.map +1 -0
- package/dist/adapters/gemini-cli/model-mapping.d.ts +7 -0
- package/dist/adapters/gemini-cli/model-mapping.d.ts.map +1 -0
- package/dist/adapters/gemini-cli/model-mapping.js +14 -0
- package/dist/adapters/gemini-cli/model-mapping.js.map +1 -0
- package/dist/adapters/gemini-cli/tool-mapping.d.ts +18 -0
- package/dist/adapters/gemini-cli/tool-mapping.d.ts.map +1 -0
- package/dist/adapters/gemini-cli/tool-mapping.js +31 -0
- package/dist/adapters/gemini-cli/tool-mapping.js.map +1 -0
- package/dist/adapters/github-copilot/detection.d.ts +58 -0
- package/dist/adapters/github-copilot/detection.d.ts.map +1 -0
- package/dist/adapters/github-copilot/detection.js +144 -0
- package/dist/adapters/github-copilot/detection.js.map +1 -0
- package/dist/adapters/github-copilot/index.d.ts +203 -0
- package/dist/adapters/github-copilot/index.d.ts.map +1 -0
- package/dist/adapters/github-copilot/index.js +595 -0
- package/dist/adapters/github-copilot/index.js.map +1 -0
- package/dist/adapters/github-copilot/installer.d.ts +124 -0
- package/dist/adapters/github-copilot/installer.d.ts.map +1 -0
- package/dist/adapters/github-copilot/installer.js +343 -0
- package/dist/adapters/github-copilot/installer.js.map +1 -0
- package/dist/adapters/github-copilot/model-mapping.d.ts +7 -0
- package/dist/adapters/github-copilot/model-mapping.d.ts.map +1 -0
- package/dist/adapters/github-copilot/model-mapping.js +14 -0
- package/dist/adapters/github-copilot/model-mapping.js.map +1 -0
- package/dist/adapters/github-copilot/tool-mapping.d.ts +18 -0
- package/dist/adapters/github-copilot/tool-mapping.d.ts.map +1 -0
- package/dist/adapters/github-copilot/tool-mapping.js +31 -0
- package/dist/adapters/github-copilot/tool-mapping.js.map +1 -0
- package/dist/adapters/index.d.ts +39 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +76 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/interface.d.ts +9 -0
- package/dist/adapters/interface.d.ts.map +1 -0
- package/dist/adapters/interface.js +8 -0
- package/dist/adapters/interface.js.map +1 -0
- package/dist/adapters/model-templating.d.ts +16 -0
- package/dist/adapters/model-templating.d.ts.map +1 -0
- package/dist/adapters/model-templating.js +52 -0
- package/dist/adapters/model-templating.js.map +1 -0
- package/dist/adapters/opencode/detection.d.ts +57 -0
- package/dist/adapters/opencode/detection.d.ts.map +1 -0
- package/dist/adapters/opencode/detection.js +140 -0
- package/dist/adapters/opencode/detection.js.map +1 -0
- package/dist/adapters/opencode/index.d.ts +168 -0
- package/dist/adapters/opencode/index.d.ts.map +1 -0
- package/dist/adapters/opencode/index.js +494 -0
- package/dist/adapters/opencode/index.js.map +1 -0
- package/dist/adapters/opencode/installer.d.ts +91 -0
- package/dist/adapters/opencode/installer.d.ts.map +1 -0
- package/dist/adapters/opencode/installer.js +290 -0
- package/dist/adapters/opencode/installer.js.map +1 -0
- package/dist/adapters/opencode/model-mapping.d.ts +7 -0
- package/dist/adapters/opencode/model-mapping.d.ts.map +1 -0
- package/dist/adapters/opencode/model-mapping.js +14 -0
- package/dist/adapters/opencode/model-mapping.js.map +1 -0
- package/dist/adapters/opencode/tool-mapping.d.ts +18 -0
- package/dist/adapters/opencode/tool-mapping.d.ts.map +1 -0
- package/dist/adapters/opencode/tool-mapping.js +31 -0
- package/dist/adapters/opencode/tool-mapping.js.map +1 -0
- package/dist/adapters/registry.d.ts +154 -0
- package/dist/adapters/registry.d.ts.map +1 -0
- package/dist/adapters/registry.js +223 -0
- package/dist/adapters/registry.js.map +1 -0
- package/dist/adapters/skill-frontmatter.d.ts +34 -0
- package/dist/adapters/skill-frontmatter.d.ts.map +1 -0
- package/dist/adapters/skill-frontmatter.js +110 -0
- package/dist/adapters/skill-frontmatter.js.map +1 -0
- package/dist/adapters/subagent-frontmatter.d.ts +22 -0
- package/dist/adapters/subagent-frontmatter.d.ts.map +1 -0
- package/dist/adapters/subagent-frontmatter.js +80 -0
- package/dist/adapters/subagent-frontmatter.js.map +1 -0
- package/dist/adapters/tool-templating.d.ts +162 -0
- package/dist/adapters/tool-templating.d.ts.map +1 -0
- package/dist/adapters/tool-templating.js +273 -0
- package/dist/adapters/tool-templating.js.map +1 -0
- package/dist/adapters/types.d.ts +347 -0
- package/dist/adapters/types.d.ts.map +1 -0
- package/dist/adapters/types.js +33 -0
- package/dist/adapters/types.js.map +1 -0
- package/dist/cli/index.d.ts +10 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +261 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/info.d.ts +20 -0
- package/dist/cli/info.d.ts.map +1 -0
- package/dist/cli/info.js +194 -0
- package/dist/cli/info.js.map +1 -0
- package/dist/cli/install.d.ts +21 -0
- package/dist/cli/install.d.ts.map +1 -0
- package/dist/cli/install.js +1624 -0
- package/dist/cli/install.js.map +1 -0
- package/dist/cli/list.d.ts +19 -0
- package/dist/cli/list.d.ts.map +1 -0
- package/dist/cli/list.js +216 -0
- package/dist/cli/list.js.map +1 -0
- package/dist/cli/types.d.ts +246 -0
- package/dist/cli/types.d.ts.map +1 -0
- package/dist/cli/types.js +25 -0
- package/dist/cli/types.js.map +1 -0
- package/dist/cli/uninstall.d.ts +20 -0
- package/dist/cli/uninstall.d.ts.map +1 -0
- package/dist/cli/uninstall.js +393 -0
- package/dist/cli/uninstall.js.map +1 -0
- package/dist/cli/upgrade.d.ts +20 -0
- package/dist/cli/upgrade.d.ts.map +1 -0
- package/dist/cli/upgrade.js +372 -0
- package/dist/cli/upgrade.js.map +1 -0
- package/dist/cli/validate.d.ts +14 -0
- package/dist/cli/validate.d.ts.map +1 -0
- package/dist/cli/validate.js +307 -0
- package/dist/cli/validate.js.map +1 -0
- package/dist/core/debug.d.ts +23 -0
- package/dist/core/debug.d.ts.map +1 -0
- package/dist/core/debug.js +69 -0
- package/dist/core/debug.js.map +1 -0
- package/dist/core/hook-instance.d.ts +8 -0
- package/dist/core/hook-instance.d.ts.map +1 -0
- package/dist/core/hook-instance.js +62 -0
- package/dist/core/hook-instance.js.map +1 -0
- package/dist/core/mcp-instance.d.ts +13 -0
- package/dist/core/mcp-instance.d.ts.map +1 -0
- package/dist/core/mcp-instance.js +80 -0
- package/dist/core/mcp-instance.js.map +1 -0
- package/dist/core/types.d.ts +461 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +42 -0
- package/dist/core/types.js.map +1 -0
- package/dist/core/upgrade-executor.d.ts +70 -0
- package/dist/core/upgrade-executor.d.ts.map +1 -0
- package/dist/core/upgrade-executor.js +368 -0
- package/dist/core/upgrade-executor.js.map +1 -0
- package/dist/discovery/fetcher-registry.d.ts +87 -0
- package/dist/discovery/fetcher-registry.d.ts.map +1 -0
- package/dist/discovery/fetcher-registry.js +119 -0
- package/dist/discovery/fetcher-registry.js.map +1 -0
- package/dist/discovery/git-fetcher.d.ts +61 -0
- package/dist/discovery/git-fetcher.d.ts.map +1 -0
- package/dist/discovery/git-fetcher.js +150 -0
- package/dist/discovery/git-fetcher.js.map +1 -0
- package/dist/discovery/index.d.ts +13 -0
- package/dist/discovery/index.d.ts.map +1 -0
- package/dist/discovery/index.js +15 -0
- package/dist/discovery/index.js.map +1 -0
- package/dist/discovery/kit-scanner.d.ts +55 -0
- package/dist/discovery/kit-scanner.d.ts.map +1 -0
- package/dist/discovery/kit-scanner.js +305 -0
- package/dist/discovery/kit-scanner.js.map +1 -0
- package/dist/discovery/local-fetcher.d.ts +38 -0
- package/dist/discovery/local-fetcher.d.ts.map +1 -0
- package/dist/discovery/local-fetcher.js +100 -0
- package/dist/discovery/local-fetcher.js.map +1 -0
- package/dist/discovery/source-parser.d.ts +33 -0
- package/dist/discovery/source-parser.d.ts.map +1 -0
- package/dist/discovery/source-parser.js +136 -0
- package/dist/discovery/source-parser.js.map +1 -0
- package/dist/discovery/types.d.ts +145 -0
- package/dist/discovery/types.d.ts.map +1 -0
- package/dist/discovery/types.js +18 -0
- package/dist/discovery/types.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/manifest/index.d.ts +79 -0
- package/dist/manifest/index.d.ts.map +1 -0
- package/dist/manifest/index.js +200 -0
- package/dist/manifest/index.js.map +1 -0
- package/dist/manifest/read.d.ts +32 -0
- package/dist/manifest/read.d.ts.map +1 -0
- package/dist/manifest/read.js +88 -0
- package/dist/manifest/read.js.map +1 -0
- package/dist/manifest/types.d.ts +119 -0
- package/dist/manifest/types.d.ts.map +1 -0
- package/dist/manifest/types.js +44 -0
- package/dist/manifest/types.js.map +1 -0
- package/dist/manifest/upgrade-check.d.ts +72 -0
- package/dist/manifest/upgrade-check.d.ts.map +1 -0
- package/dist/manifest/upgrade-check.js +215 -0
- package/dist/manifest/upgrade-check.js.map +1 -0
- package/dist/manifest/utils.d.ts +35 -0
- package/dist/manifest/utils.d.ts.map +1 -0
- package/dist/manifest/utils.js +57 -0
- package/dist/manifest/utils.js.map +1 -0
- package/dist/manifest/write.d.ts +44 -0
- package/dist/manifest/write.d.ts.map +1 -0
- package/dist/manifest/write.js +77 -0
- package/dist/manifest/write.js.map +1 -0
- package/dist/resolution/env-resolver.d.ts +81 -0
- package/dist/resolution/env-resolver.d.ts.map +1 -0
- package/dist/resolution/env-resolver.js +233 -0
- package/dist/resolution/env-resolver.js.map +1 -0
- package/dist/resolution/index.d.ts +55 -0
- package/dist/resolution/index.d.ts.map +1 -0
- package/dist/resolution/index.js +412 -0
- package/dist/resolution/index.js.map +1 -0
- package/dist/resolution/multi-kit-resolver.d.ts +43 -0
- package/dist/resolution/multi-kit-resolver.d.ts.map +1 -0
- package/dist/resolution/multi-kit-resolver.js +258 -0
- package/dist/resolution/multi-kit-resolver.js.map +1 -0
- package/dist/resolution/primitive-paths.d.ts +17 -0
- package/dist/resolution/primitive-paths.d.ts.map +1 -0
- package/dist/resolution/primitive-paths.js +59 -0
- package/dist/resolution/primitive-paths.js.map +1 -0
- package/dist/resolution/primitives-registry.d.ts +137 -0
- package/dist/resolution/primitives-registry.d.ts.map +1 -0
- package/dist/resolution/primitives-registry.js +295 -0
- package/dist/resolution/primitives-registry.js.map +1 -0
- package/dist/resolution/reference-parser.d.ts +62 -0
- package/dist/resolution/reference-parser.d.ts.map +1 -0
- package/dist/resolution/reference-parser.js +182 -0
- package/dist/resolution/reference-parser.js.map +1 -0
- package/dist/resolution/types.d.ts +77 -0
- package/dist/resolution/types.d.ts.map +1 -0
- package/dist/resolution/types.js +13 -0
- package/dist/resolution/types.js.map +1 -0
- package/dist/resolution/version-resolver.d.ts +76 -0
- package/dist/resolution/version-resolver.d.ts.map +1 -0
- package/dist/resolution/version-resolver.js +269 -0
- package/dist/resolution/version-resolver.js.map +1 -0
- package/dist/tui/compatibility.d.ts +80 -0
- package/dist/tui/compatibility.d.ts.map +1 -0
- package/dist/tui/compatibility.js +355 -0
- package/dist/tui/compatibility.js.map +1 -0
- package/dist/tui/env-prompt.d.ts +129 -0
- package/dist/tui/env-prompt.d.ts.map +1 -0
- package/dist/tui/env-prompt.js +488 -0
- package/dist/tui/env-prompt.js.map +1 -0
- package/dist/tui/harness-select.d.ts +54 -0
- package/dist/tui/harness-select.d.ts.map +1 -0
- package/dist/tui/harness-select.js +171 -0
- package/dist/tui/harness-select.js.map +1 -0
- package/dist/tui/index.d.ts +112 -0
- package/dist/tui/index.d.ts.map +1 -0
- package/dist/tui/index.js +213 -0
- package/dist/tui/index.js.map +1 -0
- package/dist/tui/kit-select.d.ts +72 -0
- package/dist/tui/kit-select.d.ts.map +1 -0
- package/dist/tui/kit-select.js +209 -0
- package/dist/tui/kit-select.js.map +1 -0
- package/dist/tui/progress.d.ts +75 -0
- package/dist/tui/progress.d.ts.map +1 -0
- package/dist/tui/progress.js +267 -0
- package/dist/tui/progress.js.map +1 -0
- package/dist/tui/resolution.d.ts +62 -0
- package/dist/tui/resolution.d.ts.map +1 -0
- package/dist/tui/resolution.js +261 -0
- package/dist/tui/resolution.js.map +1 -0
- package/dist/tui/scope-compatibility.d.ts +139 -0
- package/dist/tui/scope-compatibility.d.ts.map +1 -0
- package/dist/tui/scope-compatibility.js +230 -0
- package/dist/tui/scope-compatibility.js.map +1 -0
- package/dist/tui/scope-select.d.ts +67 -0
- package/dist/tui/scope-select.d.ts.map +1 -0
- package/dist/tui/scope-select.js +134 -0
- package/dist/tui/scope-select.js.map +1 -0
- package/dist/tui/spinner.d.ts +114 -0
- package/dist/tui/spinner.d.ts.map +1 -0
- package/dist/tui/spinner.js +186 -0
- package/dist/tui/spinner.js.map +1 -0
- package/dist/tui/summary.d.ts +71 -0
- package/dist/tui/summary.d.ts.map +1 -0
- package/dist/tui/summary.js +343 -0
- package/dist/tui/summary.js.map +1 -0
- package/dist/tui/types.d.ts +234 -0
- package/dist/tui/types.d.ts.map +1 -0
- package/dist/tui/types.js +7 -0
- package/dist/tui/types.js.map +1 -0
- package/dist/tui/upgrade-select.d.ts +73 -0
- package/dist/tui/upgrade-select.d.ts.map +1 -0
- package/dist/tui/upgrade-select.js +324 -0
- package/dist/tui/upgrade-select.js.map +1 -0
- package/dist/validation/index.d.ts +13 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +13 -0
- package/dist/validation/index.js.map +1 -0
- package/dist/validation/source.d.ts +14 -0
- package/dist/validation/source.d.ts.map +1 -0
- package/dist/validation/source.js +51 -0
- package/dist/validation/source.js.map +1 -0
- package/dist/validation/utils.d.ts +29 -0
- package/dist/validation/utils.d.ts.map +1 -0
- package/dist/validation/utils.js +89 -0
- package/dist/validation/utils.js.map +1 -0
- package/dist/validation/validate-commands.d.ts +28 -0
- package/dist/validation/validate-commands.d.ts.map +1 -0
- package/dist/validation/validate-commands.js +151 -0
- package/dist/validation/validate-commands.js.map +1 -0
- package/dist/validation/validate-hooks.d.ts +13 -0
- package/dist/validation/validate-hooks.d.ts.map +1 -0
- package/dist/validation/validate-hooks.js +272 -0
- package/dist/validation/validate-hooks.js.map +1 -0
- package/dist/validation/validate-kits.d.ts +15 -0
- package/dist/validation/validate-kits.d.ts.map +1 -0
- package/dist/validation/validate-kits.js +185 -0
- package/dist/validation/validate-kits.js.map +1 -0
- package/dist/validation/validate-mcp.d.ts +12 -0
- package/dist/validation/validate-mcp.d.ts.map +1 -0
- package/dist/validation/validate-mcp.js +132 -0
- package/dist/validation/validate-mcp.js.map +1 -0
- package/dist/validation/validate-skills.d.ts +24 -0
- package/dist/validation/validate-skills.d.ts.map +1 -0
- package/dist/validation/validate-skills.js +223 -0
- package/dist/validation/validate-skills.js.map +1 -0
- package/dist/validation/validate-subagents.d.ts +27 -0
- package/dist/validation/validate-subagents.d.ts.map +1 -0
- package/dist/validation/validate-subagents.js +269 -0
- package/dist/validation/validate-subagents.js.map +1 -0
- package/package.json +91 -0
- package/schemas/command.schema.json +23 -0
- package/schemas/examples/hook-binding-valid.json +20 -0
- package/schemas/examples/hook-program-valid.json +25 -0
- package/schemas/examples/http-server-valid.json +82 -0
- package/schemas/examples/invalid-sensitive-header-no-envvar.json +16 -0
- package/schemas/examples/invalid-sensitive-header-with-value.json +17 -0
- package/schemas/examples/invalid-sensitive-var-with-default.json +19 -0
- package/schemas/examples/stdio-server-valid.json +55 -0
- package/schemas/hook-binding.schema.json +63 -0
- package/schemas/hook-program.schema.json +104 -0
- package/schemas/kit.schema.json +338 -0
- package/schemas/kits.schema.json +117 -0
- package/schemas/manifest.schema.json +200 -0
- package/schemas/mcp-server.schema.json +305 -0
- package/schemas/primitives.schema.json +118 -0
- package/schemas/skill.schema.json +96 -0
- package/schemas/subagent.schema.json +107 -0
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base adapter class providing common functionality for harness adapters.
|
|
3
|
+
*
|
|
4
|
+
* This abstract class implements shared logic that all harness-specific adapters
|
|
5
|
+
* can use, reducing code duplication and ensuring consistent behavior across
|
|
6
|
+
* different AI agent harnesses.
|
|
7
|
+
*/
|
|
8
|
+
import type { PrimitiveType, KitManifest, ResolvedPrimitive, InstallationScope, ResolvedEnvVar, ResolvedHeader, EnvVarOutput, HeaderOutput, EnvVarResolutionResult } from "../core/types.js";
|
|
9
|
+
import type { KitAdapter, InstallationPaths, ConfigLocations, DetectionResult, CompatibilityResult, InstallOptions, InstallResult, UninstallOptions, UninstallResult, InstalledKitInfo, TransformResult, HookInstallation, HookInstallationInput, ValidationResult, ToolMapping, ModelMapping, TemplateProcessingResult, FileOperationResult } from "./types.js";
|
|
10
|
+
import type { CommandMetadata, SkillMetadata, SubagentMetadata, McpServerConfig } from "../core/types.js";
|
|
11
|
+
import { type CompletedOperation } from "./file-operations.js";
|
|
12
|
+
/**
|
|
13
|
+
* Namespace separator for primitive names.
|
|
14
|
+
*/
|
|
15
|
+
export declare const NAMESPACE_SEPARATOR = ".";
|
|
16
|
+
/**
|
|
17
|
+
* Abstract base class for kit adapters.
|
|
18
|
+
*
|
|
19
|
+
* Subclasses must implement abstract methods for harness-specific behavior
|
|
20
|
+
* while inheriting common functionality from this base class.
|
|
21
|
+
*/
|
|
22
|
+
export declare abstract class BaseAdapter implements KitAdapter {
|
|
23
|
+
/**
|
|
24
|
+
* Adapter name (e.g., "claude-code").
|
|
25
|
+
*/
|
|
26
|
+
abstract readonly name: string;
|
|
27
|
+
/**
|
|
28
|
+
* Human-readable display name (e.g., "Claude Code").
|
|
29
|
+
*/
|
|
30
|
+
abstract readonly displayName: string;
|
|
31
|
+
/**
|
|
32
|
+
* Adapter implementation version.
|
|
33
|
+
*/
|
|
34
|
+
abstract readonly version: string;
|
|
35
|
+
/**
|
|
36
|
+
* Supported harness version range (semver).
|
|
37
|
+
*/
|
|
38
|
+
abstract readonly supportedHarnessVersions: string;
|
|
39
|
+
/**
|
|
40
|
+
* Get the installation scopes supported by this harness.
|
|
41
|
+
*
|
|
42
|
+
* Most harnesses support both global and project scopes.
|
|
43
|
+
*/
|
|
44
|
+
abstract getSupportedScopes(): InstallationScope[];
|
|
45
|
+
/**
|
|
46
|
+
* Get the primitive types supported by this harness.
|
|
47
|
+
*
|
|
48
|
+
* @param scope - Installation scope (defaults to "global")
|
|
49
|
+
*/
|
|
50
|
+
abstract getSupportedPrimitives(scope?: InstallationScope): PrimitiveType[];
|
|
51
|
+
/**
|
|
52
|
+
* Get the installation paths for file-based primitives.
|
|
53
|
+
*
|
|
54
|
+
* @param scope - Installation scope (defaults to "global")
|
|
55
|
+
*/
|
|
56
|
+
abstract getInstallationPaths(scope?: InstallationScope): InstallationPaths;
|
|
57
|
+
/**
|
|
58
|
+
* Get the configuration file locations.
|
|
59
|
+
*
|
|
60
|
+
* @param scope - Installation scope (defaults to "global")
|
|
61
|
+
*/
|
|
62
|
+
abstract getConfigLocations(scope?: InstallationScope): ConfigLocations;
|
|
63
|
+
/**
|
|
64
|
+
* Get the tool mapping for this harness.
|
|
65
|
+
*/
|
|
66
|
+
abstract getToolMapping(): ToolMapping;
|
|
67
|
+
/**
|
|
68
|
+
* Get the model mapping for this harness.
|
|
69
|
+
*/
|
|
70
|
+
abstract getModelMapping(): ModelMapping;
|
|
71
|
+
/**
|
|
72
|
+
* Filter subagent frontmatter for this harness.
|
|
73
|
+
*/
|
|
74
|
+
protected filterSubagentFrontmatter(frontmatter: Record<string, unknown>, _metadata: SubagentMetadata): Record<string, unknown>;
|
|
75
|
+
/**
|
|
76
|
+
* Resolve canonical subagent hook bindings to harness-specific format.
|
|
77
|
+
*/
|
|
78
|
+
protected mapSubagentHooks(frontmatter: Record<string, unknown>, _resolvedPrimitives: ResolvedPrimitive[], _kitName: string, _paths: InstallationPaths, _scope: InstallationScope, _projectRoot?: string): Record<string, unknown>;
|
|
79
|
+
/**
|
|
80
|
+
* Detect if the harness is installed on the system.
|
|
81
|
+
*/
|
|
82
|
+
abstract detect(): Promise<DetectionResult>;
|
|
83
|
+
/**
|
|
84
|
+
* Transform a command for this harness.
|
|
85
|
+
*/
|
|
86
|
+
abstract transformCommand(content: string, metadata: CommandMetadata): TransformResult;
|
|
87
|
+
/**
|
|
88
|
+
* Transform a skill for this harness.
|
|
89
|
+
*/
|
|
90
|
+
abstract transformSkill(skillDir: string, metadata: SkillMetadata): TransformResult;
|
|
91
|
+
/**
|
|
92
|
+
* Transform a subagent for this harness.
|
|
93
|
+
*/
|
|
94
|
+
abstract transformSubagent(content: string, metadata: SubagentMetadata): TransformResult;
|
|
95
|
+
/**
|
|
96
|
+
* Transform an MCP server configuration for this harness.
|
|
97
|
+
*/
|
|
98
|
+
abstract transformMcpServer(config: McpServerConfig): Record<string, unknown>;
|
|
99
|
+
/**
|
|
100
|
+
* Transform a hook for this harness.
|
|
101
|
+
*/
|
|
102
|
+
abstract transformHook(hook: HookInstallationInput): HookInstallation;
|
|
103
|
+
/**
|
|
104
|
+
* Transform resolved environment variables to harness-native format.
|
|
105
|
+
*
|
|
106
|
+
* Called during MCP server installation. Each harness has specific
|
|
107
|
+
* syntax for passthrough (runtime resolution) vs direct values.
|
|
108
|
+
*
|
|
109
|
+
* See PRD-001 FR-20 for harness-specific transformation rules.
|
|
110
|
+
*/
|
|
111
|
+
abstract transformEnvVars(resolved: ResolvedEnvVar[]): EnvVarOutput;
|
|
112
|
+
/**
|
|
113
|
+
* Transform resolved HTTP headers to harness-native format.
|
|
114
|
+
*
|
|
115
|
+
* Called during HTTP transport MCP server installation. Each harness
|
|
116
|
+
* has specific handling for authentication headers vs other headers.
|
|
117
|
+
*
|
|
118
|
+
* See PRD-001 FR-21 for harness-specific transformation rules.
|
|
119
|
+
*/
|
|
120
|
+
abstract transformHeaders(resolved: ResolvedHeader[]): HeaderOutput;
|
|
121
|
+
/**
|
|
122
|
+
* Filter skill frontmatter for this harness.
|
|
123
|
+
*
|
|
124
|
+
* Default behavior preserves all fields.
|
|
125
|
+
*/
|
|
126
|
+
protected filterSkillFrontmatter(frontmatter: Record<string, unknown>, _metadata: SkillMetadata): Record<string, unknown>;
|
|
127
|
+
/**
|
|
128
|
+
* Resolve canonical skill hook bindings to harness-specific format.
|
|
129
|
+
*/
|
|
130
|
+
protected mapSkillHooks(frontmatter: Record<string, unknown>, _resolvedPrimitives: ResolvedPrimitive[], _kitName: string, _paths: InstallationPaths, _scope: InstallationScope, _projectRoot?: string): Record<string, unknown>;
|
|
131
|
+
/**
|
|
132
|
+
* Check if a kit is compatible with this harness at the given scope.
|
|
133
|
+
*
|
|
134
|
+
* @param kit - Kit manifest to check
|
|
135
|
+
* @param scope - Installation scope (defaults to "global")
|
|
136
|
+
*/
|
|
137
|
+
checkCompatibility(kit: KitManifest, scope?: InstallationScope): CompatibilityResult;
|
|
138
|
+
/**
|
|
139
|
+
* Get a namespaced primitive name.
|
|
140
|
+
*
|
|
141
|
+
* Format: {kitName}.{primitiveName}
|
|
142
|
+
*/
|
|
143
|
+
getNamespacedName(kitName: string, primitiveName: string): string;
|
|
144
|
+
/**
|
|
145
|
+
* Parse a namespaced name into kit and primitive components.
|
|
146
|
+
*/
|
|
147
|
+
parseNamespacedName(namespacedName: string): {
|
|
148
|
+
kitName: string;
|
|
149
|
+
primitiveName: string;
|
|
150
|
+
};
|
|
151
|
+
/**
|
|
152
|
+
* Process tool templates in content.
|
|
153
|
+
*/
|
|
154
|
+
processToolTemplates(content: string): TemplateProcessingResult;
|
|
155
|
+
/**
|
|
156
|
+
* Validate a kit against this harness's requirements.
|
|
157
|
+
*/
|
|
158
|
+
validate(kit: KitManifest): ValidationResult;
|
|
159
|
+
/**
|
|
160
|
+
* Install a kit to this harness.
|
|
161
|
+
*/
|
|
162
|
+
install(kit: KitManifest, resolvedPrimitives: ResolvedPrimitive[], options: InstallOptions): Promise<InstallResult>;
|
|
163
|
+
/**
|
|
164
|
+
* Install a single primitive.
|
|
165
|
+
*
|
|
166
|
+
* Subclasses may override for harness-specific behavior.
|
|
167
|
+
*
|
|
168
|
+
* @param kitName - Name of the kit being installed
|
|
169
|
+
* @param primitive - Resolved primitive to install
|
|
170
|
+
* @param resolvedPrimitives - All resolved primitives for the kit
|
|
171
|
+
* @param paths - Installation paths for the scope
|
|
172
|
+
* @param dryRun - If true, don't actually write files
|
|
173
|
+
* @param completedOps - Array to track completed operations for rollback
|
|
174
|
+
* @param scope - Installation scope
|
|
175
|
+
* @param projectRoot - Project root for project scope
|
|
176
|
+
*/
|
|
177
|
+
protected installPrimitive(kitName: string, primitive: ResolvedPrimitive, resolvedPrimitives: ResolvedPrimitive[], paths: InstallationPaths, dryRun: boolean, completedOps: CompletedOperation[], scope?: InstallationScope, projectRoot?: string): Promise<{
|
|
178
|
+
destination: string;
|
|
179
|
+
existed: boolean;
|
|
180
|
+
operations: FileOperationResult[];
|
|
181
|
+
}>;
|
|
182
|
+
/**
|
|
183
|
+
* Update harness configuration (MCP servers, hooks config).
|
|
184
|
+
*
|
|
185
|
+
* Subclasses should override for harness-specific config handling.
|
|
186
|
+
*
|
|
187
|
+
* @param kit - Kit manifest
|
|
188
|
+
* @param resolvedPrimitives - Resolved primitives to install
|
|
189
|
+
* @param dryRun - If true, don't actually write files
|
|
190
|
+
* @param completedOps - Array to track completed operations for rollback
|
|
191
|
+
* @param scope - Installation scope
|
|
192
|
+
* @param projectRoot - Project root for project scope
|
|
193
|
+
*/
|
|
194
|
+
protected updateConfiguration(_kit: KitManifest, _resolvedPrimitives: ResolvedPrimitive[], _dryRun: boolean, _completedOps: CompletedOperation[], _scope?: InstallationScope, _projectRoot?: string, _envResolutions?: EnvVarResolutionResult[]): Promise<{
|
|
195
|
+
operations: FileOperationResult[];
|
|
196
|
+
}>;
|
|
197
|
+
/**
|
|
198
|
+
* Uninstall a kit from this harness.
|
|
199
|
+
*
|
|
200
|
+
* @param kitName - Name of the kit to uninstall
|
|
201
|
+
* @param options - Uninstall options including scope
|
|
202
|
+
*/
|
|
203
|
+
uninstall(kitName: string, options: UninstallOptions): Promise<UninstallResult>;
|
|
204
|
+
/**
|
|
205
|
+
* List installed kits.
|
|
206
|
+
*
|
|
207
|
+
* Subclasses should implement this based on how they track installations.
|
|
208
|
+
* The default implementation scans installation directories for namespaced files.
|
|
209
|
+
*
|
|
210
|
+
* @param scope - Installation scope (defaults to "global")
|
|
211
|
+
*/
|
|
212
|
+
list(scope?: InstallationScope): Promise<InstalledKitInfo[]>;
|
|
213
|
+
/**
|
|
214
|
+
* Scan a directory for primitives and add to kit map.
|
|
215
|
+
*/
|
|
216
|
+
private scanDirectoryForPrimitives;
|
|
217
|
+
/**
|
|
218
|
+
* Get the file extension for a primitive type.
|
|
219
|
+
*/
|
|
220
|
+
protected getFileExtension(primitiveType: PrimitiveType): string;
|
|
221
|
+
/**
|
|
222
|
+
* Get the destination path for a primitive.
|
|
223
|
+
*
|
|
224
|
+
* @param primitiveType - Type of primitive
|
|
225
|
+
* @param namespacedName - Namespaced name of the primitive
|
|
226
|
+
* @param scope - Installation scope (defaults to "global")
|
|
227
|
+
* @param projectRoot - Project root for project scope
|
|
228
|
+
*/
|
|
229
|
+
protected getDestinationPath(primitiveType: PrimitiveType, namespacedName: string, scope?: InstallationScope, projectRoot?: string): string;
|
|
230
|
+
}
|
|
231
|
+
//# sourceMappingURL=base-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/base-adapter.ts"],"names":[],"mappings":"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"}
|