Unix like coding agent

★ 3,802⑂ 436👁 4⑃ 1,586● 180▤ 16◈ 0
ZigApache-2.0Created 2026-08-11fx.sh
3,802
stars
+3
436
forks
4
watchers
1,586
prs
180
issues
16
releases
0
discussions

README

⠀⠀⠀⠀⠀⠀⣠⣾⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀
 ⠀⠀⠀⠀⠀⢰⣿⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
 ⠀⠀⠀⣠⣶⣿⣿⣷⣶⡶⣶⣶⣆⠀⠀⠀⣴⣶⣶⠆
 ⠀⠀⠀⠉⢹⣿⣿⠉⠉⠀⠘⢿⣿⣧⣀⣾⣿⡿⠃⠀             Tiny, open, embeddable, native coding agent.
 ⠀⠀⠀⠀⣼⣿⡏⠀⠀⠀⠀⠀⠻⣿⣿⣿⠟⠀⠀⠀
 ⠀⠀⠀⢀⣿⣿⠃⠀⠀⠀⠀⢠⣦⠘⢿⣿⣷⡀⠀⠀             curl -fsSL https://fx.sh/setup.sh | bash
 ⠀⠀⠀⣸⣿⡟⠀⠀⠀⠀⣰⣿⣿⠗⠀⠻⣿⣿⣄⠀
 ⠀⠀⠀⣿⣿⠇⠀⠀⠀⠾⠿⠿⠋⠀⠀⠀⠘⠿⠿⠦             ⚠ Status: Experimental. Use at your own risk.
  ⠀⣸⣿⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
 ⣿⣿⣿⠟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀


 fx

fx is a minimal coding agent CLI that still comes with batteries included. It's one native binary written in Zig, so there is no runtime to install, and it runs the same on your laptop, in CI, or inside an agent sandbox. Its output is closer to a Unix shell than an IDE, because the conversation prints into your terminal's scrollback instead of filling the screen.

fx is meant to be embedded and extended. Scripts call it with fx ask, editors connect over the Agent Client Protocol (ACP), and JavaScript apps run the same agent core through libfx with their own tools. Skills, MCP servers, and your project's AGENTS.md add to what the agent knows and can do.


  
  
  


 Features

- Small and fast: CI fails a pull request if any benchmarked command, such as fx help or fx status --json, takes longer than 2 ms on Linux (benchmarks). Stable releases for Apple silicon must also fit under a fixed size limit.
- Built-in tools: fx finds, reads, and edits files, runs shell commands, searches the web and reads URLs, and delegates work to subagents. A development server or file watcher can keep running while it works (tools).
- Model choice: sign in to Vercel AI Gateway, use a ChatGPT or Grok subscription, or connect an OpenAI-compatible Chat Completions endpoint such as Ollama or OpenRouter (custom model connections).
- Inline output: you can scroll, search, and copy the conversation like any other command's output, and tmux bindings and copy mode keep working. Terminals that support the Program Status Protocol can also show when fx is busy or waiting for you.
- Your own shell: commands run in your login shell, with your aliases, functions, and PATH. fx runs your startup files once and reuses the result until one of them changes, so a slow .zshrc doesn't slow down every command. Commands also receive AI_AGENT=fx in their environment, so development tools can detect fx.
- Permissions: the default auto mode runs routine work, such as editing project files and running tests, without asking. Anything else goes first to a model that checks the exact action for prompt injection or malicious behavior, and fx holds the action if the check finds a problem. Switch to ask to approve each action yourself, or to full-access to turn the checks off (permissions).
- Sessions: fx saves your conversations under ~/.fx/sessions/, and fx -c picks up where you left off in a project. When a conversation fills the model's context, fx compacts older turns but keeps their full text on disk, where the agent can look it up (sessions).

 Install

bash
curl -fsSL https://fx.sh/setup.sh | bash


fx runs on 

Top issues

Latest release

v0.0.16 v0.0.16 2026-10-29
fx uses 41% fewer tokens. The CLI is 2.8% smaller. libfx npm downloads are about 60% smaller. Edit files up to 4× larger, now up to 16 MiB.

 Improvements

- Long agent turns use less CPU. A paired local benchmark with 1,000 tool steps used 50–59% less CPU than the previous implementation.
- fx update now works as an alias for fx upgrade, including --channel and --json.
- Tool results keep their original timestamps when a turn is rebuilt or resumed.
- The macOS arm64 CLI binary is 2.8% smaller (5.97 MiB vs 6.15 MiB), saving 180,576 bytes.
- Installing libfx downloads about 60% less than 0.0.15

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON