GenericAgent 深度解析:3000 行代码实现自进化,Token 消耗仅为同类 1/6

一、GenericAgent 是什么
GenericAgent 是复旦大学知识工场实验室 A3 实验室开源的自进化 AI Agent 框架,2026 年 1 月发布,MIT 协议。上线不到半年,GitHub 12.7K Star,1.5K Fork。
它的思路很简单:你不预设技能,它靠进化获得能力。
每完成一个新任务,GenericAgent 会把执行路径固化为一个 Skill。下次遇到类似任务直接调用,不再从零推理。用得越久,沉淀的技能越多,最终形成一棵完全属于你的技能树。
仓库里有一段被反复引用的说明:
本仓库的一切,从安装 Git、
git init到每一条 commit message,均由 GenericAgent 自主完成。作者全程未打开过一次终端。
关键数据
| 指标 | 数值 |
|---|---|
| 核心代码量 | ~3,000 行(含注释约 3,300 行) |
| Agent Loop | ~100 行 |
| 原子工具数 | 9 个 |
| 上下文窗口 | <30K tokens |
| PyPI 下载 | pip install genericagent |
| 最低 Python | 3.10(推荐 3.11/3.12,不要用 3.14) |
| 技术论文 | arXiv:2604.17091 |
二、为什么突然火了
2026 年 3 月,GenericAgent 被机器之心报道后迅速出圈。引爆点是一组很反直觉的对比数据:
| 特性 | GenericAgent | OpenClaw | Claude Code |
|---|---|---|---|
| 代码量 | ~3K 行 | ~530,000 行 | 已开源(体量大) |
| 部署方式 | pip install + API Key | 多服务编排 | CLI + 订阅 |
| 浏览器控制 | 注入真实浏览器(保留登录态) | 沙箱/无头浏览器 | 通过 MCP 插件 |
| OS 控制 | 键鼠、屏幕视觉、ADB | 多 Agent 委派 | 文件 + 终端 |
| 自我进化 | 自动生长 Skill 和工具 | 插件生态 | 会话间无状态 |
| 上下文消耗 | <30K | 200K-1M | 200K-1M |
设计哲学的差异:
- Claude Code 把推理能力做到极致,但每次会话从零开始,没有记忆积累
- OpenClaw 提供了庞大的插件和模块生态,但代码量超过 50 万行,维护成本极高
- GenericAgent 用最少的代码、最少的 Token、最少的工具,让系统自己长出需要的能力
GenericAgent 论文提出了一个核心概念:上下文信息密度最大化(Contextual Information Density Maximization)。出发点很简单:长周期 Agent 性能的关键不在于上下文能装多少东西,而在于在有限预算内,有多少是对决策真正有用的信息。
翻译成人话:你往 prompt 里塞了那么多文档、对话历史和工具描述,真正帮到决策的可能不到 10%。剩下的都在浪费 Token 和推理时间。
三、架构:三个齿轮怎么咬合
GenericAgent 的架构由三部分组成。
3.1 分层记忆系统(L0-L4)
这是整个框架最核心的设计。记忆不仅在对话中传递,更在任务执行过程中持续沉淀:
| 层级 | 名称 | 说明 |
|---|---|---|
| L0 | 元规则(Meta Rules) | Agent 的基础行为规则和系统约束,相当于底层操作系统 |
| L1 | 记忆索引(Insight Index) | 极简索引层,用于快速路由与召回,不存详细内容 |
| L2 | 全局事实(Global Facts) | 长期运行中积累的稳定知识,比如”这个 API 的鉴权方式是 X” |
| L3 | 任务 Skills / SOP | 完成特定任务的可复用操作流程,自我进化的核心产物 |
| L4 | 会话归档(Session Archive) | 已完成任务的提炼归档,用于长程召回 |
记忆系统按需加载:默认只暴露高层摘要,当前任务触发相关记忆时才展开细节。上下文窗口始终被高密度信息填充。
3.2 最小工具集
GenericAgent 只有 9 个原子工具:
| 工具 | 功能 |
|---|---|
code_run | 执行任意代码(Python / PowerShell) |
file_read | 读取文件 |
file_write | 写入/创建/覆盖文件 |
file_patch | 修改文件 |
web_scan | 感知网页内容 |
web_execute_js | 控制浏览器行为 |
ask_user | 人机协作确认 |
update_working_checkpoint | 短期工作记事板 |
start_long_term_update | 提炼长期记忆 |
9 个工具,覆盖了浏览器操控、文件系统读写、代码执行、人机交互和记忆管理。扩展性不在工具数量上,而在 code_run。它允许 Agent 在运行时动态安装 Python 包、编写新脚本、调用外部 API。临时能力用完了可以固化为永久工具。
3.3 自主执行循环
整个过程约 100 行代码(agent_loop.py):
感知环境状态 → 任务推理 → 调用工具执行 → 经验写入记忆 → 循环
三个齿轮的咬合方式构成了 GenericAgent 区别于其他框架的地方:它执行任务,同时从执行中学习。
四、自我进化机制
自我进化是 GenericAgent 和竞品之间最本质的区别。
三阶段进化
论文描述了三阶段进化路径:
Stage 1: 自然语言执行
└─ 从零探索,大量试错,首次完成任务的成本最高
Stage 2: SOP 蒸馏
└─ 将成功经验固化为标准操作流程(SOP),下次可直接参考
Stage 3: 代码化执行
└─ 将 SOP 编译为可执行脚本,直接调用,不再需要推理
真实数据
论文在 LangChain 纵向实验中给出了量化结果,9 轮进化后:
| 指标 | 首次执行 | 9 轮进化后 | 降幅 |
|---|---|---|---|
| Token 消耗 | 222K | 23K | -89.6% |
| LLM 调用次数 | 32 次 | 5 次 | -84.4% |
| 任务耗时 | 7 分 30 秒 | 1 分 38 秒 | -78.2% |
一张表看懂:
| 你说的话 | 第一次做了什么 | 之后每次 |
|---|---|---|
| ”监控股票并提醒我” | 安装 mootdx → 构建选股流程 → 配置定时任务 → 保存 Skill | 一句话启动 |
| ”用 Gmail 发这个文件” | 配置 OAuth → 编写发送脚本 → 保存 Skill | 直接可用 |
| ”读我的微信消息” | 安装依赖 → 逆向数据库 → 写读取脚本 → 保存 Skill | 一行调用 |
几周后,你的 GenericAgent 实例会有一套任何人都没有的专属技能树,全部从 3000 行种子代码中生长出来。
跨任务进化收敛
在 8 个不同类型的 Web 任务测试中,GA 的第二轮和第三轮执行持续收敛至稳定的低成本区间,OpenClaw 没有表现出类似的收敛趋势。GA 不仅在单一任务上进化,学到的东西可以跨任务迁移。
五、浏览器反检测:容易被忽略的硬实力
大多数 Agent 用无头浏览器执行 Web 任务,结果被各种反爬机制识别、拦截。GenericAgent 的做法不同,它运行在真实、持久化的 Chrome/Chromium 会话中,保留 Cookie、登录态、扩展和 GPU/WebGL 行为。
| 检测服务 | 普通 Headless 自动化 | GA Web 工具 |
|---|---|---|
| SannySoft headless test | 常被识别 | 56/56 通过 |
| bot.incolumitas.com | 常在 CDP 项异常 | 36/36 通过 |
| BrowserScan bot detection | 常显示异常 | Normal |
| FingerprintJS bot demo | 常被识别 | 通过 |
| reCAPTCHA v3 | 低分/bot-like | 0.9 真人相似分 |
reCAPTCHA v3 拿到 0.9 的真人相似分。这不是”点过了验证码”,是风控模型真的把你当一个正常人类。这意味着 GenericAgent 可以操作那些做了严格反爬的网站(外卖、银行、政务平台),普通的 Headless 方案会被直接拦截。
六、评测数据:五个维度的实际表现
论文从五个维度系统评测了 GenericAgent,基线包括 Claude Code、OpenAI CodeX 和 OpenClaw,底层模型覆盖 Claude Sonnet 4.6、Claude Opus 4.6、GPT-5.4 和 MiniMax M2.7。
| 维度 | 核心问题 | GA 表现 |
|---|---|---|
| 任务完成度与 Token 效率 | 能否以更低成本完成高难度任务? | 相同任务 Token 为其他框架的 15%-35% |
| 工具使用效率 | 最小工具集能否替代专用工具集? | Token、请求数、工具调用数全面领先,任务质量不降 |
| 记忆系统有效性 | 精简分层记忆能否超越冗余记忆? | 在 SOP-Bench、LoCoMo 等基准上优于全量/冗余方案 |
| 自我进化能力 | 能否在无人干预下自主进化? | 9 轮 LangChain 实验验证持续进化,8 任务跨任务迁移显著 |
| 网页浏览能力 | 能否应对开放网页? | WebCanvas、BrowseComp-ZH 和 22 个自定义任务中达到领先水平 |
工具使用效率是 GA 最突出的优势。Token 消耗、请求数量、工具调用次数三条轴上全面领先对手,四个任务维度的质量没有明显损失。
七、实战:怎么开始用
方法一:一键安装(推荐)
Windows:
powershell -ExecutionPolicy Bypass -c "$env:GLOBAL=1; irm http://fudankw.cn:9000/files/ga_install.ps1 | iex"
Linux / macOS:
GLOBAL=1 bash -c "$(curl -fsSL http://fudankw.cn:9000/files/ga_install.sh)"
安装完成后双击 frontends/GenericAgent.exe 启动桌面端。
方法二:开发者安装
git clone https://github.com/lsdefine/GenericAgent.git
cd GenericAgent
uv venv
uv pip install -e ".[ui]" # 核心 + UI 依赖
cp mykey_template.py mykey.py # 填入你的 LLM API Key
python launch.pyw
方法三:PyPI
pip install genericagent
genericagent-launch
支持的模型
GenericAgent 使用 OpenAI 兼容端点,支持 Claude、Gemini、Kimi、MiniMax 等主流模型。配置在 mykey.py 中完成。
前端选择
| 前端 | 启动方式 | 适用场景 |
|---|---|---|
| 桌面 GUI | 双击 GenericAgent.exe | 日常使用 |
| 终端 TUI v3 | python frontends/tui_v3.py | 开发者、远程服务器 |
| Streamlit | python launch.pyw | Web 界面 |
| Telegram | python frontends/tgapp.py | 随时随地触发 |
| 微信 | python frontends/wechatapp.py | 个人微信接入 |
| 飞书 | python frontends/fsapp.py | 企业协作 |
八、谁适合用
适合:
- 想低成本让 AI 操作电脑的人。点外卖、整理文件、批量发消息、定期监控信息,一次教会,终身复用
- 开发者需要本地系统级 Agent。浏览器操控、终端命令、文件读写、Python 脚本,3000 行代码,改起来没心理负担
- 注重 Token 成本的人。如果你用 Claude Code 或 OpenClaw 烧 Token 烧到肉疼,GA 的 <30K 上下文窗口是个很现实的省钱方案
- 喜欢数据不出自己机器的人。GA 跑在你本地,技能全部私有
不适合:
- 只需要对话、不需要执行的人。ChatGPT 网页版就够了
- 需要大规模企业级编排。OpenClaw 的 50 万行代码不是白写的,多租户、权限管理这些场景它更成熟
- 不想碰 Python 环境。虽然有一键安装包,出了问题还是需要一定技术背景
九、社区生态
- Datawhale 出品了完整入门教程:Hello GenericAgent,从基础调用到高级技巧全覆盖
- 百万级 Skill 库(2026 年 3 月发布):社区用户可以共享技能,加速冷启动
- 社区 GUI 客户端:
ga-manager、galley、GenericAgent-Admin等独立开源项目 - 商业化:DintalClaw(政务龙虾)是唯一官方授权的商业合作方,展示了 GA 在政务场景的落地能力
- 托管 SaaS:genericagent.org 提供 $9-$79/月的托管工作空间
LinuxDo 社区也给了大量支持,是 GA 早期冷启的重要渠道。
十、总结
GenericAgent 走的是一条不同的路:不让 Agent 带着所有能力出厂,而是让它自己长出来。
3000 行核心代码、9 个工具、一个百行循环。加上自进化机制后,实现了一个简单的正反馈:每用一次,就变强一点。
Token 消耗、工具效率和自我进化这三个维度上,论文数据摆在那里:更少的资源,更多的事。对成本敏感的用户和需要长期运行的自动化场景,值得试一下。
如果你还在犹豫选哪个 Agent 框架,pip install genericagent,让它在你的电脑上完成一个你真正需要的任务,看看 Skill 是怎么自动生成的。这比读十篇文章都管用。