auto-llm:自主多Agent Web研究系统
auto-llm 是一个基于MCP的多代理研究系统,可以运行由OpenRouter模型(Llama 3.3 70B)、Playwright MCP、文件系统MCP和用于语义记忆的零向量MCP驱动的长期网络探索和综合工作流。
其设计目的是:
- 探索 网络通过剧作家MCP
- 发现 使用评分启发式的有趣内容
- 生长 随着时间的推移,它自己的探索前沿
- 记住 通过向量数据库从语义上发现
- 合成 报告的模式和见解
- 生存 具有检查点状态的中断和恢复支持
______________________________________________________________________
特性
- 多代理架构
- scout:好奇心驱动的web浏览器 - investigator:深潜分析师 - synthesizer:模式识别器和报表编写器
- MCP本地集成
- 用于浏览器自动化的Playwright MCP - 用于持久存储的文件系统MCP - 语义记忆的零向量MCP
- 检查点和弹性
- 持久 checkpoint.json 包含已访问的URL、循环索引和统计数据 - 通宵跑步安全;从中断的地方继续
- URL的动态边界
- Scout通过结构化方式提出新的候选网址 FRONTIER_LINK 线条 - 边界条目会被评分,随着时间的推移而衰减,并保持域平衡
- 结构化日志记录
- 控制台+文件记录(data/state/research_agent.log)
______________________________________________________________________
项目布局
main.py–CLI入口点和高级编排器agents/
- scout.py –好奇侦察员代理定义 - investigator.py –深度调查员代理定义 - synthesizer.py –模式合成器代理定义
workflows/
- exploration.py –探索周期、检查点、动态边界 - synthesis.py –合成通行证和报告生成
mcp_agent.config.yaml–MCP服务器配置mcp_agent.secrets.yaml–OpenRouter凭据(gitignored)data/
- observations/ –保存观察JSON文件 - reports/ –Markdown报告(调查+综合) - screenshots/ –剧作家截图 - state/ –检查点和日志
docs/
- user-guide.md –详细的用户和开发人员文档
______________________________________________________________________
先决条件
- Python 3.10+
- Node.js+npm(用于
npx以及MCP服务器) - OpenRouter API密钥
______________________________________________________________________
快速启动
- 创建并激活virtualenv
cd auto-llm
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt- 配置OpenRouter
编辑 mcp_agent.secrets.yaml:
openai:
api_key: "sk-or-v1-YOUR_OPENROUTER_API_KEY"
base_url: "https://openrouter.ai/api/v1"
organization: null- 烟雾测试:单次探测
python main.py explore --urls https://example.com- 具有合成功能的短多周期运行
python main.py overnight \
--urls https://news.ycombinator.com/newest https://github.com/trending \
--cycles 3 \
--synthesis-every 2- 对最新数据的一次性综合
python main.py synthesize --lookback-hours 24______________________________________________________________________
下一步去哪里
- 阅读
docs/user-guide.md详细解释:
- 代理角色和行为 - 前沿机制和得分 - 检查点模式和恢复语义 - 如何添加新代理或MCP服务器
本自述文件有意简洁;用户指南包含完整的系统叙述,是想要理解或扩展系统的新开发人员的最佳起点。
