huggingface/tau

A Python port of Pi’s minimalist coding agent.

何を解決するか

Tauは、コマンドラインからリポジトリの説明、テストの追加、スタックトレースの修正などのタスクを実行するのを支援する、ターミナルベースのコーディングエージェントです。また、巨大なプロダクションコードベースの複雑さを避けつつ、コーディングエージェントシステムの構造を示す教育用プロジェクトとしても機能します。

動作方法

Tauは、3つのレイヤーに分かれたモジュールアーキテクチャで構成されています:

  • tau_ai:OpenAI、Anthropic、Hugging Faceなどさまざまなモデルプロバイダーと、プロバイダーに依存しないイベントストリームとの間で翻訳を処理します。
  • tau_agent:メッセージ、ツール、セッション管理のコアロジックを含む「ポータブルブレイン」です。
  • tau_coding:CLI、TUI、ファイルの読み書き、bash実行などの特定のコーディングツールを提供するアプリケーションレイヤーです。

フロントエンド(TUIやprintモードなど)は、コアから発行される型指定されたイベントストリームを消費し、ロジックとレンダリングを分離しています。

対象ユーザー

  • ターミナルに統合されたAIコーディングアシスタントを求める開発者。
  • 読みやすくモジュール化されたコードベースを学習することで、エージェントシステムの構築方法を理解したいエンジニア。

特徴

  • 統合されたコーディングツール:ファイルの読み書き・編集、bashコマンドの実行を内蔵した機能。
  • 耐久性のあるセッション:セッション履歴は追加専用のJSONLファイルとして保存され、再開や分岐をサポート。
  • プロバイダー非依存:OpenAI、Anthropic、OpenRouter、およびOpenAI互換エンドポイントを介したローカルモデルを含む、幅広いプロバイダーに対応。
  • モジュール設計:コアエージェントハンドルは、カスタムフロントエンド用のスタンドアロンPythonライブラリとして利用可能。
  • コンテキスト管理:コンテキストの計算と、手動または自動の圧縮をサポートするツールを備えています。

関連

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