经过几小时的研究, 以下是一些构建“Claude Code”的最佳开源参考: - 开放代码: - Gemini CLI: - Claude Code 系统提示: ——— 一个基本的编码代理由以下组成: 代理:可以是带有系统提示的基本工具调用代理 + 工具: - Bash:运行命令 - Grep:在文件中搜索文本 - Glob:查找文件 - Read:读取代码/pdf/图像等 - Write:创建新文件 - Edit:编辑现有文件,file_path,old_string,new_string -> 基本上代理输出确切的旧字符串进行替换(对此方法感到惊讶,但也有道理!) - MultiEdit:file_path + []旧字符串和新字符串的数组,当需要在文件中编辑多个地方时 ———— 有了上述内容,你已经得到了一个半工作状态的 Claude 代码代理, 一些独特的功能使其更好: - 子代理:Claude 代码具有这个 dispatch_agent 特性,用于进行更深入的代码库搜索任务(这样就不会过多干扰主对话线程) - 思考工具:一个思考工具,让代理进行更深入的分析 - 待办事项:Claude Code 在其规划阶段具有创建/更新待办事项工具 - 上下文管理:压缩过去的对话历史以进行长期任务,Gemini、Claude Code 和开放代码都有,但需要选择加入的过程 - 代码库索引:Claude 代码不对代码库进行索引,并且运行得非常好;@cline 也分享了类似的观点: - 版本控制:Gemini CLI 内置了这个检查点功能,每当调用编辑工具时自动保存快照 ----- 这里的一个关键学习是,即使是基本设置(基础工具,没有代码库索引),代理已经做得很好; 所以保持尽可能简单的设置,让模型发挥作用(例如,我对编辑工具只是要求代理输出要替换的字符串感到惊讶,它做得很好!) 如果我遗漏了什么,请在下面评论。
29.62K