返回广场

GenericAgent:3K行代码实现自进化Agent,你的电脑越用越聪明

你是不是也遇到过这些问题? 每次让 AI 帮你做事,都得从头交代——上回教过它的操作方法,下次又要重说一遍。用 Claude Code 写代码,会话一关,经验全丢;用 OpenClaw 编排 Agent,几十万行代码、十几个微服务,光部署就折腾一天。更别提想让 AI 帮你在淘宝下单、在微信发

你是不是也遇到过这些问题?

每次让 AI 帮你做事,都得从头交代——上回教过它的操作方法,下次又要重说一遍。用 Claude Code 写代码,会话一关,经验全丢;用 OpenClaw 编排 Agent,几十万行代码、十几个微服务,光部署就折腾一天。更别提想让 AI 帮你在淘宝下单、在微信发消息、看支付宝账单了——不是登不上,就是操作不了。

有没有一种 Agent,装完就能用、越用越强、还真的能操作中国人的日常 App

GenericAgent 是什么?

GenericAgent 是一个自进化的自主 Agent 框架,核心代码仅约 3000 行,通过 9 个原子工具 + 约 100 行 Agent Loop,赋予任意大模型对本地电脑的系统级控制能力。 它不预设技能,而是每完成一次任务就自动沉淀 Skill,下次直接调用——你用得越久,它就越懂你。

核心功能一览

  • 🔬 自进化机制:每次完成任务后,自动将执行路径固化为 Skill,形成你的专属技能树。用几周后,你的 Agent 实例将拥有任何人都没有的独特能力
  • 🪶 极简架构:核心约 3K 行代码,Agent Loop 仅约 100 行,pip install streamlit pywebview 就能跑起来
  • 🔧 9 个原子工具coderun(执行任意代码)、fileread(读文件)、filewrite(写文件)、filepatch(修改文件)、webscan(感知网页)、webexecutejs(控制浏览器)、askuser(人机协作确认)、updateworkingcheckpoint(记忆检查点)、startlongterm_update(长期记忆更新)
  • 🌐 真浏览器控制:注入你正在使用的真实浏览器,保留所有登录态——淘宝、B站、支付宝,不用重新登录就能操作
  • 💬 全面覆盖中国场景:微信个人 Bot、QQ、飞书、企业微信、钉钉、Telegram 全部原生支持
  • 🧠 分层记忆系统:L0 元规则 → L1 记忆索引 → L2 全局事实 → L3 任务 Skills/SOPs → L4 会话归档,五层记忆层层沉淀,关键信息始终在场
  • 💰 极致省 Token:上下文窗口不到 30K,是其他 Agent(200K–1M)的零头,噪声更少、幻觉更低、成功率反而更高
  • 🤖 多模型即插即用:Claude / Gemini / Kimi / MiniMax / OpenAI 兼容格式全支持,变量命名决定接口格式,改个名字就能切模型
  • 📖 代码即文档:Agent 能读自己的源码,任何功能直接问它——"查看你的代码,告诉我你的 reflect 模式怎么启用"就行
  • 🏗️ 完全自举证明:整个仓库从 git init 到所有 commit,都是 Agent 自主完成的,作者全程没开过终端

自进化:GenericAgent 的灵魂

这是 GenericAgent 区别于所有其他 Agent 框架的根本所在:

[遇到新任务] → [自主摸索](安装依赖、编写脚本、调试验证)→
[将执行路径固化为 Skill] → [写入记忆层] → [下次同类任务直接调用]

举个具体例子:

你说的一句话Agent 第一次做了什么之后每次
"帮我监控股票,有金叉就提醒我"安装 mootdx → 构建选股流程 → 配置定时任务 → 保存 Skill一句话启动
"用 Gmail 发这个文件"配置 OAuth → 编写发送脚本 → 保存 Skill直接可用
"帮我点一杯奶茶"打开外卖 App → 导航搜索 → 选品下单 → 保存 Skill一键复用

你不需要管理这些 Skill,Agent 自动处理。使用时间越长,积累的技能越多,最终形成一棵完全属于你的专属技能树——从 3000 行种子代码中生长而来。

安装步骤(手把手)

下面从零开始,Mac 和 Windows 通用。

第 1 步:安装 Python

Mac 用户:打开终端,执行:

brew install python

如果提示 brew: command not found,先装 Homebrew:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Windows 用户

  1. python.org/downloads 下载
  2. 安装时一定要勾选底部的 "Add Python to PATH"
  3. 点 "Install Now"

⚠️ 推荐使用 Python 3.11 或 3.12,不要用 3.14(与 pywebview 等依赖不兼容)。

验证安装:

python3 --version
# 看到 Python 3.x.x 就 OK

第 2 步:克隆项目并安装依赖

# 克隆仓库
git clone https://github.com/lsdefine/GenericAgent.git
cd GenericAgent

# 安装最小依赖
pip install streamlit pywebview

第 3 步:配置 API Key

