Explicit states
Define roles, prompts and tool access in .sm files. The Decision router can select declared states with a probability threshold.
Self-hosted · Built in Rust
Give your AI agents a runtime. Praxis connects your models to explicit workflows, practical tools and checks that determine when the work is done.
Web dashboard, terminal chat and Discord.
One runtime on your own machine.
RMB · Toutcome: committed
verified: trueCompletion requires current receipts. What is verified depends on the checks in your contract.
Choose your models
01 / The runtime
The model chooses an action. Your workflow defines the capabilities it can use and the evidence needed to move forward.
Define roles, prompts and tool access in .sm files. The Decision router can select declared states with a probability threshold.
Opt into capabilities with preconditions, postconditions and rollback. Failed source checks can restore the original file.
Require current, task-owned execution receipts before a state transition or completion. A model's claim alone cannot satisfy a receipt guard.
02 / Workflows
Praxis Decision IR maps a compact instruction to a trusted capability. The same contract, verification and receipt rules apply.
Use your normal chat model, including Ollama. The verified Rust workflow is an opt-in example you can adapt to your project.
Set up the IR workflow# Operator-selected project, checked first
[workspace]
required_files = ["Cargo.toml", "Cargo.lock"]
required_directories = ["src"]
[decision_ir]
R = inspect_file
M = verified_rust/modify_source
B = verified_rust/build_workspace
T = verified_rust/run_workspace_tests
C = agent_completeR {"path":"src/main.rs"}03 / Your workspace
Configure the runtime once. Talk to it through the interface that fits the task.
Chat, inspect context and tool history, configure secrets, manage plugins and view workflow state.
http://localhost:1337Use the chat TUI with local history, provider login, streaming answers and conversation controls.
praxis chatConnect an optional Discord bot for text and voice. Add QEMU VM tools and media plugins when needed.
Discord setup04 / Get started
Build with a recent stable Rust toolchain. Interactive onboarding prepares the installation assets and provider settings.
Read the setup guidegit clone https://github.com/wasser-boo/praxis.git
cd praxis
cargo build --release --locked
./target/release/praxis onboard --interactive
./target/release/praxis runhttp://localhost:1337.Dashboard: 0.0.0.0:1337 · Gateway API: 0.0.0.0:3537. Use your server's hostname for remote access. Keep access behind your firewall, VPN or authenticated TLS proxy.
Select an existing project with praxis run --workspace-dir /path/to/project. Installation assets stay at ROOT_DIR. The runtime checks the prepared project before calling the model.