@wjarka/cezarion 0.10.0-pr30.54
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 +21 -0
- package/README.md +838 -0
- package/dist/agent-config/account-identity.d.ts +44 -0
- package/dist/agent-config/account-identity.js +128 -0
- package/dist/agent-config/account-identity.js.map +1 -0
- package/dist/agent-config/catalog.d.ts +72 -0
- package/dist/agent-config/catalog.js +223 -0
- package/dist/agent-config/catalog.js.map +1 -0
- package/dist/agent-config/files.d.ts +46 -0
- package/dist/agent-config/files.js +119 -0
- package/dist/agent-config/files.js.map +1 -0
- package/dist/agent-config/model-settings/claude.d.ts +2 -0
- package/dist/agent-config/model-settings/claude.js +11 -0
- package/dist/agent-config/model-settings/claude.js.map +1 -0
- package/dist/agent-config/model-settings/codex.d.ts +2 -0
- package/dist/agent-config/model-settings/codex.js +16 -0
- package/dist/agent-config/model-settings/codex.js.map +1 -0
- package/dist/agent-config/model-settings/opencode.d.ts +2 -0
- package/dist/agent-config/model-settings/opencode.js +8 -0
- package/dist/agent-config/model-settings/opencode.js.map +1 -0
- package/dist/agent-config/model-settings/pi.d.ts +12 -0
- package/dist/agent-config/model-settings/pi.js +18 -0
- package/dist/agent-config/model-settings/pi.js.map +1 -0
- package/dist/agent-config/model-settings/shared.d.ts +9 -0
- package/dist/agent-config/model-settings/shared.js +93 -0
- package/dist/agent-config/model-settings/shared.js.map +1 -0
- package/dist/agent-config/model-settings/types.d.ts +9 -0
- package/dist/agent-config/model-settings/types.js +2 -0
- package/dist/agent-config/model-settings/types.js.map +1 -0
- package/dist/agent-config/models.d.ts +9 -0
- package/dist/agent-config/models.js +32 -0
- package/dist/agent-config/models.js.map +1 -0
- package/dist/agent-config/seed.d.ts +7 -0
- package/dist/agent-config/seed.js +90 -0
- package/dist/agent-config/seed.js.map +1 -0
- package/dist/agent-config/service.d.ts +44 -0
- package/dist/agent-config/service.js +71 -0
- package/dist/agent-config/service.js.map +1 -0
- package/dist/agent-config/validate.d.ts +21 -0
- package/dist/agent-config/validate.js +76 -0
- package/dist/agent-config/validate.js.map +1 -0
- package/dist/automations/coordinator.d.ts +26 -0
- package/dist/automations/coordinator.js +66 -0
- package/dist/automations/coordinator.js.map +1 -0
- package/dist/automations/github-poller.d.ts +74 -0
- package/dist/automations/github-poller.js +234 -0
- package/dist/automations/github-poller.js.map +1 -0
- package/dist/automations/scheduler.d.ts +42 -0
- package/dist/automations/scheduler.js +192 -0
- package/dist/automations/scheduler.js.map +1 -0
- package/dist/automations/store.d.ts +65 -0
- package/dist/automations/store.js +298 -0
- package/dist/automations/store.js.map +1 -0
- package/dist/automations/task-template.d.ts +18 -0
- package/dist/automations/task-template.js +95 -0
- package/dist/automations/task-template.js.map +1 -0
- package/dist/automations/types.d.ts +255 -0
- package/dist/automations/types.js +159 -0
- package/dist/automations/types.js.map +1 -0
- package/dist/config.d.ts +77 -0
- package/dist/config.js +242 -0
- package/dist/config.js.map +1 -0
- package/dist/contract/agent-config.d.ts +153 -0
- package/dist/contract/agent-profiles.d.ts +347 -0
- package/dist/contract/automations.d.ts +935 -0
- package/dist/contract/events.d.ts +104 -0
- package/dist/contract/github.d.ts +556 -0
- package/dist/contract/health.d.ts +102 -0
- package/dist/contract/index.d.ts +16 -0
- package/dist/contract/index.js +1895 -0
- package/dist/contract/projects.d.ts +210 -0
- package/dist/contract/repo.d.ts +234 -0
- package/dist/contract/runs.d.ts +1473 -0
- package/dist/contract/skills.d.ts +232 -0
- package/dist/contract/workflows.d.ts +218 -0
- package/dist/contract/workspace.d.ts +579 -0
- package/dist/core/agent-env.d.ts +31 -0
- package/dist/core/agent-env.js +371 -0
- package/dist/core/agent-env.js.map +1 -0
- package/dist/core/agent-model-policy.d.ts +10 -0
- package/dist/core/agent-model-policy.js +36 -0
- package/dist/core/agent-model-policy.js.map +1 -0
- package/dist/core/agent-profiles.d.ts +62 -0
- package/dist/core/agent-profiles.js +90 -0
- package/dist/core/agent-profiles.js.map +1 -0
- package/dist/core/agent-runner.d.ts +211 -0
- package/dist/core/agent-runner.js +68 -0
- package/dist/core/agent-runner.js.map +1 -0
- package/dist/core/ask.d.ts +105 -0
- package/dist/core/ask.js +187 -0
- package/dist/core/ask.js.map +1 -0
- package/dist/core/backend-detect.d.ts +16 -0
- package/dist/core/backend-detect.js +155 -0
- package/dist/core/backend-detect.js.map +1 -0
- package/dist/core/claude-cli-runner.d.ts +59 -0
- package/dist/core/claude-cli-runner.js +483 -0
- package/dist/core/claude-cli-runner.js.map +1 -0
- package/dist/core/claude-ui-mapper.d.ts +80 -0
- package/dist/core/claude-ui-mapper.js +598 -0
- package/dist/core/claude-ui-mapper.js.map +1 -0
- package/dist/core/codex-app-server-runner.d.ts +41 -0
- package/dist/core/codex-app-server-runner.js +584 -0
- package/dist/core/codex-app-server-runner.js.map +1 -0
- package/dist/core/codex-app-server-transport.d.ts +35 -0
- package/dist/core/codex-app-server-transport.js +150 -0
- package/dist/core/codex-app-server-transport.js.map +1 -0
- package/dist/core/codex-model-catalog.d.ts +10 -0
- package/dist/core/codex-model-catalog.js +110 -0
- package/dist/core/codex-model-catalog.js.map +1 -0
- package/dist/core/codex-ui-mapper.d.ts +112 -0
- package/dist/core/codex-ui-mapper.js +766 -0
- package/dist/core/codex-ui-mapper.js.map +1 -0
- package/dist/core/model-identity.d.ts +125 -0
- package/dist/core/model-identity.js +132 -0
- package/dist/core/model-identity.js.map +1 -0
- package/dist/core/model-presets.d.ts +21 -0
- package/dist/core/model-presets.js +81 -0
- package/dist/core/model-presets.js.map +1 -0
- package/dist/core/ndjson.d.ts +6 -0
- package/dist/core/ndjson.js +23 -0
- package/dist/core/ndjson.js.map +1 -0
- package/dist/core/opencode-model-catalog.d.ts +32 -0
- package/dist/core/opencode-model-catalog.js +153 -0
- package/dist/core/opencode-model-catalog.js.map +1 -0
- package/dist/core/opencode-server-runner.d.ts +32 -0
- package/dist/core/opencode-server-runner.js +882 -0
- package/dist/core/opencode-server-runner.js.map +1 -0
- package/dist/core/opencode-ui-mapper.d.ts +137 -0
- package/dist/core/opencode-ui-mapper.js +800 -0
- package/dist/core/opencode-ui-mapper.js.map +1 -0
- package/dist/core/pi-model-catalog.d.ts +31 -0
- package/dist/core/pi-model-catalog.js +152 -0
- package/dist/core/pi-model-catalog.js.map +1 -0
- package/dist/core/pi-runner.d.ts +24 -0
- package/dist/core/pi-runner.js +403 -0
- package/dist/core/pi-runner.js.map +1 -0
- package/dist/core/pi-ui-mapper.d.ts +36 -0
- package/dist/core/pi-ui-mapper.js +304 -0
- package/dist/core/pi-ui-mapper.js.map +1 -0
- package/dist/core/process-usage.d.ts +66 -0
- package/dist/core/process-usage.js +193 -0
- package/dist/core/process-usage.js.map +1 -0
- package/dist/core/provider-auth.d.ts +154 -0
- package/dist/core/provider-auth.js +509 -0
- package/dist/core/provider-auth.js.map +1 -0
- package/dist/core/provider-availability.d.ts +3 -0
- package/dist/core/provider-availability.js +14 -0
- package/dist/core/provider-availability.js.map +1 -0
- package/dist/core/runner-factory.d.ts +8 -0
- package/dist/core/runner-factory.js +25 -0
- package/dist/core/runner-factory.js.map +1 -0
- package/dist/core/runner-model-catalog.d.ts +29 -0
- package/dist/core/runner-model-catalog.js +78 -0
- package/dist/core/runner-model-catalog.js.map +1 -0
- package/dist/core/secret-redaction.d.ts +37 -0
- package/dist/core/secret-redaction.js +115 -0
- package/dist/core/secret-redaction.js.map +1 -0
- package/dist/core/shell-env.d.ts +28 -0
- package/dist/core/shell-env.js +56 -0
- package/dist/core/shell-env.js.map +1 -0
- package/dist/core/tool-display.d.ts +31 -0
- package/dist/core/tool-display.js +179 -0
- package/dist/core/tool-display.js.map +1 -0
- package/dist/core/ui-events.d.ts +335 -0
- package/dist/core/ui-events.js +25 -0
- package/dist/core/ui-events.js.map +1 -0
- package/dist/core/usage-limit.d.ts +42 -0
- package/dist/core/usage-limit.js +209 -0
- package/dist/core/usage-limit.js.map +1 -0
- package/dist/core/usage.d.ts +11 -0
- package/dist/core/usage.js +15 -0
- package/dist/core/usage.js.map +1 -0
- package/dist/core/v1-text-coalescer.d.ts +36 -0
- package/dist/core/v1-text-coalescer.js +72 -0
- package/dist/core/v1-text-coalescer.js.map +1 -0
- package/dist/git-diff-base.d.ts +85 -0
- package/dist/git-diff-base.js +180 -0
- package/dist/git-diff-base.js.map +1 -0
- package/dist/git-refs.d.ts +11 -0
- package/dist/git-refs.js +14 -0
- package/dist/git-refs.js.map +1 -0
- package/dist/git-worktree.d.ts +161 -0
- package/dist/git-worktree.js +508 -0
- package/dist/git-worktree.js.map +1 -0
- package/dist/handoff.d.ts +62 -0
- package/dist/handoff.js +154 -0
- package/dist/handoff.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +680 -0
- package/dist/index.js.map +1 -0
- package/dist/install-as-command.d.ts +40 -0
- package/dist/install-as-command.js +52 -0
- package/dist/install-as-command.js.map +1 -0
- package/dist/pack-check.d.ts +17 -0
- package/dist/pack-check.js +27 -0
- package/dist/pack-check.js.map +1 -0
- package/dist/paths.d.ts +140 -0
- package/dist/paths.js +192 -0
- package/dist/paths.js.map +1 -0
- package/dist/planner.d.ts +27 -0
- package/dist/planner.js +268 -0
- package/dist/planner.js.map +1 -0
- package/dist/release/manifests.d.ts +81 -0
- package/dist/release/manifests.js +74 -0
- package/dist/release/manifests.js.map +1 -0
- package/dist/release/snapshot.d.ts +67 -0
- package/dist/release/snapshot.js +97 -0
- package/dist/release/snapshot.js.map +1 -0
- package/dist/release/stable.d.ts +38 -0
- package/dist/release/stable.js +55 -0
- package/dist/release/stable.js.map +1 -0
- package/dist/runs/agent-tmpdir.d.ts +41 -0
- package/dist/runs/agent-tmpdir.js +183 -0
- package/dist/runs/agent-tmpdir.js.map +1 -0
- package/dist/runs/auto-name.d.ts +75 -0
- package/dist/runs/auto-name.js +179 -0
- package/dist/runs/auto-name.js.map +1 -0
- package/dist/runs/event-history.d.ts +50 -0
- package/dist/runs/event-history.js +613 -0
- package/dist/runs/event-history.js.map +1 -0
- package/dist/runs/retention.d.ts +60 -0
- package/dist/runs/retention.js +86 -0
- package/dist/runs/retention.js.map +1 -0
- package/dist/runs/review-gate.d.ts +18 -0
- package/dist/runs/review-gate.js +21 -0
- package/dist/runs/review-gate.js.map +1 -0
- package/dist/runs/run-index.d.ts +19 -0
- package/dist/runs/run-index.js +43 -0
- package/dist/runs/run-index.js.map +1 -0
- package/dist/runs/store.d.ts +446 -0
- package/dist/runs/store.js +1118 -0
- package/dist/runs/store.js.map +1 -0
- package/dist/runs/task-markers.d.ts +28 -0
- package/dist/runs/task-markers.js +74 -0
- package/dist/runs/task-markers.js.map +1 -0
- package/dist/runs/task-refs.d.ts +25 -0
- package/dist/runs/task-refs.js +74 -0
- package/dist/runs/task-refs.js.map +1 -0
- package/dist/runs/ui-event-sink.d.ts +81 -0
- package/dist/runs/ui-event-sink.js +210 -0
- package/dist/runs/ui-event-sink.js.map +1 -0
- package/dist/server/app-type.d.ts +21 -0
- package/dist/server/app-type.js +2 -0
- package/dist/server/app-type.js.map +1 -0
- package/dist/server/capabilities.d.ts +70 -0
- package/dist/server/capabilities.js +152 -0
- package/dist/server/capabilities.js.map +1 -0
- package/dist/server/checkout.d.ts +128 -0
- package/dist/server/checkout.js +296 -0
- package/dist/server/checkout.js.map +1 -0
- package/dist/server/forge/github.d.ts +513 -0
- package/dist/server/forge/github.js +2364 -0
- package/dist/server/forge/github.js.map +1 -0
- package/dist/server/forge/index.d.ts +40 -0
- package/dist/server/forge/index.js +72 -0
- package/dist/server/forge/index.js.map +1 -0
- package/dist/server/forge/types.d.ts +242 -0
- package/dist/server/forge/types.js +2 -0
- package/dist/server/forge/types.js.map +1 -0
- package/dist/server/fs-browse.d.ts +105 -0
- package/dist/server/fs-browse.js +182 -0
- package/dist/server/fs-browse.js.map +1 -0
- package/dist/server/git-changes.d.ts +213 -0
- package/dist/server/git-changes.js +555 -0
- package/dist/server/git-changes.js.map +1 -0
- package/dist/server/git.d.ts +28 -0
- package/dist/server/git.js +112 -0
- package/dist/server/git.js.map +1 -0
- package/dist/server/github.d.ts +9 -0
- package/dist/server/github.js +8 -0
- package/dist/server/github.js.map +1 -0
- package/dist/server/launch-key.d.ts +7 -0
- package/dist/server/launch-key.js +33 -0
- package/dist/server/launch-key.js.map +1 -0
- package/dist/server/open-in-app.d.ts +66 -0
- package/dist/server/open-in-app.js +211 -0
- package/dist/server/open-in-app.js.map +1 -0
- package/dist/server/open-in-terminal.d.ts +70 -0
- package/dist/server/open-in-terminal.js +179 -0
- package/dist/server/open-in-terminal.js.map +1 -0
- package/dist/server/pr.d.ts +7 -0
- package/dist/server/pr.js +7 -0
- package/dist/server/pr.js.map +1 -0
- package/dist/server/project-context.d.ts +120 -0
- package/dist/server/project-context.js +182 -0
- package/dist/server/project-context.js.map +1 -0
- package/dist/server/provider-action-gate.d.ts +8 -0
- package/dist/server/provider-action-gate.js +56 -0
- package/dist/server/provider-action-gate.js.map +1 -0
- package/dist/server/provider-auth-runtime.d.ts +21 -0
- package/dist/server/provider-auth-runtime.js +66 -0
- package/dist/server/provider-auth-runtime.js.map +1 -0
- package/dist/server/server.d.ts +13138 -0
- package/dist/server/server.js +5263 -0
- package/dist/server/server.js.map +1 -0
- package/dist/server/static-ui.d.ts +49 -0
- package/dist/server/static-ui.js +92 -0
- package/dist/server/static-ui.js.map +1 -0
- package/dist/server/validators.d.ts +97 -0
- package/dist/server/validators.js +86 -0
- package/dist/server/validators.js.map +1 -0
- package/dist/server/ws.d.ts +85 -0
- package/dist/server/ws.js +218 -0
- package/dist/server/ws.js.map +1 -0
- package/dist/server/wsl.d.ts +25 -0
- package/dist/server/wsl.js +92 -0
- package/dist/server/wsl.js.map +1 -0
- package/dist/server-install/engine.d.ts +50 -0
- package/dist/server-install/engine.js +324 -0
- package/dist/server-install/engine.js.map +1 -0
- package/dist/server-install/platforms/macosx-ngrok.d.ts +6 -0
- package/dist/server-install/platforms/macosx-ngrok.js +345 -0
- package/dist/server-install/platforms/macosx-ngrok.js.map +1 -0
- package/dist/server-install/platforms/ubuntu-vps.d.ts +78 -0
- package/dist/server-install/platforms/ubuntu-vps.js +1016 -0
- package/dist/server-install/platforms/ubuntu-vps.js.map +1 -0
- package/dist/server-install/state.d.ts +52 -0
- package/dist/server-install/state.js +182 -0
- package/dist/server-install/state.js.map +1 -0
- package/dist/server-install/steps.d.ts +109 -0
- package/dist/server-install/steps.js +334 -0
- package/dist/server-install/steps.js.map +1 -0
- package/dist/server-install/strategies.d.ts +4 -0
- package/dist/server-install/strategies.js +20 -0
- package/dist/server-install/strategies.js.map +1 -0
- package/dist/server-install/types.d.ts +287 -0
- package/dist/server-install/types.js +121 -0
- package/dist/server-install/types.js.map +1 -0
- package/dist/server-install/ui.d.ts +42 -0
- package/dist/server-install/ui.js +130 -0
- package/dist/server-install/ui.js.map +1 -0
- package/dist/skills-banner.d.ts +22 -0
- package/dist/skills-banner.js +41 -0
- package/dist/skills-banner.js.map +1 -0
- package/dist/skills-remote.d.ts +84 -0
- package/dist/skills-remote.js +468 -0
- package/dist/skills-remote.js.map +1 -0
- package/dist/skills-update.d.ts +88 -0
- package/dist/skills-update.js +392 -0
- package/dist/skills-update.js.map +1 -0
- package/dist/skills.d.ts +82 -0
- package/dist/skills.js +251 -0
- package/dist/skills.js.map +1 -0
- package/dist/todos.d.ts +48 -0
- package/dist/todos.js +201 -0
- package/dist/todos.js.map +1 -0
- package/dist/ui-state.d.ts +26 -0
- package/dist/ui-state.js +38 -0
- package/dist/ui-state.js.map +1 -0
- package/dist/update-check.d.ts +12 -0
- package/dist/update-check.js +41 -0
- package/dist/update-check.js.map +1 -0
- package/dist/workflows/load.d.ts +15 -0
- package/dist/workflows/load.js +56 -0
- package/dist/workflows/load.js.map +1 -0
- package/dist/workflows/run.d.ts +758 -0
- package/dist/workflows/run.js +3389 -0
- package/dist/workflows/run.js.map +1 -0
- package/dist/workflows/types.d.ts +153 -0
- package/dist/workflows/types.js +212 -0
- package/dist/workflows/types.js.map +1 -0
- package/dist/workspace/agent-accounts.d.ts +153 -0
- package/dist/workspace/agent-accounts.js +304 -0
- package/dist/workspace/agent-accounts.js.map +1 -0
- package/dist/workspace/agent-profiles.d.ts +78 -0
- package/dist/workspace/agent-profiles.js +115 -0
- package/dist/workspace/agent-profiles.js.map +1 -0
- package/dist/workspace/config.d.ts +169 -0
- package/dist/workspace/config.js +379 -0
- package/dist/workspace/config.js.map +1 -0
- package/dist/workspace/migrations.d.ts +45 -0
- package/dist/workspace/migrations.js +147 -0
- package/dist/workspace/migrations.js.map +1 -0
- package/dist/workspace/projects-cli.d.ts +25 -0
- package/dist/workspace/projects-cli.js +172 -0
- package/dist/workspace/projects-cli.js.map +1 -0
- package/dist/workspace/projects.d.ts +109 -0
- package/dist/workspace/projects.js +250 -0
- package/dist/workspace/projects.js.map +1 -0
- package/dist/workspace/semaphore.d.ts +179 -0
- package/dist/workspace/semaphore.js +195 -0
- package/dist/workspace/semaphore.js.map +1 -0
- package/dist/workspace/ui-state.d.ts +34 -0
- package/dist/workspace/ui-state.js +53 -0
- package/dist/workspace/ui-state.js.map +1 -0
- package/package.json +70 -0
- package/scripts/check-pack.mjs +46 -0
- package/scripts/inline-contract.mjs +112 -0
- package/scripts/install-as-command.mjs +120 -0
- package/scripts/mock-claude.mjs +520 -0
- package/scripts/mock-pi-rpc.mjs +83 -0
- package/scripts/sync-readme.mjs +20 -0
- package/scripts/test-process-usage.mjs +47 -0
- package/web/dist/assets/alert-dialog-B4Ofsgv7.js +1 -0
- package/web/dist/assets/arrow-down-Dy8dup7j.js +1 -0
- package/web/dist/assets/arrow-left-BJaucbhn.js +1 -0
- package/web/dist/assets/bundle-mjs-BT31bpU6.js +1 -0
- package/web/dist/assets/centered-state-duPW0phQ.js +43 -0
- package/web/dist/assets/chevron-right-Be4A5TCS.js +1 -0
- package/web/dist/assets/chunk-BO2N2NFS-DE6qKn3r.js +131 -0
- package/web/dist/assets/collapsible-DdcNBdSk.js +1 -0
- package/web/dist/assets/commit-list-CgvN9vec.js +1 -0
- package/web/dist/assets/compare-variants-CQA2nd65.js +1 -0
- package/web/dist/assets/core-BCsw8oQw.js +12 -0
- package/web/dist/assets/css-BsVw1vtW.js +1 -0
- package/web/dist/assets/diff-B6Agp5Hl.js +3 -0
- package/web/dist/assets/diff-stat-BoXuGkgq.js +1 -0
- package/web/dist/assets/diff-view-CD8XI-fj.js +6 -0
- package/web/dist/assets/diff-woXpYk--.js +1 -0
- package/web/dist/assets/dropdown-menu-B3SYw-k5.js +1 -0
- package/web/dist/assets/editable-title-B-hjp5wl.js +1 -0
- package/web/dist/assets/ellipsis-vertical-BYwzw0xl.js +1 -0
- package/web/dist/assets/engine-javascript-FQvzRocB.js +141 -0
- package/web/dist/assets/file-BRj5eISx.js +1 -0
- package/web/dist/assets/folder-z4oT5981.js +1 -0
- package/web/dist/assets/git-toolbar-owSEkYld.js +1 -0
- package/web/dist/assets/github-Bz2VgRX3.js +1 -0
- package/web/dist/assets/go-rLFTqkRN.js +1 -0
- package/web/dist/assets/highlighted-body-OFNGDK62-BL-MfFgl.js +1 -0
- package/web/dist/assets/highlighter-CdHqIwFr.js +3 -0
- package/web/dist/assets/html-BY76lXLH.js +1 -0
- package/web/dist/assets/image-preview-h3WFluuy.js +1 -0
- package/web/dist/assets/index-BbcQNT92.css +2 -0
- package/web/dist/assets/index-EtQQQ6Kj.js +7 -0
- package/web/dist/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 +0 -0
- package/web/dist/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 +0 -0
- package/web/dist/assets/javascript-BgS3c2Ky.js +1 -0
- package/web/dist/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2 +0 -0
- package/web/dist/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2 +0 -0
- package/web/dist/assets/json-qhed-kSA.js +1 -0
- package/web/dist/assets/jsonc-CYpm1nAK.js +1 -0
- package/web/dist/assets/jsx-Bz0zcwM4.js +1 -0
- package/web/dist/assets/lib-BQXq3kEf.js +1 -0
- package/web/dist/assets/lib-BxQXEXDF.js +1 -0
- package/web/dist/assets/markdown-BYOwaDjH.js +1 -0
- package/web/dist/assets/markdown-DqBKYPiB.js +2 -0
- package/web/dist/assets/mermaid-GHXKKRXX-C4jxqUUb.js +1 -0
- package/web/dist/assets/new-task-form-BdJKRBJX.js +1 -0
- package/web/dist/assets/pill-BQfmfpYp.js +1 -0
- package/web/dist/assets/project-router-DxgFZY1l.js +1 -0
- package/web/dist/assets/prompt-templates-B6m16gq-.js +15 -0
- package/web/dist/assets/python-gzcpVVnB.js +1 -0
- package/web/dist/assets/react-runtime-CCIEwYL0.js +9 -0
- package/web/dist/assets/refresh-cw-mhSpxf2a.js +1 -0
- package/web/dist/assets/repo-git-CUNRxR3_.js +1 -0
- package/web/dist/assets/rolldown-runtime-QTnfLwEv.js +1 -0
- package/web/dist/assets/run-diff-DsmmDVfx.js +3 -0
- package/web/dist/assets/run-header-BkhrseLJ.js +1 -0
- package/web/dist/assets/rust-Cfkwpbl8.js +1 -0
- package/web/dist/assets/search-x-BqDMB2g8.js +1 -0
- package/web/dist/assets/shellscript-CLZ0U2zV.js +1 -0
- package/web/dist/assets/skill-empty-hint-BWEvTggc.js +1 -0
- package/web/dist/assets/skills-9oR_oHse.js +1 -0
- package/web/dist/assets/skills-DwIxnnWO.js +1 -0
- package/web/dist/assets/sparkles-DIoTQpyx.js +1 -0
- package/web/dist/assets/sql-BsFa4tDR.js +1 -0
- package/web/dist/assets/square-terminal-Cc7CuQxc.js +1 -0
- package/web/dist/assets/tab-link-D1fQgpmO.js +1 -0
- package/web/dist/assets/task-changes-BKeLlDpK.js +1 -0
- package/web/dist/assets/task-commits-gcEFZIa5.js +1 -0
- package/web/dist/assets/task-files-BGAqoXTW.js +2 -0
- package/web/dist/assets/task-thread-DT8aUYTS.js +9 -0
- package/web/dist/assets/textarea-BOVbfy5C.js +1 -0
- package/web/dist/assets/thread-loading-CypW73KD.js +1 -0
- package/web/dist/assets/toml-CcmNWLt0.js +1 -0
- package/web/dist/assets/trash-2-CJq6LHWn.js +1 -0
- package/web/dist/assets/triangle-alert-CjDFvU27.js +1 -0
- package/web/dist/assets/tsx-udAQXfEw.js +1 -0
- package/web/dist/assets/typescript-bsJCZSQ-.js +1 -0
- package/web/dist/assets/upload-CPDZlJeK.js +1 -0
- package/web/dist/assets/use-desktop-5JsLmi0a.js +1 -0
- package/web/dist/assets/use-submit-shortcut-CHVFevty.js +1 -0
- package/web/dist/assets/utils-DiO6zyJd.js +64 -0
- package/web/dist/assets/workflows-rQDFzWRt.js +11 -0
- package/web/dist/assets/yaml-rwi0_p6S.js +1 -0
- package/web/dist/assets/zoomable-image-COWqb11v.js +1 -0
- package/web/dist/index.html +80 -0
- package/web/dist/open-mercato.svg +11 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ubuntu-vps.js","sourceRoot":"","sources":["../../../src/server-install/platforms/ubuntu-vps.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { type ServerState, type StepOutcome } from './types.ts';
|
|
2
|
+
/**
|
|
3
|
+
* `~/.cezar/server.json` I/O and the single-writer lock. Reads degrade to a
|
|
4
|
+
* fresh record on any corruption (house pattern — never crash the wizard);
|
|
5
|
+
* writes are atomic (tmp + rename) and `0600`, since the file is the input to
|
|
6
|
+
* uninstall's "reverse exactly what was created" logic.
|
|
7
|
+
*/
|
|
8
|
+
/** Load a host-level instance record, degrading to a fresh record on any error. */
|
|
9
|
+
export declare function loadServerState(instance?: string): ServerState;
|
|
10
|
+
/**
|
|
11
|
+
* Every instance recorded on this host, newest schema first: the `default`
|
|
12
|
+
* record (`server.json`) plus each named record under `server-instances/`.
|
|
13
|
+
* Used to auto-pick a free loopback port for a new instance and to let
|
|
14
|
+
* uninstall/deploy resolve which instance to act on. Never throws — an
|
|
15
|
+
* unreadable dir or a corrupt file is simply skipped.
|
|
16
|
+
*/
|
|
17
|
+
export declare function listServerInstances(): Array<{
|
|
18
|
+
instance: string;
|
|
19
|
+
state: ServerState;
|
|
20
|
+
}>;
|
|
21
|
+
/**
|
|
22
|
+
* The next free loopback port for a NEW instance, scanning from `startAt`
|
|
23
|
+
* (4321, the default cockpit port) upward past every port already recorded by
|
|
24
|
+
* another instance. Deterministic (recorded-state only, no network probe) so it
|
|
25
|
+
* stays unit-testable; the operator can always override it with `--port`.
|
|
26
|
+
*/
|
|
27
|
+
export declare function nextFreeInstancePort(startAt?: number): number;
|
|
28
|
+
/** Atomically persist state as `0600`, creating its dir (`0700`) if needed. */
|
|
29
|
+
export declare function saveServerState(state: ServerState, instance?: string): void;
|
|
30
|
+
/**
|
|
31
|
+
* Delete a named instance's state file (used after a complete uninstall so it
|
|
32
|
+
* stops reserving its port and drops out of `listServerInstances`). The
|
|
33
|
+
* `default` record is left in place — that is the legacy single-host file, and
|
|
34
|
+
* its absence vs. an empty-but-present record has historically meant the same
|
|
35
|
+
* thing, so we don't change that behavior. Best-effort; never throws.
|
|
36
|
+
*/
|
|
37
|
+
export declare function deleteServerState(instance: string): void;
|
|
38
|
+
/** A step is resolved (needs no run on resume) when it is done or skipped. */
|
|
39
|
+
export declare function isResolved(outcome: StepOutcome | undefined): boolean;
|
|
40
|
+
/**
|
|
41
|
+
* First step id in `orderedIds` that is not yet resolved — the resume point.
|
|
42
|
+
* `undefined` means every step is resolved (install complete).
|
|
43
|
+
*/
|
|
44
|
+
export declare function firstIncompleteStep(orderedIds: readonly string[], state: ServerState): string | undefined;
|
|
45
|
+
export declare class LockHeldError extends Error {
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Acquire the exclusive install lock. Throws `LockHeldError` if a *live*
|
|
49
|
+
* process already holds it; a stale lock (dead pid) is reclaimed. Returns a
|
|
50
|
+
* release function.
|
|
51
|
+
*/
|
|
52
|
+
export declare function acquireLock(instance?: string): () => void;
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import { chmodSync, existsSync, mkdirSync, readdirSync, readFileSync, renameSync, rmSync, writeFileSync, } from 'node:fs';
|
|
2
|
+
import { basename, dirname } from 'node:path';
|
|
3
|
+
import { DEFAULT_SERVER_INSTANCE, serverInstancesDir, serverLockPath, serverStatePath, } from '../paths.js';
|
|
4
|
+
import { freshServerState, serverStateSchema } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* `~/.cezar/server.json` I/O and the single-writer lock. Reads degrade to a
|
|
7
|
+
* fresh record on any corruption (house pattern — never crash the wizard);
|
|
8
|
+
* writes are atomic (tmp + rename) and `0600`, since the file is the input to
|
|
9
|
+
* uninstall's "reverse exactly what was created" logic.
|
|
10
|
+
*/
|
|
11
|
+
/** Load a host-level instance record, degrading to a fresh record on any error. */
|
|
12
|
+
export function loadServerState(instance = DEFAULT_SERVER_INSTANCE) {
|
|
13
|
+
const path = serverStatePath(instance);
|
|
14
|
+
let raw;
|
|
15
|
+
try {
|
|
16
|
+
raw = readFileSync(path, 'utf8');
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return freshServerState();
|
|
20
|
+
}
|
|
21
|
+
try {
|
|
22
|
+
const parsed = serverStateSchema.safeParse(JSON.parse(raw));
|
|
23
|
+
if (parsed.success)
|
|
24
|
+
return parsed.data;
|
|
25
|
+
}
|
|
26
|
+
catch {
|
|
27
|
+
// malformed JSON — fall through to fresh
|
|
28
|
+
}
|
|
29
|
+
return freshServerState();
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Every instance recorded on this host, newest schema first: the `default`
|
|
33
|
+
* record (`server.json`) plus each named record under `server-instances/`.
|
|
34
|
+
* Used to auto-pick a free loopback port for a new instance and to let
|
|
35
|
+
* uninstall/deploy resolve which instance to act on. Never throws — an
|
|
36
|
+
* unreadable dir or a corrupt file is simply skipped.
|
|
37
|
+
*/
|
|
38
|
+
export function listServerInstances() {
|
|
39
|
+
const out = [];
|
|
40
|
+
if (existsSync(serverStatePath(DEFAULT_SERVER_INSTANCE))) {
|
|
41
|
+
out.push({ instance: DEFAULT_SERVER_INSTANCE, state: loadServerState(DEFAULT_SERVER_INSTANCE) });
|
|
42
|
+
}
|
|
43
|
+
let entries = [];
|
|
44
|
+
try {
|
|
45
|
+
entries = readdirSync(serverInstancesDir());
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
entries = [];
|
|
49
|
+
}
|
|
50
|
+
for (const file of entries) {
|
|
51
|
+
if (!file.endsWith('.json'))
|
|
52
|
+
continue;
|
|
53
|
+
const instance = basename(file, '.json');
|
|
54
|
+
out.push({ instance, state: loadServerState(instance) });
|
|
55
|
+
}
|
|
56
|
+
return out;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* The next free loopback port for a NEW instance, scanning from `startAt`
|
|
60
|
+
* (4321, the default cockpit port) upward past every port already recorded by
|
|
61
|
+
* another instance. Deterministic (recorded-state only, no network probe) so it
|
|
62
|
+
* stays unit-testable; the operator can always override it with `--port`.
|
|
63
|
+
*/
|
|
64
|
+
export function nextFreeInstancePort(startAt = 4321) {
|
|
65
|
+
const used = new Set(listServerInstances().map((i) => i.state.primaryPort));
|
|
66
|
+
let port = startAt;
|
|
67
|
+
while (used.has(port))
|
|
68
|
+
port++;
|
|
69
|
+
return port;
|
|
70
|
+
}
|
|
71
|
+
/** Atomically persist state as `0600`, creating its dir (`0700`) if needed. */
|
|
72
|
+
export function saveServerState(state, instance = DEFAULT_SERVER_INSTANCE) {
|
|
73
|
+
const path = serverStatePath(instance);
|
|
74
|
+
const dir = dirname(path);
|
|
75
|
+
mkdirSync(dir, { recursive: true, mode: 0o700 });
|
|
76
|
+
const tmp = `${path}.tmp`;
|
|
77
|
+
writeFileSync(tmp, `${JSON.stringify(state, null, 2)}\n`, { encoding: 'utf8', mode: 0o600 });
|
|
78
|
+
renameSync(tmp, path);
|
|
79
|
+
try {
|
|
80
|
+
chmodSync(path, 0o600); // best-effort — ignored on some filesystems
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
// non-fatal
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Delete a named instance's state file (used after a complete uninstall so it
|
|
88
|
+
* stops reserving its port and drops out of `listServerInstances`). The
|
|
89
|
+
* `default` record is left in place — that is the legacy single-host file, and
|
|
90
|
+
* its absence vs. an empty-but-present record has historically meant the same
|
|
91
|
+
* thing, so we don't change that behavior. Best-effort; never throws.
|
|
92
|
+
*/
|
|
93
|
+
export function deleteServerState(instance) {
|
|
94
|
+
if (instance === DEFAULT_SERVER_INSTANCE)
|
|
95
|
+
return;
|
|
96
|
+
try {
|
|
97
|
+
rmSync(serverStatePath(instance), { force: true });
|
|
98
|
+
}
|
|
99
|
+
catch {
|
|
100
|
+
// non-fatal — an empty record left behind is harmless
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
/** A step is resolved (needs no run on resume) when it is done or skipped. */
|
|
104
|
+
export function isResolved(outcome) {
|
|
105
|
+
return outcome?.status === 'done' || outcome?.status === 'skipped';
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* First step id in `orderedIds` that is not yet resolved — the resume point.
|
|
109
|
+
* `undefined` means every step is resolved (install complete).
|
|
110
|
+
*/
|
|
111
|
+
export function firstIncompleteStep(orderedIds, state) {
|
|
112
|
+
return orderedIds.find((id) => !isResolved(state.steps[id]));
|
|
113
|
+
}
|
|
114
|
+
export class LockHeldError extends Error {
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Acquire the exclusive install lock. Throws `LockHeldError` if a *live*
|
|
118
|
+
* process already holds it; a stale lock (dead pid) is reclaimed. Returns a
|
|
119
|
+
* release function.
|
|
120
|
+
*/
|
|
121
|
+
export function acquireLock(instance = DEFAULT_SERVER_INSTANCE) {
|
|
122
|
+
const path = serverLockPath(instance);
|
|
123
|
+
mkdirSync(dirname(path), { recursive: true, mode: 0o700 });
|
|
124
|
+
// `wx` makes creation atomic — a plain exists-then-write check would let two
|
|
125
|
+
// concurrent wizards both "acquire". One reclaim retry handles a stale lock;
|
|
126
|
+
// if the second attempt still collides, someone live beat us to it.
|
|
127
|
+
for (let attempt = 0; attempt < 2; attempt++) {
|
|
128
|
+
try {
|
|
129
|
+
writeFileSync(path, `${process.pid}\n`, { encoding: 'utf8', mode: 0o600, flag: 'wx' });
|
|
130
|
+
let released = false;
|
|
131
|
+
return () => {
|
|
132
|
+
if (released)
|
|
133
|
+
return;
|
|
134
|
+
released = true;
|
|
135
|
+
try {
|
|
136
|
+
if (existsSync(path) && readLockPid(path) === process.pid)
|
|
137
|
+
rmSync(path);
|
|
138
|
+
}
|
|
139
|
+
catch {
|
|
140
|
+
// non-fatal
|
|
141
|
+
}
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
catch (err) {
|
|
145
|
+
if (err.code !== 'EEXIST')
|
|
146
|
+
throw err;
|
|
147
|
+
const holder = readLockPid(path);
|
|
148
|
+
if (holder !== null && holder !== process.pid && isProcessAlive(holder)) {
|
|
149
|
+
throw new LockHeldError(`another server-install/uninstall is already running (pid ${holder}). ` +
|
|
150
|
+
`If that is wrong, remove ${path} and retry.`);
|
|
151
|
+
}
|
|
152
|
+
// stale (dead pid, unreadable, or our own) — reclaim and retry the wx write
|
|
153
|
+
try {
|
|
154
|
+
rmSync(path);
|
|
155
|
+
}
|
|
156
|
+
catch {
|
|
157
|
+
// raced with another reclaimer; the retry below decides
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
throw new LockHeldError(`could not acquire ${path} — another server-install/uninstall grabbed it first; retry in a moment.`);
|
|
162
|
+
}
|
|
163
|
+
function readLockPid(path) {
|
|
164
|
+
try {
|
|
165
|
+
const pid = Number.parseInt(readFileSync(path, 'utf8').trim(), 10);
|
|
166
|
+
return Number.isInteger(pid) && pid > 0 ? pid : null;
|
|
167
|
+
}
|
|
168
|
+
catch {
|
|
169
|
+
return null;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
function isProcessAlive(pid) {
|
|
173
|
+
try {
|
|
174
|
+
process.kill(pid, 0);
|
|
175
|
+
return true;
|
|
176
|
+
}
|
|
177
|
+
catch (err) {
|
|
178
|
+
// ESRCH = no such process; EPERM = alive but not ours (still alive)
|
|
179
|
+
return err.code === 'EPERM';
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/server-install/state.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { type BackendCheck } from '../core/backend-detect.ts';
|
|
2
|
+
import { type InstallContext, type InstallStep, type Runner, type StepArtifact } from './types.ts';
|
|
3
|
+
/**
|
|
4
|
+
* Platform-agnostic step helpers. The star is `sudoStep`: the wizard runs as a
|
|
5
|
+
* normal account and never escalates silently. It prints the exact command,
|
|
6
|
+
* lets the operator run it via `sudo` or run it themselves, then proves the box
|
|
7
|
+
* is actually in the expected state with `verify()` before advancing — and
|
|
8
|
+
* offers a redo when verification fails.
|
|
9
|
+
*/
|
|
10
|
+
/** Real command runner (Node child_process). */
|
|
11
|
+
export declare const defaultRunner: Runner;
|
|
12
|
+
/** Run a probe and assert its result. Returns false in dry-run (nothing is verifiably present). */
|
|
13
|
+
export declare function verifyCommand(ctx: InstallContext, program: string, args: string[], matcher?: (r: {
|
|
14
|
+
code: number;
|
|
15
|
+
stdout: string;
|
|
16
|
+
stderr: string;
|
|
17
|
+
}) => boolean): Promise<boolean>;
|
|
18
|
+
/**
|
|
19
|
+
* True when `sudo -n true` succeeds — the box grants passwordless sudo, OR a
|
|
20
|
+
* sudo timestamp from an earlier command in this session is still cached.
|
|
21
|
+
* Both mean "sudo will run right now without prompting", which is exactly the
|
|
22
|
+
* question `--yes` mode needs answered before choosing sudo over delegate.
|
|
23
|
+
*/
|
|
24
|
+
export declare function hasPasswordlessSudo(ctx: InstallContext): Promise<boolean>;
|
|
25
|
+
/** A bare DNS hostname — no scheme, no path, no shell/nginx metacharacters. */
|
|
26
|
+
export declare const HOSTNAME_RE: RegExp;
|
|
27
|
+
export declare class StepCancelled extends Error {
|
|
28
|
+
}
|
|
29
|
+
export declare class StepAborted extends Error {
|
|
30
|
+
}
|
|
31
|
+
/** Thrown from an optional step's `run()` to record it as `skipped` (e.g. certbot DNS not ready). */
|
|
32
|
+
export declare class StepSkipped extends Error {
|
|
33
|
+
}
|
|
34
|
+
export interface SudoStepOpts {
|
|
35
|
+
/** One-line description of what/why (shown above the command). */
|
|
36
|
+
description: string;
|
|
37
|
+
/** The privileged shell command (without a leading `sudo`). May use pipes/redirects. */
|
|
38
|
+
command: string;
|
|
39
|
+
/**
|
|
40
|
+
* Optional human-readable context (e.g. the file contents being written) shown
|
|
41
|
+
* in its own box before the raw command — keeps big base64 file-writes legible.
|
|
42
|
+
*/
|
|
43
|
+
note?: string;
|
|
44
|
+
/**
|
|
45
|
+
* Optional step: when verification keeps failing the operator can *skip* it
|
|
46
|
+
* (thrown as `StepSkipped`) instead of aborting the whole install. Used by SSL
|
|
47
|
+
* (certbot can legitimately fail on external DNS / rate limits).
|
|
48
|
+
*/
|
|
49
|
+
skippable?: boolean;
|
|
50
|
+
/** Shown next to the "Skip" choice — how to finish this step by hand later. */
|
|
51
|
+
skipHint?: string;
|
|
52
|
+
/**
|
|
53
|
+
* Secret payload fed to the command's stdin (`cat > file` style) so it never
|
|
54
|
+
* appears in the process argv (`ps`-readable) or in root's shell history.
|
|
55
|
+
* Sudo mode pipes it; delegate mode shows it once, on screen only, for the
|
|
56
|
+
* operator to paste after the command.
|
|
57
|
+
*/
|
|
58
|
+
input?: string;
|
|
59
|
+
/** Human name for the stdin payload, e.g. "credential line". */
|
|
60
|
+
inputLabel?: string;
|
|
61
|
+
/** Prove the command actually took effect. Runs after every attempt. */
|
|
62
|
+
verify: (ctx: InstallContext) => Promise<boolean>;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* A strong random cockpit password: guaranteed to mix lower/upper letters, a
|
|
66
|
+
* digit and a symbol, drawn from a crypto RNG, with visually-ambiguous glyphs
|
|
67
|
+
* (0/O/1/l/I) removed. Offered by the identity step so operators don't fall back
|
|
68
|
+
* to a weak hand-picked password.
|
|
69
|
+
*/
|
|
70
|
+
export declare function generatePassword(length?: number): string;
|
|
71
|
+
/**
|
|
72
|
+
* Execute one privileged command with the operator in the loop:
|
|
73
|
+
* print → run-via-sudo OR delegate → verify → redo-on-mismatch.
|
|
74
|
+
*
|
|
75
|
+
* - Dry-run: prints the intended command and returns (no exec, no verify).
|
|
76
|
+
* - `--yes` with passwordless sudo: runs non-interactively.
|
|
77
|
+
* - `--yes` without passwordless sudo: falls back to delegate (never blocks on a hidden prompt).
|
|
78
|
+
*
|
|
79
|
+
* Throws `StepCancelled` if the user cancels, `StepAborted` if they give up after a failed verify.
|
|
80
|
+
*/
|
|
81
|
+
/** Single-quote a shell string so a copy-paste of `display` runs exactly what we run. */
|
|
82
|
+
export declare function shquote(s: string): string;
|
|
83
|
+
export declare function sudoStep(ctx: InstallContext, opts: SudoStepOpts): Promise<void>;
|
|
84
|
+
/** Convenience: an `owned` file/service/etc. artifact. */
|
|
85
|
+
export declare function owned(type: string, fields: Omit<StepArtifact, 'kind' | 'type'>): StepArtifact;
|
|
86
|
+
/** Convenience: a `shared` artifact (listed, not removed, on uninstall). */
|
|
87
|
+
export declare function shared(type: string, fields: Omit<StepArtifact, 'kind' | 'type'>): StepArtifact;
|
|
88
|
+
/**
|
|
89
|
+
* The dependency step, built from `detectEnvironment()` (reused verbatim). It
|
|
90
|
+
* shows the missing tools as a checkbox, installs the selected ones, and prints
|
|
91
|
+
* the per-tool authorization instruction (agent CLIs need an interactive login
|
|
92
|
+
* a wizard cannot fully automate). `detect` is injectable for tests.
|
|
93
|
+
*/
|
|
94
|
+
/** How a given platform installs one missing tool. Platform-agnostic seam. */
|
|
95
|
+
export type ToolInstaller = (ctx: InstallContext, name: string) => Promise<void>;
|
|
96
|
+
export interface DepStepOpts {
|
|
97
|
+
detect?: () => Promise<BackendCheck[]>;
|
|
98
|
+
/** Per-platform installer; defaults to the apt/npm (Ubuntu) one. */
|
|
99
|
+
installTool?: ToolInstaller;
|
|
100
|
+
/** Per-tool manual-removal hint shown by uninstall. */
|
|
101
|
+
removeHint?: (name: string) => string;
|
|
102
|
+
}
|
|
103
|
+
export declare function depCheckStep(opts?: DepStepOpts): InstallStep;
|
|
104
|
+
/** Ubuntu/Debian installer: apt for gh, sudo npm -g for the agent CLIs (system node). */
|
|
105
|
+
export declare const aptInstallTool: ToolInstaller;
|
|
106
|
+
/** macOS installer: brew (no sudo) for gh, npm -g for the agent CLIs. */
|
|
107
|
+
export declare const brewInstallTool: ToolInstaller;
|
|
108
|
+
/** macOS-flavored removal hints (brew instead of apt). */
|
|
109
|
+
export declare function brewRemoveHint(name: string): string;
|