@kindgi/cli 0.0.0-bootstrap.0 → 0.1.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/LICENSE +201 -0
- package/README.md +738 -1
- package/dist/build/apt.d.ts +16 -0
- package/dist/build/apt.d.ts.map +1 -0
- package/dist/build/apt.js +50 -0
- package/dist/build/apt.js.map +1 -0
- package/dist/build/bundle.d.ts +48 -0
- package/dist/build/bundle.d.ts.map +1 -0
- package/dist/build/bundle.js +125 -0
- package/dist/build/bundle.js.map +1 -0
- package/dist/build/containerfile.d.ts +27 -0
- package/dist/build/containerfile.d.ts.map +1 -0
- package/dist/build/containerfile.js +197 -0
- package/dist/build/containerfile.js.map +1 -0
- package/dist/build/context-files.d.ts +24 -0
- package/dist/build/context-files.d.ts.map +1 -0
- package/dist/build/context-files.js +99 -0
- package/dist/build/context-files.js.map +1 -0
- package/dist/build/defaults.d.ts +66 -0
- package/dist/build/defaults.d.ts.map +1 -0
- package/dist/build/defaults.js +597 -0
- package/dist/build/defaults.js.map +1 -0
- package/dist/build/envelope.d.ts +72 -0
- package/dist/build/envelope.d.ts.map +1 -0
- package/dist/build/envelope.js +76 -0
- package/dist/build/envelope.js.map +1 -0
- package/dist/build/host-install.d.ts +100 -0
- package/dist/build/host-install.d.ts.map +1 -0
- package/dist/build/host-install.js +443 -0
- package/dist/build/host-install.js.map +1 -0
- package/dist/build/image-config.d.ts +32 -0
- package/dist/build/image-config.d.ts.map +1 -0
- package/dist/build/image-config.js +129 -0
- package/dist/build/image-config.js.map +1 -0
- package/dist/build/integrity.d.ts +51 -0
- package/dist/build/integrity.d.ts.map +1 -0
- package/dist/build/integrity.js +75 -0
- package/dist/build/integrity.js.map +1 -0
- package/dist/build/node-image.d.ts +18 -0
- package/dist/build/node-image.d.ts.map +1 -0
- package/dist/build/node-image.js +46 -0
- package/dist/build/node-image.js.map +1 -0
- package/dist/build/pack-root.d.ts +69 -0
- package/dist/build/pack-root.d.ts.map +1 -0
- package/dist/build/pack-root.js +102 -0
- package/dist/build/pack-root.js.map +1 -0
- package/dist/build/poetry-requirements.d.ts +5 -0
- package/dist/build/poetry-requirements.d.ts.map +1 -0
- package/dist/build/poetry-requirements.js +8 -0
- package/dist/build/poetry-requirements.js.map +1 -0
- package/dist/build/python-image.d.ts +40 -0
- package/dist/build/python-image.d.ts.map +1 -0
- package/dist/build/python-image.js +197 -0
- package/dist/build/python-image.js.map +1 -0
- package/dist/build/runners.d.ts +259 -0
- package/dist/build/runners.d.ts.map +1 -0
- package/dist/build/runners.js +4 -0
- package/dist/build/runners.js.map +1 -0
- package/dist/build/version-specifier.d.ts +2 -0
- package/dist/build/version-specifier.d.ts.map +1 -0
- package/dist/build/version-specifier.js +70 -0
- package/dist/build/version-specifier.js.map +1 -0
- package/dist/cli-package.d.ts +15 -0
- package/dist/cli-package.d.ts.map +1 -0
- package/dist/cli-package.js +37 -0
- package/dist/cli-package.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +26 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/adapters.d.ts +3 -0
- package/dist/commands/adapters.d.ts.map +1 -0
- package/dist/commands/adapters.js +148 -0
- package/dist/commands/adapters.js.map +1 -0
- package/dist/commands/agents.d.ts +3 -0
- package/dist/commands/agents.d.ts.map +1 -0
- package/dist/commands/agents.js +82 -0
- package/dist/commands/agents.js.map +1 -0
- package/dist/commands/approvals.d.ts +3 -0
- package/dist/commands/approvals.d.ts.map +1 -0
- package/dist/commands/approvals.js +92 -0
- package/dist/commands/approvals.js.map +1 -0
- package/dist/commands/artifacts.d.ts +3 -0
- package/dist/commands/artifacts.d.ts.map +1 -0
- package/dist/commands/artifacts.js +87 -0
- package/dist/commands/artifacts.js.map +1 -0
- package/dist/commands/auth.d.ts +25 -0
- package/dist/commands/auth.d.ts.map +1 -0
- package/dist/commands/auth.js +283 -0
- package/dist/commands/auth.js.map +1 -0
- package/dist/commands/build.d.ts +46 -0
- package/dist/commands/build.d.ts.map +1 -0
- package/dist/commands/build.js +902 -0
- package/dist/commands/build.js.map +1 -0
- package/dist/commands/capabilities.d.ts +3 -0
- package/dist/commands/capabilities.d.ts.map +1 -0
- package/dist/commands/capabilities.js +38 -0
- package/dist/commands/capabilities.js.map +1 -0
- package/dist/commands/conversations.d.ts +3 -0
- package/dist/commands/conversations.d.ts.map +1 -0
- package/dist/commands/conversations.js +75 -0
- package/dist/commands/conversations.js.map +1 -0
- package/dist/commands/deploy.d.ts +7 -0
- package/dist/commands/deploy.d.ts.map +1 -0
- package/dist/commands/deploy.js +697 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/commands/dev.d.ts +43 -0
- package/dist/commands/dev.d.ts.map +1 -0
- package/dist/commands/dev.js +1110 -0
- package/dist/commands/dev.js.map +1 -0
- package/dist/commands/env.d.ts +27 -0
- package/dist/commands/env.d.ts.map +1 -0
- package/dist/commands/env.js +816 -0
- package/dist/commands/env.js.map +1 -0
- package/dist/commands/feedback.d.ts +33 -0
- package/dist/commands/feedback.d.ts.map +1 -0
- package/dist/commands/feedback.js +374 -0
- package/dist/commands/feedback.js.map +1 -0
- package/dist/commands/flows.d.ts +3 -0
- package/dist/commands/flows.d.ts.map +1 -0
- package/dist/commands/flows.js +60 -0
- package/dist/commands/flows.js.map +1 -0
- package/dist/commands/guardrails.d.ts +3 -0
- package/dist/commands/guardrails.d.ts.map +1 -0
- package/dist/commands/guardrails.js +89 -0
- package/dist/commands/guardrails.js.map +1 -0
- package/dist/commands/health.d.ts +8 -0
- package/dist/commands/health.d.ts.map +1 -0
- package/dist/commands/health.js +40 -0
- package/dist/commands/health.js.map +1 -0
- package/dist/commands/helpers.d.ts +48 -0
- package/dist/commands/helpers.d.ts.map +1 -0
- package/dist/commands/helpers.js +110 -0
- package/dist/commands/helpers.js.map +1 -0
- package/dist/commands/index.d.ts +7 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +90 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/init.d.ts +46 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +454 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/key.d.ts +3 -0
- package/dist/commands/key.d.ts.map +1 -0
- package/dist/commands/key.js +322 -0
- package/dist/commands/key.js.map +1 -0
- package/dist/commands/mcp.d.ts +43 -0
- package/dist/commands/mcp.d.ts.map +1 -0
- package/dist/commands/mcp.js +433 -0
- package/dist/commands/mcp.js.map +1 -0
- package/dist/commands/memory.d.ts +3 -0
- package/dist/commands/memory.d.ts.map +1 -0
- package/dist/commands/memory.js +82 -0
- package/dist/commands/memory.js.map +1 -0
- package/dist/commands/observations.d.ts +3 -0
- package/dist/commands/observations.d.ts.map +1 -0
- package/dist/commands/observations.js +27 -0
- package/dist/commands/observations.js.map +1 -0
- package/dist/commands/proposals.d.ts +3 -0
- package/dist/commands/proposals.d.ts.map +1 -0
- package/dist/commands/proposals.js +116 -0
- package/dist/commands/proposals.js.map +1 -0
- package/dist/commands/provenance.d.ts +3 -0
- package/dist/commands/provenance.d.ts.map +1 -0
- package/dist/commands/provenance.js +53 -0
- package/dist/commands/provenance.js.map +1 -0
- package/dist/commands/providers.d.ts +3 -0
- package/dist/commands/providers.d.ts.map +1 -0
- package/dist/commands/providers.js +212 -0
- package/dist/commands/providers.js.map +1 -0
- package/dist/commands/reviewers.d.ts +3 -0
- package/dist/commands/reviewers.d.ts.map +1 -0
- package/dist/commands/reviewers.js +78 -0
- package/dist/commands/reviewers.js.map +1 -0
- package/dist/commands/runs.d.ts +3 -0
- package/dist/commands/runs.d.ts.map +1 -0
- package/dist/commands/runs.js +223 -0
- package/dist/commands/runs.js.map +1 -0
- package/dist/commands/secrets.d.ts +18 -0
- package/dist/commands/secrets.d.ts.map +1 -0
- package/dist/commands/secrets.js +702 -0
- package/dist/commands/secrets.js.map +1 -0
- package/dist/commands/skills.d.ts +64 -0
- package/dist/commands/skills.d.ts.map +1 -0
- package/dist/commands/skills.js +430 -0
- package/dist/commands/skills.js.map +1 -0
- package/dist/commands/test.d.ts +5 -0
- package/dist/commands/test.d.ts.map +1 -0
- package/dist/commands/test.js +181 -0
- package/dist/commands/test.js.map +1 -0
- package/dist/commands/tokens.d.ts +3 -0
- package/dist/commands/tokens.d.ts.map +1 -0
- package/dist/commands/tokens.js +33 -0
- package/dist/commands/tokens.js.map +1 -0
- package/dist/commands/tools.d.ts +3 -0
- package/dist/commands/tools.d.ts.map +1 -0
- package/dist/commands/tools.js +162 -0
- package/dist/commands/tools.js.map +1 -0
- package/dist/commands/types.d.ts +54 -0
- package/dist/commands/types.d.ts.map +1 -0
- package/dist/commands/types.js +4 -0
- package/dist/commands/types.js.map +1 -0
- package/dist/commands/unwired.d.ts +22 -0
- package/dist/commands/unwired.d.ts.map +1 -0
- package/dist/commands/unwired.js +52 -0
- package/dist/commands/unwired.js.map +1 -0
- package/dist/commands/version.d.ts +8 -0
- package/dist/commands/version.d.ts.map +1 -0
- package/dist/commands/version.js +41 -0
- package/dist/commands/version.js.map +1 -0
- package/dist/config.d.ts +42 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +83 -0
- package/dist/config.js.map +1 -0
- package/dist/context.d.ts +162 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +45 -0
- package/dist/context.js.map +1 -0
- package/dist/deploy/defaults.d.ts +14 -0
- package/dist/deploy/defaults.d.ts.map +1 -0
- package/dist/deploy/defaults.js +37 -0
- package/dist/deploy/defaults.js.map +1 -0
- package/dist/deploy/envelope-loader.d.ts +24 -0
- package/dist/deploy/envelope-loader.d.ts.map +1 -0
- package/dist/deploy/envelope-loader.js +141 -0
- package/dist/deploy/envelope-loader.js.map +1 -0
- package/dist/deploy/post.d.ts +48 -0
- package/dist/deploy/post.d.ts.map +1 -0
- package/dist/deploy/post.js +210 -0
- package/dist/deploy/post.js.map +1 -0
- package/dist/deploy/response.d.ts +42 -0
- package/dist/deploy/response.d.ts.map +1 -0
- package/dist/deploy/response.js +128 -0
- package/dist/deploy/response.js.map +1 -0
- package/dist/deploy/runners.d.ts +218 -0
- package/dist/deploy/runners.d.ts.map +1 -0
- package/dist/deploy/runners.js +4 -0
- package/dist/deploy/runners.js.map +1 -0
- package/dist/dev/bundler.d.ts +10 -0
- package/dist/dev/bundler.d.ts.map +1 -0
- package/dist/dev/bundler.js +235 -0
- package/dist/dev/bundler.js.map +1 -0
- package/dist/dev/defaults.d.ts +140 -0
- package/dist/dev/defaults.d.ts.map +1 -0
- package/dist/dev/defaults.js +709 -0
- package/dist/dev/defaults.js.map +1 -0
- package/dist/dev/dev-only-imports.d.ts +15 -0
- package/dist/dev/dev-only-imports.d.ts.map +1 -0
- package/dist/dev/dev-only-imports.js +57 -0
- package/dist/dev/dev-only-imports.js.map +1 -0
- package/dist/dev/docker-compose.dev.yml +68 -0
- package/dist/dev/index-child.d.ts +2 -0
- package/dist/dev/index-child.d.ts.map +1 -0
- package/dist/dev/index-child.js +53 -0
- package/dist/dev/index-child.js.map +1 -0
- package/dist/dev/pack-code.d.ts +36 -0
- package/dist/dev/pack-code.d.ts.map +1 -0
- package/dist/dev/pack-code.js +129 -0
- package/dist/dev/pack-code.js.map +1 -0
- package/dist/dev/pack-env.d.ts +13 -0
- package/dist/dev/pack-env.d.ts.map +1 -0
- package/dist/dev/pack-env.js +36 -0
- package/dist/dev/pack-env.js.map +1 -0
- package/dist/dev/pack-service.d.ts +40 -0
- package/dist/dev/pack-service.d.ts.map +1 -0
- package/dist/dev/pack-service.js +189 -0
- package/dist/dev/pack-service.js.map +1 -0
- package/dist/dev/paths.d.ts +22 -0
- package/dist/dev/paths.d.ts.map +1 -0
- package/dist/dev/paths.js +35 -0
- package/dist/dev/paths.js.map +1 -0
- package/dist/dev/postgres-container.d.ts +77 -0
- package/dist/dev/postgres-container.d.ts.map +1 -0
- package/dist/dev/postgres-container.js +346 -0
- package/dist/dev/postgres-container.js.map +1 -0
- package/dist/dev/python-builder.d.ts +16 -0
- package/dist/dev/python-builder.d.ts.map +1 -0
- package/dist/dev/python-builder.js +122 -0
- package/dist/dev/python-builder.js.map +1 -0
- package/dist/dev/register.d.ts +71 -0
- package/dist/dev/register.d.ts.map +1 -0
- package/dist/dev/register.js +54 -0
- package/dist/dev/register.js.map +1 -0
- package/dist/dev/runners.d.ts +312 -0
- package/dist/dev/runners.d.ts.map +1 -0
- package/dist/dev/runners.js +4 -0
- package/dist/dev/runners.js.map +1 -0
- package/dist/dev/runtime-container.d.ts +71 -0
- package/dist/dev/runtime-container.d.ts.map +1 -0
- package/dist/dev/runtime-container.js +173 -0
- package/dist/dev/runtime-container.js.map +1 -0
- package/dist/dev/runtime-env.d.ts +62 -0
- package/dist/dev/runtime-env.d.ts.map +1 -0
- package/dist/dev/runtime-env.js +100 -0
- package/dist/dev/runtime-env.js.map +1 -0
- package/dist/dev/runtime-image.d.ts +26 -0
- package/dist/dev/runtime-image.d.ts.map +1 -0
- package/dist/dev/runtime-image.js +44 -0
- package/dist/dev/runtime-image.js.map +1 -0
- package/dist/dev/runtime-registry.d.ts +73 -0
- package/dist/dev/runtime-registry.d.ts.map +1 -0
- package/dist/dev/runtime-registry.js +111 -0
- package/dist/dev/runtime-registry.js.map +1 -0
- package/dist/env/defaults.d.ts +3 -0
- package/dist/env/defaults.d.ts.map +1 -0
- package/dist/env/defaults.js +22 -0
- package/dist/env/defaults.js.map +1 -0
- package/dist/env/pack-env-plan.d.ts +70 -0
- package/dist/env/pack-env-plan.d.ts.map +1 -0
- package/dist/env/pack-env-plan.js +236 -0
- package/dist/env/pack-env-plan.js.map +1 -0
- package/dist/env/parser.d.ts +9 -0
- package/dist/env/parser.d.ts.map +1 -0
- package/dist/env/parser.js +11 -0
- package/dist/env/parser.js.map +1 -0
- package/dist/env/project-env.d.ts +34 -0
- package/dist/env/project-env.d.ts.map +1 -0
- package/dist/env/project-env.js +45 -0
- package/dist/env/project-env.js.map +1 -0
- package/dist/env/runners.d.ts +22 -0
- package/dist/env/runners.d.ts.map +1 -0
- package/dist/env/runners.js +4 -0
- package/dist/env/runners.js.map +1 -0
- package/dist/env/writer.d.ts +7 -0
- package/dist/env/writer.d.ts.map +1 -0
- package/dist/env/writer.js +9 -0
- package/dist/env/writer.js.map +1 -0
- package/dist/errors.d.ts +31 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +111 -0
- package/dist/errors.js.map +1 -0
- package/dist/help.d.ts +5 -0
- package/dist/help.d.ts.map +1 -0
- package/dist/help.js +61 -0
- package/dist/help.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +13 -0
- package/dist/index.js.map +1 -0
- package/dist/init/augment-scaffolder.d.ts +86 -0
- package/dist/init/augment-scaffolder.d.ts.map +1 -0
- package/dist/init/augment-scaffolder.js +538 -0
- package/dist/init/augment-scaffolder.js.map +1 -0
- package/dist/init/dependency-specs.d.ts +58 -0
- package/dist/init/dependency-specs.d.ts.map +1 -0
- package/dist/init/dependency-specs.js +153 -0
- package/dist/init/dependency-specs.js.map +1 -0
- package/dist/init/gitignore-patcher.d.ts +23 -0
- package/dist/init/gitignore-patcher.d.ts.map +1 -0
- package/dist/init/gitignore-patcher.js +103 -0
- package/dist/init/gitignore-patcher.js.map +1 -0
- package/dist/init/mode-detect.d.ts +34 -0
- package/dist/init/mode-detect.d.ts.map +1 -0
- package/dist/init/mode-detect.js +115 -0
- package/dist/init/mode-detect.js.map +1 -0
- package/dist/init/package-json-patcher.d.ts +36 -0
- package/dist/init/package-json-patcher.d.ts.map +1 -0
- package/dist/init/package-json-patcher.js +128 -0
- package/dist/init/package-json-patcher.js.map +1 -0
- package/dist/init/pnpm-workspace-patcher.d.ts +55 -0
- package/dist/init/pnpm-workspace-patcher.d.ts.map +1 -0
- package/dist/init/pnpm-workspace-patcher.js +248 -0
- package/dist/init/pnpm-workspace-patcher.js.map +1 -0
- package/dist/init/pyproject-patcher.d.ts +56 -0
- package/dist/init/pyproject-patcher.d.ts.map +1 -0
- package/dist/init/pyproject-patcher.js +324 -0
- package/dist/init/pyproject-patcher.js.map +1 -0
- package/dist/init/python-augment.d.ts +22 -0
- package/dist/init/python-augment.d.ts.map +1 -0
- package/dist/init/python-augment.js +300 -0
- package/dist/init/python-augment.js.map +1 -0
- package/dist/init/template-files.d.ts +18 -0
- package/dist/init/template-files.d.ts.map +1 -0
- package/dist/init/template-files.js +53 -0
- package/dist/init/template-files.js.map +1 -0
- package/dist/key/defaults.d.ts +3 -0
- package/dist/key/defaults.d.ts.map +1 -0
- package/dist/key/defaults.js +60 -0
- package/dist/key/defaults.js.map +1 -0
- package/dist/key/fingerprint.d.ts +6 -0
- package/dist/key/fingerprint.d.ts.map +1 -0
- package/dist/key/fingerprint.js +25 -0
- package/dist/key/fingerprint.js.map +1 -0
- package/dist/key/paths.d.ts +30 -0
- package/dist/key/paths.d.ts.map +1 -0
- package/dist/key/paths.js +51 -0
- package/dist/key/paths.js.map +1 -0
- package/dist/key/runners.d.ts +60 -0
- package/dist/key/runners.d.ts.map +1 -0
- package/dist/key/runners.js +4 -0
- package/dist/key/runners.js.map +1 -0
- package/dist/main.d.ts +113 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +199 -0
- package/dist/main.js.map +1 -0
- package/dist/mcp/launcher.d.ts +143 -0
- package/dist/mcp/launcher.d.ts.map +1 -0
- package/dist/mcp/launcher.js +393 -0
- package/dist/mcp/launcher.js.map +1 -0
- package/dist/mcp/preset-loader.d.ts +29 -0
- package/dist/mcp/preset-loader.d.ts.map +1 -0
- package/dist/mcp/preset-loader.js +217 -0
- package/dist/mcp/preset-loader.js.map +1 -0
- package/dist/mcp/preset-types.d.ts +71 -0
- package/dist/mcp/preset-types.d.ts.map +1 -0
- package/dist/mcp/preset-types.js +4 -0
- package/dist/mcp/preset-types.js.map +1 -0
- package/dist/mcp/presets/README.md +68 -0
- package/dist/mcp/presets/postgres.json +15 -0
- package/dist/output.d.ts +26 -0
- package/dist/output.d.ts.map +1 -0
- package/dist/output.js +46 -0
- package/dist/output.js.map +1 -0
- package/dist/pack-config.d.ts +37 -0
- package/dist/pack-config.d.ts.map +1 -0
- package/dist/pack-config.js +65 -0
- package/dist/pack-config.js.map +1 -0
- package/dist/package-manager.d.ts +33 -0
- package/dist/package-manager.d.ts.map +1 -0
- package/dist/package-manager.js +129 -0
- package/dist/package-manager.js.map +1 -0
- package/dist/parse.d.ts +88 -0
- package/dist/parse.d.ts.map +1 -0
- package/dist/parse.js +100 -0
- package/dist/parse.js.map +1 -0
- package/dist/providers/preset-loader.d.ts +47 -0
- package/dist/providers/preset-loader.d.ts.map +1 -0
- package/dist/providers/preset-loader.js +107 -0
- package/dist/providers/preset-loader.js.map +1 -0
- package/dist/providers/presets/anthropic.json +47 -0
- package/dist/providers/presets/gemini.json +40 -0
- package/dist/reference.d.ts +28 -0
- package/dist/reference.d.ts.map +1 -0
- package/dist/reference.js +52 -0
- package/dist/reference.js.map +1 -0
- package/dist/sdk-package.d.ts +9 -0
- package/dist/sdk-package.d.ts.map +1 -0
- package/dist/sdk-package.js +20 -0
- package/dist/sdk-package.js.map +1 -0
- package/dist/sdk-skills/kindgi-authoring-agents/SKILL.md +252 -0
- package/dist/sdk-skills/kindgi-authoring-flows/SKILL.md +302 -0
- package/dist/sdk-skills/kindgi-authoring-guardrails/SKILL.md +297 -0
- package/dist/sdk-skills/kindgi-authoring-mcp-servers/SKILL.md +289 -0
- package/dist/sdk-skills/kindgi-authoring-providers/SKILL.md +705 -0
- package/dist/sdk-skills/kindgi-authoring-tools/SKILL.md +298 -0
- package/dist/sdk-skills/kindgi-framework-feedback/SKILL.md +211 -0
- package/dist/sdk-skills/kindgi-getting-started/SKILL.md +189 -0
- package/dist/sdk-skills/kindgi-python-authoring-agents/SKILL.md +205 -0
- package/dist/sdk-skills/kindgi-python-authoring-flows/SKILL.md +325 -0
- package/dist/sdk-skills/kindgi-python-authoring-guardrails/SKILL.md +176 -0
- package/dist/sdk-skills/kindgi-python-authoring-tools/SKILL.md +305 -0
- package/dist/sdk-skills/kindgi-python-getting-started/SKILL.md +242 -0
- package/dist/stop-signal.d.ts +15 -0
- package/dist/stop-signal.d.ts.map +1 -0
- package/dist/stop-signal.js +16 -0
- package/dist/stop-signal.js.map +1 -0
- package/dist/templates/minimal/.nvmrc +1 -0
- package/dist/templates/minimal/AGENTS.md +23 -0
- package/dist/templates/minimal/README.md.tmpl +69 -0
- package/dist/templates/minimal/agents/.gitkeep +0 -0
- package/dist/templates/minimal/flows/.gitkeep +0 -0
- package/dist/templates/minimal/gitignore +8 -0
- package/dist/templates/minimal/guardrails/.gitkeep +0 -0
- package/dist/templates/minimal/kindgi.config.ts.tmpl +44 -0
- package/dist/templates/minimal/package.json.tmpl +25 -0
- package/dist/templates/minimal/pnpm-workspace.yaml +8 -0
- package/dist/templates/minimal/tools/.gitkeep +0 -0
- package/dist/templates/minimal/tsconfig.json.tmpl +27 -0
- package/dist/templates/minimal/vitest.config.ts.tmpl +14 -0
- package/dist/templates/python/AGENTS.md +30 -0
- package/dist/templates/python/README.md.tmpl +56 -0
- package/dist/templates/python/agents/echo_agent.py.tmpl +23 -0
- package/dist/templates/python/flows/echo_flow.py.tmpl +17 -0
- package/dist/templates/python/gitignore +9 -0
- package/dist/templates/python/guardrails/response_not_empty.py.tmpl +27 -0
- package/dist/templates/python/pyproject.toml.tmpl +42 -0
- package/dist/templates/python/tests/test_tools.py.tmpl +22 -0
- package/dist/templates/python/tools/echo.py.tmpl +27 -0
- package/dist/templates/python/tools/greet.py.tmpl +20 -0
- package/dist/templates/sample/.nvmrc +1 -0
- package/dist/templates/sample/AGENTS.md +23 -0
- package/dist/templates/sample/README.md.tmpl +85 -0
- package/dist/templates/sample/agents/echo-agent/index.ts.tmpl +34 -0
- package/dist/templates/sample/flows/echo-flow/index.ts.tmpl +59 -0
- package/dist/templates/sample/gitignore +8 -0
- package/dist/templates/sample/guardrails/response-not-empty/index.ts.tmpl +58 -0
- package/dist/templates/sample/kindgi.config.ts.tmpl +41 -0
- package/dist/templates/sample/package.json.tmpl +25 -0
- package/dist/templates/sample/pnpm-workspace.yaml +8 -0
- package/dist/templates/sample/tools/echo/index.test.ts.tmpl +31 -0
- package/dist/templates/sample/tools/echo/index.ts.tmpl +37 -0
- package/dist/templates/sample/tools/fetch-httpbin/index.ts.tmpl +60 -0
- package/dist/templates/sample/tools/greet/index.ts.tmpl +35 -0
- package/dist/templates/sample/tsconfig.json.tmpl +27 -0
- package/dist/templates/sample/vitest.config.ts.tmpl +14 -0
- package/dist/terminal-input.d.ts +17 -0
- package/dist/terminal-input.d.ts.map +1 -0
- package/dist/terminal-input.js +88 -0
- package/dist/terminal-input.js.map +1 -0
- package/dist/test/defaults.d.ts +3 -0
- package/dist/test/defaults.d.ts.map +1 -0
- package/dist/test/defaults.js +104 -0
- package/dist/test/defaults.js.map +1 -0
- package/dist/test/runners.d.ts +60 -0
- package/dist/test/runners.d.ts.map +1 -0
- package/dist/test/runners.js +4 -0
- package/dist/test/runners.js.map +1 -0
- package/dist/version-info.d.ts +9 -0
- package/dist/version-info.d.ts.map +1 -0
- package/dist/version-info.js +27 -0
- package/dist/version-info.js.map +1 -0
- package/dist/write-fully.d.ts +13 -0
- package/dist/write-fully.d.ts.map +1 -0
- package/dist/write-fully.js +17 -0
- package/dist/write-fully.js.map +1 -0
- package/package.json +63 -4
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Injectable seams for `kindgi build`. Every side effect flows through
|
|
3
|
+
* this interface so tests can substitute fixtures without invoking real
|
|
4
|
+
* esbuild, real `tar`, real `fetch`, or Docker. Production wiring lives
|
|
5
|
+
* at `packages/cli/src/build/defaults.ts`.
|
|
6
|
+
*
|
|
7
|
+
* `kindgi build` is the CLI-side orchestrator, in nine steps:
|
|
8
|
+
*
|
|
9
|
+
* 1. Local indexer pass (integrity gate baseline)
|
|
10
|
+
* 2. esbuild bundle
|
|
11
|
+
* 3. Generate multi-stage Containerfile
|
|
12
|
+
* 4. Tar the bundle
|
|
13
|
+
* 5. Compute sha256(pack.tgz)
|
|
14
|
+
* 6. POST /v1/build + subscribe to SSE build logs (terminal payload =
|
|
15
|
+
* { imageRef, imageDigest, indexJson, indexHash, buildLogsUrl })
|
|
16
|
+
* 7. Local integrity gate — hash diff + optional docker pull + diff
|
|
17
|
+
* 8. Sign locally (Ed25519 over canonicalised envelope body)
|
|
18
|
+
* 9. Emit deploy-envelope.json (`kindgi deploy` POSTs this file)
|
|
19
|
+
*
|
|
20
|
+
* The full pipeline is composed by `commands/build.ts` from the seams
|
|
21
|
+
* declared here. Each seam is named per its pipeline step so a test
|
|
22
|
+
* looking at a failing stage can substitute only that field.
|
|
23
|
+
*/
|
|
24
|
+
import type { IndexResult } from '../dev/runners.js';
|
|
25
|
+
/**
|
|
26
|
+
* The manifest slot the local integrity gate uses. Kept structural so
|
|
27
|
+
* tests hand back plain objects without importing
|
|
28
|
+
* `@kindgi/handler-runtime`. Production wiring runs the bundled
|
|
29
|
+
* `kindgi-index.mjs` over the bundles, as the image's indexer stage
|
|
30
|
+
* does, and reads `expected-index.json` back off disk.
|
|
31
|
+
*/
|
|
32
|
+
export type LocalIndexResult = IndexResult;
|
|
33
|
+
export interface RunLocalIndexerOptions {
|
|
34
|
+
readonly packDir: string;
|
|
35
|
+
/** The bundles (`esbuildBundle`'s `outputDir`): the indexer, the config, the bundle map. */
|
|
36
|
+
readonly bundleDir: string;
|
|
37
|
+
readonly outputPath: string;
|
|
38
|
+
readonly artifactVersion: string;
|
|
39
|
+
readonly publishedAt: string;
|
|
40
|
+
}
|
|
41
|
+
export interface EsbuildBundleOptions {
|
|
42
|
+
readonly packDir: string;
|
|
43
|
+
readonly outputDir: string;
|
|
44
|
+
/**
|
|
45
|
+
* The pack's discovery patterns (defaults filled in) — every file
|
|
46
|
+
* they match is bundled as an entrypoint, the same set the indexer
|
|
47
|
+
* discovers.
|
|
48
|
+
*/
|
|
49
|
+
readonly discoveryPatterns: readonly string[];
|
|
50
|
+
/** The pack's `kindgi.config.*`, bundled to `kindgi.config.mjs`. */
|
|
51
|
+
readonly configPath: string;
|
|
52
|
+
/** The Node major the image runs: the bundles' esbuild target. */
|
|
53
|
+
readonly nodeMajor: number;
|
|
54
|
+
}
|
|
55
|
+
export interface EsbuildBundleResult {
|
|
56
|
+
/** Absolute paths of every emitted file (bundles and sourcemaps). */
|
|
57
|
+
readonly emitted: readonly string[];
|
|
58
|
+
/** Total bundle byte size — surfaced in the summary. */
|
|
59
|
+
readonly totalBytes: number;
|
|
60
|
+
/** The packages the pack's bundles import from `node_modules`, sorted. */
|
|
61
|
+
readonly externals: readonly string[];
|
|
62
|
+
/** Each primitive's source path → its bundle, under `outputDir` (`bundle-map.json`). */
|
|
63
|
+
readonly bundleMap: Readonly<Record<string, string>>;
|
|
64
|
+
}
|
|
65
|
+
import type { HostInstall, HostSecret } from './host-install.js';
|
|
66
|
+
import type { ResolvedImage } from './image-config.js';
|
|
67
|
+
import type { PythonInstaller } from './python-image.js';
|
|
68
|
+
export interface WriteContainerfileOptions {
|
|
69
|
+
readonly outputPath: string;
|
|
70
|
+
readonly artifactVersion: string;
|
|
71
|
+
readonly publishedAt: string;
|
|
72
|
+
/** The pinned base image (`node-image.ts`). */
|
|
73
|
+
readonly baseImageRef: string;
|
|
74
|
+
/** buildTarget threaded into the ARG for the indexer stage. */
|
|
75
|
+
readonly buildTarget: string;
|
|
76
|
+
readonly install: HostInstall;
|
|
77
|
+
/** What `image` in `kindgi.config` adds. */
|
|
78
|
+
readonly image: ResolvedImage;
|
|
79
|
+
/** Whether the context has `include/` (`bundle.include` files). */
|
|
80
|
+
readonly hasIncludes: boolean;
|
|
81
|
+
}
|
|
82
|
+
export interface WriteContextOptions {
|
|
83
|
+
readonly contextDir: string;
|
|
84
|
+
readonly packDir: string;
|
|
85
|
+
readonly install: HostInstall;
|
|
86
|
+
readonly bundleDir: string;
|
|
87
|
+
readonly containerfilePath: string;
|
|
88
|
+
/** `bundle.include` files, relative to `packDir`. */
|
|
89
|
+
readonly includes: readonly string[];
|
|
90
|
+
/** The files the image's build extensions read, relative to `packDir`. */
|
|
91
|
+
readonly extensionFiles: readonly string[];
|
|
92
|
+
}
|
|
93
|
+
export interface TarPackOptions {
|
|
94
|
+
/** A context `writeContext` wrote; removed once tarred. */
|
|
95
|
+
readonly contextDir: string;
|
|
96
|
+
readonly outputPath: string;
|
|
97
|
+
}
|
|
98
|
+
export interface DockerBuildOptions {
|
|
99
|
+
readonly contextDir: string;
|
|
100
|
+
readonly tag: string;
|
|
101
|
+
readonly buildTarget: string;
|
|
102
|
+
/** The image's platform (`linux/amd64`). Absent: this machine's. */
|
|
103
|
+
readonly platform?: string;
|
|
104
|
+
/** Push `tag` to its registry instead of loading it into the local image store. */
|
|
105
|
+
readonly push?: boolean;
|
|
106
|
+
/** Registry config for the install, as BuildKit secrets. */
|
|
107
|
+
readonly secrets: readonly (Pick<HostSecret, 'id'> & {
|
|
108
|
+
readonly src: string;
|
|
109
|
+
})[];
|
|
110
|
+
readonly onLog?: (line: string) => void;
|
|
111
|
+
}
|
|
112
|
+
export type DockerBuildResult = {
|
|
113
|
+
readonly kind: 'ok';
|
|
114
|
+
/** Loaded: the local image id. Pushed: the pushed manifest's digest. */
|
|
115
|
+
readonly imageId: string;
|
|
116
|
+
/** Pushed: the digest the registry has (`sha256:…`). */
|
|
117
|
+
readonly digest?: string;
|
|
118
|
+
} | {
|
|
119
|
+
readonly kind: 'err';
|
|
120
|
+
readonly message: string;
|
|
121
|
+
};
|
|
122
|
+
export interface TarPackResult {
|
|
123
|
+
readonly path: string;
|
|
124
|
+
readonly bytes: Uint8Array;
|
|
125
|
+
readonly size: number;
|
|
126
|
+
}
|
|
127
|
+
export interface PostBuildOptions {
|
|
128
|
+
readonly endpoint: string;
|
|
129
|
+
readonly tarballBytes: Uint8Array;
|
|
130
|
+
readonly tarballSha256: string;
|
|
131
|
+
readonly buildTarget: string;
|
|
132
|
+
readonly registryPushCredsRef?: string;
|
|
133
|
+
readonly fetchImpl: typeof fetch;
|
|
134
|
+
}
|
|
135
|
+
export interface PostBuildResult {
|
|
136
|
+
readonly buildJobId: string;
|
|
137
|
+
readonly status: 'queued' | 'running' | 'completed' | 'failed';
|
|
138
|
+
readonly buildLogsUrl: string;
|
|
139
|
+
/**
|
|
140
|
+
* When the build server replays an idempotent hit (200 with existing
|
|
141
|
+
* completed job), the terminal payload is returned inline — the caller
|
|
142
|
+
* can skip the SSE stream.
|
|
143
|
+
*/
|
|
144
|
+
readonly terminal?: TerminalPayload;
|
|
145
|
+
}
|
|
146
|
+
export interface TerminalPayload {
|
|
147
|
+
readonly status: 'completed' | 'failed';
|
|
148
|
+
readonly imageRef?: string;
|
|
149
|
+
readonly imageDigest?: string;
|
|
150
|
+
readonly indexJson?: Readonly<Record<string, unknown>>;
|
|
151
|
+
readonly indexHash?: string;
|
|
152
|
+
readonly buildLogsUrl?: string;
|
|
153
|
+
readonly error?: {
|
|
154
|
+
readonly code: string;
|
|
155
|
+
readonly message: string;
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
export interface StreamBuildLogsOptions {
|
|
159
|
+
readonly endpoint: string;
|
|
160
|
+
readonly buildJobId: string;
|
|
161
|
+
readonly fetchImpl: typeof fetch;
|
|
162
|
+
readonly onLog: (line: string) => void;
|
|
163
|
+
readonly signal?: AbortSignal;
|
|
164
|
+
}
|
|
165
|
+
export interface PullImageIndexOptions {
|
|
166
|
+
readonly imageRef: string;
|
|
167
|
+
readonly workDir: string;
|
|
168
|
+
/** `false`: the image is in the local store already (`--local`). Default: pull it. */
|
|
169
|
+
readonly pull?: boolean;
|
|
170
|
+
/** The image's platform, when it isn't this machine's (an amd64 image on Apple silicon). */
|
|
171
|
+
readonly platform?: string;
|
|
172
|
+
readonly onLog?: (line: string) => void;
|
|
173
|
+
readonly signal?: AbortSignal;
|
|
174
|
+
}
|
|
175
|
+
export interface PullImageIndexResult {
|
|
176
|
+
/** Raw bytes of `/app/index.json` extracted from the image. */
|
|
177
|
+
readonly bytes: Uint8Array;
|
|
178
|
+
}
|
|
179
|
+
export interface SignOptions {
|
|
180
|
+
/** PEM-encoded PKCS8 Ed25519 private key. */
|
|
181
|
+
readonly privateKeyPem: string;
|
|
182
|
+
/** Bytes to sign — the canonicalised signature body. */
|
|
183
|
+
readonly message: Uint8Array;
|
|
184
|
+
}
|
|
185
|
+
export interface SignResult {
|
|
186
|
+
/** Base64-encoded 64-byte signature. */
|
|
187
|
+
readonly signatureBase64: string;
|
|
188
|
+
/** PEM-encoded public key derived from the private key. */
|
|
189
|
+
readonly publicKeyPem: string;
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* The steps that differ for a Python pack (`[tool.kindgi]` in
|
|
193
|
+
* `pyproject.toml`): no bundle — its own indexer with the pack's
|
|
194
|
+
* interpreter, its own Containerfile, the pack root as the context.
|
|
195
|
+
*/
|
|
196
|
+
export interface PythonBuildRunners {
|
|
197
|
+
readonly runLocalIndexer: (opts: Omit<RunLocalIndexerOptions, 'bundleDir'> & {
|
|
198
|
+
readonly python: readonly [string, ...string[]];
|
|
199
|
+
readonly env: Readonly<Record<string, string>>;
|
|
200
|
+
}) => Promise<LocalIndexResult>;
|
|
201
|
+
readonly writeContainerfile: (opts: Omit<WriteContainerfileOptions, 'baseImageRef' | 'install' | 'image' | 'hasIncludes'> & {
|
|
202
|
+
readonly baseImageRef: string;
|
|
203
|
+
readonly uvImageRef: string;
|
|
204
|
+
readonly installer: PythonInstaller;
|
|
205
|
+
/** Debian packages for the image, checked (`checkAptPackages`). */
|
|
206
|
+
readonly systemPackages: readonly string[];
|
|
207
|
+
}) => Promise<void>;
|
|
208
|
+
/** Tars `files` (pack-relative) and the Containerfile, deterministically. */
|
|
209
|
+
readonly tarContext: (opts: {
|
|
210
|
+
readonly packDir: string;
|
|
211
|
+
readonly files: readonly string[];
|
|
212
|
+
readonly containerfilePath: string;
|
|
213
|
+
readonly outputPath: string;
|
|
214
|
+
}) => Promise<TarPackResult>;
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Injected seams the `build` command consumes. Every side effect must
|
|
218
|
+
* pass through one of these — no `import('esbuild')` / `import('tar')`
|
|
219
|
+
* inside `commands/build.ts` and no direct docker or filesystem writes
|
|
220
|
+
* outside these methods. Tests substitute per-field to exercise every
|
|
221
|
+
* pipeline branch without ever booting real esbuild / real tar / real
|
|
222
|
+
* docker / real network.
|
|
223
|
+
*/
|
|
224
|
+
export interface BuildRunners {
|
|
225
|
+
/** Runs the CLI's own indexer against the pack + writes to `outputPath`. */
|
|
226
|
+
readonly runLocalIndexer: (opts: RunLocalIndexerOptions) => Promise<LocalIndexResult>;
|
|
227
|
+
/** Bundles the pack source + framework entrypoints into `outputDir`. */
|
|
228
|
+
readonly esbuildBundle: (opts: EsbuildBundleOptions) => Promise<EsbuildBundleResult>;
|
|
229
|
+
/** Emits the multi-stage Containerfile at `outputPath`. */
|
|
230
|
+
readonly writeContainerfile: (opts: WriteContainerfileOptions) => Promise<void>;
|
|
231
|
+
/** Writes the image's build context: the install's files, the bundles, the includes, the Containerfile. */
|
|
232
|
+
readonly writeContext: (opts: WriteContextOptions) => Promise<void>;
|
|
233
|
+
/** Tars a written context into a single gzipped archive. */
|
|
234
|
+
readonly tarPack: (opts: TarPackOptions) => Promise<TarPackResult>;
|
|
235
|
+
/** `--local`: builds the image into the local Docker image store. */
|
|
236
|
+
readonly dockerBuild?: (opts: DockerBuildOptions) => Promise<DockerBuildResult>;
|
|
237
|
+
/** POSTs the tarball to `POST /v1/build`. */
|
|
238
|
+
readonly postBuild: (opts: PostBuildOptions) => Promise<PostBuildResult>;
|
|
239
|
+
/**
|
|
240
|
+
* Subscribes to `GET /v1/build/:jobId/stream`. Forwards each `log`
|
|
241
|
+
* event to `onLog`. Resolves with the terminal payload the server
|
|
242
|
+
* emits before closing the stream.
|
|
243
|
+
*/
|
|
244
|
+
readonly streamBuildLogs: (opts: StreamBuildLogsOptions) => Promise<TerminalPayload>;
|
|
245
|
+
/**
|
|
246
|
+
* Optional docker-pull-and-extract path. When absent OR when the
|
|
247
|
+
* command runs with `--skip-image-pull`, the integrity gate uses only
|
|
248
|
+
* the hash-comparison path.
|
|
249
|
+
*/
|
|
250
|
+
readonly pullImageIndex?: (opts: PullImageIndexOptions) => Promise<PullImageIndexResult>;
|
|
251
|
+
/**
|
|
252
|
+
* Ed25519 signature over the canonicalised envelope body. Returns the
|
|
253
|
+
* base64-encoded signature + the derived public key in PEM.
|
|
254
|
+
*/
|
|
255
|
+
readonly signEnvelope: (opts: SignOptions) => Promise<SignResult>;
|
|
256
|
+
/** A Python pack's steps; absent → `kindgi build` refuses a Python pack. */
|
|
257
|
+
readonly python?: PythonBuildRunners;
|
|
258
|
+
}
|
|
259
|
+
//# sourceMappingURL=runners.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runners.d.ts","sourceRoot":"","sources":["../../src/build/runners.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runners.js","sourceRoot":"","sources":["../../src/build/runners.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version-specifier.d.ts","sourceRoot":"","sources":["../../src/build/version-specifier.ts"],"names":[],"mappings":"AAaA,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAe5F"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// Copyright (C) 2026 Kindgi Inc.
|
|
3
|
+
export function satisfiesSpecifiers(version, specifiers) {
|
|
4
|
+
const v = parseRelease(version);
|
|
5
|
+
if (v === undefined)
|
|
6
|
+
return undefined;
|
|
7
|
+
const clauses = specifiers
|
|
8
|
+
.split(',')
|
|
9
|
+
.map((c) => c.trim())
|
|
10
|
+
.filter((c) => c !== '');
|
|
11
|
+
if (clauses.length === 0)
|
|
12
|
+
return undefined;
|
|
13
|
+
let all = true;
|
|
14
|
+
for (const clause of clauses) {
|
|
15
|
+
const ok = satisfies(v, clause);
|
|
16
|
+
if (ok === undefined)
|
|
17
|
+
return undefined;
|
|
18
|
+
all &&= ok;
|
|
19
|
+
}
|
|
20
|
+
return all;
|
|
21
|
+
}
|
|
22
|
+
function satisfies(v, clause) {
|
|
23
|
+
const m = /^(~=|===|==|!=|<=|>=|<|>)\s*([0-9]+(?:\.[0-9]+)*)(\.\*)?$/.exec(clause);
|
|
24
|
+
if (m === null)
|
|
25
|
+
return undefined;
|
|
26
|
+
const [, op, raw, wildcard] = m;
|
|
27
|
+
const target = parseRelease(raw);
|
|
28
|
+
if (wildcard !== undefined) {
|
|
29
|
+
if (op !== '==' && op !== '!=')
|
|
30
|
+
return undefined;
|
|
31
|
+
const prefix = startsWith(v, target);
|
|
32
|
+
return op === '==' ? prefix : !prefix;
|
|
33
|
+
}
|
|
34
|
+
const c = compare(v, target);
|
|
35
|
+
switch (op) {
|
|
36
|
+
case '==':
|
|
37
|
+
case '===':
|
|
38
|
+
return c === 0;
|
|
39
|
+
case '!=':
|
|
40
|
+
return c !== 0;
|
|
41
|
+
case '<':
|
|
42
|
+
return c < 0;
|
|
43
|
+
case '<=':
|
|
44
|
+
return c <= 0;
|
|
45
|
+
case '>':
|
|
46
|
+
return c > 0;
|
|
47
|
+
case '>=':
|
|
48
|
+
return c >= 0;
|
|
49
|
+
default:
|
|
50
|
+
// `~=X.Y.Z` is `>=X.Y.Z, ==X.Y.*`; it needs two release segments.
|
|
51
|
+
if (target.length < 2)
|
|
52
|
+
return undefined;
|
|
53
|
+
return c >= 0 && startsWith(v, target.slice(0, -1));
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
function parseRelease(text) {
|
|
57
|
+
return /^[0-9]+(\.[0-9]+)*$/.test(text) ? text.split('.').map(Number) : undefined;
|
|
58
|
+
}
|
|
59
|
+
function compare(a, b) {
|
|
60
|
+
for (let i = 0; i < Math.max(a.length, b.length); i += 1) {
|
|
61
|
+
const d = (a[i] ?? 0) - (b[i] ?? 0);
|
|
62
|
+
if (d !== 0)
|
|
63
|
+
return d;
|
|
64
|
+
}
|
|
65
|
+
return 0;
|
|
66
|
+
}
|
|
67
|
+
function startsWith(v, prefix) {
|
|
68
|
+
return prefix.every((part, i) => (v[i] ?? 0) === part);
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=version-specifier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version-specifier.js","sourceRoot":"","sources":["../../src/build/version-specifier.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** The running `@kindgi/cli` package — its root, version, and the SDK spec it depends on. */
|
|
2
|
+
export interface CliPackageInfo {
|
|
3
|
+
readonly root: string;
|
|
4
|
+
readonly version: string;
|
|
5
|
+
/** `dependencies['@kindgi/sdk']` — `workspace:*` in a checkout, a version once published. */
|
|
6
|
+
readonly sdkDependency: string | undefined;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Walk up from this module to the `package.json` named `@kindgi/cli`.
|
|
10
|
+
* Works from `src/` (tests) and `dist/` (built), in a checkout or under
|
|
11
|
+
* `node_modules`. Companion to `resolveSdkPackageRoot` — no repo-layout
|
|
12
|
+
* assumption. `undefined` when not found (broken install).
|
|
13
|
+
*/
|
|
14
|
+
export declare function resolveCliPackage(): CliPackageInfo | undefined;
|
|
15
|
+
//# sourceMappingURL=cli-package.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-package.d.ts","sourceRoot":"","sources":["../src/cli-package.ts"],"names":[],"mappings":"AAOA,6FAA6F;AAC7F,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,6FAA6F;IAC7F,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,cAAc,GAAG,SAAS,CAS9D"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// Copyright (C) 2026 Kindgi Inc.
|
|
3
|
+
import { readFileSync } from 'node:fs';
|
|
4
|
+
import { dirname, join } from 'node:path';
|
|
5
|
+
import { fileURLToPath } from 'node:url';
|
|
6
|
+
/**
|
|
7
|
+
* Walk up from this module to the `package.json` named `@kindgi/cli`.
|
|
8
|
+
* Works from `src/` (tests) and `dist/` (built), in a checkout or under
|
|
9
|
+
* `node_modules`. Companion to `resolveSdkPackageRoot` — no repo-layout
|
|
10
|
+
* assumption. `undefined` when not found (broken install).
|
|
11
|
+
*/
|
|
12
|
+
export function resolveCliPackage() {
|
|
13
|
+
let dir = dirname(fileURLToPath(import.meta.url));
|
|
14
|
+
for (;;) {
|
|
15
|
+
const info = readCliPackageJson(join(dir, 'package.json'));
|
|
16
|
+
if (info !== undefined)
|
|
17
|
+
return { root: dir, ...info };
|
|
18
|
+
const parent = dirname(dir);
|
|
19
|
+
if (parent === dir)
|
|
20
|
+
return undefined;
|
|
21
|
+
dir = parent;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
function readCliPackageJson(path) {
|
|
25
|
+
let pkg;
|
|
26
|
+
try {
|
|
27
|
+
pkg = JSON.parse(readFileSync(path, 'utf8'));
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
if (pkg.name !== '@kindgi/cli' || typeof pkg.version !== 'string')
|
|
33
|
+
return undefined;
|
|
34
|
+
const sdk = pkg.dependencies?.['@kindgi/sdk'];
|
|
35
|
+
return { version: pkg.version, sdkDependency: typeof sdk === 'string' ? sdk : undefined };
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=cli-package.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-package.js","sourceRoot":"","sources":["../src/cli-package.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAUzC;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB;IAC/B,IAAI,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAClD,SAAS,CAAC;QACR,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC;QAC3D,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;QACtD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,SAAS,CAAC;QACrC,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,IAAY;IAEZ,IAAI,GAAkF,CAAC;IACvF,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAe,CAAC;IAC7D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,GAAG,CAAC,IAAI,KAAK,aAAa,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACpF,MAAM,GAAG,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,aAAa,CAAC,CAAC;IAC9C,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;AAC5F,CAAC"}
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
|
package/dist/cli.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
// Copyright (C) 2026 Kindgi Inc.
|
|
4
|
+
import { runCli } from './main.js';
|
|
5
|
+
import { createStopSignal } from './stop-signal.js';
|
|
6
|
+
import { writeFully } from './write-fully.js';
|
|
7
|
+
async function main() {
|
|
8
|
+
// SIGINT/SIGTERM → an AbortSignal so long-lived commands (currently
|
|
9
|
+
// only `kindgi dev` — the watch loop) can shut down cleanly; a second
|
|
10
|
+
// signal forces the exit. Short-lived commands never observe it.
|
|
11
|
+
const stopSignal = createStopSignal(process, (code) => process.exit(code));
|
|
12
|
+
const outcome = await runCli({
|
|
13
|
+
argv: process.argv.slice(2),
|
|
14
|
+
env: process.env,
|
|
15
|
+
stopSignal,
|
|
16
|
+
});
|
|
17
|
+
// Exit once the output is out: piped output would be cut otherwise.
|
|
18
|
+
await writeFully(process.stdout, outcome.stdout);
|
|
19
|
+
await writeFully(process.stderr, outcome.stderr);
|
|
20
|
+
process.exit(outcome.exitCode);
|
|
21
|
+
}
|
|
22
|
+
main().catch(async (err) => {
|
|
23
|
+
await writeFully(process.stderr, `Fatal: ${err instanceof Error ? (err.stack ?? err.message) : String(err)}\n`);
|
|
24
|
+
process.exit(1);
|
|
25
|
+
});
|
|
26
|
+
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,sCAAsC;AACtC,iCAAiC;AAEjC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,KAAK,UAAU,IAAI;IACjB,oEAAoE;IACpE,sEAAsE;IACtE,iEAAiE;IACjE,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAE3E,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC;QAC3B,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAC3B,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,UAAU;KACX,CAAC,CAAC;IACH,oEAAoE;IACpE,MAAM,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,GAAY,EAAE,EAAE;IAClC,MAAM,UAAU,CACd,OAAO,CAAC,MAAM,EACd,UAAU,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAC9E,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../src/commands/adapters.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,OAAO,EAA8B,MAAM,YAAY,CAAC;AAiJtE,eAAO,MAAM,eAAe,EAAE,OAM7B,CAAC"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// Copyright (C) 2026 Kindgi Inc.
|
|
3
|
+
import { commandResultFromThrown, requiredPositional, stringFlag } from './helpers.js';
|
|
4
|
+
const prepareCmd = {
|
|
5
|
+
kind: 'leaf',
|
|
6
|
+
name: 'prepare',
|
|
7
|
+
description: 'Pre-warm an adapter (download weights, initialize sessions). Streams SSE progress. Call after `providers register`, before `runs start`.',
|
|
8
|
+
usage: 'kindgi adapters prepare <adapter-id> [--model=<key>] [--params=<json-or-@file>]',
|
|
9
|
+
optionSpec: {
|
|
10
|
+
model: {
|
|
11
|
+
type: 'string',
|
|
12
|
+
description: 'The model to prepare, by key: shorthand for a `model` field in `--params`, and wins over it.',
|
|
13
|
+
},
|
|
14
|
+
params: {
|
|
15
|
+
type: 'string',
|
|
16
|
+
description: "The adapter's prepare settings, as an inline JSON object.",
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
run: async (ctx) => {
|
|
20
|
+
let adapterId;
|
|
21
|
+
try {
|
|
22
|
+
adapterId = requiredPositional(ctx, 0, 'adapter-id');
|
|
23
|
+
}
|
|
24
|
+
catch (err) {
|
|
25
|
+
return { kind: 'error', stderr: `${err.message}\n`, exitCode: 2 };
|
|
26
|
+
}
|
|
27
|
+
// Compose adapter params. `--model=<key>` is a shorthand for the
|
|
28
|
+
// in-process ONNX adapter (its only meaningful param); `--params`
|
|
29
|
+
// accepts an arbitrary JSON blob for any adapter.
|
|
30
|
+
const paramsFlag = stringFlag(ctx, 'params');
|
|
31
|
+
const modelFlag = stringFlag(ctx, 'model');
|
|
32
|
+
let params;
|
|
33
|
+
if (paramsFlag !== undefined) {
|
|
34
|
+
try {
|
|
35
|
+
params = JSON.parse(paramsFlag);
|
|
36
|
+
}
|
|
37
|
+
catch (err) {
|
|
38
|
+
return {
|
|
39
|
+
kind: 'error',
|
|
40
|
+
stderr: `Malformed --params JSON: ${err.message}\n`,
|
|
41
|
+
exitCode: 2,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
if (modelFlag !== undefined) {
|
|
46
|
+
params = { ...(params ?? {}), model: modelFlag };
|
|
47
|
+
}
|
|
48
|
+
// Wire SIGINT / stopSignal to the SSE stream so Ctrl-C aborts
|
|
49
|
+
// mid-download cleanly instead of leaving a dangling connection.
|
|
50
|
+
const controller = new AbortController();
|
|
51
|
+
const upstream = ctx.stopSignal;
|
|
52
|
+
if (upstream !== undefined) {
|
|
53
|
+
if (upstream.aborted)
|
|
54
|
+
controller.abort();
|
|
55
|
+
else
|
|
56
|
+
upstream.addEventListener('abort', () => controller.abort(), { once: true });
|
|
57
|
+
}
|
|
58
|
+
const iterable = ctx.client().adapters.prepare({
|
|
59
|
+
adapterId,
|
|
60
|
+
...(params !== undefined && { params }),
|
|
61
|
+
signal: controller.signal,
|
|
62
|
+
});
|
|
63
|
+
const jsonMode = ctx.globals.format === 'json';
|
|
64
|
+
const events = [];
|
|
65
|
+
const stdoutChunks = [];
|
|
66
|
+
const stderrChunks = [];
|
|
67
|
+
stderrChunks.push(`\n Preparing ${adapterId}${params !== undefined ? ` (${JSON.stringify(params)})` : ''}…\n`);
|
|
68
|
+
try {
|
|
69
|
+
for await (const event of iterable) {
|
|
70
|
+
events.push(event);
|
|
71
|
+
if (jsonMode) {
|
|
72
|
+
stdoutChunks.push(`${JSON.stringify(event)}\n`);
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
stderrChunks.push(renderProgressLine(event));
|
|
76
|
+
}
|
|
77
|
+
if (event.kind === 'ready' || event.kind === 'error')
|
|
78
|
+
break;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
catch (err) {
|
|
82
|
+
return commandResultFromThrown(err, ctx, 'kindgi adapters prepare');
|
|
83
|
+
}
|
|
84
|
+
const terminal = events[events.length - 1];
|
|
85
|
+
if (terminal?.kind === 'error') {
|
|
86
|
+
return {
|
|
87
|
+
kind: 'error',
|
|
88
|
+
stderr: [...stderrChunks, `\n Failed: ${terminal.message}\n\n`].join(''),
|
|
89
|
+
exitCode: 1,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
if (jsonMode) {
|
|
93
|
+
return {
|
|
94
|
+
kind: 'ok',
|
|
95
|
+
rendered: {
|
|
96
|
+
stdout: stdoutChunks.join(''),
|
|
97
|
+
stderr: stderrChunks.join(''),
|
|
98
|
+
},
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
const summary = terminal?.kind === 'ready'
|
|
102
|
+
? (terminal.message ?? 'ready')
|
|
103
|
+
: 'stream ended without terminal event';
|
|
104
|
+
stderrChunks.push(`\n Ready: ${summary}\n\n`);
|
|
105
|
+
return {
|
|
106
|
+
kind: 'ok',
|
|
107
|
+
rendered: {
|
|
108
|
+
stdout: '',
|
|
109
|
+
stderr: stderrChunks.join(''),
|
|
110
|
+
},
|
|
111
|
+
};
|
|
112
|
+
},
|
|
113
|
+
};
|
|
114
|
+
function renderProgressLine(event) {
|
|
115
|
+
if (event.kind === 'ready') {
|
|
116
|
+
return ` ✓ ${event.message ?? 'ready'}\n`;
|
|
117
|
+
}
|
|
118
|
+
if (event.kind === 'error') {
|
|
119
|
+
return ` ✗ ${event.message}\n`;
|
|
120
|
+
}
|
|
121
|
+
// progress
|
|
122
|
+
const parts = [];
|
|
123
|
+
if (event.message !== undefined)
|
|
124
|
+
parts.push(event.message);
|
|
125
|
+
if (typeof event.ratio === 'number') {
|
|
126
|
+
parts.push(`${Math.round(event.ratio * 100)}%`);
|
|
127
|
+
}
|
|
128
|
+
if (typeof event.loadedBytes === 'number' && typeof event.totalBytes === 'number') {
|
|
129
|
+
parts.push(`(${formatBytes(event.loadedBytes)} / ${formatBytes(event.totalBytes)})`);
|
|
130
|
+
}
|
|
131
|
+
return ` ${parts.join(' ')}\n`;
|
|
132
|
+
}
|
|
133
|
+
function formatBytes(n) {
|
|
134
|
+
if (n < 1024)
|
|
135
|
+
return `${n} B`;
|
|
136
|
+
if (n < 1024 * 1024)
|
|
137
|
+
return `${(n / 1024).toFixed(1)} KB`;
|
|
138
|
+
if (n < 1024 * 1024 * 1024)
|
|
139
|
+
return `${(n / (1024 * 1024)).toFixed(1)} MB`;
|
|
140
|
+
return `${(n / (1024 * 1024 * 1024)).toFixed(2)} GB`;
|
|
141
|
+
}
|
|
142
|
+
export const adaptersCommand = {
|
|
143
|
+
kind: 'group',
|
|
144
|
+
name: 'adapters',
|
|
145
|
+
description: 'Manage adapter lifecycle (prepare / warmup). Read-side lives on `kindgi providers`.',
|
|
146
|
+
subcommands: [prepareCmd],
|
|
147
|
+
};
|
|
148
|
+
//# sourceMappingURL=adapters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../src/commands/adapters.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/commands/agents.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,OAAO,EAAe,MAAM,YAAY,CAAC;AAwFvD,eAAO,MAAM,aAAa,EAAE,OAK3B,CAAC"}
|