MimiAgent 是一个轻量级、本地优先的通用 Agent 学习项目。它用可阅读的代码展示 Session、Context、ReAct Agent Loop、Tool、审批、取消、事件流、Trace 与持久化如何协作,不依赖外部 Agent SDK。
当前 v0.2 提供 React/Ink CLI、React/Vite Web 控制台和一个共享的 Python Agent Runtime。交互参考 Claude Code、Codex 等产品,但只保留理解和运行本地 Agent 所需的核心能力。
要求 Python 3.11+、Node.js 22+ 和 pnpm 10+。
git clone https://github.com/Kickflip73/MimiAgent.git
cd MimiAgent
./scripts/bootstrap
./bin/mimi配置 DeepSeek 后即可使用默认模型:
export DEEPSEEK_API_KEY="..."
./bin/mimi --help
./bin/mimi "解释这个仓库的架构"
./bin/mimi -p "总结 README"
./bin/mimi web --no-openMIMI_MODEL 选择默认模型,MIMI_HOME 修改本地状态目录,MIMI_WORKSPACE 修改 Tool 工作区。所有文件 Tool 默认受当前工作区约束。
公开启动模式为交互式 mimi [prompt]、一次性输出 mimi -p <prompt>、Web mimi web [options]、mimi --help 和 mimi --version。模型与状态目录通过上述环境变量或配置文件设置;进入交互式 CLI 后使用 /help 查看会话命令。
- 显式、可取消、有预算上限的 ReAct 循环
- Schema v2 Session、JSONL Trace、断点恢复与并发租约
read_file、list_dir、write_file、shell、web_fetch、echo- 写入、执行和网络操作的人类审批
- Protocol v1 JSONL stdio 与 FastAPI/Fetch-SSE 双传输
- CLI 流式回答、Tool 卡片、Session/模型/Context/Trace 面板
- Web 流式回答、审批、取消、Session/模型/Context/Trace 面板和 SSE 重放
Skill、长期 Memory、RAG、MCP、多 Agent、任务队列和 IDE 集成不属于 v0.2;它们只会在核心边界保持清晰的前提下逐步探索。
| 命令 | 作用 |
|---|---|
/help |
显示命令目录 |
/status |
查看 Runtime 与当前 Turn 状态 |
/new |
新建 Session |
/resume |
恢复指定 Session |
/model |
查看或切换模型 |
/tools |
查看 Tool 目录 |
/context |
查看最近 Context 快照 |
/trace |
查看当前 Trace |
/compact |
压缩当前 Session 上下文 |
/exit |
关闭 CLI 和子 Runtime |
./bin/mimi web 默认只绑定 127.0.0.1。非回环地址必须同时传入 --allow-remote 并设置 MIMI_WEB_TOKEN;令牌只进入浏览器内存和 sessionStorage,不放入 URL、Session 或 Trace。不要把远程 Web 暴露到不可信网络。
MIT。欢迎以测试和清晰边界为前提参与贡献。