当前位置: 首页 > news >正文

3000行代码打造可自我进化的GenericAgent框架,多场景应用超便捷!

项目简介

GenericAgent是一个极简、可自我进化的自主Agent框架。其核心代码仅约3000行,借助9个原子工具和大约100行的Agent Loop,能让任意大语言模型(LLM)对本地计算机实现系统级控制,涉及浏览器、终端、文件系统、键鼠输入、屏幕视觉以及移动设备(ADB)。它秉持不预先加载技能,通过进化获取技能的设计理念。每次GenericAgent解决新任务时,会自动将执行路径固化为一项技能,方便后续直接复用。使用时间越长,积累的技能越多,会形成一棵完全属于你的技能树,这棵树从3000行种子代码发展而来。

自举实证

本仓库中的所有操作,从安装Git、执行 `git init` 到每一条提交信息,均由GenericAgent自主完成,作者全程未打开过一次终端。

核心特性

  • 自我进化:每次完成任务都会自动沉淀为一项技能,随着使用次数增加,能力不断提升,形成专属技能树。
  • 极简架构:核心代码约3000行,Agent Loop约100行,没有复杂依赖,部署毫无负担。
  • 强执行力:可注入真实浏览器(保留登录状态),9个原子工具能直接控制操作系统。
  • 高兼容性:支持Claude、Gemini、Kimi、MiniMax等主流模型,具备跨平台能力。

自我进化机制

这是GenericAgent与其他Agent框架的根本区别。具体流程为:[新任务] → [自主探索](安装依赖、编写脚本、调试验证) → [将执行路径固化为技能] → [写入记忆层] → [下次遇到类似任务直接调用]。以下是一些示例:

你说的话第一次执行后续执行
“监控股票并提醒我”安装mootdx → 构建选股流程 → 配置定时任务 → 保存技能一句话启动
“用Gmail发送这个文件”配置OAuth → 编写发送脚本 → 保存技能直接可用

使用几周后,你的Agent实例将拥有独一无二的技能树,全部源于3000行种子代码。

实例展示

  • 外卖下单:“Order me a milk tea”,可自动导航外卖应用,选择商品并完成结账。
  • 量化选股:“Find GEM stocks with EXPMA golden cross, turnover > 5%”,能按量化条件筛选股票。
  • 自主网页探索:可自主浏览网页并定期汇总内容。
  • 支出追踪:“查找近3个月超2000元的支出”,可通过ADB驱动支付宝进行查询。

最新动态

  • 2026年4月11日:引入L4会话归档记忆,并与scheduler cron调度集成。
  • 2026年3月23日:支持将个人微信作为Bot前端。
  • 2026年3月10日:发布百万级技能库。
  • 2026年3月8日:发布以GenericAgent为核心的“政务龙虾” Dintal Claw。
  • 2026年3月1日:GenericAgent被机器之心报道。
  • 2026年1月16日:GenericAgent V1.0公开版本发布。

快速开始

方法一:标准安装
  1. 克隆仓库:
    git clone https://github.com/lsdefine/GenericAgent.gitcd GenericAgent
  2. 安装最小依赖:
    pip install streamlit pywebview
  3. 配置API Key:
    cp mykey_template.py mykey.py
    编辑 `mykey.py`,填入你的LLM API Key。
  4. 启动:
    python launch.pyw
    完整引导流程见 `GETTING_STARTED.md`。

Bot接口(可选)

微信Bot(个人微信)

无需额外配置,扫码登录即可:

pip install pycryptodome qrcode requestspython frontends/wechatapp.py

首次启动会弹出二维码,用微信扫码完成绑定,之后可通过微信消息与Agent交互。

QQ Bot

使用qq - botpy WebSocket长连接,无需公网webhook:

pip install qq - botpy

在 `mykey.py` 中补充:

qq_app_id = "YOUR_APP_ID"qq_app_secret = "YOUR_APP_SECRET"qq_allowed_users = ["YOUR_USER_OPENID"] # 或 ['*'] 公开访问
python frontends/qqapp.py

在QQ开放平台创建机器人获取AppID / AppSecret。首次消息后,用户openid记录于 `temp/qqapp.log`。

飞书(Lark)
pip install lark - oapipython frontends/fsapp.py
fs_app_id = "cli_xxx"fs_app_secret = "xxx"fs_allowed_users = ["ou_xxx"] # 或 ['*']

入站支持:文本、富文本post、图片、文件、音频、media、交互卡片 / 分享卡片;出站支持:流式进度卡片、图片回传、文件 / media回传;视觉模型:图片首轮以真正的多模态输入发送给兼容OpenAI Vision的后端。详细配置见 `assets/SETUP_FEISHU.md`。

企业微信(WeCom)
pip install wecom_aibot_sdkpython frontends/wecomapp.py
wecom_bot_id = "your_bot_id"wecom_secret = "your_bot_secret"wecom_allowed_users = ["your_user_id"]wecom_welcome_message = "你好,我在线上。"
钉钉(DingTalk)
pip install dingtalk - streampython frontends/dingtalkapp.py
dingtalk_client_id = "your_app_key"dingtalk_client_secret = "your_app_secret"dingtalk_allowed_users = ["your_staff_id"] # 或 ['*']

其他App前端

除默认的Streamlit Web UI外,还可尝试不同风格的前端:

python frontends/qtapp.py # 基于Qt的桌面应用streamlit run frontends/stapp2.py # 另一种Streamlit风格UI

