AI agents write code. Fabriq keeps every change visible.
A desktop workspace shell for teams using OpenCode and Claude Code. See what your agent wants to change, confirm before it happens, and ship with a full audit trail.
A fabriq is a workshop—where your intent and the agent's actions get woven together, seams visible.
AI agents write code in seconds. You're still accountable for every line.
Every modern IDE gives you a chat box. Almost none give you a shell that respects the boundary between you and the agent.
Where is the agent allowed to write?
Your project has two kinds of state: long-lived workspace assets (specs, contracts) and short-lived feature worktrees. Most tools give agents full filesystem access — one wrong capability call and these surfaces cross-contaminate. By the time you notice, it's already in the repo.
What is it about to change?
Agents run tools, not rituals. A file write or git push happens silently, without your review. You see the diff after the fact — never the intention beforehand. Destructive actions shouldn't be invisible.
Why did this end up in the repo?
Was that config extracted from your codebase? Hallucinated by the LLM? Copied from a forum thread? With current tools, every change arrives without provenance. You have to trust the agent's word — and trust isn't auditability.
Legible by default. Reversible by design.
Fabriq doesn't change how agents work. It changes how their work reaches your repository.
- Agent has unrestricted filesystem access — workspace and feature surfaces not separated
- File writes and git operations execute silently, without your review
- You discover what changed when you read the diff — after it's already landed
- No record of why decisions were made or where they came from
- Two-dimensional shell enforces workspace asset vs. feature worktree boundary
- Destructive actions queue as confirmation prompts with full payload visibility
- You review what will change, approve or reject — before anything hits disk
- Every decision logged with sourced, validated evidence — provable by default
A shell that respects the boundary between you and the agent.
Agents are fast. Verification should be faster. Fabriq makes every write legible — so you click with eyes open, not after the fact.
Two surfaces, zero cross-writes
Workspace assets and feature worktrees live on separate dimensions. The shell never lets an agent touch the wrong one by accident.
Confirm before commit
Destructive capabilities surface as explicit prompts — you see the payload, approve or reject, and nothing hits disk until you say so.
Audit trail by default
Every agent decision leaves evidence. Cognitive artifacts are validated against sources before they're committed to your workspace.
Every capability, surfaced with integrity.
A thin shell over a deterministic engine. Nothing reaches your repository without being typed, validated, and confirmed.
No escape hatches
Every state change goes through a typed, validated capability channel. If it's not in the allowlist, it doesn't execute. Prompt injections can't mutate your disk.
Read the ADRTwo surfaces, one shell
Workspace assets and feature worktrees are enforced as separate dimensions — at the routing level, the IPC layer, and in the UI. The agent can't accidentally cross-write.
Read the ADRWhat the agent extracts, the engine verifies
LLMs scan your codebase for cognitive artifacts; the deterministic engine revalidates every claim against source before committing. Source mismatch means artifact rejected.
Read the ADRSee it before it happens
Destructive capabilities surface as confirmation prompts with full payload visibility. You review, approve, or reject. Reversal is first-class, not a post-mortem.
Extend with confidence
Plugins register through a validated manifest at load time — routes, panels, backends. The shell knows what's loaded before anything executes. No surprises.
Bring your own agent
One ACP stdio JSON-RPC bridge works with OpenCode, Claude Code, or any ACP-compatible agent. No PTY shims. Share one agent across multiple UI surfaces.
Open
source on GitHub
MIT
license
Latest articles
Architecture notes, ADRs, and engineering deep-dives.
A Feature's Journey: From Idea to Ship in Fabriq
Follow a fictional 'Order Search' feature through Fabriq's five-stage pipeline — from kickoff to deployment — and see how the workspace shell makes every phase legible, reviewable, and reversible.
AI Scanner, Engine Validator: Why We Don't Ask LLMs to Count Lines
Pure static analysis is brittle. Pure LLM analysis hallucinates. Fabriq's third path draws a clean line: Tree-sitter and ASTs answer 'where is X called?' deterministically; LLMs answer 'why is X called?' with fuzzy reasoning. The orchestrator ties them together with evidence chains that are auditable by construction.
How to Contribute to Fabriq: Starting with a Blog Post
The best way to contribute to a project is the one that matches your skills and interests. Not everyone starts with a pull request. This guide maps the full contribution landscape — from writing docs to building plugins to fixing bugs — with concrete entry points for each path.
