[{"data":1,"prerenderedAt":4},["ShallowReactive",2],{"readme:fabro":3},"\u003Cdiv align=\"left\">\n\u003Ca href=\"https:\u002F\u002Fdocs.fabro.sh\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"Fabro\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Ffabro-sh\u002Ffabro\u002FHEAD\u002Fdocs\u002Fpublic\u002Flogo\u002Fdark.svg\" height=\"75\" \u002F>\u003C\u002Fa>\n\u003C\u002Fdiv>\u003Ch2>The open source dark software factory for expert engineers\u003C\u002Fh2>\n\u003Cp>AI coding agents are powerful but unpredictable. You either babysit every step or review a 50-file diff you don't trust. Fabro gives you a middle path: define the process as a graph, let agents execute it, and intervene only where it matters. \u003Ca href=\"https:\u002F\u002Fdocs.fabro.sh\u002Fgetting-started\u002Fwhy-fabro\" rel=\"nofollow ugc noopener\">Why Fabro?\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ffabro-sh\u002Ffabro\u002Factions\u002Fworkflows\u002Frust.yml\" rel=\"nofollow ugc noopener\">\u003Cimg src=\"https:\u002F\u002Fgithub.com\u002Ffabro-sh\u002Ffabro\u002Factions\u002Fworkflows\u002Frust.yml\u002Fbadge.svg\" alt=\"Rust\" \u002F>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Ffabro-sh\u002Ffabro\u002Fblob\u002FHEAD\u002FLICENSE.md\" rel=\"nofollow ugc noopener\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-blue\" alt=\"License: MIT\" \u002F>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdocs.fabro.sh\" rel=\"nofollow ugc noopener\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdocs-fabro.sh-357F9E\" alt=\"docs\" \u002F>\u003C\u002Fa>\n\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fdiscord\u002F1256822430505373696\" alt=\"Discord\" \u002F>\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-bash\"># With Claude Code\ncurl -fsSL https:\u002F\u002Ffabro.sh\u002Finstall.md | claude\n\n# With Codex\ncodex \"$(curl -fsSL https:\u002F\u002Ffabro.sh\u002Finstall.md)\"\n\n# With Homebrew\nbrew install fabro-sh\u002Ftap\u002Ffabro-nightly\n\n# With Bash\ncurl -fsSL https:\u002F\u002Ffabro.sh\u002Finstall.sh | bash\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Then run \u003Ccode>fabro server start\u003C\u002Fcode> to finish setup in your browser. The server opens a web wizard, exits when the wizard completes, and starts in configured mode the next time you run it.\u003C\u002Fp>\n\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Ffabro-sh\u002Ffabro\u002FHEAD\u002Fdocs\u002Fpublic\u002Fimages\u002Fruns-board.png\" alt=\"Fabro Runs board showing workflows across Working, Pending, Verify, and Merge stages\" \u002F>\u003Chr \u002F>\n\u003Ch2>Use Cases\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>\u003Cstrong>Extend disengagement time\u003C\u002Fstrong> — Stop babysitting an agent REPL. Define a workflow with verification gates and walk away — Fabro keeps the process on track without you.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Leverage ensemble intelligence\u003C\u002Fstrong> — Seamlessly combine models from different vendors. Use one model to implement, another to cross-critique, and a third to summarize — all in a single workflow.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Share best practices across your team\u003C\u002Fstrong> — Collaborate on version-controlled workflows that encode your software processes as code. Review, iterate, and reuse them like any other source file.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Reduce token bills\u003C\u002Fstrong> — Route cheap tasks to fast, inexpensive models and reserve frontier models for the steps that need them. CSS-like stylesheets make this a one-line change.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Improve agent security\u003C\u002Fstrong> — Run agents in cloud sandboxes with full network and filesystem isolation. Keep untrusted code off your laptop and out of your production environment.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Run agents 24\u002F7\u003C\u002Fstrong> — Fabro's API server queues and executes runs continuously. Close your laptop — workflows keep running and results are waiting when you return.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Scale infinitely\u003C\u002Fstrong> — Move execution off your laptop and into cloud sandboxes. Run as many concurrent workflows as your infrastructure allows.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Guarantee code quality\u003C\u002Fstrong> — Layer deterministic verifications — test suites, linters, type checkers, LLM-as-judge — into your workflow graph. Failures trigger fix loops automatically.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Inspect every run\u003C\u002Fstrong> — Query durable event streams, checkpoints, conclusions, and stage outputs to understand what happened and improve the workflow.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Specify in natural language\u003C\u002Fstrong> — Define requirements as natural-language specs and let Fabro generate — and regenerate — implementations that conform to them.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr \u002F>\n\u003Ch2>Key Features\u003C\u002Fh2>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>\u003C\u002Fth>\n\u003Cth>Feature\u003C\u002Fth>\n\u003Cth>Description\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>🔀\u003C\u002Ftd>\n\u003Ctd>Deterministic workflow graphs\u003C\u002Ftd>\n\u003Ctd>Define pipelines in Graphviz DOT with branching, loops, parallelism, and human gates. Diffable, reviewable, version-controlled\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>🙋\u003C\u002Ftd>\n\u003Ctd>Human-in-the-loop\u003C\u002Ftd>\n\u003Ctd>Approval gates pause for human decisions. Steer running agents mid-turn. Interview steps collect structured input\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>🎨\u003C\u002Ftd>\n\u003Ctd>Multi-model routing\u003C\u002Ftd>\n\u003Ctd>CSS-like stylesheets route each node to the right model and provider, with automatic fallback chains\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003C\u002Ftd>\n\u003Ctd>\u003C\u002Ftd>\n\u003Ctd>\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n",1784844294540]