⠀⠀⠀⠀⠀⠀⣠⣾⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⢰⣿⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⣠⣶⣿⣿⣷⣶⡶⣶⣶⣆⠀⠀⠀⣴⣶⣶⠆
⠀⠀⠀⠉⢹⣿⣿⠉⠉⠀⠘⢿⣿⣧⣀⣾⣿⡿⠃⠀ Tiny, open, embeddable, native coding agent.
⠀⠀⠀⠀⣼⣿⡏⠀⠀⠀⠀⠀⠻⣿⣿⣿⠟⠀⠀⠀
⠀⠀⠀⢀⣿⣿⠃⠀⠀⠀⠀⢠⣦⠘⢿⣿⣷⡀⠀⠀ curl -fsSL https://fx.sh/setup.sh | bash
⠀⠀⠀⣸⣿⡟⠀⠀⠀⠀⣰⣿⣿⠗⠀⠻⣿⣿⣄⠀
⠀⠀⠀⣿⣿⠇⠀⠀⠀⠾⠿⠿⠋⠀⠀⠀⠘⠿⠿⠦ ⚠ Status: Experimental. Use at your own risk.
⠀⣸⣿⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⣿⣿⣿⠟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
fx is a coding agent CLI written in Zig: a 6.17 MiB native binary that is open source (Apache-2.0), model-agnostic, and embeddable as a harness in larger systems. Its interface stays closer to a Unix shell than an IDE in the terminal.
curl -fsSL https://fx.sh/setup.sh | bashSign in with one of:
fx login: Vercel AI Gatewayfx login codex: ChatGPT subscription (OpenAI Codex OAuth)fx login grok: Grok subscription (xAI OAuth)fx setup: AI Gateway API key
Then start the interactive shell from a project:
cd your_project
fxOr make a one-shot request:
fx ask "explain the changes in this repository"Inside the shell, run /help to browse interactive commands.
fx builds as a native binary or WebAssembly. Applications embedding fx can provide network transport, session storage, configuration, permission handling, and terminal I/O.
| Surface | Use |
|---|---|
fx acp |
Connect the native agent to editors and other Agent Client Protocol clients. |
createFxAgent() |
Embed the agent core in a JavaScript host with fx-core.wasm. |
createFxTerminal() |
Embed the interactive terminal with fx-term.wasm. |
The WebAssembly SDK is experimental. See the WebAssembly SDK and ACP documentation.
The SDK is published to npm as libfx. For runnable Node.js, browser, Next.js, and Nuxt applications, see the libfx examples.
- Skills: reusable instructions the agent loads when invoked
- MCP: connect external tools and servers
- Subagents: delegate independent work
Read the fx documentation for sessions, models, permissions, configuration, and the full CLI and slash command references.
Building fx requires Zig 0.16.0+:
git clone https://github.com/vercel-labs/fx.git
cd fx
zig build -Doptimize=ReleaseSafe
./zig-out/bin/fxRun the test suite with zig build test. See CONTRIBUTING.md for development and contribution guidelines.
Third-party licenses and attributions are listed in THIRD_PARTY_NOTICES.md.
Interface sounds by cuelume.