Fawx mascot

Your AI, in your terminal.

An open-source agentic engine built in Rust. It plans, calls tools, remembers what it learns, and runs entirely on your hardware with your API keys.

$ cargo install fawx

Requires Rust. See install guide for details.

Fawx is a TUI-first agentic AI engine built in Rust. Give it a task and it plans, calls tools, handles errors, and iterates until the job is done. It remembers what it learns, builds skills over time, and runs entirely on your machine with your API keys.

Everything you need, nothing you don't.

A focused set of capabilities designed for real work.

🦀

Built in Rust

Starts in milliseconds. Runs for days without leaking memory. A single compiled binary with no runtime dependencies. No Python, no Node, no Docker.

🧠

Persistent Memory

Fawx remembers across sessions. It learns your projects, preferences, and environment using a built-in embedding model for semantic search. No external vector database needed.

🔧

Native Tool Calling

13+ built-in tools for files, web, browser, and code execution. The model calls them natively through provider APIs, not prompt-stuffed function descriptions.

🧩

WASM Skill Plugins

Hot-loadable WebAssembly skills with cryptographic signature verification. Install from the marketplace or build your own in any language that compiles to WASM.

🔒

Kernel Safety

Hard separation between the safety kernel and the intelligence layer. Proposal gates require human approval for writes. Tier-3 immutable paths can never be overwritten. Credentials are encrypted at rest with AES-256-GCM.

💬

Multi-Channel

TUI, Telegram, HTTP API. Start a conversation in your terminal, continue from your phone. Same engine, same memory, same thread.

🔄

Multi-Provider

Claude, GPT, local models. Switch providers mid-conversation. Your keys, your hardware, no telemetry.

Real-Time Streaming

Token-by-token streaming over SSE. Watch the model think and respond in real time as it works through your task.

Fawx thinks, then acts.

A real agentic loop. Fawx reads context, calls tools, and synthesizes answers on its own.

fawx tui
What's the weather in Denver and should I bike to work?
🔧 web_search("Denver weather today")
52°F, partly cloudy, 5mph winds
Based on current conditions in Denver:
Temperature: 52°F (comfortable for cycling)
Wind: 5mph (light, no issue)
No rain in the forecast until evening
Yes, it's a great day to bike! Just bring a light layer
for the morning chill. ☀️

Layered by design.

Three clean layers. The kernel enforces safety invariants. The loadable layer provides intelligence. Shells are replaceable.

Shells
TUI · Telegram · HTTP API
Loadable Layer
Skills · Memory · Providers
Kernel
Loop · Gates · Policy · Tools

The agent can modify its own skills and behavior, but the safety rules that govern it are compiled into the binary and can never be changed at runtime.

An agent that improves itself.

Fawx runs competing agents against the same problem, each with a different strategy. The best solution wins through objective evaluation, and every result is recorded in a cryptographic chain so you can verify what changed and why.

🏁

Competing Strategies

Each experiment spawns multiple agents with different approaches: conservative, aggressive, creative. They work independently on the same problem, so you get genuine diversity in the solutions.

⚖️

Cross-Evaluation

Agents evaluate each other's work, not their own. Build it, test it, measure it. The scoring is objective because it's based on real outcomes: does the code compile, do the tests pass, did the test count go up.

🔗

Tamper-Evident Chain

Every experiment result is hashed and linked to the previous entry, like a blockchain but for fitness. You get a verifiable history of what was tried, what won, and what was rejected.

🎯

Goal-Agnostic

The protocol works for any kind of experiment. Improve code quality, research API designs, fine-tune local models, optimize configurations. The framework runs the competition; you define what "better" means.

Signal: missing test coverage in scoring module
Hypothesis: add unit tests for edge cases
├─ Node 0 (Conservative) score: 0.72 +3 tests
├─ Node 1 (Aggressive) score: 0.45 +1 test, refactored
└─ Node 2 (Creative) score: 0.00 build failed
Decision: ACCEPT (Conservative) chain entry #7

Up and running in five commands.

1

Install

cargo install fawx or clone the repo and build from source.

2

Setup

fawx setup runs an interactive wizard to connect your API key.

3

Chat

fawx chat starts a quick conversation in your terminal.

4

TUI

fawx tui launches the full terminal UI with real-time streaming.

5

Go multi-channel

fawx serve --http enables the Telegram bot and HTTP API.

Extend Fawx with WASM plugins.

Every skill is a signed WebAssembly module that runs in a sandbox. Install community skills or write your own in any language that compiles to WASM.

🌤️

Weather

Forecasts and current conditions from multiple providers.

👁️

Vision

Describe images, read screenshots, and analyze visual content.

🔊

TTS

Text-to-speech synthesis using local or cloud voices.

🌐

Browser

Navigate pages, extract content, and fill forms headlessly.

📦 Install from the marketplace: fawx install <skill>
🛠️ Build your own in any language that compiles to WASM.
🔐 All skills are cryptographically signed and verified before execution.