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、ファイル/シェルツール、およびディスク上のセッション管理を提供するアプリケーションレイヤーです。

これは型付きイベントストリームを使用しており、コアロジックがフロントエンド(TUIまたはprintモード)から分離されています。永続的なJSONLファイルを使用してセッション履歴を保存し、セッションの再開や分岐を可能にしています。

対象ユーザー

ターミナルに機能的なコーディングアシスタントを求める開発者、およびAIエージェントの内部アーキテクチャを学びたい人向けです。

特徴

  • ターミナルネイティブ:インタラクティブなTextual TUIと、スクリプト用の非インタラクティブなprintモードを両方備えています。
  • 組み込みツール:ファイルの読み取り・書き込み・編集、およびbashコマンドの実行をネイティブにサポートするツールが付属しています。
  • プロバイダー非依存:OpenAI、Anthropic、OpenRouter、Hugging Face、およびカスタムのOpenAI互換エンドポイントをサポートしています。
  • 永続セッション:追加のみ可能なJSONL形式のセッション履歴を維持し、手動および自動的なコンテキスト圧縮をサポートしています。
  • ライブラリ利用可能AgentHarnessはPythonライブラリとしてインポートでき、カスタムフロントエンドを駆動できます。

関連

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