OleksandrChekhovskyi/hax

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

hax – 极简的终端原生编码代理

是什么

  • hax 是一个用C语言编写的小型单二进制命令行工具,让你可以从终端与大型语言模型(LLM)对话。它支持许多提供商——OpenAI、Anthropic、Codex、OpenRouter、DeepSeek、llama.cpp、Ollama等——并且设计为即时启动、仅使用几兆字节的RAM、与你的shell良好协作。

为什么重要

  • 对于大多数时间在终端中度过并希望获得AI“助手”而无需重型IDE插件或Web UI开销的开发者来说,hax提供了一种精简、可审计的替代方案。其设计强调透明性(你可以查看精确的请求/响应记录)、Unix风格的可组合性以及易于与本地模型集成。

主要特性

  • 轻量 – 单一原生C二进制,Linux静态构建,最小运行时依赖。
  • 提供商无关 – 内置支持广泛的API;通过llama-server或ollama serve的本地模型是一等公民。
  • 终端友好UI – 流式Markdown、实时工具输出,以及尊重终端回滚的记录视图(Ctrl+T)。
  • 可检查性 – 你可以转储原始线协议交换或启用详细跟踪以进行调试。
  • Unix哲学合规 – 基于XDG的配置、一键模式下的干净标准输出、纯文本会话文件,以及通过子进程而非插件系统进行组合。
  • 可扩展的伴侣 – 可选的Python辅助程序(用于网络搜索的hax-web、用于MCP相关工具的hax-mcp)可从代理调用。

入门

  1. 安装 – 通过Homebrew(brew install .../hax)、Arch AUR、预构建二进制文件或使用make从源代码构建。
  2. 连接提供商 – 启动hax,运行/provider命令并选择模型。对于本地模型,只需运行llama-server -m model.gguf(或ollama serve)。
  3. 使用 –
    • 交互式REPL:hax
    • 一键提示:hax -p "explain x"
    • 管道输入:printf "list TODOs" | hax -p
    • 恢复之前的会话:hax --resume或hax -c。
  4. 配置 – 可选的~/.config/hax/config.toml(或类似)用于默认值;API密钥使用环境变量。

适用人群

  • 终端为主开发者、系统管理员或运行本地LLM并希望拥有快速、可审计AI助手的爱好者。
  • 打包者和发行版维护者,因为项目遵循Unix约定且依赖足迹极小。
  • 资源受限的用户(例如低端笔记本、嵌入式Linux)需要将大部分RAM留给模型本身的代理。

许可证

  • 根据MIT许可证分发。

所有信息均直接来自仓库的README;未推断任何额外功能。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目