@sealant/ai-harness-integrations
@sealant/ai-harness-integrations
Purpose
@sealant/ai-harness-integrations is the shared harness catalog for sandbox startup.
It defines known harness ids and the install/launch commands that OS integration packages need when building sandbox images.
Why this package exists
- Keep harness support centralized and typed.
- Avoid duplicating install/launch command logic across executors.
- Provide a single contract for validating harness ids in composition and build flows.
Public surface
HarnessIdunion:"opencode" | "codex" | "claude-code"HarnessIntegrationcontract:idinstallPackagesinstallCommandlaunchCommand
isHarnessId(value)listHarnessIntegrations()getHarnessIntegration(harnessId)
Exports are defined in packages/ai-harness-integrations/src/index.ts.
Module map
src/index.ts- harness id union
- static integration registry
- lookup/validation helpers
Current integrations
opencode- install packages:
nodejs - install command:
npm install -g opencode-ai@latest - launch command:
opencode
- install packages:
codex- install packages:
nodejs - install command:
npm install -g @openai/codex@latest - launch command:
codex
- install packages:
claude-code- install packages:
nodejs - install command:
npm install -g @anthropic-ai/claude-code@latest - launch command:
claude
- install packages:
Behavior
isHarnessId(value)is the type guard used to validate harness ids.listHarnessIntegrations()returns the full built-in registry.getHarnessIntegration(harnessId)returnsundefinedfor unknown ids instead of throwing.
Built-in harness entries
opencode: installopencode-ai, launchopencodecodex: install@openai/codex, launchcodexclaude-code: install@anthropic-ai/claude-code, launchclaude
Internal dependencies
- External runtime dependencies: none
- Internal package dependencies: none
Typical call flow
- Workspace blueprint selects a harness id.
- OS executor resolves harness via
getHarnessIntegration(...). - Executor adds harness install packages and install command to image build plan.
- Runtime entrypoint uses harness launch command for interactive startup.
Cross-package dependency
@sealant/workspace-compositionuses this package to validate harness support.@sealant/os-integration-buildkituses this package when generating build plans.
Scripts
pnpm --filter @sealant/ai-harness-integrations lintpnpm --filter @sealant/ai-harness-integrations testpnpm --filter @sealant/ai-harness-integrations typecheck