mini-cc:用最小的代码,复刻一个“真正能干活”的 AI 编程智能体(并且把架构讲清楚)

如果你对 AI 编程助手感兴趣,可能已经用过或看过不少产品:它们能聊天、能补全、能生成代码......但当你想进一步追问:

  • Agent 到底怎么循环? 为什么会一边输出一边打断去调用工具?
  • Tool Use 是怎么定义和分发的? 怎么把文件读写、Bash 执行接进来?
  • 长上下文怎么记忆? 怎么避免 Token 爆炸?
  • 终端里的 React UI 为什么能这么丝滑?

多数项目要么过于工程化难以上手,要么抽象太高看完仍然不敢写自己的 Agent。

mini-cc 就是为了解决这个学习断层而生的:它是一个极简架构的轻量级 AI 编程智能体,定位为"剖析、学习和复刻大厂 Agent 架构"的开源教学项目------用尽可能少的代码,把 Claude Code CLI 的核心交互与关键机制复刻出来,并把关键点写成文档,方便你"读得懂、改得动、复刻得出"。

项目地址:github.com/you-want/mi...(欢迎 Star)


你会得到什么?

mini-cc 的价值不在于"又一个能聊天的 CLI",而在于它把一个现代 AI 编程 Agent 的关键模块拆出来,让你清楚看到:

  1. 一个可运行的 Agent Loop:模型生成 → 发现 tool_calls → 执行工具 → 把结果回填 messages → 继续生成,形成闭环。
  2. 一套可扩展的工具系统(Tool Use):Bash / 读文件 / 写文件,覆盖 AI 编程助手的最核心动作。
  3. 一套务实的记忆与上下文压缩策略.ai_memory + 压缩与截断,解决"能跑但跑不久"的长任务问题。
  4. 一个真正好用的终端 UI:基于 React(Ink)做虚拟滚动、流式输出打字机体验,让演示与日常使用都更顺手。
  5. 多语言实现对照:同一套思想,给出 TypeScript / Python / Go / Rust 多版本实现,利于你用自己熟悉的语言复刻。

核心亮点一览(为什么它值得被写进你的收藏夹)

1) 多模型支持:Claude / OpenAI / 兼容 OpenAI 接口的模型都能接

mini-cc 支持 Anthropic API 与 OpenAI 兼容接口,因此你可以在 Claude、DeepSeek、Qwen、Kimi 等模型之间切换,把它当作自己的"模型试验台"。

2) 纯函数式 Agent 循环:把事件循环讲清楚、写干净

项目强调用更清晰的方式呈现 Agent Loop:工具调用如何被触发、如何串起来、如何把执行结果回填上下文------这些"产品看不到、学习最关键"的东西,正是 mini-cc 的重点。

同时也支持推理模型的 reasoning_content 展示,让你在终端里观察到"模型如何思考/如何推进任务"(如果你使用的模型提供该字段)。

3) Tool Use:三件套就足够让 Agent 干活

  • BashTool:执行系统终端命令(npm / git / 脚本等)
  • FileReadTool:读取本地文件作为上下文
  • FileWriteTool:覆盖写入文件,完成自动修改

这三种工具覆盖了"读代码 → 跑命令 → 改代码"的核心工作流,是构建 AI 编程助手最具性价比的起点。

4) Bash 沙盒:把危险命令挡在门外

项目实现了命令执行包装器的剥离与高危破坏性命令拦截(例如 rm -rf /),让你在学习/二次开发时更安心。

5) .ai_memory 记忆引擎:给长任务一条"活路"

mini-cc 通过本地文件系统记忆 + 上下文压缩/截断策略(例如 Prompt Too Long 时削减最老历史),降低"对话越长越容易崩"的概率。

6) MCP 插件生态:工具扩展走标准协议

项目支持 MCP(Model Context Protocol)------你可以通过协议把能力扩展到更多外部工具/服务上,并通过隔离执行降低风险与耦合。


快速开始(四种语言,任选其一)

TypeScript(推荐)

全局安装:

bash 复制代码
npm install -g @you-want/mini-cc
mini-cc

源码构建(可选):

bash 复制代码
git clone https://github.com/you-want/mini-cc.git
cd mini-cc/typescript
npm install
npm run build
npm start

Python

bash 复制代码
pip install you-want-mini-cc
mini-cc

Go

bash 复制代码
go install github.com/you-want/mini-cc/go/cmd/mini-cc@latest
mini-cc

Rust

bash 复制代码
cargo install --git https://github.com/you-want/mini-cc.git --bin minicc
minicc

第一次运行:一分钟把 API Key 配好

