@fabrika/builder
v0.2.0
Published
Local-first guided application design and agent-assisted implementation.
Readme
@fabrika/builder
@fabrika/builder guides a coding agent from an initial application brief to a reviewed acceptance contract and an assisted implementation.
The builder runs eight deterministic phases:
- intake
- vision
- flows
- technology
- design
- opice test skeletons
- implementation issues
- build
The current phase is derived from files in .fabrika/; it is not stored as a mutable counter. Review gates use a local dashboard with persistent annotations and responses.
Usage
Install the public CLI and initialize the builder in an application repository:
bun add --global @fabrika/cli
fabrika builder initInitialization installs the Fabrika skill for Claude Code and Codex, starts the local daemon, and opens the dashboard. The coding agent then drives the phase loop.
fabrika builder next
do the emitted work
fabrika builder gate open <phase> --view <canvas.jsx>
fabrika builder gate wait
fabrika builder advanceAll commands:
fabrika builder init [dir] [--profile <stack>] [--agent all|claude|codex]
fabrika builder next [--json]
fabrika builder advance [--force]
fabrika builder gate open <name> --view <file.jsx>
fabrika builder gate wait [--gate <revision>] [--timeout <ms>]
fabrika builder ensure-daemon
fabrika builder induce [--force]
fabrika builder build [--issue <ID>] [--assisted]Use --profile cf-internal-app for the full Buzola, Propustka, and Vozka internal-app stack. The default is cf-lightweight.
Generated application state
.fabrika/
config.json
agent-support.json
intent/
principles/
architecture/
issues/
.claude/
.agents/skills/fabrika/
.codex/agents/
tests/browser/*.test.tsThe opice skeletons under tests/browser/ are the executable acceptance contract. The generated issues form the implementation dependency graph.
Environment
| Variable | Purpose | Default |
| -------------------- | --------------------------------- | ----------------------------------- |
| FABRIKA_PORT | Local daemon port | 19410 |
| FABRIKA_SESSION_ID | Session override | Stable hash of the application path |
| FABRIKA_DATA_DIR | Persistent local state | ~/.fabrika |
| FABRIKA_TIMEOUT | Gate wait timeout in milliseconds | 3600000 |
| FABRIKA_UI_DIST | Dashboard build override | Packaged ui/dist |
Package contents
cli/owns phase derivation, task packets, issue induction, and builder commands.daemon/owns HTTP/WebSocket endpoints and persistent canvas sessions.ui/owns the local dashboard.skill/contains the agent-neutral workflow and specialist roles.decisions/andstacks/contain the public technology catalog.
The public @fabrika/cli package exposes this package under fabrika builder …. CLI and dashboard clients communicate with the daemon only over HTTP and WebSocket.
Development
From the fabrika-platform repository root:
bun run --filter @fabrika/builder typecheck
bun run --filter @fabrika/builder test
bun run --filter @fabrika/builder buildSee BUILD-CONTRACT.md for the package boundary and wire contract.