# 复制模板
cp mykey_template.py mykey.py
# 用任意文本编辑器打开 mykey.py,填入你的 API Key

配置示例(选一种填就行,不用的配置删掉或留着不管都可以):

OpenAI 兼容格式(大多数 API 服务都用这种,包括国内中转站):

# 变量名含 'oai' → 走 OpenAI 兼容格式
oai_config = {
    'apikey': 'sk-你的密钥',
    'apibase': 'http://你的API地址:端口',
    'model': '模型名称',
}

Claude 兼容格式(Anthropic 原生接口):

# 变量名含 'claude'(不含 'native')→ 走 Claude 兼容格式
claude_config = {
    'apikey': 'sk-ant-你的密钥',
    'apibase': 'https://api.anthropic.com',
    'model': 'claude-sonnet-4-20250514',
}

推荐:Native 格式(适合 Claude / OpenAI 原生工具调用,效果最好):

# 变量名含 'native' + 'claude' → Claude 原生工具调用
native_claude_config0 = {
    'name': 'cc-relay-1',
    'apikey': 'sk-你的密钥',
    'apibase': 'https://你的中转地址/claude/office',
    'model': 'claude-opus-4-6',
    'fake_cc_system_prompt': True,  # CC 中转站必须置 True
}

MiniMax(走 OpenAI 兼容接口)

oai_minimax_config = {
    'apikey': 'eyJh...',
    'apibase': 'https://api.minimax.io/v1',
    'model': 'MiniMax-M2.7',
}

关键规则变量命名决定接口格式(不是模型名决定的):

