UI-TARS Contributors Guide: How to Submit Pull Requests
【免费下载链接】UI-TARS 项目地址: https://gitcode.com/GitHub_Trending/ui/UI-TARS
为什么贡献UI-TARS?
作为领先的GUI自动化代理模型,UI-TARS正在重新定义人机交互的未来。你的代码贡献可以:
- 提升跨平台GUI操作精度(当前OSWorld benchmark达42.5%成功率)
- 扩展移动设备交互能力(支持AndroidControl基准测试64.2%的接地准确率)
- 优化游戏自动化逻辑(14款Poki游戏实现100%完成率)
读完本文你将掌握:环境配置全流程、PR提交规范、代码审查要点、贡献者激励机制
贡献流程概览
关键时间节点
- 首次贡献者:完成环境配置约30分钟
- 功能开发:根据复杂度1-7天
- PR审查周期:平均3个工作日
- 合并后上线:每周五发布窗口
1. 环境准备
1.1 克隆代码仓库
git clone https://gitcode.com/GitHub_Trending/ui/UI-TARS.git
cd UI-TARS
⚠️ 注意:请勿使用GitHub链接,项目官方镜像仅托管于GitCode
1.2 安装开发依赖
# 基础环境
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# 安装核心依赖
cd codes
pip install -e .[dev] # 包含测试和格式化工具
uv pip install ui-tars # 快速依赖管理(推荐)
1.3 验证开发环境
# 运行单元测试
pytest tests/ -v
# 检查代码格式
ruff check ui_tars/
2. 开发规范
2.1 分支管理策略
| 分支类型 | 命名规范 | 生命周期 | 示例 |
|---|---|---|---|
| 主分支 | main | 永久 | - |
| 开发分支 | develop | 永久 | - |
| 特性分支 | feature/[issue-id]-[brief] | 临时 | feature/42-image-parser |
| 修复分支 | hotfix/[issue-id]-[brief] | 临时 | hotfix/57-fix-coordinate-scaling |
| 发布分支 | release/vX.Y.Z | 临时 | release/v1.6.0 |
2.2 代码风格要求
- Python代码:遵循PEP 8规范,使用
black自动格式化black ui_tars/ --line-length 120 - 文档格式:Markdown文件使用
markdownlint检查 - 提交信息:采用Conventional Commits规范
feat(action_parser): add support for multi-touch gestures fix(coord): correct coordinate scaling factor calculation docs: update deployment guide with vLLM instructions
2.3 测试要求
所有PR必须满足:
- 单元测试覆盖率≥80%(使用
pytest-cov) - 通过所有现有集成测试
- 新增功能需添加对应测试用例
# 生成覆盖率报告
pytest --cov=ui_tars tests/ --cov-report=html
3. 提交Pull Request
3.1 PR准备清单
✅ 已从develop分支创建特性分支
✅ 代码符合项目风格指南
✅ 新增功能包含测试用例
✅ 所有测试通过
✅ 文档已更新(如需要)
✅ Commit历史清晰可追溯
3.2 PR提交步骤
# 1. 确保本地分支与远程同步
git fetch origin
git rebase origin/develop
# 2. 推送分支到远程
git push -u origin feature/42-image-parser
# 3. 在GitCode界面创建PR
# 访问仓库页面 → Pull Requests → New Pull Request
3.3 PR模板填写
## 描述
[简要描述此PR解决的问题或实现的功能]
## 相关Issue
Closes #[issue编号]
## 实现细节
- [关键实现点1]
- [关键实现点2]
## 测试步骤
1. [测试步骤1]
2. [测试步骤2]
## 截图(如适用)
## 自查清单
- [ ] 代码符合风格指南
- [ ] 添加了测试用例
- [ ] 所有测试通过
- [ ] 文档已更新
4. 代码审查流程
审查重点
- 功能完整性:是否完全解决Issue描述的问题
- 代码质量:逻辑清晰度、性能影响、潜在bug
- 兼容性:是否影响其他模块(特别是坐标解析和动作生成模块)
- 测试覆盖:边界情况是否考虑
5. 贡献者激励计划
| 贡献等级 | 奖励内容 | 评选标准 |
|---|---|---|
| 青铜贡献者 | 项目README致谢 | 提交≥1个有效PR |
| 白银贡献者 | 官方社区荣誉徽章 | 提交≥5个PR或核心功能改进 |
| 黄金贡献者 | 项目决策参与权 | 持续贡献且质量优异 |
6. 常见问题
Q: 如何处理合并冲突?
A:
git fetch origin
git rebase origin/develop
# 解决冲突文件
git add <冲突文件>
git rebase --continue
git push --force-with-lease
Q: 提交PR后CI测试失败怎么办?
A: 查看CI日志,本地复现并修复问题:
# 运行与CI相同的测试命令
pytest tests/ --cov=ui_tars --cov-fail-under=80
Q: 可以贡献文档改进吗?
A: 非常欢迎!文档PR流程相同,直接修改对应Markdown文件提交即可。
7. 联系我们
- 开发讨论:Discord社区 #contributors
- 问题反馈:提交Issue时使用
[Contribution]前缀 - 紧急情况:邮件至tars-dev@bytedance.com(24小时内回复)
贡献即意味着你同意本项目的Apache-2.0开源协议。感谢你的贡献,让UI-TARS更加强大!
最后更新:2025年9月8日
维护者:UI-TARS核心团队
【免费下载链接】UI-TARS 项目地址: https://gitcode.com/GitHub_Trending/ui/UI-TARS
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



