极简、可自我进化的自主 Agent 框架,通过分层记忆将任务路径自动固化为可复用技能
核心定位#
GenericAgent 是一个极简的自主 Agent 框架,核心代码仅约 3000 行,Agent 循环约 100 行,以 9 个原子工具 + 2 个记忆管理工具实现浏览器、终端、文件系统、键鼠、屏幕视觉、Android 设备(ADB)等多模态系统级控制。
自我进化机制#
每次完成新任务后自动将执行路径固化为 Skill 存入分层记忆,后续遇到相似任务直接调用已有技能,使用越久积累的技能树越丰富。整个项目仓库由 GenericAgent 自主完成(含 git init 和所有 commit),作者全程未打开终端,构成自举实证。
分层记忆系统#
| 层级 | 名称 | 功能 |
|---|---|---|
| L0 | Meta Rules | 核心行为规则与系统约束 |
| L1 | Insight Index | 极简记忆索引,用于快速路由与召回 |
| L2 | Global Facts | 长期运行积累的稳定知识 |
| L3 | Task Skills / SOPs | 完成特定任务的可复用流程 |
| L4 | Session Archive | 已完成任务的归档记录,用于长程召回 |
极致省 Token#
上下文窗口控制在不到 30K(对比同类 200K–1M),通过分层记忆保证关键信息在场、减少噪声。README 声称 "6x less token consumption"(具体基准数据待确认)。
9 个原子工具#
| 工具 | 功能 |
|---|---|
code_run | 执行任意代码 |
file_read | 读取文件 |
file_write | 写入文件 |
file_patch | 修改/补丁文件 |
web_scan | 感知网页内容 |
web_execute_js | 控制浏览器行为 |
ask_user | 人机协作确认 |
update_working_checkpoint | 持久化当前上下文 |
start_long_term_update | 长期记忆更新 |
通过 code_run 动态安装 Python 包、编写新脚本、调用外部 API 或控制硬件,将临时能力固化为永久工具。
LLM 兼容性#
支持 Claude/Gemini/Kimi/MiniMax 等主流 LLM,通过 mykey.py 中变量命名区分接口格式:oai_config(OpenAI 兼容)、claude_config(Claude 兼容)、native_oai_config / native_claude_config(适用于较弱模型的标准工具调用格式)。
前端与集成#
原生提供 Streamlit GUI、Qt 桌面应用及微信/QQ/飞书/企业微信/钉钉/Telegram Bot 等多种前端。通用聊天命令:/new(新对话)、/continue(恢复会话快照)。高级模式(Reflect、Plan、SubAgent、自主探索、计划任务)为自文档化,直接向 Agent 询问启用方式。
典型场景#
- 浏览器自动化:在保留登录态的真实浏览器中操作
- 外卖自动下单:自动导航外卖 App 选品并结账
- 量化选股:按量化条件筛选股票
- 移动端控制:通过 ADB 驱动 Android 设备读取数据
- 自主网页探索与定时汇总
- 聊天平台 Bot 接入
安装#
git clone https://github.com/lsdefine/GenericAgent.git
cd GenericAgent
pip install requests streamlit pywebview
cp mykey_template.py mykey.py
# 编辑 mykey.py,填入 LLM API Key
python launch.pyw
命令行最小启动:python3 agentmain.py
待确认信息#
- arXiv 论文(2604.17091)全文实验数据和评测基准未详细审阅
- "百万级 Skill 库"具体规模和获取方式未详述
- "Dintal Claw" 政务机器人无独立链接
- Token 消耗对比缺乏具体基准测试数据
- V1.0 公开日期标注为 2026-01-16,与当前时间线存在差异