从0开发一个 Coding Agent(一):前言

大家好,我是小月,好久没写专栏系列教程了,距离上次写专栏的时候还是在上次。刚好最近离职了,有时间了,就趁着这个时间写一个专栏-从零开发一个Coding Agent。Agent也是当下最火的方向之一了,在自己学习的同时也分享给大家,同时也能和大家一起讨论相关的知识。

本专栏将带你从一个空目录开始,逐步开发一个真正可运行的 Coding Agent。我们不会只封装一次大模型 API 请求,而是完整实现模型接口、Agent Loop、工具调用、文件操作、命令执行、会话存储、上下文压缩、终端 UI、扩展系统和 RPC 等核心能力。

项目使用 TypeScript、Node.js、npm workspaces、Vitest 和 Biome,采用 npm workspaces 搭建 monorepo(单仓库多包)架构,将系统拆分为四个职责明确的软件包:

  • ai:定义统一的模型、消息、工具和流式事件契约,并适配不同的大模型 Provider。
  • agent:实现 Agent Loop,负责模型调用、工具执行、状态转换、错误传播和取消。
  • coding-agent:组合 CLI、文件工具、命令执行、会话管理和不同运行模式。
  • tui:提供独立可复用的终端输入、组件和差量渲染能力。

教程采用渐进式开发方式:先使用 faux provider 构建不依赖 API Key 的确定性测试,再接入真实大模型 Provider;先完成最小的命令行闭环,再逐步增加文件工具、会话恢复和交互式终端界面。该项目暂不接入LangChain或者LangGraph等第三方库,我觉得学习第三方框架之前应该先属性Agent本身是如何开发的。

项目完成后,你不仅会得到一个可以读取和修改代码、执行命令并持续对话的 Coding Agent,还能够理解一条用户提示词如何依次经过 CLI、Agent Loop、Provider、工具系统、会话存储和终端界面。

如果你对Agent开发也感兴趣,欢迎点赞收藏+关注。专栏:从零开发一个Coding Agent - 东方小月的专栏 - 掘金

项目地址:qddidi/di-code: 基于TypeScript、Node.js 和大语言模型,支持流式对话、工具调用、会话持久化和终端交互的编程智能体。

相关推荐
漂流瓶jz2 小时前
【AI】大模型本地部署与量化:Ollama、transformers、llama.cpp实践
人工智能·llm·ai编程
ℋᙚᵐⁱᒻᵉ鲸落3 小时前
移动端滑动手势冲突:overflow: auto导致外层横向滑动失效
前端·javascript·css·vue.js·html
飞哥数智坊3 小时前
AI时代,我们到底该学什么、用什么,为什么还没提效?
人工智能
飞哥数智坊3 小时前
GPT 做架构,国内模型写代码:这条 AI 开发路线能跑通吗?
人工智能·ai编程
AI_AGENT_DEV_AI4 小时前
AI 智能体的开发与上线
人工智能
VL——MOESR4 小时前
【具身智能】VLA论文阅读随笔
论文阅读·人工智能·机器学习·具身智能·vla
默_笙4 小时前
🎃 前端学了 Next.js,后端该学啥?NestJS 就是 Node 版的蜜雪冰城
前端·javascript
OCR_133716212754 小时前
从模板匹配到AI泛化识别:文本抽取如何重构护照阅读器落地生态
人工智能·重构
大唐荣华4 小时前
从OpenAI关停Sora看世界模型、AI视频与国内具身智能赛道路线分化
人工智能·openai·sora·内容生成
DevOps老兵4 小时前
AI Infra实战02:GPU监控实战,用DCGM+Prometheus+Grafana看清每一张卡
人工智能·grafana·prometheus·ai infra·gpu监控·dcgm