从零手撕 AI 编程助手?600 行 TypeScript,有人把它写成了一本能跑起来的教材。
01
不是又一个 AI 工具,而是一本能「跑起来」的教材
PI from Scratch 是 SaladDay 开源的一个 TypeScript 教学项目,核心就一件事:用 600 行代码,从零手写一个能读文件、改代码、执行命令的 coding agent。
上线没多久已经拿下 589 星、38 fork,在开发者圈里悄悄传开。它不追求功能大而全,而是沿着真实项目 pi(earendil-works 出品的 coding agent)的数据流一步步拆:需要什么,我们就造什么。

02
600 行代码,拆掉工程外壳,留下 Agent 的骨架
作者把 pi 的工程细节删掉,只留核心思想,复杂度被压缩进 600 行 TypeScript。你看到的不是玩具——读文件、改代码、跑命令这三板斧,正好是 AI 编程助手的「手和脚」。
CLI 解析、LLM 调用、工具执行、上下文管理,四个组件各司其职,加起来 600 行。看懂这个骨架,生产级 Agent 对你就不再是黑盒。
03
读懂数据流,就懂了大模型的「手和脚」
coding agent 的本质是一条循环:接收任务 → 读取上下文 → 调大模型 → 执行工具 → 观察结果 → 继续下一步。项目把这条数据流拆得明明白白。
看懂这条循环,你再看 Claude Code、Cursor 这类产品,眼里就不再是黑盒——它们只是把这条循环做得更稳、更快、更安全。而这个项目,把最小可运行的那一圈完整摊开给你看。
04
文章配代码,还能打断点——这阅读体验有点上头
最妙的是它的交互设计:官方把文章和源码放在同一个网站上,你往下读,右侧编辑器就逐步补全代码——看完文章,nano-pi 的完整代码也刚好出现在眼前。
更狠的是内置了 Trace 跟踪,可以打断点逐行走代码,亲眼看着 Agent 每一步在干什么。这不是 README,是一篇能跑起来的交互式教材。
05
想跑起来?Node 22 + 一个 OpenAI 兼容 API 就够了
本地运行只需要两样东西:Node.js 22+ 和任意一个 OpenAI 兼容接口。三条命令就能跑起来:
npm install export NANOPI_API_KEY=your-api-key npm run dev还支持 NANOPI_MODEL(模型名)和 NANOPI_BASE_URL(接口地址)两个环境变量,默认走 api.openai.com。想接 DeepSeek、通义、本地 Ollama?改一行 base_url 就行。线上网站的 Trace 是预生成的静态数据,浏览不会发起模型请求,放心点。
06
谁适合读?以及几句冷静话
适合想搞懂 coding agent 原理、正被「AI 编程到底怎么工作」困扰的开发者。有一定 TypeScript 基础更好,没有也能靠 Trace 慢慢跟。600 行的体量,周末花半天就能啃完,性价比极高。
冷静说两句:项目定位是教学,别指望它直接当生产工具;作者自己都说「文章保留古法手敲,尽可能没有 AI 味」。整体 MIT 协议,随便拿去改。star 涨得挺快,数据说话:
开源地址:https://github.com/SaladDay/pi-from-scratch
在线阅读:https://pi-from-scratch.vercel.app
这期就到这,每周更新,顺手点个「在看」,下期见。
夜雨聆风