我在 24 小时内用零 Rust 经验构建了一个开源 Cowork —— 并且 Agent 自己构建了它

发布: (2026年1月20日 GMT+8 16:43)
4 min read
原文: Dev.to

Source: Dev.to

我在完全没有 Rust 经验的情况下开始这个项目,并且坚信:构建一个 agent 不应该依赖大量框架。二十四小时后,我交付了一个面向非开发者的 Rust 原生 AI Agent 桌面应用,编译后只有 16 MB 二进制文件,使用了简单的 while 循环配合 Skills,支持 MCP,支持 BYOK(自带密钥)甚至本地模型!

技术栈

  • Rust – 从零到一天内交付
  • 长期记忆 – 以文件系统作为持久、可查询的上下文
  • 循环 – 单个 while 循环协调 I/O 与工具调用
  • 工具 – 内置文件工具(读取、写入、bash)+ 符合 MCP 的提供者(可扩展)
  • 沙箱 – 简单的 Docker 容器隔离大部分风险

秘诀

  • 将状态保存在普通文件和目录中。
  • 将编排保留在一个简单的循环里,而不是框架。
  • 教会 AI 读取并写入自己的运行上下文,存放在文件中。

我的收获

1. 你不需要 agent 框架

框架往往会引入不必要的抽象和复杂度。一个简单的循环就足够:

  • 观察 – 读取输入、日志和任务文件
  • 决定 – 让模型给出下一个原子动作
  • 执行 – 调用工具(MCP)或写入磁盘
  • 反思 – 将结果追加到本地日志中

2. 文件系统就是全部

向量存储和 RAG 农场固然好用,但它们可能成为投机性的负担。

  • 所有内容都以文件形式存在:任务、计划、差异、决策和日志都以纯文本或 JSON 保存。
  • 现代经过强化学习训练的模型在 Linux 文件系统上表现良好。
  • 将文件系统当作“长期记忆”使持久化变得极其简单,恢复也一目了然。

3. 超现实的镜像:AI 编码自我复制

我使用了一个 AI agent(Claude Code)来帮助构建项目。Open Cowork 本质上是一个带有类似 Copilot agent 的 GUI,展示了 AI 如何在 Rust 中自我复制。

4. 安全是第一等公民

Agent 功能强大,但若没有边界就会成为风险。对非开发者而言,安全不仅是一个特性——它是根基。

  • 严格的沙箱(例如 Docker)以及对系统命令或网络调用的白名单限制,使 agent 保持有用而不是系统威胁。

代码概览

整个代码库可以用下面的循环图概括:

Agent loop diagram


项目已开源:

欢迎探索、尝试,并提供任何反馈!

Back to Blog

相关文章

阅读更多 »

Rapg:基于 TUI 的密钥管理器

我们都有这种经历。你加入一个新项目,首先听到的就是:“在 Slack 的置顶消息里查找 .env 文件”。或者你有多个 .env …

技术是赋能者,而非救世主

为什么思考的清晰度比你使用的工具更重要。Technology 常被视为一种魔法开关——只要打开,它就能让一切改善。新的 software,...

踏入 agentic coding

使用 Copilot Agent 的经验 我主要使用 GitHub Copilot 进行 inline edits 和 PR reviews,让我的大脑完成大部分思考。最近我决定 t...