HN 표시: Fabro – 오픈 소스 다크 소프트웨어 공장
hackernews
|
|
📦 오픈소스
#ai 딜
#ai 코딩
#claude
#개발 도구
#에이전트
#오픈소스
원문 출처: hackernews · Genesis Park에서 요약 및 분석
요약
AI 코딩 에이전트의 비효율적인 관리 문제를 해결하기 위해 기획된 오픈소스 워크플로우 엔진 'Fabro'가 소개되었습니다. 이 도구는 Graphviz DOT 언어를 기반으로 작업 흐름을 그래프 형태로 정의하여, 사용자가 필수적인 승인 단계에만 개입하고 나머지는 자동화할 수 있게 해줍니다. 특정 작업에 맞춰 서로 다른 AI 모델을 조합해 사용하고 토큰 비용을 최적화하는 기능, 그리고 완전히 격리된 클라우드 샌드박스에서 24시간 안전하게 에이전트를 실행하는 핵심 기능을 제공합니다. 외부 종속성이 전혀 없는 단일 Rust 바이너리 파일로 구성되어 누구나 쉽게 설치하고 확장할 수 있는 것이 특징입니다.
본문
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. Why Fabro? # With Claude Code curl -fsSL https://fabro.sh/install.md | claude # With Codex codex "$(curl -fsSL https://fabro.sh/install.md)" # With Bash curl -fsSL https://fabro.sh/install.sh | bash - Extend disengagement time — Stop babysitting an agent REPL. Define a workflow with verification gates and walk away — Fabro keeps the process on track without you. - Leverage ensemble intelligence — 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. - Share best practices across your team — Collaborate on version-controlled workflows that encode your software processes as code. Review, iterate, and reuse them like any other source file. - Reduce token bills — 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. - Improve agent security — Run agents in cloud sandboxes with full network and filesystem isolation. Keep untrusted code off your laptop and out of your production environment. - Run agents 24/7 — Fabro's API server queues and executes runs continuously. Close your laptop — workflows keep running and results are waiting when you return. - Scale infinitely — Move execution off your laptop and into cloud sandboxes. Run as many concurrent workflows as your infrastructure allows. - Guarantee code quality — Layer deterministic verifications — test suites, linters, type checkers, LLM-as-judge — into your workflow graph. Failures trigger fix loops automatically. - Achieve compounding engineering — Automatic retrospectives after every run feed a continuous improvement loop. Your workflows get better over time, not just your code. - Specify in natural language — Define requirements as natural-language specs and let Fabro generate — and regenerate — implementations that conform to them. | Feature | Description | | |---|---|---| | 🔀 | Deterministic workflow graphs | Define pipelines in Graphviz DOT with branching, loops, parallelism, and human gates. Diffable, reviewable, version-controlled | | 🙋 | Human-in-the-loop | Approval gates pause for human decisions. Steer running agents mid-turn. Interview steps collect structured input | | 🎨 | Multi-model routing | CSS-like stylesheets route each node to the right model and provider, with automatic fallback chains | | ☁️ | Cloud sandboxes | Run agents in isolated Daytona cloud VMs with snapshot-based setup, network controls, and automatic cleanup | | 🔌 | SSH access and preview links | Shell into running sandboxes with fabro sandbox ssh and expose ports with fabro sandbox preview for live debugging | | 🌲 | Git checkpointing | Every stage commits code changes and execution metadata to Git branches. Resume, revert, or trace any change | | 📊 | Automatic retros | Each run generates a retrospective with cost, duration, files touched, and an LLM-written narrative | | ⚡ | Comprehensive API | REST API with SSE event streaming and a React web UI. Run workflows programmatically or as a service | | 🦀 | Single binary, no runtime | One compiled Rust executable with zero dependencies. No Python, no Node, no Docker required | | ⚖️ | Open source (MIT) | Full source code, no vendor lock-in. Self-host, fork, or extend to fit your workflow | A plan-approve-implement workflow where a human reviews the plan before the agent writes code: digraph PlanImplement { graph [ goal="Plan, approve, implement, and simplify a change" model_stylesheet=" * { model: claude-haiku-4-5; reasoning_effort: low; } .coding { model: claude-sonnet-4-5; reasoning_effort: high; } " ] start [shape=Mdiamond, label="Start"] exit [shape=Msquare, label="Exit"] plan [label="Plan", prompt="Analyze the goal and codebase. Write a step-by-step plan.", reasoning_effort="high"] approve [shape=hexagon, label="Approve Plan"] implement [label="Implement", class="coding", prompt="Read plan.md and implement every step."] simplify [label="Simplify", class="coding", prompt="Review the changes for clarity and correctness."] start -> plan -> approve approve -> implement [label="[A] Approve"] approve -> plan [label="[R] Revise"] implement -> simplify -> exit } Agents run as multi-turn LLM sessions with tool access. Human gates (hexagon ) pause for approval. The stylesheet routes planning to a cheap model and coding to a frontier model. See the Graphviz DOT language reference for the full syntax. Fabro ships with comprehensive documentation covering every feature in depth: - Getting Started -- Installation, first workflow, and why Fabro exists - Defining Workflows -- Node types, transitions, variables, stylesheets, and human gates - Executing Workflows -- Run configuration, sandboxes, checkpoints,
Genesis Park 편집팀이 AI를 활용하여 작성한 분석입니다. 원문은 출처 링크를 통해 확인할 수 있습니다.
공유