先导
在讨论代码之前,先把一件事说清楚。
Github 原文:shareAI-lab/learn-claude-code Agency 来自模型,Agent 产品 = 模型 + Harness 在讨论代码之前,先把一件事说清楚。 Agency -- 感知、推理、行动的能力 -- 来自模型训练,不是来自外部代码的编排。 但一个能干活的 agent 产品,...
内容来源于 Github,原文跳转: shareAI-lab/learn-claude-code
22 篇文章
在讨论代码之前,先把一件事说清楚。
Github 原文:shareAI-lab/learn-claude-code Agency 来自模型,Agent 产品 = 模型 + Harness 在讨论代码之前,先把一件事说清楚。 Agency -- 感知、推理、行动的能力 -- 来自模型训练,不是来自外部代码的编排。 但一个能干活的 agent 产品,...
⚡ "One loop & Bash is all you need" — 一个工具 + 一个循环 = 一个 Agent。
Github 原文:shareAI-lab/learn-claude-code Harness 层: 循环 — 模型与真实世界的第一道连接。 问题 你提出了一个问题给大模型:“帮我读取下我的目录下有哪些文件,并且执行XXX.py”。OK,模型能输出一条 bash 命令,但输出完了就停了,它不会自己跑,也不会看到...
"加一个工具, 只加一个 handler" — 循环不用动, 新工具注册进 dispatch map 就行。
Github 原文:shareAI-lab/learn-claude-code 只有 bash 一个工具 我记得早在别的文章里我提到过,Claude code 最早其实是就是Claude 模型搭配一个 Bash 工具(文章是哪一篇我不记得了,哈哈哈)。但是,随着希望做的更加复杂,CC 现在早已经不是只有一个工具...
"工具执行前先做权限判断" — 权限管线决定哪些操作需要审批。
Github 原文:shareAI-lab/learn-claude-code 上一篇文章中,我们制作的 Agent 有 5 个工具。其中有一个工具——file tools 受 safe_path 保护,但 bash 不受限制。让它"清理一下项目",可能执行 rm -rf /。 安全不能靠信任模型,要靠代码——...
"挂在循环上, 不写进循环里" — hook 在工具执行前后注入扩展逻辑。
Github 原文:shareAI-lab/learn-claude-code 问题 经过前三章,现在我们的 Agent 有权限检查了。但每次加一个新检查,比如"记录每次 bash 调用"、"操作后自动 git add",都要修改 agent_loop 函数。 也就是说每次做 check permission,...
"没有计划的 agent 走哪算哪" — 先列步骤再动手,长任务更不容易漏项。
Github 原文:shareAI-lab/learn-claude-code 问题 给 Agent 一个复杂任务:"把所有 Python 文件改成 snake_case 命名,然后跑测试,修好失败。" Agent 开始干活,改了 3 个文件,跑了个测试,发现 2 个失败,开始修。修着修着,它忘了最初是"改成...
"大任务拆小, 每个小任务干净的上下文" — Subagent 用独立 messages[], 不污染主对话。
Github 原文:shareAI-lab/learn-claude-code 问题 Agent 能计划了。但如果一个任务太大,比如"重构整个认证模块",光靠 TODO 列表不够。这个任务本身就是几十个小任务的集合,放在同一个对话里会被上下文淹没。试想一下,Agent 在修一个 bug。它读了 30 个文件来追...
用到时再加载, 别全塞 prompt 里" — 通过 tool_result 注入, 不塞 system prompt
Github 原文:shareAI-lab/learn-claude-code 在 Skill 介绍的部分,我们就介绍了渐进式披露,这里我们会详细的来讲讲。 问题 你的项目有一套 React 组件规范、一份 SQL 风格指南、一份 API 设计文档。你希望 Agent 自动遵守这些规范。最直接的想法,全塞进 s...
"上下文总会满, 要有办法腾地方" — 四层压缩策略, 便宜的先跑贵的后跑。
Github 原文:shareAI-lab/learn-claude-code 问题 我们都知道,AI 的上下文窗口是有限的。 Agent 跑着跑着,不动了——手里有 bash、有 read、有 write,能力是够的。但它读了一个 1000 行的文件(~4000 token),又读了 30 个文件,跑了 20...
"压缩会丢细节, 要有一层不丢的" — 文件仓库 + 索引 + 按需加载,跨压缩、跨会话。
Github 原文:shareAI-lab/learn-claude-code 问题 我们在上文介绍了如何压缩上下文,但是压缩是会丢失很多细节的。例如,"用 tab 缩进不要用空格"可能被简化成"用户有代码风格偏好"。而且新开一个会话,连摘要也没了。 LLM 没有持久状态,所有信息都在上下文窗口里。上下文满了要...
"prompt 是组装出来的, 不是写死的" — 分段 + 按需拼接 + 缓存。
Github 原文:shareAI-lab/learn-claude-code 👳🏻♂️ 这个东西讲的有些靠后了,因为原来的文章是基于流程的添砖加瓦来写的,但这个作为一种基础内容,涉及到了前文中不少的基础知识。如果你有前文关于系统提示词的部分,可以跳转到这里。 问题 在相当长的时间里,我们都认为系统提示词...
"错误不是终点, 是重试的起点" — 升级 token、压缩上下文、切换模型。
Github 原文:shareAI-lab/learn-claude-code 问题 在之前的文章中,我们就提及了一个很重要的内容,就是 AI 参与的事情就有概率出错,就得准备好错误后该如何应对的机制。 特别是之前还只是一些偏旁模块报错,万一整个产品报错了怎么办?如果一个 agent 报错了、崩溃了,他没有重试...
"大目标拆成小任务, 排好序, 持久化" — 文件持久化的任务图, 多 agent 协作的基础。
Github 原文:shareAI-lab/learn-claude-code 在TodoWrite — 没有计划的 Agent,做着做着就偏了中我们就提及到,CC 不是单纯依靠一套 Todo 来实现任务清单的,有一个专门的 task system 来维护。久等了!也恭喜你来到了这里。 问题 试想一下,Agen...
"慢操作丢后台, agent 继续处理" — 后台线程跑命令, 完成后注入通知。
Github 原文:shareAI-lab/learn-claude-code 问题 还记得之前说过的异步和同步任务吗?当时我们类比过,你用洗衣机,把衣服扔进去,按下启动,然后去干别的——做饭、回消息、看论文。30 分钟后洗衣机"滴滴滴"提醒你:好了。你不会站在洗衣机前面干等 30 分钟;又或者我们现在让 AI...
"按时间表生产工作, 调度与执行解耦" — cron 调度, 持久化或会话级。
Github 原文:shareAI-lab/learn-claude-code 如果你了解 Vibe coding 这个圈子,你就会知道这里面最多的产品就是日历、日程管理、todo 工具,虽然他们烂透了,但也说明时间管理和规划在所有人心里的重要性,AI 也是一样的,最好他也有个日程时间表来干活。 问题 闹钟不需...
一个搞不定, 组队来" — 文件收件箱 + 队友线程。
Github 原文:shareAI-lab/learn-claude-code 问题 假如现在有个超级复杂的任务——重构整个后端"涉及认证模块、数据库层、API 路由、测试。 一个 Agent 在修 API 路由时,认证模块的细节已经不在上下文里了。上下文窗口就那么大,单个 Agent 的注意力覆盖不了所有模块...
"队友之间要有约定" — request-response 模式驱动协商。
Github 原文:shareAI-lab/learn-claude-code 问题 上一篇文章我们介绍了团队 Agent,这样让 Agent 的队友能干活了,但可惜协调是松散的:Lead 发消息,队友回复,没有结构化的协议。两个场景暴露了问题: 关机:Lead 想让 Alice 关机。直接杀线程,Alice...
"自己看板,自己认领" — 空闲时轮询,有活就干。
Github 原文:shareAI-lab/learn-claude-code 现在这个 Agents 团队有了规范的办公模式,但是“习惯”可不太好——大家虽然听话,但是都是“摆烂打工人”,干完了之后就开摆,只要不找我我就没事干摸鱼,这可不行! 问题 Agent 的队友能通信、能握手关机。但每个队友等 Lead...
各干各的目录, 互不干扰" — 任务管目标, worktree 管目录, 按 ID 绑定。
Github 原文:shareAI-lab/learn-claude-code 如果你用过 codex 和 cc 的工作树,我想你已经知道这篇文章我们要讲什么了。 问题 之前的 Agent 任务中,Alice 和 Bob 都在同一个目录下工作。Alice 的任务是"重构认证模块",Bob 的任务是"重构 UI...
"外接工具, 标准协议" — 发现、组装、调用,Agent 不需要知道工具是谁写的。
Github 原文:shareAI-lab/learn-claude-code 问题 在这一篇文章之前,Agent 的所有工具都是手写的——bash、read、write、task、worktree。每个工具的输入验证、执行逻辑、错误处理,都是你(AI)一行行写的。 现在你有 3 个外部服务想接入:公司的 Ji...
"机制很多,循环一个" — 工具、权限、记忆、任务、团队、插件都挂在同一个 while True 上。
Github 原文:shareAI-lab/learn-claude-code 恭喜你学到了这里!现在你已经把前面 19 章的全部基础的内容学会了,感谢你的刻苦努力! 问题 就像原文中说的,前面19 章每一章只加了一个模块,因为要考虑方便教学和学习,但不言而喻,一个真正的 Agent一定是这些全部都有的: 工具...
除了 CC,龙虾也是 harness 必须级别的 agent,看完了 CC 的优秀内容,我们也可以看看 OpenClaw 的一个特色,那就是心跳机制。
Github 原文:shareAI-lab/learn-claude-code 什么是心跳机制 其实是一种定期发送信号以保持系统活跃和监控状态的机制。 心跳机制的作用 它的主要作用包括: 保证连接稳定:OpenClaw 与服务器或各个 Agent 之间保持通信,如果长时间没有消息传输,心跳信号可以让对方知道自己...