← Back to Discover

fx

Small native command-line coding agent that prints its conversation into your terminal like a shell, runs the same on laptops, CI and sandboxes, and can be embedded through scripts, editors or a JavaScript library.

Coding agentsCommand-line tools

What it does

fx is a minimal coding agent for the terminal, shipped as one native binary written in Zig with no runtime to install. Its output reads like a Unix shell rather than an IDE: the conversation prints into your terminal scrollback, so you can scroll, search and copy it. The page marks its status as experimental and says to use it at your own risk. Built-in tools find, read and edit files, run shell commands in your login shell, search the web, read URLs and delegate to subagents. Permissions default to an auto mode that lets routine work through and has a model check other actions for prompt injection or malicious behavior. You can switch to approving each action or turn the checks off. Sessions are saved so you can pick up where you left off in a project. For models, you can sign in to Vercel AI Gateway, use a ChatGPT or Grok subscription, or connect an OpenAI-compatible endpoint such as Ollama or OpenRouter. Scripts call fx with fx ask, editors connect over the Agent Client Protocol, and JavaScript apps use the libfx library. It also loads skills, MCP servers and AGENTS.md project instructions. It runs on macOS and Linux (x86_64 and arm64) and is Apache-2.0 licensed.

Capabilities

  • One native binary with no runtime to install
  • Inline, shell-like output that stays in terminal scrollback
  • Built-in file, shell, web and subagent tools
  • Auto, ask and full-access permission modes
  • Models via Vercel AI Gateway, a ChatGPT or Grok subscription, or OpenAI-compatible endpoints
  • Embeddable through fx ask, the Agent Client Protocol and the libfx JavaScript library

When to use it

  • You want a terminal coding agent that behaves like an ordinary command
  • Calling an agent from scripts or CI jobs and reading structured JSON output
  • Embedding an agent in an editor, a sandbox or a JavaScript app
  • Connecting your own OpenAI-compatible model endpoint such as Ollama