从零开始,跟着写一个产品级 Coding Agent

学 Agent 开发总是卡在理论?来,跟着这个开源项目从零写一个。

背景:学 Agent 的尴尬断层

最近在做一个事,想从零开始带大家写一个产品级的 Coding Agent。

起因是我发现,学 Agent 开发有一个很尴尬的断层------

看概念?ReAct、记忆机制、上下文工程......这些看完都懂了,但一到真实项目里就不知道怎么把它们组装成一个能跑的系统。

看开源项目?代码量太大,文件几百个,新手根本找不到入口在哪。

所以我换了个方式,做了一个实战连载项目:Zero2Agent

Zero2Agent 有什么不同?

市面上的 Agent 学习资源大多两极分化------要么只讲概念,要么直接丢一个庞大的开源仓库。Zero2Agent 想做的是中间那座桥

常见问题 Zero2Agent 的做法
纯概念,看完不会动手 侧重工程实践:每一步都有真实代码和架构考量,从细节理解 Agent 的运作原理
项目太大,无从下手 小步迭代开发:像追剧一样跟着 Story 每周练一点,把庞大系统拆解为可执行的小目标
Demo 级别,不够真实 产品级标准:融入真实业务中的实战经验,深入产品级的实践细节

一句话总结:这是一门带你一起做的实践课程。

路线图:我们将如何展开?

整个项目按 Epic → Story 的方式组织,目前规划了 5 个 Epic:

Story 1:让 Agent 跑起核心循环

目前第一节已更新,目标很明确------实现最经典的 ReAct Loop

聊天 vs Agent:本质差异在哪?

传统的 AI 对话是一问一答的开环 ;而 Agent 的核心,是一个自主运行的闭环

在第一课中,我们用最精简的代码,实现最经典的 ReAct(Reasoning and Acting)模式,让 AI 学会:

复制代码
观察环境 → 思考决策 → 调用工具执行 → 观察结果 → 继续决策 → ...... → 结束

先做"只读闭环"

如果一开始就把写文件、执行命令、安全审批全塞进来,你会面对太多变量,反而看不清 Agent 最核心的工作机制。

只做只读闭环,能让我们把注意力集中在三件事上:

  1. 循环怎么跑起来?
  2. 工具怎么接入循环?
  3. 拿到的工具结果为什么还要回传给模型?

我们精选了两个刚好互补的工具,搭建"先看目录 → 再读文件 → 继续决策"的工作流:

工具 作用
list_directory 获取文件树。没有它,Agent 只能盲猜路径
read_file 查看文件内容。没有它,Agent 看不到具体细节

揭开黑盒:Agent Loop 与 Tool Use

Agent Loop ------ Agent 不是魔法,它的本质是一个用代码写出的 while 循环。模型不再返回一次性回答,而是返回结构化的 stop_reason。只有当返回 end_turn 时循环才结束;如果是 tool_use,则触发宿主的工具执行逻辑,并进入下一轮。

复制代码
调用 LLM → stop_reason 分支 → 执行工具并写回 → ↻

Tool Use ------ 这是让 LLM 从"只能说"变成"能做事"的桥梁。我们使用强类型的 JSON Schema 来定义工具。模型通过标准的 tool_calls 吐出需要调用的函数名和参数,宿主执行后再通过 tool_result 将物理世界的观测注入回上下文中。

这正是 Claude Code / Codex / Cursor 等 Coding Agent 的基石。

丰俭由人:选择你的学习深度

无论是 Story 1 还是后续更复杂的架构,本系列都提供完整的代码仓库和实操指引。你可以根据自己的时间精力选择"食用"方式:

深度 时间 适合
浅度浏览 ~20 分钟 阅读图文讲解和核心代码片段,快速补充认知
实践跟练 1~2 小时 Clone 仓库,切到对应 Tag,根据文档自己动手实现核心模块
深度学习 更多时间 阅读 Story 中的深度拓展内容,了解更多工程细节和产品实践

完全开源

本系列的所有代码、技术文档、知识总结和每一步迭代的变更记录,都同步开源在 GitHub 上。

你可以拉取代码在本地跟练实践,也可以在 GitHub 上直接阅读。

👉 GitHub 仓库:alienzhou/zero2agent


实践课程正在持续迭代中。第一课已上线,从最经典的 ReAct Loop 开始。

欢迎 Star 仓库追更,有问题评论区聊 🙌

相关推荐
IT_陈寒26 分钟前
Vite的热更新突然不香了,排查三小时差点砸键盘
前端·人工智能·后端
子兮曰1 小时前
Agency-Agents 深度解析:400+ AI 专家的"梦之队"如何重塑开发工作流
前端·后端·vibecoding
竹林8182 小时前
用 The Graph 查询链上数据实战:从手搓 RPC 到 Subgraph,我的 NFT 项目数据加载快了 10 倍
前端·javascript
妙码生花2 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(十九):点选验证码代码逐行目检
前端·后端·go
Awu12273 小时前
⚡从零开发 Agent CLI(五)实现一个可治理、可扩展的工具系统
前端·人工智能·claude
咪库咪库咪3 小时前
Vue3-生命周期
前端
莪_幻尘3 小时前
你的 AI Skill 越多越蠢?Token 上下文爆炸的求生指南
前端·ai编程
lichenyang4534 小时前
从 has.echo 到异步 API 注册表:一次 ASCF API 回调不触发的排查复盘
前端
林瞅瞅4 小时前
Nuxt3 项目部署 Nginx 防盗链后特定 JS 文件 403 问题修复方案
前端
kyriewen4 小时前
别再每次都 Google 了:我整理了前端日常最常踩的 10 个 Git 坑,附速查表
前端·javascript·git