一、🔥 先说一个真实场景
你有没有在某个下午,对着 AI 工具说:「帮我查一下支付宝上个月超过两千块的支出。」
然后它给你返回了一段文字,让你自己去支付宝翻。
或者你说:「帮我在外卖平台下单一杯奶茶。」
它给你写了一段教程,让你自己操作。
这不是 AI 帮你干活,这是 AI 给你布置作业。
真正的 AI Agent,应该是打开电脑、找到支付宝、翻账单、告诉你结果。然后关掉,等下一个任务。
大多数 Agent 框架停留在"对话框里回答问题"的层面,真正能接管桌面、操控浏览器、驱动手机、写脚本调 API 的,没几个。
GenericAgent 是其中之一。
而且它只用了 3300 行代码做到了这件事。
二、📦 这个项目是什么
项目名称:GenericAgent
作者:lsdefine(复旦大学相关背景,便携版托管在复旦服务器)
⭐ Star 数:8.6k
🍴 Fork 数:114
开源协议:MIT
技术栈:Python 90% + JavaScript 8.4%
一句话定位:极简、可自我进化的 PC Agent 框架,7 个原子工具 + 92 行循环,接管浏览器、终端、文件系统、键鼠、屏幕视觉和手机。
它有一个细节让我印象深刻:README 里说,这个仓库的所有内容,包括安装 Git、git init、每一条 commit message,都是 GenericAgent 自己完成的,作者全程没有打开过一次终端。
这不是噱头,这是一个自我证明——它能用自己把自己的代码仓库管理起来。这件事本身就说明了执行能力的上限在哪里。

