Skip to content

7-e1even/learn-agent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

learn-agent · AI Agent 开发笔记

简体中文 · English

开发桌面 agent Reina 过程中记下的笔记,讲 coding agent(Claude Code、Codex、opencode 这类工具)的内部实现机制。每篇讲一个机制,把 Reina 里的生产实现简化成零依赖、单文件、可直接运行的 Node 程序——所以这些做法不是照 API 文档推想的,是实际产品里验证过的。

所有机制最终都建立在同一个循环上

运行

Node 18+,零依赖:

git clone https://github.com/7-e1even/learn-agent && cd learn-agent
AGENT_API_KEY=sk-xxx node s01_agent_loop/agent.mjs

任何 OpenAI 兼容的 API key(DeepSeek / Kimi / GLM / OpenRouter / 本地 Ollama)都行;没有 key 的话,多数章节的 demo.mjss12 的自测模式不需要 key。

目录

s01–s12 从零搭出一个完整可用的 agent,按顺序读;s13 之后是开发 Reina 时陆续踩到、记下来的边界问题,挑感兴趣的读。每篇结尾附 Reina 中对应生产实现的位置。

# 主题 要解决的问题
s01 Agent 主循环 最小可用的 agent 长什么样
s02 工具系统 工具越加越多,怎么不用每次都改循环
s03 循环预算与纠偏 模型原地打转、反复报错,怎么发现并拉回来
s04 工具输出预算与溢出 一条 cat 的输出就能撑爆上下文,怎么办
s05 流式输出与中断 用户按下 Ctrl+C,断在一半的消息记录怎么修
s06 上下文压缩 上下文满了要压缩,怎么不忘掉最初的任务
s07 Prompt 缓存 同样的对话,为什么有人的账单贵 10 倍
s08 会话持久化与恢复 进程崩了,跑了半小时的会话怎么接着跑
s09 子代理与看门狗 子任务卡死了,怎么发现它并保住已完成的部分
s10 System prompt 组装 system prompt 越写越长,怎么按需拼装
s11 多 agent 协作 几个 agent 同时干活,怎么分工不重复不冲突
s12 完整 agent 整合 前面所有机制装回一个循环里是什么样
s13 权限与审批 模型要执行 rm -rf,怎么在动手前拦住
s14 Provider 兼容层 换个模型 tool call 格式全乱,怎么兼容
s15 渐进式工具披露 工具有几十个,怎么不把上下文塞满
s16 MoA 多模型合议 让多个模型一起商量,到底值不值
s17 自进化复盘环 agent 能不能自己复盘对话,把学到的沉淀成记忆和技能
s18 自主任务的完成门 agent 说"做完了",凭什么信
s19 压缩与缓存的冲突 压缩必然击穿缓存,怎么把损失降到最低

发现事实错误或代码 bug 欢迎提 issue。MIT License · © 2026 7-e1even

Releases

No releases published

Packages

 
 
 

Contributors