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)をエージェントから呼び出し可能。

始め方

  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から直接取得しており、追加の機能は推測されていません。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト