What is flux?
flux is a deterministic agent platform for building and running tool-using agents without giving the model direct control of the machine.
The thesis is simple: the LLM is not the runtime. Provider-native typed stages interpret intent, gather evidence, and propose literal operation calls inside an authored Flux-Lang outer loop. The host freezes effectful proposals into action batches, then a deterministic runtime executes approved calls through one mandatory safety envelope:
authorization -> approval -> guarded IO
The default conversational loop never asks the model to generate per-turn executable Flux. Authored
control flow owns order, bounds, approval, and stopping; the model supplies bounded judgment. The
result is a run you can inspect, replay, and reason about. There is one explicit source-generation
seam for reusable vocabulary: op.register
accepts exactly one agent-proposed composite operation, then analyzes, scopes, and guards it before
installation.
The core product
- Agent: the local coding agent — CLI/TUI, an embeddable Rust SDK, an HTTP/A2A server, and multi-agent programs.
- Flux-Lang: the authored workflow language and reference interpreter.
Public docs vs project docs
This site is the public documentation for users and integrators. It covers stable concepts, the CLI, Flux-Lang, the SDK, plugins, and the security model.
The deployed site follows main, and redeploys on every push to it. That means these pages describe
the current state of the source — including changes that have not yet been released, so a page may
document behaviour your installed build does not have. Check
What's new for the customer-facing history: entries under a version heading are
released, and anything under Unreleased is on main only. flux --version tells you which build
you are actually running.
The repository also contains internal contributor docs under docs/ and crate-level docs/
directories. Those are design records, story boards, roadmap notes, and implementation references.
They are useful when contributing, but they are more detailed and more volatile than this site.
Choose your path
- Try flux: install it and run the mock provider, then build your first Flux app.
- Use the coding agent: start with the CLI, choose a model provider, and add project context.
- Understand execution: read Concepts, Infrastructure, and The agent loop.
- Present flux to your team: step through the interactive engineering presentation — the runtime boundary, a guarded live demo, connectors, and Exchange in about 20 minutes.
- Build and integrate an app: define a multi-agent program, learn Flux-Lang, then connect channels or plugins.
- Embed or serve an agent: use the Rust SDK, the HTTP API, or A2A.
- Deploy safely: set the approval and permission boundary, then review the security model.
- Diagnose or update: check Troubleshooting and What's new.