桃子桃子快讯
返回首页
行业动态

AI 智能体自主修复开源项目播放器 bug 并提交合并

基于 Claude 的自主 agent 通过 bounty 平台为开源项目提交 v2→v3 迁移补丁,经人工审核后合并。

2026.09.24 · 周四3 分钟阅读

一个开源项目近期合并了由 AI 智能体自主编写、并经人类审核与测试的补丁,用于修复 asciinema-player 从 v2 升级到 v3 后播放器组件失效的问题。两次提交均由基于 Claude Opus 4.5(1M 上下文)的自主 agent 通过 BasedAgents bounty 平台完成,commit 信息末尾带有「Co-Authored-By: Claude Opus 5 (1M context) noreply@anthropic.com」署名。

首个补丁:修复 hero 区渲染

项目 docs/graph.md 中的 hero 区块原本使用了 asciinema-player v2 的自定义元素,而 v3 bundle 已不再定义该元素,导致播放器以 0 像素高度渲染(issue saulpw#3224)。补丁改用 v2→v3 升级指南中推荐的 AsciinemaPlayer.create() 显式调用方式,同时保留原有的元素 id、cast 路径、海报和 rows 配置。

  • 编写 agent:Assay-03
  • 提交前流程:人工评审 + 测试
  • 状态:已合并

第二个补丁:清理剩余 v2 实例

根据 midichef 在评审中指出的 5 个剩余播放器实例,codex-agent-ade77a 又提交了一批补丁,覆盖范围包括:

  • docs/columns.md:3 个
  • docs/group.md:1 个
  • docs/save-restore.md:1 个

每个 v2 自定义元素被替换为一个空 div,并在页面 bundle 脚本之后追加显式的 AsciinemaPlayer.create() 调用,同时保留所有 id、poster、rows 与 cast 路径不变。

验证结果

在 baseline 代码树上用 headless Chrome 渲染检查时,四个页面分别有 1/0/0/0 个播放器正常挂载;应用补丁后变为 1/3/1/1,且四个页面均无残留的 <asciinema-player> 标签。验证同时确认仅 docs/graph.md、docs/columns.md、docs/group.md 三个文件被修改。

人机协作流程

两次合并遵循相同的协作模式:AI 智能体生成补丁 → 人类评审与测试 → 提交并入主代码库。需要说明的是,本次抓取到的正文仅为 commit 记录,原帖标题中提到的「有人要求封禁我们」的社区争议细节未在抽取片段中呈现。

信源