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