变量名包含触发的 Session适用场景
oaiOpenAI 兼容大多数 API 服务
claude(不含 nativeClaude 兼容Claude API 服务
native + claudeClaude 原生工具调用推荐首选,效果最佳
native + oaiOpenAI 原生工具调用GPT/o 系列推荐

apibase 拼接规则

你填的内容系统行为
http://host:2001自动补 /v1/chat/completions
http://host:2001/v1自动补 /chat/completions
http://host:2001/v1/chat/completions直接使用,不拼接

更省心:Mixin 故障转移——配多个 API 源,一个挂了自动切下一个:

mixin_config = {
    'llm_nos': ['cc-relay-1', 'cc-relay-2', 'gpt-native'],
    'max_retries': 10,
    'base_delay': 0.5,
}

第 4 步:启动

# 命令行模式(推荐新手先试这个)
python3 agentmain.py

# 图形界面模式(依赖装好后可用)
python3 launch.pyw

懒人方案:启动后直接对 Agent 说:

请查看你的代码,安装所有用得上的 python 依赖

它会自己读代码、找依赖、全部装好。然后你就可以用 GUI 模式了。

使用方法

方法一:命令行对话

最简单的用法,终端里跟 Agent 直接对话:

帮我在桌面创建一个 hello.txt,内容是 Hello World

Agent 会读取你的指令,调用 file_write 工具完成任务。第一次可能需要几步,但完成后就会固化成 Skill。

方法二:浏览器自动化

先解锁 Web 工具(只需一次):

执行 web setup sop,解锁 web 工具

之后你就可以让 Agent 操控真实浏览器了:

打开淘宝,搜索 iPhone 16,按价格排序
去 B 站,查看我最近看过的历史视频
帮我点一杯奶茶

它注入的是你正在使用的真实浏览器,所有 Cookie、登录态都保留——不需要扫码重登,不需要无头浏览器。

方法三:聊天平台接入

想让 Agent 随时随地接收指令?接一个聊天平台就行:

看你的代码,帮我配置微信的机器人接入

支持的平台和启动方式:

平台安装依赖启动命令
微信个人 Botpip install pycryptodome qrcode requestspython frontends/wechatapp.py
QQ Botpip install qq-botpypython frontends/qqapp.py
飞书pip install lark-oapipython frontends/fsapp.py
企业微信pip install wecomaibotsdkpython frontends/wecomapp.py
钉钉pip install dingtalk-streampython frontends/dingtalkapp.py
Telegrampython frontends/tgapp.py

以微信为例——扫码绑定后,你在外面对着微信说一句"帮我查一下今天的科技新闻",电脑上的 Agent 就开始工作了。

完整工作原理

GenericAgent 通过 分层记忆 × 最小工具集 × 自主执行循环 完成复杂任务:

五层记忆系统

Agent 的记忆不是一锅粥,而是分五层精确组织:

  • L0 元规则(Meta Rules):Agent 的基础行为规则和系统约束,相当于"宪法"
  • L1 记忆索引(Insight Index):极简索引层,用于快速路由与召回,相当于"目录"
  • L2 全局事实(Global Facts):长期运行中积累的稳定知识,相当于"百科全书"
  • L3 任务 Skills / SOPs:可复用的任务流程,相当于"操作手册"——这正是自进化的核心
  • L4 会话归档(Session Archive):从已完成任务中提炼的归档记录,支持长程回忆

这五层设计确保了 Agent 始终在 <30K Token 内完成推理——其他 Agent 动辄塞入 200K 甚至 1M 的上下文,大部分是噪声。GenericAgent 用分层记忆精准定位关键信息,噪声更少、幻觉更低、成本更低,成功率反而更高。

自主执行循环

感知环境状态 → 任务推理 → 调用工具执行 → 经验写入记忆 → 循环

整个核心循环仅约 100 行代码(agent_loop.py),简洁到你能一眼看完所有逻辑。

能力扩展机制

通过 code_run 工具,Agent 可以在运行时动态安装 Python 包、编写新脚本、调用外部 API 甚至控制硬件——临时能力固化为永久工具,这就是"自进化"的实现路径。

实际场景举例

场景怎么用背后的能力
🧋 点外卖"帮我点一杯奶茶" → Agent 自动导航外卖 App,选品,下单浏览器操控 + 自进化 Skill
📈 选股"找 EXPMA 金叉、换手率 > 5% 的创业板股票" → 安装 mootdx,构建选股流程code_run 动态安装 + Skill 固化
💬 批量发微信消息"给以下 10 个人群发这条消息" → 控制微信客户端批量发送ADB + 微信 Bot 前端
💰 支出统计"找出最近 3 个月超过 2000 元的支出" → 操控支付宝查看账单ADB 驱动 App
🌐 网页探索"帮我每天浏览科技新闻并总结" → 自主浏览网页,提炼摘要web_scan + 定时任务
📧 发邮件"把这个文件用 Gmail 发给张三" → 配置 OAuth → 发送 → 保存 Skill首次配置,之后一键复用

与同类产品对比

特性GenericAgentOpenClawClaude Code
代码量~3K 行~530,000 行已开源(体量大)
部署难度pip install + 填 API Key多服务编排CLI + 订阅
浏览器控制真实浏览器(保留登录态)沙箱 / 无头浏览器通过 MCP 插件
OS 控制键鼠、视觉、ADB多 Agent 委派文件 + 终端
自进化自主生长 Skill 和工具插件生态会话间无状态
出厂配置几个核心文件 + 少量初始 Skills数百模块丰富 CLI 工具集
Token 消耗<30K 上下文动辄 200K+200K+
中国场景微信/QQ/飞书/钉钉/企业微信原生支持有限有限
技能积累使用越久越强靠插件生态无状态,不积累

简短对比总结

  • vs OpenClaw:GenericAgent 代码量仅 OpenClaw 的 1/177,部署从零到运行只需 3 条命令(OpenClaw 需要多服务编排)。关键是 GenericAgent 不依赖预装技能——它靠使用进化,越用越强。
  • vs Claude Code:Claude Code 是无状态的,会话关了经验就丢了。GenericAgent 每次任务都沉淀 Skill,跨会话积累。同时 GenericAgent 还多出了浏览器操控、ADB 手机控制等 Claude Code 做不到的事。
  • 通用优势:GenericAgent 上下文不到 30K,Token 成本是其他 Agent 的一个零头。分层记忆确保关键信息精准召回,噪声更少、幻觉更低,成功率反而更高。

高级模式解锁

所有高级模式都是自文档化的——不用翻手册,直接问 Agent:

模式对 Agent 说
Reflect(反射)"查看你的代码,告诉我你的 reflect 模式怎么启用"
计划任务"查看你的代码,告诉我你的计划任务模式怎么启用"
Plan(规划)"查看你的代码,告诉我你的 plan 模式怎么启用"
SubAgent(子代理)"查看你的代码,告诉我你的 subagent 模式怎么启用"
自主探索"查看你的代码,告诉我你的自主探索模式怎么启用"

这就是 GenericAgent 的核心设计理念:代码即文档。Agent 能读懂自己的源码,任何功能你都可以直接问它。

关于自举证明

值得一提的是,GenericAgent 整个仓库——从安装 Git、执行 git init 到每一条 commit message——都是 Agent 自主完成的。作者全程未打开过一次终端。这不仅是"dogfooding",而是完整的 self-bootstrap:Agent 用自己写自己的代码,证明了这个极简框架的可行性。

小结

GenericAgent 用 3K 行核心代码证明了一件事:Agent 不需要几十万行代码和复杂编排,9 个原子工具 + 100 行循环就够了。真正让 Agent 变强的不是预装多少技能,而是能不能持续进化

从点外卖到量化选股,从微信 Bot 到自主网页探索,GenericAgent 都能做到。而且你用得越久,它就越懂你——每次任务都在积累经验,最终长出一棵完全属于你的技能树。

如果你受够了每次都要从零开始的 Agent,或者只想花 3 条命令就部署一个真正能用的 AI 助手,GenericAgent 值得一试。

🔗 项目地址https://github.com/lsdefine/GenericAgent

📖 新手图文教程飞书文档

⭐ 目前约 30K Star,今日 +872 星——说明社区在快速增长,值得跟进。

写评论

读者评论

0

暂无评论,来分享你的看法吧

相关推荐

结合当前内容、你的浏览习惯和搜索偏好推荐。