fx :Tiny, open, native coding agent.
A new open-source “fx” coding agent harness from Vercel, written in Zig, aims to be a tiny, fast, Unix-style CLI for working with AI coding assistants and embedding them into other systems. Commenters are split on whether its small binary size, performance, and WASM-embeddability meaningfully distinguish it from the growing number of similar agent tools such as Pi, OpenCode, and Maki. Many also criticize its tight coupling to Vercel’s AI Gateway and onboarding that obscures how to use third-party or local models, viewing it as part of a broader trend of vendor-flavored agents in an already crowded space.
Project positioning and features
- Described as a “tiny, embeddable agent harness and CLI” rather than just another coding agent.
- Key claims:
6 MiB native Zig binary, very fast cold start (10µs), low memory baseline, minimal TUI (more “Unix shell” than “IDE in the terminal”), scroll-preserving output, model-agnostic design, and wasm builds for embedding. - Emphasizes a small core extended via “skills/plugins/MCP,” minimal system prompt and toolset to reduce token cost and improve time-to-first-token.
Provider lock‑in and onboarding
- Several commenters note that the current UX strongly pushes Vercel AI Gateway:
fx loginand AI Gateway key are front and center. - Some readers consider this a dealbreaker and label the project “useless” until generic OpenAI-compatible or other direct API keys are clearly supported.
- There is mention of support for subscriptions (e.g., Codex, Grok) “incoming,” but exact status and configuration are unclear.
- Confusion reported around configuring non-Vercel providers despite claims that it’s possible.
Size, performance, and “minimalism”
- Opinions differ on whether a 6 MiB CLI is “tiny”: some say it’s large for Zig and expect hundreds of kilobytes; others compare favorably to Go, Node, Electron, etc.
- One user reports an initial 144 MB build that reduces to ~6 MB when compiled with size optimization.
- Some argue that the number of built-in tools (around two dozen, including fine-grained file operations) contradicts the “minimal” claim; others see the tool richness as useful, especially for non-terminal environments.
Comparisons and alternatives
- Frequently compared to Pi (TypeScript-based harness), OpenCode, DeepSeek’s harness, hax (C, smaller binary, multi-provider), Maki (Rust, Lua plugins), 3code (Nim), and homegrown C or Python shells.
- Themes: desire for tiny, dependency-free, or wasm-embeddable agents vs. richer, more “batteries-included” systems.
Broader discussion: agent harness ecosystem
- Many comments zoom out to why there are so many agents: current AI “gold rush,” low barrier to entry, experimentation before best practices emerge, and harnesses being a key optimization layer.
- Debate over terminology: “harness” vs “agent” vs “model,” with some proposed decompositions like model + harness (tools/config) + live agent instance.
- Some are excited by small, composable, Unix-like cores; others are fatigued and see most new agents as undifferentiated “slop.”