和同类框架比,差在哪、强在哪
pip install | |||
重点在第三行:注入真实浏览器,保留登录态。
大多数 Agent 用无头浏览器或沙箱操控网页,登录状态要单独处理,稍微复杂的网站就卡住了。GenericAgent 是直接注入你正在用的那个 Chrome,登录飞书、支付宝、外卖平台,它直接用你的账号操作——这是能下单、能查账、能发消息的根本原因。
三、⚙️ 核心功能,一个个说清楚
1. 自我进化机制:越用越聪明
这是整个框架最核心、也最有意思的设计。
大多数 Agent 框架是"每次对话都从零开始"——你今天教它怎么查股票,明天它忘了。
GenericAgent 的逻辑不一样:
遇到新任务 → 自主摸索(安装依赖、写脚本、调试验证)
→ 将执行路径固化为 Skill → 写入记忆层 → 下次同类任务直接调用第一次你说"帮我查支付宝三个月内超两千的支出",它会:安装 ADB → 连接手机 → 打开支付宝 → 翻账单 → 提取数据 → 把整个流程保存成 Skill。
第二次你再说,它直接调用 Skill,一句话搞定。
这意味着用得越久,你的 GenericAgent 实例就越厉害——它积累的 Skill 树,是完全属于你的,没有人有一样的。从 3300 行种子代码,长出你专属的 Agent 大脑。
2. 7 个原子工具,覆盖全系统控制
code_run | |
file_read | |
file_write | |
file_patch | |
web_scan | |
web_execute_js | |
ask_user |
只有 7 个工具,但通过 code_run,它可以在运行时动态安装任意 Python 包、调用任意 API、控制任意硬件。一个工具,等于无限扩展。
3. 分层记忆系统
三层记忆结构,决定了 Agent 跨会话积累经验的能力:
• L0 元规则:Agent 的基础行为准则,不会被覆盖 • L2 全局事实:长期运行中积累的稳定知识,比如"用户的飞书 ID 是 xxx" • L3 任务 Skill:具体任务的完整执行流程,下次直接调用
两个记忆管理工具(update_working_checkpoint、start_long_term_update)让 Agent 自己决定什么值得记住、什么可以忘掉。
4. 多平台 Bot 接口:接进飞书、钉钉、企微、QQ
这是国内开发者最关心的部分。
GenericAgent 原生支持作为 Bot 跑在这些平台上:
• 飞书:支持流式进度卡片、图片/文件回传、多模态视觉输入 • 钉钉:WebSocket 长连接,无需公网 webhook • 企业微信:同上 • QQ: qq-botpy长连接,支持['*']公开访问• Telegram:token 配置即用
每个平台一个独立的 .py 文件,代码量加起来也就几百行,读得懂,改得动。
5. 92 行的 Agent Loop
整个执行引擎就一个文件:agent_loop.py,92 行。
感知环境状态 → 任务推理 → 调用工具执行 → 经验写入记忆 → 循环这不是谦虚,92 行意味着:你可以把它读完,改掉,换成自己的逻辑。很多大型框架的 Agent Loop 是几千行的状态机,你根本不知道出了问题在哪里。
四、🚀 怎么装、怎么用
方式一:Windows 便携版(推荐新手)
Step 1:下载便携包
访问 http://kw.fudan.edu.cn/resources/PC-Agent-Portable.zip,19MB,解压。
[配图:便携版文件目录截图]
Step 2:配置 API Key
打开 mykey.py,填入你的 LLM API Key:
# mykey.py
openai_api_key = "sk-xxxx"
openai_base_url = "https://api.openai.com/v1"
openai_model = "gpt-4o"支持任何兼容 OpenAI 格式的接口,Claude、Gemini、Kimi、通义千问都行。
Step 3:双击启动
双击 launch.pyw桌面悬浮窗弹出,可以开始对话了。
[配图:悬浮窗 UI 截图]
方式二:源码安装(macOS / Linux / 进阶用户)
git clone https://github.com/lsdefine/GenericAgent.git
cd GenericAgent
pip install streamlit pywebview
cp mykey_template.py mykey.py
# 编辑 mykey.py 填入 API Key
python launch.pyw就这几步。没有 Docker,没有多服务编排,没有环境配置地狱。
方式三:Android(Termux)
cd /sdcard/ga
python agentmain.py手机上也能跑,用 ADB 驱动手机 App 的功能在安卓上直接本机运行。
接入飞书 Bot(国内首选)
pip install lark-oapi在 mykey.py 里加:
fs_app_id = "cli_xxx"
fs_app_secret = "xxx"
fs_allowed_users = ["ou_xxx"] # 或 ['*'] 公开访问启动:
python launch.pyw --feishu[配图:飞书 Bot 对话截图,发送任务后返回进度卡片]
飞书接入支持流式进度卡片——Agent 在执行任务过程中,会实时更新卡片状态,你看得到它在做什么。这个体验比等一个黑盒转圈强很多。
五、💡 三个真实场景,看它怎么用
场景一:量化选股,从自然语言到执行结果
背景:做量化投资的用户,每天要按照某些技术指标筛股票,之前是自己写脚本跑,但每次换条件都要改代码。
操作:
帮我找创业板里,EXPMA 出现金叉、换手率大于 5% 的股票第一次:Agent 安装 mootdx 库 → 写选股脚本 → 配置定时任务 → 把整个流程保存为 Skill。
第二次:条件变了,说"换手率改成大于 3%",Agent 调出 Skill,改一个参数,重新跑。
从"写代码"变成"说条件"——对于有想法但不想每次改代码的用户,这就是质的变化。
场景二:飞书 Bot 接管日常信息处理
背景:团队用飞书,运营每天要汇总多个群的关键信息、整理成日报发给 Leader。
操作:把 GenericAgent 配置成飞书 Bot,赋予读取指定群消息的权限,每天固定时间触发:
帮我整理今天 #产品反馈 群的用户问题,按类型归类,发给 @Leader效果:Agent 读取群消息、分类整理、生成结构化日报、用飞书卡片格式发出去。整个过程有进度更新,Leader 能看到 Agent 在实时处理。
这种场景过去要么人工整理,要么搭一套复杂的自动化流水线。现在配置一次 Bot,对话框里说一句话。
场景三:外卖下单,真实接管手机屏幕
这是 Demo 里最直观的一个。
操作:
帮我点一杯奶茶Agent 的执行路径:打开外卖 App(通过 ADB 驱动手机)→ 导航到奶茶品类 → 识别屏幕内容 → 选择商品 → 确认订单 → 完成支付。
注意:这里用的是真实手机屏幕,不是模拟器,用的是你真实账号和登录态。
这件事看起来简单,但背后要解决的是:屏幕视觉识别、ADB 命令注入、多步骤任务规划、异常处理(比如某个商品没货了)。
能做这件事,基本上能做任何需要"在手机上操作"的事。
六、🐦 X 上和社区里怎么说
「被机器之心报道的时候,我去看了一下代码,真的就几千行,跑起来比那些上万行的框架还稳。」
——GitHub 用户,Issues 区评论,2026 年 3 月
「自举实证这个细节是真的——它用自己提交了自己的所有代码,包括 commit message。你去看提交历史,就是这样。」
——早期用户,GenericAgent 微信交流群
「飞书流式卡片这个体验做得好,Agent 在跑任务的时候你看得到它在做什么,不是黑盒转圈。」
——企业微信用户,GitHub Issues 反馈
「3300 行这个数字是有意为之的——作者在 README 里说,这是'种子代码',剩下的让 Agent 自己长出来。这个设计哲学比功能列表更值得注意。」
——技术博主,知乎评论区
「支持飞书、钉钉、企微、QQ、Telegram,这五个平台国内外都覆盖了,配置也就几行,这个覆盖范围在同类框架里少见。」
——开发者评论,GitHub Star 用户
博主点评
这几条评价里,我觉得"种子代码"这个说法最准。
GenericAgent 不是一个试图把所有功能都内置的框架,它的哲学是反的:从最小的工具集出发,让每一个具体实例通过真实使用长出自己的能力。
这意味着它不适合"开箱即用做任何事",但适合"持续使用、越来越顺手"。
如果你是那种会用一套工具用几年的人,这个框架值得认真看一眼。
七、🎯 值不值得用?我的判断
适合谁
• ✅ 想要真正能操控桌面的 Agent 用户:不是对话框里的回答,是接管键鼠、浏览器、手机 • ✅ 有固定工作流想自动化的人:量化选股、信息整理、日报生成——第一次教会之后,Skill 固化,以后一句话调用 • ✅ 国内企业内部工具开发者:飞书/钉钉/企微 Bot 接入几乎零门槛,配置十几行 • ✅ 喜欢读代码、喜欢改东西的开发者:3300 行,92 行 Loop,周末一个下午读完改完
要说清楚的局限
• ⚠️ Star 数量(8.6k,增长迅猛):相比同类框架体量还小,社区积累的 Skill 库和踩坑记录有限,遇到问题主要靠自己 debug • ⚠️ 首次使用某个新任务会比较慢:第一次安装依赖、摸索路径需要时间,不是所有任务都能一次成功 • ⚠️ 真实浏览器注入有一定门槛:浏览器注入配置需要按文档来,不同系统有细节差异 • ⚠️ ADB 功能需要手机开启开发者模式:安卓驱动功能对普通用户有一定配置门槛
最后说一句
大多数 AI Agent 是在对话框里帮你想事情,GenericAgent 是拿着你的鼠标键盘去替你做事情——这两件事的差距,就是"AI 助手"和"AI 员工"的差距。
3300 行的起点,能长成什么,取决于你给它多少真实任务去做。
⭐ 项目地址:https://github.com/lsdefine/GenericAgent
💬 你在用哪个 Agent 框架做桌面自动化?欢迎在评论区聊聊你踩过的坑。
夜雨聆风