hax

From public sources

A minimalist, terminal-native coding agent written in C.

AI toolCategory: AI ToolsOpen sourcedata checked Oct 16, 2026

Overview

  • ai-agent
  • anthropic
  • c
  • cli
  • coding-agent
  • coding-assistant
  • llama-cpp
  • llm
  • local-llm
  • openai
  • openrouter
  • repl

Installation

Commands are shown, never run by the marketplace. Check them against the official documentation.

Compatibility

Unknown means no evidence was found — not that the product is incompatible.
PlatformStatusArchitectureEvidenceConfidence
WindowsUnknown———
macOSCompatiblearm64official build in release v0.6.1: hax-0.6.1-macos-arm64.tar.gz0.70
LinuxCompatiblearm64official build in release v0.6.1: hax-0.6.1-linux-aarch64.tar.gz0.70
Compatiblex86_64official build in release v0.6.1: hax-0.6.1-linux-x86_64.tar.gz0.70
Web browserUnknown———
Server / self-hostedUnknown———
Container (OCI)Unknown———

Releases

checked Oct 30, 2026
v0.6.1LatestOct 15, 2026Official source ↗

Files in 0.6.1

The marketplace does not host these files: downloads go to the official source. Files have not been scanned by us.
FilePlatformSizeSHA-256Download from the official source
hax-0.6.1-linux-aarch64.tar.gzlinux · arm64 · tarball972.1 KB77e116bba4c9…Official source ↗
hax-0.6.1-linux-x86_64.tar.gzlinux · x86_64 · tarball942.6 KBd648c6542014…Official source ↗
hax-0.6.1-macos-arm64.tar.gzmacos · arm64 · tarball309.9 KBe8e317abe4ed…Official source ↗
hax-0.6.1.tar.xzUnknown886.1 KBb46c13187770…Official source ↗
SHA256SUMSchecksums371 B2bbf4423f678…Official source ↗

Release history

Quality profile

algorithm quality-v1.0 · assessed Oct 16, 2026
Quality Score92
Risk Score0
Confidence 1.00
Quality Score and Risk Score are different measures. A high score does not guarantee safety.

Score components

Maintenance · 2020
last activity 0 days ago
Documentation · 1515
README 6124 chars, description present
Ready to use · 1515
install instructions: yes; releases: yes
Metadata · 1010
4/4 of description, homepage, license, topics
Releases · 1010
7 release(s), latest 0 days ago
Category confidence · 105
classifier confidence 0.5
Adoption · 107
915 stars (log-dampened, 10k = max)
License clarity · 55
SPDX MIT
Community · 55
issues enabled, 60 forks

License

MIT
Known licensefrom the repository host

This is the catalog policy status, not legal advice.

Sources

github.com/OleksandrChekhovskyi/haxPrimary★ 915 starslast activity Oct 15, 2026Primary repository · Confidence 1.00

Reviews

Sign in to write a review

No reviews yet.

Alternatives

README

From OleksandrChekhovskyi/hax · license MIT · fetched Oct 30, 2026

hax

A minimalist, terminal-native coding agent written in C.

Key features

  • Lightweight by design — A single native C binary with a small dependency set. Starts instantly and uses only a few MB of memory, leaving more RAM for local models.
  • Local models are first-class — Start llama-server -m [model].gguf, then hax --provider llama.cpp, and hax auto-discovers the model and runtime capabilities. No custom provider config block is needed for the default setup.
  • Respects your terminal — Streaming Markdown and live tool output, reflowed for display in the terminal. Only redraws the current streaming line or the input area, native scrollback is preserved. Does not take over or mess with your terminal.
  • Inspectable — See exactly what was sent to the model and what it replied in a usable transcript view (Ctrl+T). Optionally collect a detailed wire protocol trace.
  • Broad provider support — OpenAI (+compatible), Anthropic (+compatible), Codex (via a ChatGPT subscription), OpenRouter, OpenCode Zen/Go, DeepSeek, llama.cpp, Ollama, and custom endpoints.
  • Well-behaved Unix tool — XDG paths, clean stdout in -p one-shot mode with resume hints on stderr, plain-text config and session files, composition via subprocesses instead of plugins.

