bytedance/trae-agentPlease refer to the latest official releases for information GitHub Homepage
基于LLM的通用软件工程智能代理,支持自然语言指令执行复杂开发任务
MITPython 7.2kbytedancetrae-agent Last Updated: 2025-07-10
Trae Agent 项目详细介绍
项目概述
Trae Agent 是字节跳动开源的基于大语言模型(LLM)的智能代理,专为通用软件工程任务而设计。该项目提供了强大的命令行界面,能够理解自然语言指令并执行复杂的软件工程工作流程。
GitHub 地址: https://github.com/bytedance/trae-agent
核心特性
🌊 Lakeview
- 为代理步骤提供简洁明了的摘要功能
- 帮助用户快速理解代理执行过程
🤖 多LLM支持
- 支持 OpenAI 官方 API
- 支持 Anthropic 官方 API
- 灵活的模型选择机制
🛠️ 丰富的工具生态系统
- 文件编辑功能
- Bash 命令执行
- 顺序思考(Sequential Thinking)
- 更多扩展工具
🎯 交互模式
- 对话式界面,支持迭代开发
- 实时交互,提升开发体验
📊 轨迹记录
- 详细记录所有代理操作
- 支持调试和分析
- 自动生成执行报告
⚙️ 灵活配置
- 基于JSON的配置系统
- 支持环境变量配置
- 多层级配置优先级
🚀 简易安装
- 基于pip的简单安装流程
- 推荐使用UV进行项目设置
安装指南
推荐安装方式(使用UV)
git clone https://github.com/bytedance/trae-agent.git
cd trae-agent
uv sync
环境变量配置
# OpenAI API Key
export OPENAI_API_KEY="your-openai-api-key"
# Anthropic API Key
export ANTHROPIC_API_KEY="your-anthropic-api-key"
使用方法
基本任务执行
# 简单任务
trae-cli run "Create a hello world Python script"
# 指定提供商和模型
trae-cli run "Fix the bug in main.py" --provider anthropic --model claude-sonnet-4-20250514
# 指定工作目录
trae-cli run "Add unit tests for the utils module" --working-dir /path/to/project
# 保存轨迹文件用于调试
trae-cli run "Refactor the database module" --trajectory-file debug_session.json
# 强制生成补丁
trae-cli run "Update the API endpoints" --must-patch
交互模式
# 启动交互会话
trae-cli interactive
# 使用自定义配置
trae-cli interactive --provider openai --model gpt-4o --max-steps 30
交互模式命令
- 输入任务描述执行任务
status
- 查看代理信息help
- 显示可用命令clear
- 清屏exit
或quit
- 结束会话
配置管理
# 显示当前配置
trae-cli show-config
# 使用自定义配置文件
trae-cli show-config --config-file my_config.json
配置文件
Trae Agent 使用 JSON 配置文件 (trae_config.json
) 进行设置:
{
"default_provider": "anthropic",
"max_steps": 20,
"model_providers": {
"openai": {
"api_key": "your_openai_api_key",
"model": "gpt-4o",
"max_tokens": 128000,
"temperature": 0.5,
"top_p": 1
},
"anthropic": {
"api_key": "your_anthropic_api_key",
"model": "claude-sonnet-4-20250514",
"max_tokens": 4096,
"temperature": 0.5,
"top_p": 1,
"top_k": 0
}
}
}
配置优先级
- 命令行参数(最高优先级)
- 配置文件值
- 环境变量
- 默认值(最低优先级)
内置工具
str_replace_based_edit_tool - 文件操作工具
view
- 显示文件内容或目录列表create
- 创建新文件str_replace
- 替换文件中的文本insert
- 在指定行插入文本
bash - Shell命令执行
- 执行命令和脚本
- 持久状态处理
- 处理长时间运行的进程
- 捕获输出和错误
sequential_thinking - 结构化问题解决
- 分解复杂问题
- 迭代思考与修正功能
- 假设生成和验证
task_done - 任务完成信号
- 标记任务成功完成
- 提供最终结果和摘要
轨迹记录
Trae Agent 自动记录详细的执行轨迹用于调试和分析:
# 自动生成轨迹文件
trae-cli run "Debug the authentication module"
# 保存到:trajectory_20250612_220546.json
# 自定义轨迹文件
trae-cli run "Optimize the database queries" --trajectory-file optimization_debug.json
轨迹文件内容
- LLM交互: 所有消息、响应和工具调用
- 代理步骤: 状态转换和决策点
- 工具使用: 调用的工具及其结果
- 元数据: 时间戳、令牌使用量和执行指标
贡献指南
贡献流程
- Fork 仓库
- 创建特性分支 (
git checkout -b feature/amazing-feature
) - 进行更改
- 为新功能添加测试
- 提交更改 (
git commit -m 'Add amazing feature'
) - 推送到分支 (
git push origin feature/amazing-feature
) - 提交 Pull Request
开发规范
- 遵循 PEP 8 样式指南
- 为新功能添加测试
- 根据需要更新文档
- 适当使用类型提示
- 确保所有测试通过后再提交
系统要求
- Python 3.12+
- OpenAI API key(用于OpenAI模型)
- Anthropic API key(用于Anthropic模型)
故障排除
导入错误
# 尝试设置PYTHONPATH
PYTHONPATH=. trae-cli run "your task"
API Key问题
# 验证API keys是否设置
echo $OPENAI_API_KEY
echo $ANTHROPIC_API_KEY
# 检查配置
trae show-config
权限错误
# 确保文件操作的适当权限
chmod +x /path/to/your/project