接入第一个 Coding Agent 本节摘要:三件套跑起来后,这一节把一个真实的 Coding Agent 接进来——以 Claude Code 为例,因为它走的是阻力最小的「代理层接入」路径。核心操作只有一处:把 Agent 的 API 端点(baseURL)指向本地代理层(8096),再配上代理层签发的密钥。改完这一行,Agent 的每一次请求就会先经过代理层的八步管道(详见第 8 章),被注入记忆、被限流、被回写。本节不展开管道原理,只聚焦「怎么改、改完怎么验证通了」。读完本节你会有一个已经接入记忆、随时可以对话的 Coding Agent。
本节摘要:三件套跑起来后,这一节把一个真实的 Coding Agent 接进来——以 Claude Code 为例,因为它走的是阻力最小的「代理层接入」路径。核心操作只有一处:把 Agent 的 API 端点(baseURL)指向本地代理层(8096),再配上代理层签发的密钥。改完这一行,Agent 的每一次请求就会先经过代理层的八步管道(详见第 8 章),被注入记忆、被限流、被回写。本节不展开管道原理,只聚焦「怎么改、改完怎么验证通了」。读完本节你会有一个已经接入记忆、随时可以对话的 Coding Agent。
对比两种接入方式,你会理解代理层的价值:
| 接入方式 | 你要做什么 | 代价 | 收益 |
|---|---|---|---|
| 代理层接入 | 改 Agent 的 baseURL + 配密钥 | 几乎零代码 | 失去对上下文的精细控制 |
| SDK 接入(第 9 章) | 写召回/捕获/工具/降级四段代码 | 几十行代码 | 每一格上下文由你掌控 |
对 Claude Code 这种「你不可能改它源码」的成熟 Agent,代理层接入是唯一可行路径;对自研 Agent,SDK 接入更灵活。本节用前者,因为它是「5 分钟跑通」的最短路径。
关键概念:代理层是「透明」的——它不改 Agent 的行为,只在请求进出 LLM 的路上「夹带」记忆能力。对 Agent 而言,它以为自己在和真正的 LLM 对话,只是 baseURL 换成了本地 8096。
Claude Code 接入代理层,本质是把它指向一个「OpenAI 兼容」的本地端点。概念性配置如下:
# 概念示例:把 Agent 的 API 端点指向本地代理层 # 真实参数以 start-all.sh 结束时打印的那一行为准 export ANTHROPIC_BASE_URL="http://localhost:8096" export ANTHROPIC_AUTH_TOKEN="代理层签发的密钥" # 然后正常启动 Claude Code claude
关键参数有两个:
┌────────────────────────────────────────────────────────┐ │ baseURL → http://localhost:8096 │ │ (原本指向真正的 LLM,现在指向本地代理层) │ │ │ │ 密钥 → 代理层签发的 user-key │ │ (代理层用它做第 1 步 auth,换出 user_id,详见第 8 章) │ └────────────────────────────────────────────────────────┘
⚠️ 注意:密钥不是你那个真正的 LLM 密钥——真正的 LLM 密钥已经填在代理层的
.env里了。给 Agent 配的是「代理层签发的密钥」,代理层内部再用真正的密钥去请求 LLM。这是代理层「夹带」能力的前提。
接入后,验证记忆生效最直接的方法是设计一组「先说后问」的对话:
第一轮(喂信息) 你:我们团队的后端统一用 Go,数据库是 PostgreSQL, 禁止用 ORM,所有 SQL 手写。 Agent:好的,已记下。 第二轮(在新会话或同会话稍后问) 你:帮我写一个查询用户订单的接口。 Agent:(应当默认用 Go + 手写 SQL + PostgreSQL, 而不是问你用什么技术栈)
如果第二轮 Agent「不问就用了正确的技术栈」,说明它从记忆里召回了你第一轮喂的偏好——记忆生效了。
💡 技巧:第一次验证时,「喂」的信息要具体到能产生明确行为(如「禁止 ORM」「统一用 Go」),「问」的问题要能让这个偏好显形。太模糊的偏好(如「我喜欢简洁的代码」)难以肉眼判断是否被召回。
如果第二轮 Agent 还是问了技术栈,大概率是下面几个原因之一:
| 现象 | 可能原因 | 排查 |
|---|---|---|
| Agent 完全无响应 | baseURL 指错 / 代理层没起 | 确认 8096 在监听 |
| Agent 响应但没记忆 | 密钥配错 / 未通过 auth | 看代理层日志的 auth 步骤 |
| 记忆没沉淀 | sessionInit 没确定 team/agent | 看代理层是否触发了交互式表单 |
| 记忆沉淀了没召回 | 装配未绑定该资产 | 去控制台核查 Loadout |
第一个要查的永远是代理层日志——八步管道的每一步都有日志输出,卡在哪一步一目了然。第 8 章会逐段讲这八步,这里你只需要知道「日志会告诉你卡在哪」。
.env 里——这是「夹带」能力的前提。接入已完成,下一节我们用更系统的方式验收:不仅看对话表现,还去控制台核查记忆到底沉淀成了什么、又被如何召回。