Find a file
Bryan Helmkamp d5bd2c6046 Install to ~/.arc/bin instead of /usr/local/bin and auto-configure PATH
- Use %b instead of %s in printf helpers to fix unescaped color codes
- Default install dir to ~/.arc/bin (no sudo needed)
- Auto-append PATH export to shell config (zsh, bash, fish)
- Skip PATH setup with dim message if arc is already on $PATH
- Add tildify helper for friendlier path display

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-10 18:30:37 -04:00
.cargo Disable empty doc-tests and add terse test output alias 2026-02-23 10:57:26 -05:00
.claude Add 2026-03-10 changelog and update docs for new CLI commands 2026-03-10 14:25:42 -04:00
.config Fix Daytona e2e test failures and improve test reliability 2026-03-08 18:51:43 -04:00
.github Use GitHub-hosted runners for release workflow 2026-03-10 14:23:05 -04:00
apps Move packages/ to lib/packages/ and update all references 2026-03-09 13:13:56 -04:00
arc/workflows Add vnc test 2026-03-10 11:32:09 -04:00
bin Organize scripts into bin/dev, bin/ops, and bin/agent 2026-03-09 13:07:22 -04:00
docker Move packages/ to lib/packages/ and update all references 2026-03-09 13:13:56 -04:00
docs Add 2026-03-10 changelog and update docs for new CLI commands 2026-03-10 14:25:42 -04:00
lib Improve arc run --preflight output with Repository section, merged LLM check, and truncation 2026-03-10 18:17:16 -04:00
skills/develop-web-game Add develop-web-game skill and verification workflow 2026-03-10 08:41:12 -04:00
test Rename arc run startarc run (#5) 2026-03-08 16:14:50 -04:00
.env.example Remove export prefix from .env.example for standard dotenv format 2026-03-09 23:46:44 -04:00
.gitignore Track .claude directory and add docs skill watermark 2026-03-08 11:23:07 -04:00
AGENTS.md Add arc init command to initialize a new arc project 2026-03-10 13:00:36 -04:00
arc.toml Disable retros project-wide in arc.toml 2026-03-09 19:29:01 -04:00
bun.lock Move packages/ to lib/packages/ and update all references 2026-03-09 13:13:56 -04:00
Cargo.lock Integrate OpenAI OAuth into arc install via Codex detection 2026-03-10 17:21:43 -04:00
Cargo.toml Add release workflow and improve CI pipelines 2026-03-10 13:40:29 -04:00
CLAUDE.md Move CLAUDE.md to AGENTS.md with symlink for compatibility 2026-03-09 13:02:06 -04:00
CONTRIBUTING.md Improve README features section and add CONTRIBUTING.md 2026-03-10 15:16:03 -04:00
install.sh Install to ~/.arc/bin instead of /usr/local/bin and auto-configure PATH 2026-03-10 18:30:37 -04:00
LICENSE.md Add README.md and MIT LICENSE 2026-03-10 14:48:58 -04:00
package.json Move packages/ to lib/packages/ and update all references 2026-03-09 13:13:56 -04:00
README.md Add install one-liner near top of README for quick access 2026-03-10 18:18:13 -04:00

Arc

The open source software factory for expert engineers

AI coding agents are powerful but unpredictable. You either babysit every step or review a 50-file diff you don't trust. Arc gives you a middle path: define the process as a graph, let agents execute it, and intervene only where it matters. Why Arc?

License: MIT docs

curl -fsSL https://fabro.sh/install.sh | bash
Arc Runs board showing workflows across Working, Pending, Verify, and Merge stages

Key Features

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 arc ssh and expose ports with arc 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

Example 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="
            *        { llm_model: claude-haiku-4-5; reasoning_effort: low; }
            .coding  { llm_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 DOT language reference for the full syntax.


📖 Documentation

Arc ships with comprehensive documentation covering every feature in depth:

  • Getting Started -- Installation, first workflow, and why Arc exists
  • Defining Workflows -- Node types, transitions, variables, stylesheets, and human gates
  • Executing Workflows -- Run configuration, sandboxes, checkpoints, retros, and failure handling
  • Tutorials -- Step-by-step guides from hello world to parallel multi-model ensembles
  • API Reference -- Full OpenAPI spec with authentication, SSE events, and client SDKs

Quick Start

Install

curl -fsSL https://fabro.sh/install.sh | bash

# Initialize your project
cd my-repo/
arc init

# Run your first workflow
arc run hello

Help or Feedback


License

Arc is licensed under the MIT License.