首次启动时,如果没有检测到 API Key,mini-cc 会弹出交互式配置引导,并保存到全局目录(例如 ~/.mini-cc-env)。你只需要按提示输入:

  • OPENAI_API_KEY
  • 模型名称(如 Qwen / DeepSeek 的某个模型名)
  • BASE_URL(如果你使用兼容 OpenAI 的接口)

配置完成后就可以直接开始下指令了。


它能怎么"像工程师一样"工作?(一个简短的交互想象)

启动后,你可以像和一个"能读写文件、能跑命令"的工程师协作一样输入自然语言,比如:

  • "帮我创建一个 hello.js 文件,内容输出 Hello World。"
  • "列出当前目录下有哪些文件?"
  • "读取 package.json,并告诉我项目名称是什么。"

当任务复杂时,它会多轮调用工具(读文件 → 跑测试 → 写代码修复)直到完成------这正是 Agent 的魅力所在,也是你最值得在源码里学会的部分。


架构一眼看懂:三个关键词

1) Agent Loop:生成与工具调用的闭环

核心是把模型输出当作"可中断的流":一旦出现 tool_calls,就暂停生成,执行工具,再继续生成。循环稳定了,Agent 才会"持续推进"。

2) Memory & Context:压缩、截断、长效记忆

工程上你必然会遇到 Token 预算问题:mini-cc 把"压缩层 + 防爆舱 + 两步法则(.ai_memory)"这一套组合拳放进来,适合你直接抄作业或按需改造。

3) MCP:用标准协议扩展工具边界

当你想接入更多能力(比如安全网络请求、系统操作、外部应用),MCP 是一条更可维护的路线:工具扩展不再靠"在仓库里硬塞一堆适配器"。


学习路径:从会用到会写

项目在 docs/ 目录提供了完整的学习指南,从架构到工具系统到记忆与安全,再到 UI 与优化部署,适合你:

  1. 先跑起来:选一个语言版本装好,能正常对话与调用工具。
  2. 理解主循环:沿着 Query Engine/主入口追一次调用链。
  3. 理解工具系统:看工具定义、参数校验、执行与渲染回填。
  4. 自己加一个工具 :比如 GitStatusTool / HttpFetchTool(配合安全策略)。
  5. 做一次"最小产品化":加日志、加配置、加发布脚本,跑 CI。

适合谁?

  • 想系统学习 Agent 架构 / Tool Use / 记忆压缩 的开发者
  • 想复刻一套"能在终端里干活"的 AI 编程助手的人
  • 想研究 MCP 插件化、把工具能力标准化的人
  • 想对比 TypeScript / Python / Go / Rust 实现差异的人

参与贡献

mini-cc 基于 MIT 协议开源,你可以自由学习、修改和分发。更欢迎你:

  • 提交 PR:修复 bug、补充文档、增加示例
  • 补全更多工具:在保证安全的前提下扩展能力边界
  • 提供更多语言/平台适配:让项目更易用、更可移植

结语:把"黑盒的 AI 产品",拆成"白盒的工程能力"

AI 编程助手的未来,一定不仅是"更会写代码",更是"更会使用工具、管理上下文、持续推进复杂任务"。

如果你也想把这些能力变成自己可掌控的工程资产,而不是停留在"用过某个产品"的层面------mini-cc 会是一个非常友好的起点。

👉 GitHub:github.com/you-want/mi...

如果这篇文章对你有帮助,欢迎点个 Star,让更多人一起把 Agent 架构吃透。

相关推荐
问心无愧05131 小时前
ctf show web 入门46
android·前端·笔记
ooseabiscuit1 小时前
PHP与C++:Web与系统编程的终极对决
前端·c++·php
SEO_juper1 小时前
外贸独立站流量翻倍后的转化优化
大数据·前端·seo·geo·外贸独立站·谷歌优化·2026
i学长的猫1 小时前
# Hermes + Web UI 本地 Docker 部署指南
前端·ui·docker
yanyu-yaya1 小时前
css篇之网格grid 学习
前端·css·学习
MandalaO_O1 小时前
Web 开发:计算机网络知识梳理
前端·网络·计算机网络
lyp90h1 小时前
Claude Code CLI System Prompt 完整分析
java·前端·prompt
wmm_会飞的@鱼1 小时前
FlexSim-基于SLP方法的A汽车企业总装车间布局优化
前端·数据结构·数据库·python·数学建模·汽车
三声三视1 小时前
Electron鸿蒙桌面应用打包部署完全指南(含自动更新)
前端·electron·前端框架·harmonyos·鸿蒙·桌面端