fuseraft turns a YAML config into a running multi-agent pipeline. Define a team of AI agents — each with its own role, model, skills, and tools — and describe how they hand off to each other. Then give them a task.
Build a software development team that plans, writes, tests, and reviews its own code. A research pipeline that fans out to specialists and synthesizes their findings. A decision workflow with a human approval gate at every critical step. Whatever you can describe, fuseraft can coordinate.
Works with Anthropic, xAI, OpenAI, Azure OpenAI, Ollama, and any OpenAI-compatible provider. Agents can be local or remote — the A2A protocol lets you federate agent slots to independently deployed services. Built on Microsoft Agent Framework.
Pipelines range from a single task-routed assistant:
flowchart LR
Task((Task)) --> Assistant[Assistant]
...to multi-agent workflows with conditional keyword routing and anti-hallucination validators enforced at every handoff:
flowchart TD
Task((Task))
Planner[Planner]
Developer[Developer]
Tester[Tester]
Reviewer[Reviewer]
Done(["✓ Done"])
Task --> Planner
Planner -->|"HANDOFF TO DEVELOPER · RequireBrief"| Developer
Developer -->|"HANDOFF TO TESTER · RequireWriteFile · RequireShellPass"| Tester
Tester -->|"HANDOFF TO REVIEWER · TestReportValid"| Reviewer
Reviewer -->|"APPROVED"| Done
Reviewer -->|"REVISION REQUIRED"| Developer
Reviewer -->|"REPLAN REQUIRED"| Planner
Tester -->|"BUGS FOUND"| Developer
...to declarative directed-graph pipelines where back-edges express review cycles without duplicating states:
flowchart TD
Planner([Planner])
Developer([Developer])
Tester([Tester])
Reviewer([Reviewer])
Terminal(["Reviewer\n✓ terminal"])
Planner -->|"HANDOFF TO DEVELOPER · RequireBrief"| Developer
Developer -->|"HANDOFF TO TESTER · RequireWriteFile"| Tester
Tester -->|"HANDOFF TO REVIEWER · TestReportValid"| Reviewer
Reviewer -->|"APPROVED · RequireReviewJudgement"| Terminal
Reviewer -->|"REPLAN REQUIRED"| Planner
Tester -->|"BUGS FOUND"| Developer
Reviewer -->|"REVISION REQUIRED"| Developer
...to parallel fan-out/fan-in where a coordinator spawns concurrent workers that merge into a single downstream node:
flowchart TD
Coordinator([Coordinator])
AnalyzerA(["Analyzer A\nparallel"])
AnalyzerB(["Analyzer B\nparallel"])
Synthesizer(["Synthesizer\n✓ terminal"])
Coordinator -->|"BEGIN PARALLEL ANALYSIS"| AnalyzerA
Coordinator -->|"BEGIN PARALLEL ANALYSIS"| AnalyzerB
AnalyzerA -->|"ANALYSIS COMPLETE"| Synthesizer
AnalyzerB -->|"ANALYSIS COMPLETE"| Synthesizer
...to fully autonomous Magentic orchestration where a Manager dynamically selects agents and collects their reports:
flowchart LR
Task((Task))
Manager([Manager])
Researcher[Researcher]
Developer[Developer]
Task --> Manager
Manager -->|"selects"| Researcher
Manager -->|"selects"| Developer
Researcher -.->|"reports"| Manager
Developer -.->|"reports"| Manager
# Interactive wizard — describe your use case and get a config back
fuseraft init
# Or start from a built-in template
fuseraft init --template dev-team --model claude-sonnet-4-6
fuseraft init --template graph # directed-graph pipeline with parallel fan-out
fuseraft init --template designer # AI-assisted config designer
# Run a session
fuseraft run -c config/orchestration.yaml "Build a REST API in Go with JWT authentication"
# Resume the most recent incomplete session
fuseraft run --resume
# Validate a config — add --diagram for a Mermaid flowchart preview
fuseraft validate config/orchestration.yaml --diagramPrebuilt binaries are self-contained — no .NET installation required.
Linux / macOS
curl -fsSL https://raw.githubusercontent.com/fuseraft/fuseraft-cli/main/install.sh | bashAdd --system to install to /usr/local/bin instead of ~/.local/bin:
curl -fsSL https://raw.githubusercontent.com/fuseraft/fuseraft-cli/main/install.sh | bash -s -- --systemWindows (PowerShell)
irm https://raw.githubusercontent.com/fuseraft/fuseraft-cli/main/install.ps1 | iexBoth scripts download the latest release from GitHub Releases, place the binary on your PATH, and confirm with a fuseraft --version on completion.
Manual download
Grab the archive for your platform from Releases, extract the binary, and place it on your PATH.
Build from source
Requires the .NET 10 SDK:
./build.sh # Linux / macOS
.\build.ps1 # WindowsThe binary lands in ./bin/.
Orchestration
- Five routing modes: keyword, state machine, declarative directed graph (with parallel fan-out/fan-in), LLM-based selection, and fully autonomous Magentic
- Routing validators that block handoffs unless real evidence is present on disk — no hallucinated progress
- Saga orchestration wraps any pipeline with compensating rollback if a step fails
Agents
- Declare agents inline or as standalone
AgentFileYAML — reuse and version agent definitions across configs - Mix any combination of LLM providers within a single pipeline
- Federate agent slots to remote services via the A2A protocol — remote agents participate identically to local ones
Tools
- Built-in plugins: filesystem, shell, git, HTTP, JSON, search, Docker sandboxes, MCP servers, persistent scratchpad, and a shared chatroom
- Connect any MCP server — its tools are automatically registered and available to agents
Reliability
- Checkpoints after every turn — sessions can always be resumed exactly where they left off
- Token tracking per turn; enforce per-model context caps and a session-wide hard spending limit
- Conversation compaction keeps long sessions within context window limits
Governance
- Per-agent execution rings, prompt injection detection, circuit breaker, and a hash-chain audit log
- Sandbox file and shell access to a configured directory tree
- Human-in-the-loop support at any point in a pipeline
Developer experience
- Browser-based DevUI (
--devui) for real-time session visualization - Interactive Orchestration Designer (
fuseraft init --template designer) — describe your use case, get a validated config back - VS Code extension with CodeLens, IntelliSense, and a session viewer
| Doc | What it covers |
|---|---|
| Getting Started | Prerequisites, build, first run |
| CLI Reference | All commands and flags |
| Configuration | Full config schema (YAML and JSON) |
| Models & Providers | Model configuration and provider auto-detection |
| Plugins | All built-in tools agents can call |
| Strategies | Selection and termination strategies |
| Routing Validators | Anti-hallucination handoff guards |
| Harness Engineering | Designing configs that enforce real progress mechanically |
| MCP Integration | Connecting external MCP servers |
| Security & Sandbox | File and network containment |
| Governance | Execution rings, audit log, circuit breaker, SLO tracking |
| Context Store | Importing files and directories into the session context |
| Sessions | Resumption, HITL, cost tracking, compaction |
| Examples | Ready-to-use config examples |
| Design | Architecture, layer map, MAF usage, and decision log |
The fuseraft VS Code extension brings the full CLI experience into your editor.
Activity bar panel — four persistent views:
- Run Task — compose a task, pick a config, set flags (
--hitl,--tools,--verbose,--devui), and launch. Each task opens in its own named terminal; multiple tasks can run simultaneously. - Sessions — lists sessions scoped to your workspace with status, age, and task preview. Click to resume; preview icon opens a formatted transcript with per-turn token usage and cost.
- Configs — auto-discovers every fuseraft config in your workspace. Click to open, or hit + to run the Initialize Config wizard.
- Context — manages reference material agents can access during sessions. Import files or folders; they're stored in
.fuseraft/context/and available to any session in the workspace.
CodeLens on config files — three inline actions appear above the first line of any config:
▶ Run Task ✓ Validate ⎇ Diagram
Task files — right-click any .md or .txt file in the explorer or editor to run it directly as a fuseraft task. Write your task as a markdown spec, then run it without copying anything.
REPL — fuseraft: Open REPL starts an interactive single-agent chat session without a config file. Good for quick experiments.
Set Up Provider — a guided first-run panel for configuring your binary path, provider, model, endpoint, and API key. Runs automatically when the binary isn't found; available any time from the command palette.
YAML / JSON IntelliSense — full JSON Schema for fuseraft configs ships with the extension. Autocomplete, inline docs, and validation for every field — agents, models, plugins, routes, contracts, security, and more.
Status bar — a persistent fuseraft button always visible at the bottom of the editor. Click to run a task.
Contributions are welcome — bug fixes, new plugins, config examples, documentation, and new ideas. See CONTRIBUTING.md to get started.
MIT
