Skip to content
Prism

Contributing

Work against a local Prism checkout with file: deps and pnpm.overrides.

npm is the front door. Published packages (npm install @prism/core) are what application authors should use. This page is for contributors hacking on Prism itself, or for a temporary checkout before a fix lands on npm.

Prism packages declare "@prism/core": "workspace:*" internally. A lone file: dependency from an external app fails with ERR_PNPM_WORKSPACE_PKG_NOT_FOUND — pnpm will not resolve workspace:* outside this monorepo.

Use file: and pnpm.overrides so every transitive request rewrites to the same paths:

{
"dependencies": {
"@prism/core": "file:../prism/packages/core",
"@prism/agent": "file:../prism/packages/agent",
"@prism/mcp": "file:../prism/packages/mcp"
},
"pnpm": {
"overrides": {
"@prism/core": "file:../prism/packages/core",
"@prism/agent": "file:../prism/packages/agent",
"@prism/mcp": "file:../prism/packages/mcp"
}
}
}

Adjust the relative path to your checkout. Packages ship pre-built dist/ — build Prism (pnpm build at the repo root) after local edits.

Terminal window
pnpm install
pnpm verify # build + typecheck + tests + structural guards
Terminal window
pnpm --filter docs dev
pnpm --filter docs build
pnpm --filter docs check-snippets # typecheck fenced ts/tsx in these pages