全部文章
共 1299 篇文章
LangSmith 04:部署与上线治理
1、本篇任务:发布一个可恢复、可回滚的 Agent 服务 LangSmith 的观测和评测可以独立使用;Deployment/Agent Server 用于运行和管理长期、有状态 Agent。是否采用 Cloud、Hybrid、Self hosted 或 Standalone,取决于数据边界、规模和运维能力,而不是功能越多越好。 2、先判断是否需要 Agent Server 简单 CLI 或 webhook 可以直接调用应用 worke...
实战 01:简易 OpenCode——产品边界与架构
1、这一系列最终要做出什么 目标是一个真正可使用的本地编码 Agent,而不只是“模型生成 Patch”的示例。完成后应支持: 启动本地 Server,TUI/CLI 作为独立客户端连接。 一个项目有多个 Session;Session 中保存用户消息、模型文本、推理/工具 Part、费用和状态。 Plan 模式默认只读,Build 模式按权限执行读取、搜索、编辑、测试。 运行过程通过 SSE 发送增量事件;客户端断开后 Session...
实战 02:简易 OpenCode——Python 编码 Agent
1、本篇交付物 使用 Python、FastAPI、SQLite、Pydantic 和 LangGraph 完成一个最小 Server:创建 Session、发送 Prompt、SSE 订阅事件、执行只读工具、产生编辑权限请求、批准后恢复并应用 Patch。真实模型最后接入,开发阶段先用 FakeModel 保证测试确定。 2、项目结构 3、核心合同 API、数据库 JSON 和 SSE 都使用这些 schema。数据库读取出的 JSO...
实战 03:简易 OpenCode——TypeScript 编码 Agent
1、本篇交付物 TypeScript 版采用 Fastify、Zod、SQLite、LangGraph.js 和 Ink/React:Server 负责项目、Session、模型、工具与权限;TUI 只调用 HTTP/SSE。重点不是翻译 Python,而是利用 discriminated union 和 reducer 保证端到端事件一致。 2、Monorepo 结构 不依赖 Server/TUI,防止循环依赖。所有网络输入、数据库...
实战 04:简易 OpenClaw——单渠道网关
1、本篇交付物 实现一个 Telegram 或 Slack 单渠道 Gateway:验证身份、接收并去重事件、路由到内部 Session、异步运行 Agent、可靠发送回复、处理批准按钮、保存死信和运行记录。Agent Core 可以复用 LangChain/LangGraph,也可以接前面的 OpenCode Server。 第一版只接一个账号、一个渠道。多渠道、Memory、Skills、Cron 和多 Agent 放在后续专题。...
实战 05:简易 OpenCode——会话、上下文压缩与模型运行时
1、本篇任务:让长时间编码 Session 不失控 编码 Agent 的难点不是第一次回答,而是第 30 轮仍知道任务、改了哪些文件、测试为何失败,同时不把整个仓库和全部日志重复塞进模型。本篇完善 Session 生命周期、上下文构建、压缩与 Provider 路由。 2、Session 与 Turn Session 表示持续协作空间;Turn 表示一次用户输入到 Agent 停止的运行。一个 Session 可 fork 子 Sess...
实战 06:简易 OpenCode——权限、Sandbox、LSP、MCP 与插件
1、本篇任务:安全增加 Bash、LSP、MCP、Skills 与插件 核心 Server 稳定后才能扩展能力。本篇建立统一扩展边界:所有能力都进入 Tool Registry、Permission Engine、事件流和审计;扩展不能绕过主运行时直接操作宿主。 2、权限规则模型 规则至少匹配 agent/mode、tool、资源 pattern、action 和 scope: 决策顺序:系统硬 deny → Plan mode den...
实战 07:简易 OpenClaw——Gateway、Session、Channel 与身份模型
1、本篇任务:从单渠道扩展为多客户端 Gateway 单渠道版已解决 webhook 可靠性。本篇将 Gateway 定义成中心控制平面:多个 Channel Adapter、Control UI/CLI、Agent Runtime 和设备节点都通过版本化协议连接,共享身份、Session 与事件模型。 2、Gateway 拓扑 Channel Adapter 只负责渠道协议;Gateway 负责统一路由;Agent 不直接持有渠道 t...
实战 08:简易 OpenClaw——Memory、Skills、Cron 与多 Agent
1、本篇任务:让助手跨会话工作,但不混淆记忆、技能和任务 Memory 保存长期事实/偏好;Skill 保存可执行的方法说明;Cron 保存未来要触发的工作;子 Agent 保存隔离执行上下文。四者用途不同,全部塞进聊天历史会导致污染和权限混乱。 2、Memory 分层 Memory backend 按 identity/agent/org namespace。多用户 Gateway 不能使用共享 main memory。原始消息不是自...