Agent pipelines,compiled to C++20.

An open-source studio and native compiler for AI agent workflows. Draw the graph, then ship a runner.

  • 20 C++ standard
  • 14 runnable examples
  • 2 interface languages
  • 100% MIT licensed source

Beta 2.5 · 2.5.0 · Windows and Linux

Draw the graph. Compile it to C++20. Ship a native runner.

Arestrix validates the graph, generates C++20 source and compiles it with Taskflow into parallel task DAGs. Projects, memory and logs stay on your machine; only model and MCP calls leave it, plus the Git sync you opt into.

“The graph is not interpreted. It becomes a compiled program.”

Built for delivery

Six parts of the studio that take an agent pipeline from the canvas to a package IT can deploy.

  1. 01DesignVisual graph editor
  2. 02CompileNative C++20 compiler
  3. 03RunAgent runtime
  4. 04Run localLocal AI models
  5. 05RememberProject memory
  6. 06GovernEnterprise AI Gateway

Agent-to-agent calls

The graph authorizes.
The model chooses.

A call edge declares that an agent may invoke another agent. The runtime turns that declaration into acall_agent tool with a fixed list of targets, hard limits and a trace.

  • Declared targets onlyThe model sees an enum of targets from the graph. It cannot invent an agent, a URL or a tool.
  • Parallel and asynchronousSeveral delegations in one turn run in parallel. With async: true the caller gets a callId and keeps working while call_result polls.
  • Bounded by the graphmaxCalls per edge, nesting depth 3 and 50 calls per process by default. A feedback loop also caps each agent at 10 runs.
  • A small prompt surfaceThe target receives the explicit input, never the caller's whole conversation. Notifications and trace.json carry IDs, status and timing, not payloads.
Read the delegation guide

Everything around the graph

The canvas is the beginning. These are the parts that turn a drawing into a pipeline a team can run, inspect and hand to IT.

  • Human input

    Ask a person, safely

    Interaction vertices ask for input through a declarative schema. The runtime builds the form from declared field types and never executes model-written HTML or JavaScript.

    textchoicemulti-choicedateaudited
    Interaction vertices
  • Deliverables

    Artifacts, not just logs

    Output vertices copy deliverables to exports/ and open them in the Artifacts tab: SVG, CSV/TSV/XLSX, Markdown, PDF and JSON.

    scene.svgreport.mddata.xlsxtrace.json
    Output nodes
  • Isolation

    Sandboxes that fail closed

    Run tools on the host, in Docker or in WSL2. Network policy is set per vertex, and an unavailable isolation level fails closed instead of silently falling back.

    host_directcontainermicrovmoffline
    Security model
  • Skills and MCP

    Skills, MCP and native tools

    Bind local skills to a vertex, connect MCP servers over stdio or HTTP, and use native tools for files, HTTP, data, Git, SQLite, memory and time without installing a server.

    SKILL.mdstdioHTTPSQLiteGit
    Workspaces and MCP
  • Headless

    The same engine, headless

    arestrix-cli generates, compiles and runs the same graph without the Studio. Built for CI, servers and batch jobs, with stable exit codes and native memory reports.

    arestrix-cli run graph.json --ci
    CLI reference

Bilingual by design: the Studio and the documentation ship in English and Portuguese.

Project memory · opt-in

Memory that stays with the project

Arestrix keeps what a run learned in the project's own SQLite graph: lessons, claims, source passages and validated paths. An agent reads a token-budgeted brief before it acts, and new knowledge waits for approval.

  • Off, consult or learn, set per vertex
  • Lessons, claims and source passages in one local graph
  • Paths activate only after distinct validated runs
  • Lexical + vector retrieval over a fingerprinted index
  • Proposals wait for approval; evidence keeps the proof
  • Knowledge and telemetry in separate SQLite databases

Measured · controlled tests

Tested, not promised.

Two controlled runs against the real DeepSeek API and one deterministic paired pilot. Each test holds its fixture fixed and compares memory with a control arm.

Prompt tokens
−87%Context substitution: 24,718 → 3,228 prompt tokens, with the same ORION-42 answer.
Long interaction
ORION-42Memory ON cited the code in 9 calls / 14,164 tokens. OFF answered UNKNOWN in 8 calls / 8,475 tokens.
Paired A/B pilot
120/120Validated observations across 20 tasks × 3 repetitions × 2 arms on frozen knowledge.

Recorded 2 November 2026 for memory v1.0.1. Controlled fixtures, not a benchmark; experimental retrieval switches remain off by default. Read the test strategy or the memory v1.0.1 notes.

Enterprise AI Gateway

One gateway for every model API