与同类产品对比

特性GenericAgentOpenClawClaude Code
代码量约3000行约530000行,已开源(体量大)-
部署方式`pip install + API Key`多服务编排CLI + 订阅-
浏览器控制注入真实浏览器(保留登录态)沙箱 / 无头浏览器通过MCP插件
OS控制键鼠、视觉、ADB多Agent委派文件 + 终端
自我进化自主生长技能和工具插件生态会话间无状态
出厂配置几个核心文件 + 少量初始技能数百模块丰富CLI工具集

工作机制

GenericAgent通过分层记忆、最小工具集和自主执行循环来完成复杂任务,并在执行过程中不断积累经验。

分层记忆系统

记忆在任务执行过程中不断沉淀,使Agent逐渐形成稳定高效的工作模式。

  • L0 — 元规则(Meta Rules):Agent的核心行为规则和系统约束。
  • L1 — 记忆索引(Insight Index):极简索引层,用于快速路由和召回。
  • L2 — 全局事实(Global Facts):长期运行积累的稳定知识。
  • L3 — 任务技能 / SOPs:完成特定任务类型的可复用流程。
  • L4 — 会话归档(Session Archive):从已完成任务中提炼的归档记录,用于长程召回。
自主执行循环

感知环境状态 → 任务推理 → 调用工具执行 → 经验写入记忆 → 循环。整个核心循环仅约100行代码(`agent_loop.py`)。

最小工具集

GenericAgent仅提供9个原子工具,构成与外界交互的基础能力:

工具功能
`code_run`执行任意代码
`file_read`读取文件
`file_write`写入文件
`file_patch`修改文件
`web_scan`感知网页内容
`web_execute_js`控制浏览器行为
`ask_user`人机协作确认

此外,还有2个记忆管理工具(`update_working_checkpoint`、`start_long_term_update`),可让Agent跨会话积累经验、维持持久上下文。

能力扩展机制

具备动态创建新工具的能力。通过 `code_run`,GenericAgent可在运行时动态安装Python包、编写新脚本、调用外部API或控制硬件,将临时能力固化为永久工具。

支持

如果这个项目对你有帮助,欢迎点一个Star!同时,也欢迎加入我们的GenericAgent体验交流群,一起交流、反馈和共建。

友情链接

感谢LinuxDo社区的支持!

许可

本项目采用MIT License,详见 `LICENSE`。

Star历史

[此处可插入Star历史图表]

http://www.jsqmd.com/news/649511/

相关文章:

  • RS485接口实战指南:从原理到组网全解析
  • 一文搞懂分期乐微信立减金套装回收变现全流程! - 圆圆收
  • 2026年知网升级后AIGC率高达80%?实测这款方法高效降低60%AIGC率! - 降AI实验室
  • 数据仓库实战:从Hive大宽表到MySQL范式表,聊聊星型与雪花模型的选择与性能调优
  • 性价比高的纹绣培训机构大盘点,服务不错且售后完善的学校哪家好 - 工业推荐榜
  • NFD云解析架构解密:Vert.x高性能异步框架如何实现秒级解析
  • 西门子V90伺服参数实战指南:从入门到精通
  • GTSAM实战:从因子图构建到机器人状态估计
  • 20260412 紫题训练
  • 无锡方管切割哪家强?2026年04月口碑厂家推荐,304不锈钢/无缝钢管/316L无缝钢管,无锡方管厂家销售联系方式 - 品牌推荐师
  • 细聊后期运维有保障的水生态企业,哪家更值得选择 - myqiye
  • 用QSerialPortInfo和QSerialPort打造一个跨平台的串口调试助手(Qt/C++)
  • ZLUDA终极指南:让非NVIDIA显卡也能运行CUDA程序的完整教程
  • SPSS新手必看:5分钟搞定描述性统计分析(附实战案例)
  • Puppeteer-examples 游戏自动化:用代码玩转Google Pac-Man涂鸦的完整教程
  • 佳能Service tool v6.200 废墨清零软件,佳能打印机报错5B00,5B01,5B02,5B03,5B04,1700,P07,E08怎么办?这个清零就可以了。G5080,TS3380
  • ZED相机低光环境优化指南:Gamma/增益设置误区与夜间拍摄实战
  • 【重磅】市场的朋友圈广告代理企业 - 服务品牌热点
  • STM32 RTC日历功能避坑指南:从寄存器操作到HAL库调用的正确姿势
  • G-Helper深度解析:华硕笔记本性能调优的轻量级神器
  • 2026年挑选专业的电缆故障测试仪供应商,这几点核心标准别忽略 - 企业推荐官【官方】
  • ABAP选择屏幕交互设计:如何用MODIF ID和USER-COMMAND实现‘智能表单’?
  • Arduino IDE下STM32F103C8T6的免下载器编程与OLED汉字显示实战
  • create-vue开发工作流优化:从项目创建到生产部署的终极指南
  • 如何高效自定义parallel库Worker与进程管理:Ruby开发者的终极指南
  • nCode与Python双剑合璧:功率谱密度分析的5个高效工作流对比
  • Android ContentProvider终极指南:实现数据共享与跨应用通信
  • BilibiliSponsorBlock完全指南:10分钟学会如何自动跳过视频中的恰饭片段
  • 从Dify到Neo4j:一份给开发者的Docker容器间通信避坑指南(附Linux配置)
  • PostgreSQL 16.3 到 17.0 升级实战:我踩过的三个坑和完整避坑指南