Target audience

Developers who live in the terminal, run local models, audit what their tools do, package software for distros, or run agents where resources are scarce. If you want MCP marketplaces, a plugin runtime, IDE panels, or per-command permission prompts, other agents build exactly that — hax deliberately doesn't, and docs/philosophy.md explains each omission and the pattern that covers the need.

If "fancy new AI tech in an old-school minimalist package" sounds like your vibe, you might like this.

Install

hax runs on Linux, macOS, FreeBSD, and OpenBSD; on Windows, use it under WSL. The BSDs build from source only.

With Homebrew (macOS or Linux):

brew install oleksandrchekhovskyi/hax/hax

On Arch Linux, hax is in the AUR as hax.

Alternatively, prebuilt binaries for Linux (x86_64 and aarch64) and macOS (Apple Silicon) are available from the latest release: unpack the hax binary into any directory on your PATH. The Linux binaries are fully static, and the macOS one needs only libraries that ship with macOS. If macOS refuses to run a binary downloaded through a browser, clear its quarantine flag with xattr -d com.apple.quarantine hax.

From source

Building from source gives a binary linked against your system's shared libraries instead of the libraries the prebuilt binaries bundle:

git clone https://github.com/OleksandrChekhovskyi/hax.git
cd hax
scripts/install_deps.sh   # Debian/Ubuntu, Fedora, Arch, openSUSE, Alpine, macOS, FreeBSD, OpenBSD
make                      # the binary is now at ./build/hax
make install              # optional; may prompt for sudo

scripts/install_deps.sh installs the build dependencies — a C compiler, libcurl, jansson, meson, ninja, and pkg-config — plus fzf, which hax uses for @file completion when available. On other platforms, install those packages by hand and run make.

For hacking on hax, make symlink links the freshly built binary into ~/.local/bin so it stays on PATH across rebuilds. make tests additionally needs tmux, which drives the interactive scenarios (scripts/install_deps.sh tests installs it), and make lint needs clang-format and clang-tidy (scripts/install_deps.sh lint installs them).

The examples below use hax as if it is on PATH; after a plain build, use ./build/hax.

Connect a provider

The easiest first run is interactive: start hax, then use /provider to see available providers and choose a model. hax remembers interactive provider, model, and effort selections.

ProviderSetup
codexRun /login inside hax.
openaiSet OPENAI_API_KEY.
anthropicSet ANTHROPIC_API_KEY.
openrouterSet OPENROUTER_API_KEY.
opencode-zen / opencode-goSet OPENCODE_API_KEY.
deepseekSet DEEPSEEK_API_KEY.
llama.cppRun llama-server.
ollamaRun ollama serve.
Compatible or custom endpointSee docs/providers.md.

Quick start

Run hax from the project directory you want it to work in:

hax                         # interactive REPL
hax -p "list TODOs"         # run one prompt and print the final answer
printf "explain x" | hax -p # read the prompt from stdin
hax -c                      # continue the latest session for this directory
hax --resume                # pick a past session for this directory
hax --resume=ID -p "next"   # resume a specific session in one-shot mode

Run hax --help for CLI usage. In the REPL, type /help for slash commands and shortcuts. See docs/usage.md for more detailed usage documentation.

Configuration

Configuration is optional. Interactive selections are remembered separately from your config file; CLI flags apply only to the current run, and environment variables are useful for shells and scripts. Resumed conversations restore their own provider, model, effort, and preset unless a CLI selection flag overrides them.

See docs/configuration.md for the file format, resolution order, presets, and the setting reference.

Extras

Optional companions that live outside the core binary, each a small Python CLI with a skill that tells hax when to use it:

  • hax-web — web search and readable page fetching.
  • hax-mcp — tools of MCP servers, with definitions entering the model's context only as a task needs them.

More docs

License

MIT.

Open the repository ↗