热榜全是 OpenClaw,但我用 50 行 Python 就造了个桌面 AI Agent 🤖

热榜全是 OpenClaw,但我用 50 行 Python 就造了个桌面 AI Agent 🤖说真的 打开掘金看到热榜 6 条里 4 条是 OpenClaw 我心想 这玩意真有这么神 下载试了一下 800MB 客户端 Electron 套壳 内存占用 1 2G 起步 就为了让 AI 帮我点点鼠标 于是我花了一个下午 用 Python 写了个 50 行的 穷人版桌面 Agent 核心原理其实很简单 截图 大模型看图理解 执行鼠标键盘操作 循环

大家好,我是讯享网,很高兴认识大家。这里提供最前沿的Ai技术和互联网信息。



说真的,打开掘金看到热榜 6 条里 4 条是 OpenClaw,我心想:这玩意真有这么神?

下载试了一下——800MB 客户端、Electron 套壳、内存占用 1.2G 起步。就为了让 AI 帮我点点鼠标?

于是我花了一个下午,用 Python 写了个 50 行的”穷人版桌面 Agent”。核心原理其实很简单:截图 → 大模型看图理解 → 执行鼠标键盘操作 → 循环。跑起来之后我自己都没想到效果还不错。

对比项 OpenClaw 自己搭(本文方案) 安装体积 800MB+ pip install 三个包 内存占用 1.2GB+ ~50MB 自定义程度 插件系统 代码随便改 模型选择 绑定特定模型 想用啥用啥 上手难度 开箱即用 需要会 Python 稳定性 成熟 自己兜底

如果你只是想理解桌面 Agent 的原理,或者有特定的自动化需求不想装个大家伙,往下看。

所有桌面 Agent,不管是 OpenClaw 还是 Anthropic 的 Computer Use,核心都是一个 loop:

 
  

就这么简单。大模型的 Vision 能力负责"看懂屏幕",pyautogui 负责"动手操作"。

GPT plus 代充 只需 145
 
  

我拿这个脚本试了几个场景:

GPT plus 代充 只需 145

执行过程:

 
  

7 步搞定,全程大概 15 秒(主要是等 API 返回)。

GPT plus 代充 只需 145

这个任务模型理解得不错,但执行拖拽操作时翻车了——pyautogui 的 drag 在 macOS 上有些时候不太灵。后来换成 的方式才搞定。

 
  

这个效果最好,因为表单页面结构清晰,模型识别准确率很高。

pyautogui 返回的坐标是逻辑像素,但 Retina 屏截图是物理像素。大模型看到的是 2x 分辨率的图,返回的坐标也是 2x 的。

GPT plus 代充 只需 145

试了几个模型的表现:

模型 识别准确率 响应速度 适合场景 Claude Sonnet 4.6 ⭐⭐⭐⭐⭐ 1.5s 复杂页面 GPT-5.4 ⭐⭐⭐⭐⭐ 2s 通用场景 Gemini 3 Flash ⭐⭐⭐⭐ 0.8s 简单任务(快!) Qwen-VL-Max ⭐⭐⭐ 1.2s 中文界面

我一般简单任务用 Gemini 3 Flash(便宜快),复杂任务用 Claude Sonnet。通过聚合 API 切换模型就改一行代码的事。

大模型偶尔会在 JSON 外面包一层 markdown 代码块,加个容错处理:

 
  

pyautogui 有个 FAILSAFE 机制——鼠标移到屏幕左上角会触发异常停止。千万别关掉它:

GPT plus 代充 只需 145

另外建议加个确认机制,敏感操作前先问一下:

 
  

基础版只看当前截图,没有"记忆"。加上对话历史后,Agent 会聪明很多:

GPT plus 代充 只需 145

还可以加个"反思"机制——每次操作后截图对比,看有没有变化:

 
  

说实话,OpenClaw 之所以火是有道理的——它的 Skill 生态、权限管理、多 Agent 协作这些东西,50 行代码肯定搞不定。

但如果你的需求是:

  • 自动化一些固定流程(日报、数据抓取、定时截图)
  • 想深入理解桌面 Agent 原理
  • 不想装一个 800MB 的客户端
  • 需要自定义模型和 prompt

那自己搭完全够用。核心就是 pyautogui + Vision API,剩下的都是工程细节。

桌面 Agent 说到底就是个”截图-看图-操作”的循环,原理一点不复杂。OpenClaw 的价值在于它把这个循环做得很工程化、很稳定,但底层逻辑跟我们这 50 行代码没本质区别。

我现在日常用这个脚本跑一些小任务——定时截图监控、自动填表单、批量文件操作。比起 OpenClaw 的全家桶,我更喜欢这种能完全掌控的方式。

代码已经贴全了,复制就能跑。如果你也想试试,建议从最简单的”打开浏览器搜索”开始,慢慢加功能。


对了,代码里 API 调用用的是兼容 OpenAI 协议的聚合接口,一个 key 能调几十个模型,切换模型改一行 model 参数就行,省得每家单独注册。

小讯
上一篇 2026-03-15 09:54
下一篇 2026-03-15 09:52

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/234019.html