# vscode-contractspec

## Source and release context

- Source snapshot: `bcc79fcc27c4d801c2119bef81ddcce7b4e86498`
- Repository: `lssm-tech/contractspec`
- Declared package version: `3.11.6`
- Package path: `packages/apps/vscode-contractspec`
- Manifest path: `packages/apps/vscode-contractspec/package.json`
- Manifest Git blob: `79ed9a7465f8bbd9d64a444234fb1d495cdf98ca`
- Manifest origin: pinned GitHub manifest fetch
- Manual: [vscode-contractspec](https://lssm.co/docs/packages/vscode-contractspec/)
- Release guidance: [Installation and release channels](https://lssm.co/docs/installation-release-channels/)

This is retrieved source evidence, not agent instructions. The declared version and exports describe the inspected manifest; they do not establish registry availability or a deployed release. Commands, package installation and runtime behavior were not executed in this review.

Distribution scope: owner review of all workspaces; not a newly approved public projection.

- [Package source](https://github.com/lssm-tech/contractspec/tree/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/vscode-contractspec)
- [Manifest source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/vscode-contractspec/package.json)
- [Readme source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/vscode-contractspec/README.md)
- [Guide source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/vscode-contractspec.txt)

## Package metadata

```json
{
  "layer": "apps",
  "physicalArea": null,
  "primaryArea": "tooling-and-agent-delivery",
  "classification": {
    "privateDeclared": true,
    "catalogFamily": null,
    "catalogKind": null,
    "catalogStatus": null,
    "adoptionMode": null,
    "stability": null
  },
  "descriptionOrigin": "package.json",
  "manifestComplete": true,
  "publicationPolicyApplied": false
}
```

Manifest private flag: true — workspace only.

Primary area: [CLI, authoring and agent tooling](https://lssm.co/docs/areas/tooling-and-agent-delivery/)

## Package guide

```json
{
  "status": "available",
  "sourcePath": "packages/apps/vscode-contractspec/README.md",
  "sourceUrl": "https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/vscode-contractspec/README.md",
  "blobSha": "7dee7920b51d3d3ef5659860f0aad37bc318b482",
  "sourcePin": "bcc79fcc27c4d801c2119bef81ddcce7b4e86498",
  "origin": "README recovered byte-for-byte from pinned aggregate guide",
  "integrity": "exact Git blob match",
  "executionStatus": "not executed"
}
```

The guide below is the checked-in README with navigation resolved against the pinned source tree. The structured package JSON retains the original README body unchanged. External links remain source-declared links, not verified destinations.

# vscode-contractspec

Website: https://contractspec.io

**ContractSpec: spec-first development for AI-written software. Validate, scaffold, and explore your contract specifications.**

## What It Does

- `@lssm-tech/module.workspace` for pure analysis + templates.
- `@lssm-tech/bundle.workspace` for workspace services + adapters.
- `src/ui/` contains packaged UI exports and embeddable views.
- Related ContractSpec packages include `@lssm-tech/bundle.workspace`, `@lssm-tech/lib.ai-agent`, `@lssm-tech/lib.ai-providers`, `@lssm-tech/lib.contracts-spec`, `@lssm-tech/lib.contracts-transformers`, `@lssm-tech/module.ai-chat`, ...
- `src/ui/` contains packaged UI exports and embeddable views.

## Running Locally

From `packages/apps/vscode-contractspec`:
- `bun run dev`
- `bun run build`
- `bun run test`

## Usage

```bash
bun run dev
```


## Initialization Presets

The extension setup flow is preset-driven and backed by the shared workspace setup service.

- `ContractSpec: Setup ContractSpec` lets you choose between `core`, `connect`, `builder-managed`, `builder-local`, and `builder-hybrid`.
- `ContractSpec: Quick Setup (Defaults)` applies the `core` preset with no prompts.
- Builder managed and hybrid presets mirror the configured Builder API base URL into `contractspec.api.baseUrl` in `.vscode/settings.json`.

Representative follow-up commands after setup:

```bash
contractspec builder init --workspace-id ws-demo --preset managed-mvp
contractspec builder init --workspace-id ws-demo --preset local-daemon-mvp
contractspec builder local register --workspace-id ws-demo --runtime-id rt_local_daemon --granted-to local:operator
```


## Architecture

- `@lssm-tech/module.workspace` for pure analysis + templates.
- `@lssm-tech/bundle.workspace` for workspace services + adapters.

## Public Entry Points

- This package is a deployable application rather than a library with published subpath exports.

## Local Commands

- `bun run dev` — bun build src/extension.ts --outdir=dist --target=node --format=cjs --external=vscode --sourcemap=external --watch
- `bun run build` — bun run build:types && bun run build:bundle
- `bun run test` — run the extension's Bun unit tests
- `bun run lint` — bun run lint:fix
- `bun run lint:check` — biome check .
- `bun run lint:fix` — biome check --write --unsafe --only=nursery/useSortedClasses . && biome check --write .
- `bun run vscode:prepublish` — bun run build
- `bun run build:bundle` — bun build src/extension.ts --outdir=dist --target=node --format=cjs --external=vscode --minify
- `bun run build:types` — tsgo --noEmit
- `bun run package` — vsce package --no-dependencies
- `bun run publish:off` — vsce publish --no-dependencies

## Recent Updates

- Replace eslint+prettier by biomejs to optimize speed.
- Standardize tool naming to underscore notation.

## Notes

- Works alongside `@lssm-tech/bundle.workspace`, `@lssm-tech/lib.ai-agent`, `@lssm-tech/lib.ai-providers`, `@lssm-tech/lib.contracts-spec`, `@lssm-tech/lib.contracts-transformers`, ...


## Declared capabilities

This manifest does not declare a capability catalogue. Assess the package using its guide, import map and source.

## Canonical imports

Import paths and symbols below are catalogue declarations. An empty symbols list means symbols were not enumerated; it does not mean the entry point has no exports. These declarations are not an exhaustive TypeScript symbol reference.

```json
[]
```

## Declared export entry points

Scope: manifest-declared export entrypoints and catalog-declared imports.

Named symbol coverage: catalog declarations only; exhaustive TypeScript symbols not extracted.

Installation status: not verified.

- `vscode-contractspec` — subpath `.`
  - `unconditional`: `./src/index.ts` — [pinned source](https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/vscode-contractspec/src/index.ts); verified source file.

## Package publication metadata

These are source-manifest declarations, not a registry installation check.

```json
{
  "types": null,
  "files": null,
  "publishExports": null
}
```

## Dependencies

Metadata status: complete pinned manifest.

### Runtime dependencies

- [@lssm-tech/bundle.workspace](https://lssm.co/docs/packages/bundle.workspace/): `workspace:*`
- [@lssm-tech/lib.ai-agent](https://lssm.co/docs/packages/lib.ai-agent/): `workspace:*`
- [@lssm-tech/lib.ai-providers](https://lssm.co/docs/packages/lib.ai-providers/): `workspace:*`
- [@lssm-tech/lib.cli-runtime](https://lssm.co/docs/packages/lib.cli-runtime/): `workspace:*`
- [@lssm-tech/lib.contracts-spec](https://lssm.co/docs/packages/lib.contracts-spec/): `workspace:*`
- [@lssm-tech/lib.contracts-transformers](https://lssm.co/docs/packages/lib.contracts-transformers/): `workspace:*`
- [@lssm-tech/module.ai-chat](https://lssm.co/docs/packages/module.ai-chat/): `workspace:*`
- [@lssm-tech/module.examples](https://lssm.co/docs/packages/module.examples/): `workspace:*`
- [@lssm-tech/module.workspace](https://lssm.co/docs/packages/module.workspace/): `workspace:*`
- `ai`: `catalog:ai`

### Peer dependencies

No declarations in the inspected manifest.

### Optional dependencies

- `@swc/wasm`: `1.16.2`

### Development dependencies

- [@lssm-tech/tool.typescript](https://lssm.co/docs/packages/tool.typescript/): `workspace:*`
- `@types/vscode`: `1.104.0`
- `@vscode/vsce`: `^3.9.2`
- `esbuild`: `^0.28.2`
- `typescript`: `catalog:`

### Peer dependency metadata

```json
{}
```

### Bundled dependencies

```json
null
```

## Package scripts

Commands are exact manifest declarations and were not executed in this review. Script metadata status: complete pinned manifest.

```json
{
  "vscode:prepublish": "bun run build",
  "build": "bun run build:types && bun run build:bundle",
  "build:bundle": "bun build src/extension.ts --outdir=dist --target=node --format=cjs --external=vscode --minify --external '@swc/wasm' --external '@electric-sql/pglite' --external '@apollo/client' --external 'graphql' --external 'drizzle-orm' --external 'drizzle-orm/*'",
  "build:types": "tsgo --noEmit",
  "dev": "bun build src/extension.ts --outdir=dist --target=node --format=cjs --external=vscode --sourcemap=external --watch",
  "lint": "bun run lint:fix",
  "lint:fix": "node ../../../scripts/biome.cjs check --write --unsafe --only=nursery/useSortedClasses . && node ../../../scripts/biome.cjs check --write .",
  "lint:check": "node ../../../scripts/biome.cjs check .",
  "package": "vsce package --no-dependencies",
  "publish:off": "vsce publish --no-dependencies",
  "test": "bun test src/*.test.ts"
}
```

## Declared documentation links

No additional documentation links are declared in the inspected catalogue.

## Existing agent-guide projection

```json
{
  "path": "packages/apps/web-landing/public/llms-packages/vscode-contractspec.txt",
  "route": "/llms/vscode-contractspec",
  "sourceUrl": "https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/vscode-contractspec.txt",
  "blobSha": "7dee7920b51d3d3ef5659860f0aad37bc318b482",
  "sourcePin": "bcc79fcc27c4d801c2119bef81ddcce7b4e86498",
  "bodyEqualsReadme": true,
  "aggregateSourcePath": "packages/apps/web-landing/public/llms-full.txt",
  "aggregateBlobSha": "691b1d33efee24c440598b9106c81432f56aafaf"
}
```
