OleksandrChekhovskyi/hax
A minimalist, terminal-native coding agent written in C.
hax – ミニマルなターミナルネイティブコーディングエージェント
概要
haxはC言語で書かれた、単一バイナリの小さなコマンドラインツールで、ターミナルから大規模言語モデル(LLM)と対話できます。OpenAI、Anthropic、Codex、OpenRouter、DeepSeek、llama.cpp、Ollamaなど、多くのプロバイダーに対応し、即座に起動し、数メガバイトのRAMしか使用せず、シェルとシームレスに連携するよう設計されています。
重要性
- ターミナルで多くの時間を過ごし、ヘビーなIDEプラグインやWeb UIのオーバーヘッドなしにAI「アシスタント」を求める開発者にとって、
haxは軽量で監査可能な代替手段を提供します。その設計は透明性(正確なリクエスト/レスポンスのトランスクリプトを表示可能)、Unixスタイルのコンポーザビリティ、ローカルモデルとの簡単な統合を重視しています。
主な機能
- 軽量 – 単一のネイティブCバイナリ、Linux向けの静的ビルド、最小限の実行時依存関係。
- プロバイダー非依存 – 幅広いAPIを標準サポートし、
llama-serverやollama serveによるローカルモデルを第一級でサポート。 - ターミナル向けUI – ストリーミングMarkdown、ライブツール出力、ターミナルのスクロールバックを尊重するトランスクリプトビュー(
Ctrl+T)。 - 検査可能性 – 生のワイヤープロトコル交換をダンプしたり、詳細なトレースを有効にしてデバッグが可能。
- Unix哲学準拠 – XDGベースの設定、ワンショットモードでのクリーンな標準出力、プレーンテキストのセッションファイル、プラグインシステムではなくサブプロセスによる合成。
- 拡張コンパニオン – オプションのPythonヘルパー(ウェブ検索用の
hax-web、MCP関連ツール用のhax-mcp)をエージェントから呼び出し可能。
始め方
- インストール – Homebrew(
brew install .../hax)、Arch AUR、プリビルドバイナリ、またはソースからmakeでビルド。 - プロバイダーを接続 –
haxを起動し、/providerコマンドを実行してモデルを選択。ローカルモデルでは、llama-server -m model.gguf(またはollama serve)を実行するだけ。 - 使用法 –
- 対話的REPL:
hax - ワンショットプロンプト:
hax -p "explain x" - パイプ入力:
printf "list TODOs" | hax -p - 以前のセッションを再開:
hax --resumeまたはhax -c。
- 対話的REPL:
- 設定 – オプションで
~/.config/hax/config.toml(または類似)にデフォルト値を設定。APIキーは環境変数で指定。
対象読者
- ターミナル中心の開発者、システム管理者、ローカルLLMを実行し、高速で監査可能なAIアシスタントを求める趣味人。
- Unix慣習に従い、依存関係が小さなプロジェクトを扱うパッケージ作成者やディストリビューションのメンテナー。
- リソースが制約された環境(低スペックラップトップ、組み込みLinuxなど)で、モデル自体にRAMを残すエージェントが必要なユーザー。
ライセンス
- MITライセンスのもとで配布されています。
すべての情報はリポジトリのREADMEから直接取得しており、追加の機能は推測されていません。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト