
Fabro Workflow Factory
Define and run AI coding agent pipelines as Graphviz DOT workflows with human gates, model routing, and sandbox execution via Fabro.
Overview
Fabro Workflow Factory is an agent skill most often used in Build agent-tooling (also Operate infra iteration) that configures Fabro DOT-graph pipelines with human gates and multi-model routing.
Install
npx skills add https://github.com/aradotso/trending-skills --skill fabro-workflow-factoryWhat is this skill?
- Open-source Rust orchestrator: agent pipelines as Graphviz DOT graphs with branching and loops
- Human-in-the-loop approval gates and multi-model routing across steps
- Cloud sandbox execution with fabro install, fabro init, and workflow run CLIs
- Install paths documented for Claude Code, Codex, and Bash curl installers
- You define process; agents execute; you intervene only at gated nodes
Adoption & trust: 1.1k installs on skills.sh; 31 GitHub stars; 0/3 security scanners passed (skills.sh audits).
What problem does it solve?
Your coding agents run as one-off chats with no persistent graph, approvals, or repeatable multi-step factory.
Who is it for?
Indie builders standardizing review-build-test agent chains who want explicit human approval and model routing in one orchestrator.
Skip if: Simple single-prompt codegen with no pipeline, or teams forbidden from shell installs and cloud sandbox execution.
When should I use this skill?
User wants to set up Fabro, create a DOT workflow, add human-in-the-loop gates, configure multi-model routing, or run coding agents through Fabro’s orchestrator.
What do I get? / Deliverables
You get a Fabro-initialized project and DOT-defined pipeline you can run as a service—with gates where humans matter and sandboxes where agents execute.
- Fabro project configuration under .fabro/
- Runnable DOT graph defining agent pipeline with gates and routing
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Build / agent-tooling is the primary home because Fabro installs, inits projects, and authors DOT graphs that orchestrate coding agents during product construction. Agent-tooling captures persistent orchestration services, multi-model routing, and cloud sandboxes—not a one-off script but the factory for repeatable agent pipelines.
Where it fits
Author a DOT graph that branches on test results and routes fix attempts to a cheaper model while keeping plan review on a stronger one.
Gate release-note and changelog generation behind human approval before tagging a ship candidate.
Re-run the same Fabro service nightly for dependency bump pipelines with sandboxed verification.
How it compares
Workflow orchestrator skill for Fabro graphs, not an MCP server catalog entry or a single IDE snippet pack.
Common Questions / FAQ
Who is fabro-workflow-factory for?
Solo and small-team developers who want open-source, Rust-based orchestration of AI coding steps with DOT graphs, human gates, and sandboxes instead of manual agent handoffs.
When should I use fabro-workflow-factory?
Use it in Build when creating agent pipelines and during Operate when turning those graphs into repeatable iteration or deploy prep runs; also when onboarding Fabro via Claude Code or Codex install flows.
Is fabro-workflow-factory safe to install?
The skill documents curl/bash installers and a CLI that can run sandboxes and network-backed workflows—review the Security Audits panel on this Prism page and your org policy before running install scripts.
SKILL.md
READMESKILL.md - Fabro Workflow Factory
# Fabro Workflow Factory > Skill by [ara.so](https://ara.so) — Daily 2026 Skills collection. Fabro is an open source AI coding workflow orchestrator written in Rust. It lets you define agent pipelines as Graphviz DOT graphs — with branching, loops, human approval gates, multi-model routing, and cloud sandbox execution — then run them as a persistent service. You define the process; agents execute it; you intervene only where it matters. --- ## Installation ```bash # Via Claude Code (recommended) curl -fsSL https://fabro.sh/install.md | claude # Via Codex codex "$(curl -fsSL https://fabro.sh/install.md)" # Via Bash curl -fsSL https://fabro.sh/install.sh | bash ``` After installation, run one-time setup and per-project initialization: ```bash fabro install # global one-time setup cd my-project fabro init # per-project setup (creates .fabro/ config) ``` --- ## Key CLI Commands ```bash # Workflow management fabro run <workflow.dot> # execute a workflow fabro run <workflow.dot> --watch # stream live output fabro runs # list all runs fabro runs show <run-id> # inspect a specific run # Human-in-the-loop fabro approve <run-id> # approve a pending gate fabro reject <run-id> # reject / revise a pending gate # Sandbox access fabro ssh <run-id> # shell into a running sandbox fabro preview <run-id> <port> # expose a sandbox port locally # Retrospectives fabro retro <run-id> # view run retrospective (cost, duration, narrative) # Config fabro config # view current configuration fabro config set <key> <value> # set a config value ``` --- ## Workflow Definition (Graphviz DOT) Workflows are `.dot` files using the Graphviz DOT language with Fabro-specific attributes. ### Node Types | Shape | Meaning | |---|---| | `Mdiamond` | Start node | | `Msquare` | Exit node | | `rectangle` (default) | Agent node (LLM turn) | | `hexagon` | Human gate (pauses for approval) | ### Minimal Hello World ```dot // hello.dot digraph HelloWorld { graph [ goal="Say hello and write a greeting file" model_stylesheet=" * { model: claude-haiku-4-5; } " ] start [shape=Mdiamond, label="Start"] exit [shape=Msquare, label="Exit"] greet [label="Greet", prompt="Write a friendly greeting to hello.txt"] start -> greet -> exit } ``` ```bash fabro run hello.dot ``` --- ## Multi-Model Routing with Stylesheets Fabro uses CSS-like `model_stylesheet` declarations on the graph to route nodes to models. Use classes to target groups of nodes. ```dot digraph PlanImplementReview { graph [ goal="Plan, implement, and review a feature" model_stylesheet=" * { model: claude-haiku-4-5; reasoning_effort: low; } .planning { model: claude-opus-4-5; reasoning_effort: high; } .coding { model: claude-sonnet-4-5; reasoning_effort: high; } .review { model: gpt-4o; } " ] start [shape=Mdiamond, label="Start"] exit [shape=Msquare, label="Exit"] plan [label="Plan", class="planning", prompt="Analyze the codebase and write plan.md"] implement [label="Implement", class="coding", prompt="Read plan.md and implement every step"] review [label="Review", class="review", prompt="Cross-review the imp