huggingface/tau
A Python port of Pi’s minimalist coding agent.
解决的问题
Tau 是一个基于终端的代码代理,旨在帮助开发者通过命令行完成解释代码库、添加测试和修复堆栈跟踪等任务。它同时也作为一个教学项目,展示如何构建代码代理系统,而无需面对庞大生产代码库的复杂性。
工作原理
Tau 采用模块化架构,分为三个层级:
- tau_ai:负责在各种模型提供商(OpenAI、Anthropic、Hugging Face 等)与无提供商依赖的事件流之间进行转换。
- tau_agent:作为“可移植的脑”,包含消息、工具和会话管理的核心逻辑。
- tau_coding:应用层,提供 CLI、TUI 以及文件读写、bash 执行等特定代码工具。
前端(如 TUI 或打印模式)消费由核心生成的类型化事件流,确保逻辑与渲染分离。
适用人群
- 希望将 AI 代码助手集成到终端中的开发者。
- 希望通过阅读清晰、模块化的代码库来学习如何构建代理系统的工程师。
主要亮点
- 集成的代码工具:内置文件读写、编辑和运行 bash 命令的能力。
- 持久化会话:会话历史以追加只读的 JSONL 文件形式存储,支持恢复和分支。
- 提供商无关:支持多种提供商,包括 OpenAI、Anthropic、OpenRouter 以及通过 OpenAI 兼容端点运行的本地模型。
- 模块化设计:核心代理框架可作为独立的 Python 库,用于自定义前端。
- 上下文管理:包含上下文计数工具,支持手动或自动压缩。
相关
- 项目
- 项目
- 项目
- 项目
- 项目