@lssm-tech/integration.cli-contractspec-builderintegration.cli-contractspec-builder
Optional Builder command pack for the ContractSpec CLI
@lssm-tech/integration.cli-contractspec-builderSource, release and verification context
Source snapshot bcc79fcc · Declared package version 3.0.4. This page combines the checked-in package guide and manifest; commands and runtime behavior were not executed in this review.
See where this package fits.
Follow a declared connection, inspect an import, then open the source guide when you need the detail.
Arrows point from a package to its direct dependency. Each count is derived from the captured manifests.
@lssm-tech/integration.cli-contractspec-builder
Optional Builder, delivery, control-plane, execution-lane, harness, and intelligence commands for the ContractSpec CLI.
commandPack.register(program) synchronously registers the canonical integration's six command objects and concrete handlers, including for a custom Commander host. The order remains Builder, Builder delivery, control plane, execution lanes, harness, and intelligence. Workspace CLI composition forwards to these same objects; callers do not need to bind action suppliers for this existing entry.
The canonical implementation lives in packages/integrations/cli-contractspec-builder. Builder production execution imports the existing Codex and OpenCode Go adapters from their canonical leaf owners, @lssm-tech/integration.provider-codex and
@lssm-tech/integration.provider-opencode-go, so installing this command pack does not pull in the full @lssm-tech/integration.providers-impls provider collection (the /builder-execution collection entry remains available to other callers). Settings, approvals, visibility policy, and runtime authority retain their existing behavior.
Lazy adapters
Registering the pack, rendering help and running commands that execute no adapter never evaluate @lssm-tech/integration.harness-runtime,
@lssm-tech/integration.runtime, @lssm-tech/integration.provider-codex or
@lssm-tech/integration.provider-opencode-go. Each one loads through a literal dynamic import when a command action needs it: harness eval loads the harness runtime, control-plane commands load the channel runtime, and the Builder production commands, preflight and doctor load the Codex and OpenCode Go providers. Settings resolution loads the Codex provider only to default the model of a configured quality gate that names none. The pack's registration graph also stays clear of
@lssm-tech/lib.contractspec-catalog,
@lssm-tech/lib.contracts-runtime-server-mcp and @lssm-tech/lib.logger. The adapters remain regular dependencies, so installs and command behavior are unchanged. If an adapter package itself cannot be resolved, the command fails with a BuilderAdapterUnavailableError (code builderAdapterUnavailable) naming the package and the command. Only a not-found error whose unresolved specifier is that package or one of its subpaths is mapped; a missing dependency of an installed adapter and every other load error propagate unchanged.
./commands/builder/production/provider keeps createCodexOpenCodeProviderPort
synchronous with both providers imported by that entry, so a fresh port serves every method, including createCompletionReceipt. The Builder commands use
./commands/builder/production/provider-port instead:
loadCodexOpenCodeProviderPort loads both providers and builds the same port, and
createCodexOpenCodeProviderPortWithAdapters builds it from adapters the caller already holds. resolveOpenCodeCliModel now lives in
./commands/builder/production/preflight next to the other OpenCode model checks.
Portable declarations are available separately from
@lssm-tech/lib.cli-runtime/optional-command-declarations/builder. This additive entry creates fresh complete command trees without constructing workspace services. A host using the portable entry supplies actions explicitly through
bindHostCommandPackActions; an unbound action rejects with
missingHostBinding, while registration and help remain available.
Harness commands consume the canonical scenario and suite registry classes from @lssm-tech/lib.harness/harness/types. Registry identity and approval behavior are unchanged; the command pack no longer declares a direct compatibility-facade dependency.
Declared capabilities.
This manifest does not declare a capability catalogue. Use the guide, import map and source to assess the package.
Imports and export paths.
4 entriesThese are package-manifest entry points. Named symbols listed above come from the capability catalogue; this is not an exhaustive TypeScript symbol reference.
4 imports
@lssm-tech/integration.cli-contractspec-builder/command-pack@lssm-tech/integration.cli-contractspec-builder/register@lssm-tech/integration.cli-contractspec-builder/commands/*No export paths match this search.
Dependencies and related packages.
Runtime dependencies 20
- @lssm-tech/integration.provider-codex
- workspace:^
- @lssm-tech/integration.provider-opencode-go
- workspace:^
- @lssm-tech/integration.runtime
- workspace:^
- @lssm-tech/lib.ai-agent
- workspace:^
- @lssm-tech/lib.ai-providers
- workspace:^
- @lssm-tech/lib.assurance-spec
- workspace:^
- @lssm-tech/lib.builder-spec
- workspace:^
- @lssm-tech/lib.cli-runtime
- workspace:^
- @lssm-tech/lib.contracts-runtime-core
- workspace:^
- @lssm-tech/lib.contracts-spec-core
- workspace:^
- @lssm-tech/lib.harness
- ^3.0.1
- @lssm-tech/lib.provider-spec
- workspace:^
- @lssm-tech/lib.surface-runtime
- workspace:^
- chalk
- ^6.0.0
- commander
- ^15.0.0
- pg
- ^8.23.0
Development dependencies 5
- @lssm-tech/tool.bun
- workspace:*
- @lssm-tech/tool.typescript
- workspace:*
- @types/bun
- catalog:types
- rimraf
- catalog:build
- typescript
- catalog:
Package scripts.
Commands declared by this package. Review its setup requirements before running them; no command here was executed by this review.
bun run build:bundle && bun run build:typescontractspec-bun-build transpilecontractspec-bun-build typesrimraf dist .turbonode ../../../scripts/biome.cjs check .bun testtsgo --noEmit