Mini Agent 源码解析——1 导言

Mini Agent 源码解析——1 导言

碎碎念

求职季悄然而至,迫使摸鱼许久的我,不得不重启搁置已久的博客计划。最近 OpenClaw 爆火,我也在本地部署体验了一番。说实话,那种震撼感前所未有——即便是智谱的 AutoGLM 或 OpenManus,也未曾带来如此强烈的冲击。我曾自己写过 LLM Workflow,调侃过 MCP“开发者多于用户”的现状,也惊叹于 Claude Skill 让纯 Prompt 技术都能上桌吃饭。但 OpenClaw 不同,它似乎只是用 LLM 将这些要素简单串联,却迸发出了难以想象的威力。这让我意识到,或许真正的变革,就藏在这些看似简单的连接之中。

但是 OpenClaw 虽是开源框架,但是智械危机导致人类无法控制 vibe 屎山的迅猛增长,想看懂他们的代码是不现实的。这时,我忽然想起学长早在半年前就强力安利过的 Mini-Agent 项目。与其追逐复杂的潮流,不如回归基础,深耕这个仓库。向 MiniMax 的工程师致敬!向开源精神致敬!

项目简介

Mini Agent 是一个极简但专业的演示项目,旨在展示使用 MiniMax M2.5 模型构建 Agent 的最佳实践。项目通过兼容 Anthropic 的 API,完全支持交错思维(interleaved thinking),从而解锁 M2 模型在处理长而复杂的任务时强大的推理能力。

该项目具备一系列为稳健、智能的 Agent 开发而设计的特性:

  • 完整的 Agent 执行循环:一个完整可靠的执行框架,配备了文件系统和 Shell 操作的基础工具集。
  • 持久化记忆:通过内置的 Session Note Tool,Agent 能够在多个会话中保留关键信息。
  • 智能上下文管理:自动对会话历史进行摘要,可处理长达可配置 Token 上限的上下文,从而支持无限长的任务。
  • 集成 Claude Skills:内置 15 种专业技能,涵盖文档处理、设计、测试和开发等领域。
  • 集成 MCP 工具:原生支持 MCP 协议,可轻松接入知识图谱、网页搜索等工具。
  • 全面的日志记录:为每个请求、响应和工具执行提供详细日志,便于调试。
  • 简洁明了的设计:美观的命令行界面和易于理解的代码库,使其成为构建高级 Agent 的理想起点。

以上内容出自仓库 README.md

目前的项目目录大体如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
.
├── docs
├── examples # 学习样例
├── mini_agent # 项目主体代码
│   ├── __init__.py
│   ├── acp # ACP 包装
│   │   ├── __init__.py
│   │   └── server.py
│   ├── agent.py # Agent 主体逻辑
│   ├── cli.py # 入口程序
│   ├── config # 配置文件
│   │   ├── config-example.yaml
│   │   ├── mcp-example.json
│   │   └── system_prompt.md
│   ├── config.py # 配置读取
│   ├── llm # LLM 引擎代码
│   │   ├── __init__.py
│   │   ├── anthropic_client.py
│   │   ├── base.py
│   │   ├── llm_wrapper.py
│   │   └── openai_client.py
│   ├── logger.py
│   ├── retry.py
│   ├── schema # 自定义类
│   │   ├── __init__.py
│   │   └── schema.py
│   ├── skills # skill
│   ├── tools # 工具调用
│   │   ├── __init__.py
│   │   ├── base.py
│   │   ├── bash_tool.py
│   │   ├── file_tools.py
│   │   ├── mcp_loader.py
│   │   ├── note_tool.py
│   │   ├── skill_loader.py
│   │   └── skill_tool.py
│   └── utils
│   ├── __init__.py
│   └── terminal_utils.py
├── pyproject.toml # 项目信息
└── tests # 单元测试

简单梳理一下他们的调用关系如下图所示:

Mini Agent 调用关系

直接和用户或上游交互的是 CLI 和 ACP 1,然后 Agent 模块负责调度 LLM 和工具,LLM 作为整个 Agent 的大脑,负责整体的规划、理解、生成,Tools 包括 MCP、Skill、Bash 工具等,给予 Agent 无限扩展。

小结

从整体上看,Mini Agent 的设计并不花哨,甚至可以说相当克制:CLI 和 ACP 负责接住外部输入,Agent 负责组织执行循环,LLM 负责思考与生成,Tools 负责把能力真正落到外部世界。也正因为这种分层足够直接,它才特别适合作为 Agent 工程实践的学习样本。


  1. ACP(Agent Client Protocol)是一款标准化协议,专门规范代码编辑器/ IDE 与编码代理间的通信,适配本地和远程部署场景,解决了二者耦合导致的集成成本高、兼容性有限等问题,实现了双方解耦与独立创新,同时复用 MCP 的 JSON 表示、自定义编码相关 UX 类型并默认采用 Markdown 作为用户可读文本格式。↩︎


Mini Agent 源码解析——1 导言
https://onlyar.site/2026/03/13/MiniMax-Agent-Guide-1/
作者
Only(AR)
发布于
2026年3月13日
许可协议