Install
What it needs
Node, and nothing else. Foundry makes no model calls of its own, so there is no API key to configure and no account to create.
^22.22.3 || ^24.15.0 || >=26.0.0That range is not arbitrary: foundry serve and foundry build render the screens through
Angular and Vite, which set the floor. Check yours with node -v.
In a project
This is the one to prefer.
npm i -D @cisstech/foundry@beta
yarn add -D @cisstech/foundry@beta
pnpm add -D @cisstech/foundry@betaThen run it through your package manager, so you get the version this project pinned:
npx foundry init
yarn foundry init
pnpm foundry initThe version lives in your package.json, so every contributor and your CI run the same checks
against the same spec format. A spec that passes on your machine passes on theirs.
Globally
Convenient to try it out, or to scaffold before a project exists.
npm i -g @cisstech/foundry@beta
pnpm add -g @cisstech/foundry@betaYarn 2 and later dropped global installs, so on yarn use yarn dlx below, or install the
command with npm.
The catch is that a global install is one version for every project on your machine. The moment two projects sit on different versions of the format, the local install is the answer.
Once, without installing
For a pipeline, or to check a spec you were handed.
npx @cisstech/foundry@beta check
yarn dlx @cisstech/foundry@beta check
pnpm dlx @cisstech/foundry@beta checkVerify
foundry # prints the commands
foundry check # in a project: "ok: spec is coherent"foundry check exits non zero when the spec breaks, which is what makes it usable as a gate.
The renderer is optional
foundry serve and foundry build draw the screens with Angular and Vite. Those come as
optional dependencies: installed by default, so rendering works out of the box, and skipped
on demand.
A pipeline that only verifies the spec has no use for them:
npm i -D @cisstech/foundry@beta --omit=optional| default | --omit=optional |
|
|---|---|---|
init, check |
yes | yes |
serve, build |
yes | prints how to add them |
| size on disk | around 220 MB | around 8 MB |
Being optional is also what keeps the install from fighting your project. If you already work in an Angular repository, your version and the renderer's sit side by side instead of colliding, whichever major you are on.
Either way the light commands stay fast: the renderer is loaded only by a command that renders,
so a check runs in well under a tenth of a second.
Next
Head to The loop for the walkthrough, or Working with an agent to wire your coding agent to the format.