An on-prem OpenAI and Anthropic-compatible proxy. Provider keys stay on the server; every runner gets a virtual key with a budget, a rate limit and a usage record.

  • Virtual keys by key, project, user, provider and model
  • Monthly budgets, rate limits and a usage ledger
  • Fail-closed routing; local models stay exempt
  • /v1/usage, /health and Prometheus /metrics
Read the gateway guide

Arestrix for teams

The artifact travels.
The data stays.

Arestrix is not a hosted automation service. It is software your team runs on machines you control, with artifacts you can review and a policy layer for the spend.

  • No per-seat license and no locked tier.
  • No Arestrix-managed servers or multi-tenant workspace.
  • MIT licensed for commercial and academic use.
  • Reviewable by default

    Graphs, generated C++ and packaging metadata are text files. Version them, diff them and sign off the exact thing that runs.

  • Budgets on your server

    The on-prem AI Gateway issues virtual keys and enforces monthly budgets, rate limits and a usage ledger by key, project, user, provider and model.

  • Deployment IT can own

    Ship a standalone runner with an HMAC/SHA-256 manifest, then package it as MSI or MSIX for Intune/SCCM. Credentials resolve at runtime through DPAPI or Azure Key Vault.

  • Local-first by construction

    Projects, memory, logs and databases stay on the machine or network; Git sync is opt-in. Only the model and MCP calls you configure leave it, and local models never pass through the gateway.

Most agent tools hand you a runtime you cannot inspect. Arestrix hands you the artifact: the graph, the generated C++20, the build metadata and a standalone runner. If a model provider changes tomorrow, the pipeline still belongs to you.

Read the docs
  1. 01 / 04 · Design

    Draw the graph

    Start from a template or an empty canvas. Add agents, tools, decisions, switches, subflows and feedback loops, then validate the graph before a model call. Missing models, unresolved variables and unreachable vertices are reported on the canvas.

    Graph and nodes
  2. 02 / 04 · Compile

    Inspect the code

    Arestrix generates C++20 and opens it in Monaco. Parallel branches become Taskflow tasks; condition and switch vertices become branches; loops become Taskflow loops. An unchanged graph reuses the previous binary.

    How compilation works
  3. 03 / 04 · Run

    Run with telemetry

    Press F5. Live thinking streams, node latency, token throughput, tool arguments and 429 retries arrive on the canvas and in the console. Batch runs checkpoint each item and resume from the last completed vertex.

    Agents and execution
  4. 04 / 04 · Ship

    Export and package

    Ship a standalone runner with a focused progress screen, or package it as MSI/MSIX for managed Windows deployment. The package carries an HMAC/SHA-256 manifest; credentials resolve at runtime through DPAPI or Azure Key Vault.

    Standalone runner

A binary, not a runtime

The difference shows up at deployment: what you ship, what holds the keys and what can be verified before it runs.

A directional comparison between a typical runtime-based agent stack and Arestrix
DimensionTypical runtime stackArestrix
Execution modelAn interpreted service or script, with its runtime dependencies.Generated C++20 and Taskflow DAGs, compiled into a native binary.
DistributionAn interpreter, a package manager and environment setup per endpoint.A standalone runner; optional MSI/MSIX for managed Windows deployment.
SecretsEnvironment files, a shared config or vendor-held keys.Runtime resolution through Windows DPAPI or Azure Key Vault.
Package integrityDepends on the deployment pipeline.SHA-256/HMAC manifest, with fail-closed verification at startup.
Local dataUsually server-side or hosted; prompts leave the perimeter.Projects, memory, logs and databases stay on the machine unless you enable Git sync.
MCPCommunity nodes or custom HTTP steps.A native client with a persistent session per server.
LicenseVaries by product and edition.MIT, for commercial and academic use.

Directional summary, not a benchmark. Read the full comparison for scope and caveats.

What it costs

Arestrix is free and MIT licensed

Arestrix costs zero dollars. It is MIT licensed, with no per-seat fee, locked features or hosted subscription. Model usage is billed by the provider or endpoint you choose.

Arestrix is free. No per-seat fee. No locked features. You pay your model provider — or nothing, if you run a local model.

  • The softwareMIT licensed. Commercial and academic use included.
  • The infrastructureStudio, runner and gateway run where you put them.
  • The model billBilled by the provider or endpoint you choose. Local models bypass gateway budgets.

No account, no hosted workspace and no credit card. The source is on GitHub.

