跳转至

autoplay

autoplay 是一个试验性浏览器代理:你给任务描述,它会生成 Playwright 的 Python 代码并执行,反复观察页面、调整动作,直到完成目标。

https://github.com/CNSeniorious000/autoplay

核心思路并不复杂:用 reasonify 做任务分解与推理,prompt 约束输出为纯可执行代码(没有多余说明),运行时把生成的代码在受控环境里执行并收集结果。

为什么用原生代码输出

直接产出 Playwright 代码的好处是避免再造一套 DSL,调试也更直观——你可以把生成结果直接拿到 REPL 里跑。

相关:

目前还处于早期实验阶段,但思路清晰:把浏览器当作可编程的执行器,让 LLM 负责“写脚本”。

深入洞见

源码和模板清楚表明 autoplay 的设计是把 LLM 输出当作可执行 Playwright Python 片段:src/templates/prompt.j2 强制模型只返回纯 Python(Playwright Async API),src/core/step.py / src/core/new.py 会把 LLM 输出注入到 ExecContext 并运行。实现使用 reasonify 把推理组织成 chain/loop,这让系统能在生成后把结果直接执行并把运行结果反馈给模型,形成“生成—执行—修正”的闭环,但也带来明显的安全与 sandbox 风险。

参考源码(GraphQL 验证):src/templates/prompt.j2(生成 Playwright 代码) · src/core/step.py(ExecContext / Session 执行)