Is Arestrix free?
Yes. Arestrix is MIT licensed, with no per-seat fee, locked features or hosted subscription. Model usage is billed by the provider or endpoint you choose. A local model costs nothing beyond your own hardware.
Is it really open source?
Yes. The full source is public on GitHub under the MIT license, for commercial and academic use. The landing page is open source too.
Which platforms are supported?
The Studio runs on Windows and Linux. Programs generated from a graph currently target Windows; Linux is on the roadmap. Beta 2.5 is a development pre-release, so APIs, file formats and command-line flags may still change. The Windows installer is included; clean-machine validation, the Linux package and the full test matrix are pending.
Which models and providers can I use?
DeepSeek, OpenAI, Anthropic, Google and Mistral are configured out of the box, and any OpenAI-compatible endpoint can be added. Local servers such as Ollama, LM Studio, llama.cpp and vLLM work through the same interface. Provider, model and prompt can be set per vertex. See Getting started.
Do I need an API key to try it?
The scripted end-to-end examples run without one. A real agent run needs a provider key or a local model server; keys live in the OS credential store or environment, never in the project file.
Does my data leave the machine?
Projects, pipelines, generated code, logs, databases and memory stay on the machine. Only the model and MCP calls you configure leave it; Git synchronization is opt-in. The on-prem AI Gateway keeps provider keys on the server, and local models never pass through the gateway.
How does project memory work?
Memory is an opt-in local knowledge graph. Each vertex is set to off, consult or learn: a consult run reads a token-budgeted brief, and a learn run also records an episode and may propose lessons, claims or playbooks. Nothing becomes knowledge on its own; proposals and paths wait for validation and approval, and knowledge lives in a separate SQLite database from telemetry. In controlled DeepSeek tests, memory retrieved an answer the OFF arm missed and reduced static prompt tokens by 87% in the context-substitution run. Read how memory works and the memory v1.0.1 notes.
Can I run it in CI or on a server?
Yes. arestrix-cli is the same generator and runtime without the UI. It supports gen, run, check, doctor, batch mode, --ci and stable exit codes. Read the CLI reference.
How are secrets handled?
Project files hold variable names or ${NAME} references, never values. The runner resolves credentials at runtime through Windows DPAPI or Azure Key Vault, scrubs secret environment variables before starting child processes, and scans for leaked key formats before export. Read the security and governance model.
Is there a hosted Arestrix?
No. Arestrix is a desktop studio plus an optional on-prem gateway. There are no Arestrix-managed servers and no multi-tenant workspace. A team runs it on machines it controls and shares the artifacts.
What is still missing?
Linux code generation and packaging, the Windows/Linux CI matrix, a signed remote catalogue, HA for the gateway, an admin web console, gateway streaming and full cognitive-graph visualisation are still open. The roadmap lists them with the current limitations.
How do I start?
Download the Windows installer or the portable ZIP, open one of the fourteen examples, choose a provider and press F5. Or build from source with python CppCore/dev.py. The download section has both paths.

Beta 2.5 · 2.5.0

Get Beta 2.5

Start with the Windows build, build from source on Windows or Linux, or run the same engine headless in CI. No account and no hosted workspace.

  • Recommended

    Windows installer

    Per-user install under %LOCALAPPDATA%, without administrator rights. It checks WebView2, the VC++ Redistributable, Git credentials, MSVC Build Tools and provider keys.

    Download the .exe
  • Portable

    Windows ZIP

    Extract the archive anywhere and run start-arestrix.bat. The extracted folder becomes ARESTRIX_HOME, so the whole install can live on a removable drive.

    Download the .zip
  • Windows and Linux

    Build from source

    Git 2.30+, Node.js 20+, Python 3.10+, CMake 3.20+ and a C++20 compiler. Clone with submodules, install the frontend dependencies and run the native build.

    Read the build steps
  • Headless

    arestrix-cli

    Ships with the Studio. Generate, compile and run the same graph without the UI, with --ci, batch mode and stable exit codes for servers and pipelines.

    Read the CLI reference

From source

Four commands to the Studio

The build compiles the C++ backend and the frontend, then opens the Studio. Linux uses the same entry point; programs generated from a graph currently target Windows.

terminal
$ git clone --recurse-submodules https://github.com/frankalcantara/Arestrix.git$ cd Arestrix$ npm ci$ python CppCore/dev.py

Every build ships SHA256SUMS, SBOM.json and a per-file package-manifest.json. Windows artifacts are signed by SignPath Foundation when signing is enabled. Read the changelog for the current limitations.

Open source. Local-first. MIT licensed.

Start with one example. Compile your first pipeline today.

Acknowledgement · independent

Thank you, OpenCode.

OpenCode is an excellent open-source AI coding agent. It runs in the terminal, IDE or desktop, works with free models or any provider, and is private by design.

We use OpenCode and recommend it strongly. It is fast, careful and pleasant to work with, and it has earned a permanent place in our workflow. If you write software with AI, start with the free models and see for yourself.

Visit OpenCode

Arestrix is not affiliated with, sponsored by or endorsed by OpenCode. OpenCode has not reviewed or endorsed Arestrix. This is an independent thank-you and recommendation.