<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Agent on KnightLi的博客</title>
        <link>https://knightli.com/tags/agent/</link>
        <description>Recent content in Agent on KnightLi的博客</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-cn</language>
        <lastBuildDate>Mon, 25 May 2026 00:24:36 +0800</lastBuildDate><atom:link href="https://knightli.com/tags/agent/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>CLI-Anything：把软件变成 Agent 可用的命令行</title>
        <link>https://knightli.com/2026/05/25/cli-anything-agent-native-cli/</link>
        <pubDate>Mon, 25 May 2026 00:24:36 +0800</pubDate>
        
        <guid>https://knightli.com/2026/05/25/cli-anything-agent-native-cli/</guid>
        <description>&lt;p&gt;CLI-Anything 是 HKUDS 开源的 Agent 工具化项目，目标是把原本面向人类 GUI 操作的软件，转成 AI Agent 更容易调用的命令行接口。它不是重新实现一个简化版软件，而是围绕现有代码库和真实后端生成 CLI harness，让 Agent 可以通过稳定命令、状态会话和结构化输出来完成任务。&lt;/p&gt;
&lt;p&gt;这个方向解决的是 Agent 使用软件时最常见的断层：GUI 自动化依赖截图、点击和坐标，容易受界面变化影响；单个 API 又经常覆盖不完整，Agent 需要自己拼接大量上下文。CLI-Anything 选择把软件能力收敛成命令行，因为命令天然适合被模型读取、组合、验证，也便于接入脚本和自动化流程。&lt;/p&gt;
&lt;h2 id=&#34;它怎么工作&#34;&gt;它怎么工作
&lt;/h2&gt;&lt;p&gt;官方仓库把 CLI-Anything 描述为一套自动生成 CLI 的流水线。给它一个本地软件源码路径或 GitHub 仓库地址后，流程会分析代码结构、识别后端和数据模型，设计命令分组，再实现 CLI、测试和文档。&lt;/p&gt;
&lt;p&gt;生成出来的 CLI 通常包含两种使用方式：一种是面向连续工作的 REPL，会保留项目状态；另一种是子命令模式，适合脚本和流水线。命令还会提供 JSON 输出，方便 Agent 直接解析结果，同时保留人类可读的格式用于调试。&lt;/p&gt;
&lt;p&gt;官方示例里，Claude Code 插件可以这样使用：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/plugin marketplace add HKUDS/CLI-Anything
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/plugin install cli-anything
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/cli-anything &amp;lt;software-path-or-repo&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;如果已经生成某个软件的 harness，后续使用方式会更接近普通 Python CLI：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cd &amp;lt;software&amp;gt;/agent-harness
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pip install -e .
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cli-anything-&amp;lt;software&amp;gt; --help
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cli-anything-&amp;lt;software&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cli-anything-&amp;lt;software&amp;gt; --json &amp;lt;command&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;适合什么场景&#34;&gt;适合什么场景
&lt;/h2&gt;&lt;p&gt;CLI-Anything 更适合那些“能力在真实软件里，但 Agent 不好稳定操作”的场景。例如图像、视频、音频、办公文档、3D 建模、数据分析或 AI/ML 工具链，只要项目有可分析的代码库、可调用的后端或清晰的数据模型，就有机会被包装成 Agent 可用的命令集。&lt;/p&gt;
&lt;p&gt;它的价值不只是在命令行里多一层封装，而是把软件的关键操作变成可发现、可组合、可测试的接口。Agent 可以先通过 &lt;code&gt;--help&lt;/code&gt; 理解能力，再用 JSON 输出接收结果，并把多个命令串成工作流。对于需要批处理、自动验证和持续迭代的任务，这比临时让 Agent 点击界面更可控。&lt;/p&gt;
&lt;h2 id=&#34;需要注意的边界&#34;&gt;需要注意的边界
&lt;/h2&gt;&lt;p&gt;CLI-Anything 并不等于任何软件都能立刻无成本接入。它依赖目标软件的源码、后端能力、文件格式和可测试性；如果一个软件高度封闭、关键逻辑只存在于 GUI 层，生成高质量 CLI 的难度会明显上升。&lt;/p&gt;
&lt;p&gt;官方方法论也强调真实后端和测试验证，这意味着生成 harness 不是只写几个命令包装脚本就结束。要让它用于严肃工作，还需要确认命令覆盖范围、输出格式、依赖安装、真实软件调用和端到端测试是否可靠。更现实的用法，是先为一个明确工作流生成 CLI，再通过 refine、test、validate 等命令逐步补齐能力。&lt;/p&gt;
&lt;h2 id=&#34;小结&#34;&gt;小结
&lt;/h2&gt;&lt;p&gt;CLI-Anything 的思路很直接：不要让 Agent 去适应脆弱的人类界面，而是为现有软件补上一层稳定、结构化、可测试的命令行入口。它适合想把专业软件纳入 Agent 工作流的人，也适合研究“Agent 原生软件”形态的开发者。真正落地时，重点不在于一句命令生成了多少代码，而在于生成的 CLI 是否能调用真实能力、保持状态、输出结构化结果，并经得起测试。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>Token Efficiency 是什么？从 DeepSeek V4 看大模型规划、小模型执行</title>
        <link>https://knightli.com/2026/05/15/token-efficiency-agent-orchestration/</link>
        <pubDate>Fri, 15 May 2026 08:59:33 +0800</pubDate>
        
        <guid>https://knightli.com/2026/05/15/token-efficiency-agent-orchestration/</guid>
        <description>&lt;p&gt;AI 编程接下来真正重要的指标，可能不是“谁的模型最强”，而是谁能用更少的 token、更低的成本、更稳定的流程，完成更多可验收的工作。&lt;/p&gt;
&lt;p&gt;这就是 Token Efficiency 的价值。&lt;/p&gt;
&lt;p&gt;很多人理解 Token Efficiency，只会想到模型便宜、上下文变长、缓存命中更低价。但这些只是底层条件。真正能把它变成生产力的，是模型分工、任务编排、上下文预算和评估体系。&lt;/p&gt;
&lt;p&gt;换句话说，Token Efficiency 不是省钱技巧，而是一套把 token 转换成产出的工程方法。&lt;/p&gt;
&lt;h2 id=&#34;deepseek-v4-的定位把大小模型分工产品化&#34;&gt;DeepSeek V4 的定位：把大小模型分工产品化
&lt;/h2&gt;&lt;p&gt;这篇文章最应该先补上的背景，是 DeepSeek V4 的定位。&lt;/p&gt;
&lt;p&gt;DeepSeek V4 不是单纯发布一个更强模型，而是把 Token Efficiency 需要的两层能力直接拆成了 &lt;code&gt;V4 Pro&lt;/code&gt; 和 &lt;code&gt;V4 Flash&lt;/code&gt;：&lt;code&gt;Pro&lt;/code&gt; 更适合做规划、推理、架构判断和关键审查，&lt;code&gt;Flash&lt;/code&gt; 更适合做高频执行、批量改写、代码补全、资料整理和 agent 循环里的普通节点。&lt;/p&gt;
&lt;p&gt;这正好对应 AI 编程里的两个角色：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;V4 Pro&lt;/code&gt;：当作 planner / consultant，用在需求拆解、技术方案、复杂 bug 根因、架构审查和最终验收。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;V4 Flash&lt;/code&gt;：当作 executor，用在文件扫描、简单实现、测试补齐、文档整理、候选方案生成和重复性任务。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;DeepSeek 官方 API 文档显示，&lt;code&gt;V4 Flash&lt;/code&gt; 和 &lt;code&gt;V4 Pro&lt;/code&gt; 都支持 &lt;code&gt;1M&lt;/code&gt; 上下文、JSON Output、Tool Calls、Chat Prefix Completion 和 FIM Completion；价格页也把缓存命中输入单独计价，并说明全模型 input cache hit 价格已降到发布价的十分之一。这几个点组合起来，才是它和 Token Efficiency 关系最密的地方。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;1M&lt;/code&gt; 上下文解决的是复杂 agent 任务容易被压缩的问题；低缓存命中价格解决的是长系统 prompt、项目文档、代码片段和历史状态反复进入上下文的成本问题；&lt;code&gt;Flash / Pro&lt;/code&gt; 双模型形态解决的是“每一步都用旗舰模型太贵、每一步都用小模型又不稳”的分工问题。&lt;/p&gt;
&lt;p&gt;所以 DeepSeek V4 的优势不应该只写成“便宜”或“上下文长”，而应该理解成三件事：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;执行层便宜&lt;/strong&gt;：大量 agent 节点可以交给 &lt;code&gt;V4 Flash&lt;/code&gt;，让 token 消耗落在低成本模型上。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;判断层可用&lt;/strong&gt;：关键步骤仍然可以调用 &lt;code&gt;V4 Pro&lt;/code&gt;，避免为了省钱牺牲复杂推理质量。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;长链路友好&lt;/strong&gt;：&lt;code&gt;1M&lt;/code&gt; 上下文和缓存价格让代码库、文档、工具调用历史更容易留在可用窗口里。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;这就是为什么 DeepSeek V4 对 AI 编程的意义，不只是又多了一个模型选项，而是给“顾问模型 + 执行模型 + harness 编排”的模式提供了更现实的成本结构。&lt;/p&gt;
&lt;h2 id=&#34;不要让最强模型干所有活&#34;&gt;不要让最强模型干所有活
&lt;/h2&gt;&lt;p&gt;过去使用 AI，常见做法是找一个最聪明的模型，让它从需求分析、代码实现、测试、总结一路干到底。&lt;/p&gt;
&lt;p&gt;这个方式简单，但不一定高效。因为很多任务并不需要最高级别的推理能力。真正贵的模型，应该更像顾问、架构师或规划员：只在关键决策点介入。&lt;/p&gt;
&lt;p&gt;更合理的结构是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;大模型负责拆问题、定方向、做关键判断。&lt;/li&gt;
&lt;li&gt;小模型负责执行、批量处理、重复修改。&lt;/li&gt;
&lt;li&gt;工具和 harness 负责流程、状态、上下文和验证。&lt;/li&gt;
&lt;li&gt;人负责定义产品、验收结果和决定取舍。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这样做的好处是，前沿推理能力不会被浪费在机械执行上。大部分 token 消耗可以落到便宜模型和缓存输入里，贵模型只处理真正需要“脑力”的部分。&lt;/p&gt;
&lt;h2 id=&#34;上下文不是越大越好&#34;&gt;上下文不是越大越好
&lt;/h2&gt;&lt;p&gt;长上下文很重要，尤其是 coding agent。代码、文档、历史对话、测试输出、错误日志都会吃掉上下文。上下文一旦接近上限，模型就容易触发压缩、遗忘或误判。&lt;/p&gt;
&lt;p&gt;但长上下文不等于可以无限塞资料。&lt;/p&gt;
&lt;p&gt;Token Efficiency 的关键，是让每个任务都能在一个清晰、可控的上下文窗口内完成。最理想的状态不是“把整个仓库塞进去”，而是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;当前任务只带必要文件。&lt;/li&gt;
&lt;li&gt;背景文档只带决策相关部分。&lt;/li&gt;
&lt;li&gt;历史信息只保留当前阶段需要的状态。&lt;/li&gt;
&lt;li&gt;每个节点有明确输入和输出。&lt;/li&gt;
&lt;li&gt;完成后把结果压缩成结构化摘要，交给下一个节点。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;上下文越便宜，越要警惕浪费。便宜 token 会诱导人把无关信息全塞进去，最后模型不是更聪明，而是更容易被噪声拖慢。&lt;/p&gt;
&lt;h2 id=&#34;harness-比单个模型更重要&#34;&gt;Harness 比单个模型更重要
&lt;/h2&gt;&lt;p&gt;如果只是把 Claude Code、Codex 或其他 coding agent 接到便宜模型上，效果未必好。小模型容易在长链路任务里跑偏，需要更强的流程控制。&lt;/p&gt;
&lt;p&gt;真正让小模型发挥价值的，是 harness。&lt;/p&gt;
&lt;p&gt;这里的 harness 可以理解为一套调度系统：它知道任务怎么拆、节点怎么跑、模型怎么选、结果怎么验收、失败怎么重试、上下文怎么传递。&lt;/p&gt;
&lt;p&gt;一个可用的编排系统，至少要回答几个问题：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;哪些任务需要规划？&lt;/li&gt;
&lt;li&gt;哪些任务可以直接执行？&lt;/li&gt;
&lt;li&gt;哪些节点可以并行？&lt;/li&gt;
&lt;li&gt;哪些节点必须串行？&lt;/li&gt;
&lt;li&gt;哪个节点用大模型，哪个节点用小模型？&lt;/li&gt;
&lt;li&gt;每个节点最多允许多少上下文？&lt;/li&gt;
&lt;li&gt;每个节点完成后输出什么结构？&lt;/li&gt;
&lt;li&gt;谁来 review，谁来决定是否继续？&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;没有这层软件，小模型只是便宜；有了这层软件，小模型才可能变成杠杆。&lt;/p&gt;
&lt;h2 id=&#34;用-dag-拆任务&#34;&gt;用 DAG 拆任务
&lt;/h2&gt;&lt;p&gt;一个有效的思路，是把复杂任务拆成有向无环图，也就是 DAG。&lt;/p&gt;
&lt;p&gt;比如一个功能开发任务，可以拆成：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;需求澄清&lt;/li&gt;
&lt;li&gt;方案设计&lt;/li&gt;
&lt;li&gt;任务拆分&lt;/li&gt;
&lt;li&gt;编码实现&lt;/li&gt;
&lt;li&gt;测试补齐&lt;/li&gt;
&lt;li&gt;Code Review&lt;/li&gt;
&lt;li&gt;修复问题&lt;/li&gt;
&lt;li&gt;提交 PR&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;每个节点都可以是一个独立 agent。它们运行在独立环境里，有自己的角色、prompt、工具权限和输出格式。节点之间不靠长篇聊天传递信息，而是靠预先定义好的结构化结果。&lt;/p&gt;
&lt;p&gt;这会带来两个直接收益。&lt;/p&gt;
&lt;p&gt;第一，单个节点更短。任务越小，越容易被小模型完成，也越不容易撑爆上下文。&lt;/p&gt;
&lt;p&gt;第二，流程更可测。你可以单独观察“编码节点失败率高”还是“review 节点漏问题多”，然后针对性优化。&lt;/p&gt;
&lt;h2 id=&#34;任务可以跑多个副本&#34;&gt;任务可以跑多个副本
&lt;/h2&gt;&lt;p&gt;当 token 足够便宜时，一个有趣的变化会出现：同一个任务不一定只跑一次。&lt;/p&gt;
&lt;p&gt;你可以让同一个任务用不同模型、不同 prompt、不同编排跑多个副本，再从结果里选最好的，或者把多个结果合并。这个思路有点像“抽卡式任务解决”，但前提是必须有评估和验收。&lt;/p&gt;
&lt;p&gt;适合多副本的任务包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;方案设计&lt;/li&gt;
&lt;li&gt;文案生成&lt;/li&gt;
&lt;li&gt;测试用例补全&lt;/li&gt;
&lt;li&gt;Bug 根因假设&lt;/li&gt;
&lt;li&gt;重构方案比较&lt;/li&gt;
&lt;li&gt;Code Review&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;不适合盲目多副本的任务，是那些会直接修改共享状态、会产生外部副作用、或者验收标准不清楚的任务。&lt;/p&gt;
&lt;p&gt;多跑几次不是为了碰运气，而是为了获得可比较样本。样本越多，越能反过来优化编排、模型选择和节点技能。&lt;/p&gt;
&lt;h2 id=&#34;必须建立评估体系&#34;&gt;必须建立评估体系
&lt;/h2&gt;&lt;p&gt;Token Efficiency 不能只看价格。便宜但失败率高，最后会吞掉人的时间，反而更贵。&lt;/p&gt;
&lt;p&gt;所以每个团队都应该逐步建立自己的评估体系。它不需要一开始就很复杂，但要能量化。&lt;/p&gt;
&lt;p&gt;可以先记录这些指标：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;任务完成率&lt;/li&gt;
&lt;li&gt;人工介入次数&lt;/li&gt;
&lt;li&gt;工具调用失败率&lt;/li&gt;
&lt;li&gt;测试通过率&lt;/li&gt;
&lt;li&gt;Review 发现的问题数量&lt;/li&gt;
&lt;li&gt;单任务 token 成本&lt;/li&gt;
&lt;li&gt;单任务耗时&lt;/li&gt;
&lt;li&gt;返工次数&lt;/li&gt;
&lt;li&gt;不同模型组合的差异&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;有了这些数据，才能知道哪些任务适合小模型，哪些任务必须上大模型，哪些任务应该交给人判断。&lt;/p&gt;
&lt;p&gt;真正的优化不是“所有地方都换便宜模型”，而是把每类任务放到最合适的模型和流程里。&lt;/p&gt;
&lt;h2 id=&#34;业务流程要原子化&#34;&gt;业务流程要原子化
&lt;/h2&gt;&lt;p&gt;普通用户不一定要自己写完整 harness。未来这类工具会越来越多，也会越来越成熟。&lt;/p&gt;
&lt;p&gt;但现在就可以做一件事：把自己的业务流程拆成原子节点。&lt;/p&gt;
&lt;p&gt;比如内容生产可以拆成：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;选题&lt;/li&gt;
&lt;li&gt;资料收集&lt;/li&gt;
&lt;li&gt;提纲&lt;/li&gt;
&lt;li&gt;初稿&lt;/li&gt;
&lt;li&gt;事实核查&lt;/li&gt;
&lt;li&gt;风格改写&lt;/li&gt;
&lt;li&gt;SEO 标题&lt;/li&gt;
&lt;li&gt;多语言翻译&lt;/li&gt;
&lt;li&gt;发布检查&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;软件开发可以拆成：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;需求确认&lt;/li&gt;
&lt;li&gt;技术方案&lt;/li&gt;
&lt;li&gt;数据结构&lt;/li&gt;
&lt;li&gt;接口变更&lt;/li&gt;
&lt;li&gt;单元测试&lt;/li&gt;
&lt;li&gt;实现&lt;/li&gt;
&lt;li&gt;迁移脚本&lt;/li&gt;
&lt;li&gt;文档&lt;/li&gt;
&lt;li&gt;Review&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;每个节点都要尽量做到输入明确、输出明确、验收明确、上下文可控。这样等 harness 工具成熟时，你的业务流程可以直接接进去。&lt;/p&gt;
&lt;h2 id=&#34;硬件不是第一优先级&#34;&gt;硬件不是第一优先级
&lt;/h2&gt;&lt;p&gt;很多人聊 Token Efficiency，很快就会聊到本地部署和显卡。但对大多数人来说，第一选择仍然应该是 API。&lt;/p&gt;
&lt;p&gt;原因很简单：在没有跑通经济模型之前，本地硬件只是成本前置。你还不知道 token 怎么转化成收入或生产力，就先买昂贵设备，很容易变成玩具。&lt;/p&gt;
&lt;p&gt;更稳的顺序是：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;先用 API 跑通业务流程。&lt;/li&gt;
&lt;li&gt;建立任务评估和成本统计。&lt;/li&gt;
&lt;li&gt;找到稳定高频的执行节点。&lt;/li&gt;
&lt;li&gt;再考虑哪些节点值得本地化。&lt;/li&gt;
&lt;li&gt;最后再计算硬件、电费、维护和折旧。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;如果只是个人提效，API 往往已经够用。如果是创业团队，要验证模型边界和推理框架，本地 CUDA 平台才更有学习价值。如果已经有明确生产场景和经济模型，多卡部署才有讨论空间。&lt;/p&gt;
&lt;h2 id=&#34;小结&#34;&gt;小结
&lt;/h2&gt;&lt;p&gt;Token Efficiency 的本质，不是“用便宜模型替代贵模型”，而是重新设计 AI 工作流。&lt;/p&gt;
&lt;p&gt;大模型负责关键判断，小模型负责批量执行，harness 负责调度和验证，人负责定义目标和验收结果。只有这四层配合起来，token 才能稳定变成生产力。&lt;/p&gt;
&lt;p&gt;接下来真正有价值的能力，不只是会用最新模型，而是能把任务拆小、把上下文控住、把结果量化、把流程编排起来。&lt;/p&gt;
&lt;p&gt;模型会继续降价，上下文会继续变长，小模型会继续变强。越是这样，越应该早点理解 Token Efficiency。因为未来的差距，很可能不在谁调用了最强模型，而在谁能用同样的 token 撬动更多真实产出。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>Superpowers：把 Coding Agent 拉回工程流程的技能框架</title>
        <link>https://knightli.com/2026/05/15/obra-superpowers-agentic-skills-framework/</link>
        <pubDate>Fri, 15 May 2026 08:53:17 +0800</pubDate>
        
        <guid>https://knightli.com/2026/05/15/obra-superpowers-agentic-skills-framework/</guid>
        <description>&lt;p&gt;&lt;code&gt;obra/superpowers&lt;/code&gt; 是一个给 coding agent 使用的技能框架，也是一套软件开发方法论。它的目标不是再写一个“让 AI 更听话”的万能 prompt，而是把 agent 的工作流程固定下来：先澄清目标，再产出设计，再拆计划，再按测试驱动开发推进，最后做 review 和收尾。&lt;/p&gt;
&lt;p&gt;项目地址：&lt;a class=&#34;link&#34; href=&#34;https://github.com/obra/superpowers&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/obra/superpowers&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;截至写作时，GitHub API 显示这个仓库已有超过 19 万 star，许可证为 MIT，最近仍在更新。README 对它的描述很直接：&lt;code&gt;An agentic skills framework &amp;amp; software development methodology that works.&lt;/code&gt;&lt;/p&gt;
&lt;h2 id=&#34;它想解决什么问题&#34;&gt;它想解决什么问题
&lt;/h2&gt;&lt;p&gt;现在很多 AI 编程工具的问题，不是“不够会写代码”，而是太容易直接写代码。&lt;/p&gt;
&lt;p&gt;用户刚说一个模糊需求，agent 就开始改文件；改完以后看似完成，其实边界没对齐、测试没补、架构没想清楚。短任务可能没事，复杂项目里就会变成返工、回滚和技术债。&lt;/p&gt;
&lt;p&gt;Superpowers 的思路是：让 agent 在动手前先进入流程。&lt;/p&gt;
&lt;p&gt;README 里描述的核心路径大致是：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;发现用户要做东西时，不立刻写代码，而是先追问目标。&lt;/li&gt;
&lt;li&gt;从对话中整理出规格说明，并分段给用户确认。&lt;/li&gt;
&lt;li&gt;设计通过后，生成足够清楚的实施计划。&lt;/li&gt;
&lt;li&gt;用户说 “go” 之后，再进入实现流程。&lt;/li&gt;
&lt;li&gt;实现时强调 TDD、YAGNI、DRY，并通过 review 检查结果。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;这套流程听起来不新，但放到 coding agent 里很关键。AI 的执行速度越快，前置澄清和中途验证越重要。&lt;/p&gt;
&lt;h2 id=&#34;支持哪些工具&#34;&gt;支持哪些工具
&lt;/h2&gt;&lt;p&gt;Superpowers 不是只面向一个 agent。README 里列出的安装入口包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Claude Code&lt;/li&gt;
&lt;li&gt;Codex CLI&lt;/li&gt;
&lt;li&gt;Codex App&lt;/li&gt;
&lt;li&gt;Factory Droid&lt;/li&gt;
&lt;li&gt;Gemini CLI&lt;/li&gt;
&lt;li&gt;OpenCode&lt;/li&gt;
&lt;li&gt;Cursor&lt;/li&gt;
&lt;li&gt;GitHub Copilot CLI&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;其中 Codex CLI 和 Codex App 都可以通过官方 Codex plugin marketplace 安装。Claude Code 也可以通过官方插件市场或 Superpowers 自己的 marketplace 安装。&lt;/p&gt;
&lt;p&gt;这说明它的定位更像“跨 harness 的工作流层”，而不是绑定某一家模型或某一个命令行工具。&lt;/p&gt;
&lt;h2 id=&#34;基础工作流&#34;&gt;基础工作流
&lt;/h2&gt;&lt;p&gt;Superpowers 的基础工作流分成几个阶段。&lt;/p&gt;
&lt;p&gt;第一步是 &lt;code&gt;brainstorming&lt;/code&gt;。它会在写代码前触发，通过问题把粗糙想法整理成可执行设计。它不是让 agent 自嗨式补全需求，而是把设计分段拿给用户确认。&lt;/p&gt;
&lt;p&gt;第二步是 &lt;code&gt;using-git-worktrees&lt;/code&gt;。设计确认后，它会创建隔离的工作区和新分支，先确认项目能正常安装、测试基线是干净的。这一步能减少多个任务互相污染工作区的问题。&lt;/p&gt;
&lt;p&gt;第三步是 &lt;code&gt;writing-plans&lt;/code&gt;。它会把设计拆成短小任务，每个任务要求有明确文件路径、代码范围和验证步骤。README 里甚至把计划写给“没有上下文、品味可疑、不爱测试的热情初级工程师”也能执行，当作清晰度标准。&lt;/p&gt;
&lt;p&gt;第四步是实现。它可以用 &lt;code&gt;subagent-driven-development&lt;/code&gt; 派发子任务，也可以用 &lt;code&gt;executing-plans&lt;/code&gt; 分批执行。重点不是并发本身，而是每个任务都要能检查、能 review、能继续推进。&lt;/p&gt;
&lt;p&gt;第五步是 &lt;code&gt;test-driven-development&lt;/code&gt;。Superpowers 强调真正的 RED-GREEN-REFACTOR：先写失败测试，确认失败，再写最小实现，确认通过，然后重构。它甚至要求删除测试前写出来的实现代码，避免“先实现后补测试”的假 TDD。&lt;/p&gt;
&lt;p&gt;第六步是 &lt;code&gt;requesting-code-review&lt;/code&gt;。任务之间做 review，按严重程度报告问题。Critical 问题会阻塞继续推进。&lt;/p&gt;
&lt;p&gt;最后是 &lt;code&gt;finishing-a-development-branch&lt;/code&gt;。任务结束后，验证测试，给出合并、发 PR、保留或丢弃 worktree 的选择。&lt;/p&gt;
&lt;h2 id=&#34;skills-library-里有什么&#34;&gt;Skills Library 里有什么
&lt;/h2&gt;&lt;p&gt;Superpowers 的技能库可以分成几类。&lt;/p&gt;
&lt;p&gt;测试类主要是 &lt;code&gt;test-driven-development&lt;/code&gt;，围绕红绿重构循环，并包含测试反模式参考。&lt;/p&gt;
&lt;p&gt;调试类包括 &lt;code&gt;systematic-debugging&lt;/code&gt; 和 &lt;code&gt;verification-before-completion&lt;/code&gt;。前者要求按复现、最小化、假设、验证、修复的过程找根因；后者强调不要在没有验证前宣布完成。&lt;/p&gt;
&lt;p&gt;协作类更丰富，包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;brainstorming&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;writing-plans&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;executing-plans&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;dispatching-parallel-agents&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;requesting-code-review&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;receiving-code-review&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;using-git-worktrees&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;finishing-a-development-branch&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;subagent-driven-development&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;元技能包括 &lt;code&gt;writing-skills&lt;/code&gt; 和 &lt;code&gt;using-superpowers&lt;/code&gt;。前者用于创建新技能，后者用于理解技能系统本身。&lt;/p&gt;
&lt;p&gt;这些技能组合起来，像是给 agent 装了一套工程习惯：什么时候该问，什么时候该计划，什么时候该测试，什么时候该停下来 review。&lt;/p&gt;
&lt;h2 id=&#34;和普通-prompt-最大的区别&#34;&gt;和普通 prompt 最大的区别
&lt;/h2&gt;&lt;p&gt;普通 prompt 往往把规则堆在一段 system prompt 里：不要乱改、先思考、要测试、要解释、要简洁。问题是规则越堆越多，模型越容易在复杂任务里选择性遗忘。&lt;/p&gt;
&lt;p&gt;Superpowers 更像把规则拆成可触发的流程模块。不同任务阶段使用不同技能，每个技能只负责一段工作。这样做有几个好处：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;规则更短，目标更集中。&lt;/li&gt;
&lt;li&gt;agent 更容易知道当前阶段该做什么。&lt;/li&gt;
&lt;li&gt;复杂流程可以被拆成可检查的步骤。&lt;/li&gt;
&lt;li&gt;技能可以跨工具复用。&lt;/li&gt;
&lt;li&gt;团队可以把自己的工程习惯沉淀成技能。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这也是它最值得参考的地方：不要只追求“更聪明的模型”，还要给模型一套可重复的工作方式。&lt;/p&gt;
&lt;h2 id=&#34;适合谁用&#34;&gt;适合谁用
&lt;/h2&gt;&lt;p&gt;Superpowers 更适合已经在认真使用 coding agent 的开发者，尤其是这些场景：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;任务不只是单文件改动。&lt;/li&gt;
&lt;li&gt;希望 agent 先设计再实现。&lt;/li&gt;
&lt;li&gt;项目需要 TDD 或至少需要验证步骤。&lt;/li&gt;
&lt;li&gt;经常并行做多个功能分支。&lt;/li&gt;
&lt;li&gt;希望用 subagent 分摊实现、检查和 review。&lt;/li&gt;
&lt;li&gt;想把团队流程写成可复用技能。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果只是让 AI 改一行配置、生成一个脚本，它可能显得偏重。但一旦任务涉及多文件、多阶段、多轮确认，它的流程约束就会变得有价值。&lt;/p&gt;
&lt;h2 id=&#34;使用时要注意什么&#34;&gt;使用时要注意什么
&lt;/h2&gt;&lt;p&gt;第一，不要把它理解成自动驾驶。Superpowers 能让 agent 更有流程感，但设计取舍、需求边界和最终验收仍然需要人负责。&lt;/p&gt;
&lt;p&gt;第二，TDD 和 review 会增加前期成本。小任务可能会变慢，但复杂任务通常能减少返工。&lt;/p&gt;
&lt;p&gt;第三，子代理并发不是越多越好。并发适合边界清楚、写入范围不重叠的任务；如果需求还没想清楚，先并发只会把混乱放大。&lt;/p&gt;
&lt;p&gt;第四，团队要维护自己的技能质量。技能不是写完就万事大吉，过时的流程、模糊的指令和互相冲突的规则，也会拖累 agent。&lt;/p&gt;
&lt;h2 id=&#34;小结&#34;&gt;小结
&lt;/h2&gt;&lt;p&gt;Superpowers 的价值，不在于某个单独技能多神奇，而在于它把 coding agent 从“接到需求就写代码”拉回了软件工程流程。&lt;/p&gt;
&lt;p&gt;它提醒我们：AI 编程真正缺的往往不是生成速度，而是澄清、计划、验证、review 和收尾。模型越强，这些流程越不能省。否则 AI 只是更快地制造未验证的代码。&lt;/p&gt;
&lt;p&gt;如果你已经在用 Codex、Claude Code、Cursor 或 Gemini CLI 做真实项目，Superpowers 值得看一眼。即使不直接安装，它的技能拆分方式也很适合拿来改造自己的 agent 工作流。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>DeepSeek V4 Flash 做 Godot 游戏 Demo：几毛钱能跑通到什么程度？</title>
        <link>https://knightli.com/2026/05/06/deepseek-v4-flash-godot-game-demo/</link>
        <pubDate>Wed, 06 May 2026 09:22:18 +0800</pubDate>
        
        <guid>https://knightli.com/2026/05/06/deepseek-v4-flash-godot-game-demo/</guid>
        <description>&lt;p&gt;&lt;code&gt;DeepSeek V4 Flash&lt;/code&gt; 用来开发 Godot 游戏 Demo，到底能不能打？&lt;/p&gt;
&lt;p&gt;重点很直接：它能不能做出一个可运行、可观察、带物理效果的 Godot 小 Demo。&lt;/p&gt;
&lt;p&gt;结论先说：可以跑通，效果不算商业级，但已经足够作为玩法原型和物理交互 Demo 使用。更重要的是，成本非常低，适合快速验证想法。&lt;/p&gt;
&lt;h2 id=&#34;demo-表现&#34;&gt;Demo 表现
&lt;/h2&gt;&lt;p&gt;这个 Demo 的重点是物理交互。&lt;/p&gt;
&lt;p&gt;几个比较直观的效果包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;绳子可以被切断。&lt;/li&gt;
&lt;li&gt;箱子会掉到地上。&lt;/li&gt;
&lt;li&gt;调大质量后，箱子碰撞会更猛烈。&lt;/li&gt;
&lt;li&gt;绳子表现出比较明显的弹性。&lt;/li&gt;
&lt;li&gt;调整摩擦力和弹性后，箱子会出现明显的滑动和反弹。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;从呈现效果看，它已经不是“只生成几段 Godot 脚本”那么简单，而是一个能运行、能观察物理表现的小型原型。&lt;/p&gt;
&lt;h2 id=&#34;可用程度&#34;&gt;可用程度
&lt;/h2&gt;&lt;p&gt;这个 Demo 的价值在于“能跑、能看、能改”。它不是完整游戏，也不是可以直接商业化的工程，但已经能说明几个问题：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;DeepSeek V4 Flash&lt;/code&gt; 能理解 Godot Demo 的基本目标。&lt;/li&gt;
&lt;li&gt;AI Agent 可以把需求转成可运行工程。&lt;/li&gt;
&lt;li&gt;Godot 物理交互这种非网页类任务，已经可以进入低成本原型阶段。&lt;/li&gt;
&lt;li&gt;对个人开发者来说，它能把“想法”快速变成“能看的东西”。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果目标是做一个正式游戏，它当然还不够；但如果目标是验证“这个玩法有没有意思”“物理效果大概能不能做出来”，这个 Demo 已经可用。&lt;/p&gt;
&lt;h2 id=&#34;成本意义&#34;&gt;成本意义
&lt;/h2&gt;&lt;p&gt;最值得关注的不是画面有多精致，而是成本。&lt;/p&gt;
&lt;p&gt;如果一个 Godot 物理 Demo 只需要几毛钱级别的模型成本，就能得到一个可运行版本，那么它的意义就不是替代专业游戏开发，而是大幅降低原型试错成本。&lt;/p&gt;
&lt;p&gt;以前想验证一个小游戏想法，至少需要自己熟悉 Godot、写脚本、调场景、调物理参数。现在可以先让 AI Agent 生成一个可运行版本，再由人判断方向对不对。&lt;/p&gt;
&lt;p&gt;对独立开发者来说，这类低成本试错很有用：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;快速验证玩法概念。&lt;/li&gt;
&lt;li&gt;生成临时 Demo 给别人看。&lt;/li&gt;
&lt;li&gt;探索 Godot API 和物理系统。&lt;/li&gt;
&lt;li&gt;把想法转成能跑的初版工程。&lt;/li&gt;
&lt;li&gt;在不确定方向前减少手写代码成本。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;deepseek-v4-flash-的表现&#34;&gt;DeepSeek V4 Flash 的表现
&lt;/h2&gt;&lt;p&gt;比较值得注意的是，使用的是 &lt;code&gt;DeepSeek V4 Flash&lt;/code&gt;，而不是更贵、更重的旗舰模型。&lt;/p&gt;
&lt;p&gt;它在“低成本原型”这个定位上表现不错。它不是最强、最稳、最适合交付生产工程的模型，但在预算敏感、想快速试一下方向的场景里，很有吸引力。&lt;/p&gt;
&lt;h2 id=&#34;适合什么场景&#34;&gt;适合什么场景
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;DeepSeek V4 Flash + Agent + Godot&lt;/code&gt; 更适合下面这些任务：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;小型玩法原型。&lt;/li&gt;
&lt;li&gt;物理效果 Demo。&lt;/li&gt;
&lt;li&gt;UI 或交互概念验证。&lt;/li&gt;
&lt;li&gt;教学示例。&lt;/li&gt;
&lt;li&gt;辅助理解 Godot 项目结构。&lt;/li&gt;
&lt;li&gt;生成第一版可运行工程。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;不太适合直接承担这些任务：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;大型游戏架构。&lt;/li&gt;
&lt;li&gt;复杂角色控制器。&lt;/li&gt;
&lt;li&gt;网络同步。&lt;/li&gt;
&lt;li&gt;商业项目核心代码。&lt;/li&gt;
&lt;li&gt;高精度物理模拟。&lt;/li&gt;
&lt;li&gt;不经过人工测试的自动提交。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;换句话说，它适合做“第一稿”和“试验场”，不适合当生产工程负责人。&lt;/p&gt;
&lt;h2 id=&#34;这说明了什么&#34;&gt;这说明了什么
&lt;/h2&gt;&lt;p&gt;这说明，AI 编程正在从网页、脚本、后端接口，继续向游戏开发和交互原型扩展。&lt;/p&gt;
&lt;p&gt;过去游戏开发的门槛很高，尤其是引擎、脚本、资源管理和物理系统混在一起时，新手很容易卡住。现在模型加 Agent 工具，可以先把工程搭起来，让开发者把注意力放在玩法判断和效果调优上。&lt;/p&gt;
&lt;p&gt;它带来的变化可能有三点：&lt;/p&gt;
&lt;p&gt;第一，游戏原型会更便宜。很多想法不用等到完整开发阶段才验证，可以先得到可运行 Demo。&lt;/p&gt;
&lt;p&gt;第二，独立开发者会更敢尝试。不会 Godot 的人，也可以借助 AI 先摸到项目结构和基本流程。&lt;/p&gt;
&lt;p&gt;第三，模型稳定性会变得更重要。游戏开发不是只要代码能跑，还要效果合理、手感正常、参数可控。未来谁能更好地结合实际画面和运行状态，谁就更适合做这类任务。&lt;/p&gt;
&lt;h2 id=&#34;小结&#34;&gt;小结
&lt;/h2&gt;&lt;p&gt;DeepSeek V4 Flash 做 Godot Demo，可以概括成一句话：&lt;strong&gt;效果不完美，但足够便宜、足够快，也足够适合做原型。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;它离商业游戏还很远，但如果目标是用极低成本验证一个小游戏想法，它已经很有价值。&lt;/p&gt;
&lt;p&gt;对个人开发者来说，最现实的用法不是把游戏全交给 AI，而是让 AI 先给出能跑的工程，再由人负责判断、取舍和打磨。这样用，DeepSeek V4 Flash 这类低成本模型反而会很香。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>DeepSeek-V4 Preview 发布：1M 上下文、双模型与 API 切换提醒</title>
        <link>https://knightli.com/2026/04/24/deepseek-v4-preview-release/</link>
        <pubDate>Fri, 24 Apr 2026 22:39:46 +0800</pubDate>
        
        <guid>https://knightli.com/2026/04/24/deepseek-v4-preview-release/</guid>
        <description>&lt;p&gt;DeepSeek 在 &lt;code&gt;2026-04-24&lt;/code&gt; 发布了 &lt;a class=&#34;link&#34; href=&#34;https://api-docs.deepseek.com/news/news260424&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;DeepSeek V4 Preview Release&lt;/a&gt;。从官方新闻页来看，这次更新的重点非常集中：&lt;code&gt;1M context&lt;/code&gt;、&lt;code&gt;V4-Pro&lt;/code&gt; 与 &lt;code&gt;V4-Flash&lt;/code&gt; 双模型、对 Agent 场景的专门优化，以及 API 侧的模型切换。&lt;/p&gt;
&lt;p&gt;如果只看一句话，这次发布的核心信号是：DeepSeek 不只是继续做更强的模型，而是在把超长上下文和 Agent 能力一起往“可直接上线使用”的方向推进。&lt;/p&gt;
&lt;h2 id=&#34;1-这次一共发布了什么&#34;&gt;1. 这次一共发布了什么
&lt;/h2&gt;&lt;p&gt;官方页面里，&lt;code&gt;DeepSeek-V4 Preview&lt;/code&gt; 主要包含两条产品线：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;DeepSeek-V4-Pro&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;DeepSeek-V4-Flash&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;对应的官方描述也很直接：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;DeepSeek-V4-Pro&lt;/code&gt;：&lt;code&gt;1.6T total / 49B active params&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;DeepSeek-V4-Flash&lt;/code&gt;：&lt;code&gt;284B total / 13B active params&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;从命名就能看出来，这次不是单模型升级，而是把高性能版本和更高性价比版本同时推了出来。&lt;/p&gt;
&lt;p&gt;其中 &lt;code&gt;V4-Pro&lt;/code&gt; 更强调上限，官方说它的表现已经可以和全球顶级闭源模型竞争；&lt;code&gt;V4-Flash&lt;/code&gt; 则更强调速度、效率和成本，更适合对响应速度和 API 成本更敏感的场景。&lt;/p&gt;
&lt;h2 id=&#34;2-1m-context-是这次最突出的卖点&#34;&gt;2. &lt;code&gt;1M context&lt;/code&gt; 是这次最突出的卖点
&lt;/h2&gt;&lt;p&gt;官方页面最醒目的表述之一，就是：&lt;strong&gt;“Welcome to the era of cost-effective 1M context length.”&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;DeepSeek 这次不只是说“支持长上下文”，而是明确把 &lt;code&gt;1M context&lt;/code&gt; 当成这代模型的默认能力来讲。页面里也写得很清楚：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;1M context&lt;/code&gt; 已经成为官方 DeepSeek 服务的默认标准&lt;/li&gt;
&lt;li&gt;&lt;code&gt;V4-Pro&lt;/code&gt; 和 &lt;code&gt;V4-Flash&lt;/code&gt; 都支持 &lt;code&gt;1M context&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这件事的意义不只是“能塞更多 token”。它更直接影响下面这些任务：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;长代码仓库理解&lt;/li&gt;
&lt;li&gt;长文档问答和资料整合&lt;/li&gt;
&lt;li&gt;多轮 Agent 工作流&lt;/li&gt;
&lt;li&gt;跨多文件、多工具、多阶段的复杂任务&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果上下文窗口足够大，模型就更不容易因为中途丢上下文而反复回读材料，这对 Agent 编码和复杂知识工作会特别重要。&lt;/p&gt;
&lt;h2 id=&#34;3-v4-pro-主要在强调什么&#34;&gt;3. &lt;code&gt;V4-Pro&lt;/code&gt; 主要在强调什么
&lt;/h2&gt;&lt;p&gt;从官方页的措辞看，&lt;code&gt;DeepSeek-V4-Pro&lt;/code&gt; 重点强调三件事：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Agentic Coding 能力&lt;/li&gt;
&lt;li&gt;世界知识&lt;/li&gt;
&lt;li&gt;推理能力&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;页面里提到，&lt;code&gt;V4-Pro&lt;/code&gt; 在 Agentic Coding benchmark 上达到开源 SOTA；在世界知识方面领先当前开源模型，仅落后于 &lt;code&gt;Gemini-3.1-Pro&lt;/code&gt;；在数学、&lt;code&gt;STEM&lt;/code&gt; 和编码能力上超过当前开源模型，并且可以和顶级闭源模型竞争。&lt;/p&gt;
&lt;p&gt;换句话说，&lt;code&gt;V4-Pro&lt;/code&gt; 的定位并不是单纯回答问题，而是更偏向高难度推理、复杂编码和长任务执行。&lt;/p&gt;
&lt;h2 id=&#34;4-v4-flash-并不是简单的缩水版&#34;&gt;4. &lt;code&gt;V4-Flash&lt;/code&gt; 并不是简单的缩水版
&lt;/h2&gt;&lt;p&gt;另一个值得注意的点是，官方没有把 &lt;code&gt;V4-Flash&lt;/code&gt; 包装成“低配模型”，而是强调它在很多实际任务里已经足够强。&lt;/p&gt;
&lt;p&gt;按照新闻页给出的说法，&lt;code&gt;V4-Flash&lt;/code&gt;：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;推理能力已经很接近 &lt;code&gt;V4-Pro&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;在简单 Agent 任务上与 &lt;code&gt;V4-Pro&lt;/code&gt; 表现相当&lt;/li&gt;
&lt;li&gt;参数规模更小，响应更快，API 定价更便宜&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这意味着 DeepSeek 这次给出的并不是“一个旗舰、一个入门”的非常割裂的组合，而更像是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;V4-Pro&lt;/code&gt;：追求更高性能和更强上限&lt;/li&gt;
&lt;li&gt;&lt;code&gt;V4-Flash&lt;/code&gt;：追求更低延迟和更好成本效率&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;对于开发者来说，这样的组合会更实用，因为很多线上任务真正需要的不是“理论最强”，而是“够强、够快、够省”。&lt;/p&gt;
&lt;h2 id=&#34;5-官方特别强调了-agent-优化&#34;&gt;5. 官方特别强调了 Agent 优化
&lt;/h2&gt;&lt;p&gt;这次发布页里还有一个很明确的方向：DeepSeek 在主动把 &lt;code&gt;V4&lt;/code&gt; 往 Agent 场景上推。&lt;/p&gt;
&lt;p&gt;官方页面提到，&lt;code&gt;DeepSeek-V4&lt;/code&gt; 已经和一些主流 AI Agent 深度集成，包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Claude Code&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;OpenClaw&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;OpenCode&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;同时 DeepSeek 也提到，&lt;code&gt;V4&lt;/code&gt; 已经在内部 agentic coding 场景中使用。&lt;/p&gt;
&lt;p&gt;这说明它想覆盖的，不再只是聊天或普通补全，而是更长链路的工作方式：读代码、理解结构、调用工具、生成结果，再把整条流程串起来。&lt;/p&gt;
&lt;p&gt;如果你最近正好在关注 coding agent，这个信号值得留意。因为它意味着模型厂商已经不再只拼 benchmark，而是在拼“能不能真正接进工作流”。&lt;/p&gt;
&lt;h2 id=&#34;6-底层结构创新在为长上下文服务&#34;&gt;6. 底层结构创新在为长上下文服务
&lt;/h2&gt;&lt;p&gt;在技术描述上，官方页把这次的结构创新总结为：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;token-wise compression&lt;/li&gt;
&lt;li&gt;&lt;code&gt;DSA (DeepSeek Sparse Attention)&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;页面给出的方向非常明确：目标是把长上下文做得更便宜、更高效，尽量降低计算和显存成本。&lt;/p&gt;
&lt;p&gt;虽然新闻页没有展开完整技术细节，但这至少说明 DeepSeek 这次不是单纯靠“更大算力硬堆更长窗口”，而是在结构层面针对长上下文效率做了专门优化。&lt;/p&gt;
&lt;p&gt;对实际使用者来说，这通常比单纯“窗口数字变大”更重要，因为真正决定可用性的，不只是能不能开到 &lt;code&gt;1M&lt;/code&gt;，还包括：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;速度是否还能接受&lt;/li&gt;
&lt;li&gt;成本是否还能接受&lt;/li&gt;
&lt;li&gt;长上下文任务是否真的稳定&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;7-api-已经可用但要注意模型切换&#34;&gt;7. API 已经可用，但要注意模型切换
&lt;/h2&gt;&lt;p&gt;官方页面明确写到，这次 API 当天就已经可用。&lt;/p&gt;
&lt;p&gt;接入方式也比较简单：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;base_url&lt;/code&gt; 保持不变&lt;/li&gt;
&lt;li&gt;把模型名切换为 &lt;code&gt;deepseek-v4-pro&lt;/code&gt; 或 &lt;code&gt;deepseek-v4-flash&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;同时页面说明，这两个模型都支持：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;1M context&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Thinking / Non-Thinking&lt;/code&gt; 双模式&lt;/li&gt;
&lt;li&gt;&lt;code&gt;OpenAI ChatCompletions&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Anthropic APIs&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这意味着如果你原本已经接了 DeepSeek API，升级门槛并不高，主要是模型名切换和能力验证。&lt;/p&gt;
&lt;h2 id=&#34;8-旧模型的退役时间也写得很明确&#34;&gt;8. 旧模型的退役时间也写得很明确
&lt;/h2&gt;&lt;p&gt;对开发者来说，这次新闻页里最不能忽略的信息之一，其实是旧模型退役提醒。&lt;/p&gt;
&lt;p&gt;官方写明：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;deepseek-chat&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;deepseek-reasoner&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;会在 &lt;strong&gt;2026 年 7 月 24 日 15:59（UTC）&lt;/strong&gt; 后完全退役并不可访问。&lt;/p&gt;
&lt;p&gt;页面还说明，当前这两个模型实际上已经路由到 &lt;code&gt;deepseek-v4-flash&lt;/code&gt; 的非思考 / 思考模式。&lt;/p&gt;
&lt;p&gt;这意味着如果你的项目里还直接写着 &lt;code&gt;deepseek-chat&lt;/code&gt; 或 &lt;code&gt;deepseek-reasoner&lt;/code&gt;，现在就应该开始安排迁移，而不要拖到正式下线前再处理。&lt;/p&gt;
&lt;h2 id=&#34;9-这次发布值得怎么理解&#34;&gt;9. 这次发布值得怎么理解
&lt;/h2&gt;&lt;p&gt;如果把这次更新浓缩成几个重点，大概可以这样看：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;DeepSeek 开始把 &lt;code&gt;1M context&lt;/code&gt; 从“高配能力”变成默认标准&lt;/li&gt;
&lt;li&gt;双模型路线更清晰：一个冲性能上限，一个冲速度和性价比&lt;/li&gt;
&lt;li&gt;Agent 能力已经被放到很核心的位置&lt;/li&gt;
&lt;li&gt;API 升级路径相对直接，但旧模型退役时间需要尽快关注&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;对普通使用者来说，最直观的变化可能是：长文档、长代码、长流程任务会更容易放进一次上下文里。&lt;br&gt;
对开发者来说，更重要的是：如果你已经在做 Agent、代码助手、资料整理、复杂工作流，这一代模型显然就是朝这些场景设计的。&lt;/p&gt;
&lt;p&gt;DeepSeek 这次发布，不只是一次常规模型更新，更像是在明确它下一阶段的产品方向：&lt;strong&gt;超长上下文 + Agent 优化 + 更实际的 API 可用性。&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id=&#34;相关链接&#34;&gt;相关链接
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;DeepSeek 官方新闻页：&lt;a class=&#34;link&#34; href=&#34;https://api-docs.deepseek.com/news/news260424&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://api-docs.deepseek.com/news/news260424&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Tech Report：&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/deepseek-ai/DeepSeek-V4-Pro/blob/main/DeepSeek_V4.pdf&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://huggingface.co/deepseek-ai/DeepSeek-V4-Pro/blob/main/DeepSeek_V4.pdf&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Open Weights：&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/collections/deepseek-ai/deepseek-v4&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://huggingface.co/collections/deepseek-ai/deepseek-v4&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        <item>
        <title>AI 名词解释：用大白话讲清楚 Agent、MCP、RAG 和 Token</title>
        <link>https://knightli.com/2026/04/23/ai-terms-agent-mcp-rag-token-explained/</link>
        <pubDate>Thu, 23 Apr 2026 13:13:40 +0800</pubDate>
        
        <guid>https://knightli.com/2026/04/23/ai-terms-agent-mcp-rag-token-explained/</guid>
        <description>&lt;p&gt;刚开始接触 AI，最容易劝退人的通常不是模型本身，而是讨论里那些一串串名词。&lt;code&gt;Agent&lt;/code&gt;、&lt;code&gt;MCP&lt;/code&gt;、&lt;code&gt;RAG&lt;/code&gt;、&lt;code&gt;AIGC&lt;/code&gt;、&lt;code&gt;Token&lt;/code&gt; 看起来都很常见，但如果没人先用人话讲一遍，很多人其实只是在“眼熟”，并没有真正听懂。&lt;/p&gt;
&lt;p&gt;这篇就顺着一组常见入门解释的思路，把 10 个高频 AI 名词压缩成一套更容易记住的解释。目标不是讲得多学术，而是先帮你建立一个能跟上日常讨论的基础框架。&lt;/p&gt;
&lt;h2 id=&#34;10-个常见-ai-名词分别是什么意思&#34;&gt;10 个常见 AI 名词，分别是什么意思
&lt;/h2&gt;&lt;h3 id=&#34;1-agent不只会聊天的执行型-ai&#34;&gt;1. Agent：不只会聊天的执行型 AI
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;Agent&lt;/code&gt; 可以先理解成“会干活的 AI 助手”。&lt;/p&gt;
&lt;p&gt;普通聊天机器人更像是你问一句、它答一句；&lt;code&gt;Agent&lt;/code&gt; 则更进一步，它会把任务拆开、安排步骤、调用工具，再把结果交回来。比如你让它帮你整理资料、查信息、生成文档，它不只是给建议，而是可能直接把这些动作串起来做完。&lt;/p&gt;
&lt;p&gt;所以 &lt;code&gt;Agent&lt;/code&gt; 的关键，不在“会不会说”，而在“能不能做”。&lt;/p&gt;
&lt;h3 id=&#34;2-openclaw驻留在电脑里的-ai-助手&#34;&gt;2. OpenClaw：驻留在电脑里的 AI 助手
&lt;/h3&gt;&lt;p&gt;视频里把 &lt;code&gt;OpenClaw&lt;/code&gt; 形容成一种“住在电脑里的 AI 管家”。&lt;/p&gt;
&lt;p&gt;你可以把这类工具理解成更贴近桌面操作的 AI 助手：它不只是接收文字，还可能直接观察界面、调用本地工具、按流程执行任务。和普通网页聊天相比，这类工具更强调实际操作能力。&lt;/p&gt;
&lt;p&gt;如果说 &lt;code&gt;Agent&lt;/code&gt; 是抽象层面的“执行型 AI”，那这类桌面型助手更像是它在个人电脑上的一种具体落地形式。&lt;/p&gt;
&lt;h3 id=&#34;3-skills给-agent-装上的能力包&#34;&gt;3. Skills：给 Agent 装上的能力包
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;Skills&lt;/code&gt; 可以理解成 &lt;code&gt;Agent&lt;/code&gt; 的功能模块或操作说明。&lt;/p&gt;
&lt;p&gt;同一个 &lt;code&gt;Agent&lt;/code&gt;，装上不同的 &lt;code&gt;Skills&lt;/code&gt;，就能表现出不同的专长。比如有的偏文案生成，有的偏数据整理，有的偏代码处理。它们有点像手机里的 App，也有点像一套套可复用的工作流程。&lt;/p&gt;
&lt;p&gt;所以很多时候，不是模型突然“变聪明”了，而是它背后多了一组明确的规则、工具和步骤。&lt;/p&gt;
&lt;h3 id=&#34;4-mcpai-连接外部工具的统一接口&#34;&gt;4. MCP：AI 连接外部工具的统一接口
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;MCP&lt;/code&gt; 全称是 &lt;code&gt;Model Context Protocol&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;如果用生活里的比喻，它有点像 AI 世界里的 &lt;code&gt;Type-C&lt;/code&gt; 接口。以前模型想接不同工具，往往要一套一套单独对接；有了统一协议之后，接入方式会更标准，也更容易复用。&lt;/p&gt;
&lt;p&gt;对普通用户来说，最值得记住的一点是：&lt;code&gt;MCP&lt;/code&gt; 解决的不是“模型会不会回答”，而是“模型怎么安全、稳定地连上外部工具和资源”。&lt;/p&gt;
&lt;h3 id=&#34;5-抽卡ai-生成结果带有随机性&#34;&gt;5. 抽卡：AI 生成结果带有随机性
&lt;/h3&gt;&lt;p&gt;“抽卡”这个说法常见于 &lt;code&gt;AI&lt;/code&gt; 绘图、视频生成和内容创作场景。&lt;/p&gt;
&lt;p&gt;意思很简单：同样的提示词、同样的大方向，每次生成出来的结果也可能不一样。有时候效果惊艳，有时候明显翻车，所以很多人会把反复尝试生成结果这件事，形容成像游戏里抽卡。&lt;/p&gt;
&lt;p&gt;它提醒我们的其实是同一件事：AI 生成不是固定公式，而是带概率和波动的过程。&lt;/p&gt;
&lt;h3 id=&#34;6-api应用和模型之间的连接方式&#34;&gt;6. API：应用和模型之间的连接方式
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;API&lt;/code&gt; 全称是 &lt;code&gt;Application Programming Interface&lt;/code&gt;，也就是应用程序接口。&lt;/p&gt;
&lt;p&gt;它可以理解成程序之间沟通的标准入口。你在自己的应用、脚本或编辑器里调用模型服务，本质上就是通过 &lt;code&gt;API&lt;/code&gt; 发请求、拿结果。&lt;/p&gt;
&lt;p&gt;如果把模型服务比作一家餐厅，那么：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;菜单像 &lt;code&gt;API&lt;/code&gt; 文档&lt;/li&gt;
&lt;li&gt;点菜像发起 &lt;code&gt;API&lt;/code&gt; 请求&lt;/li&gt;
&lt;li&gt;后厨出餐像模型返回结果&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;所以很多工具表面上看起来不一样，底层其实都是在调用某种 &lt;code&gt;API&lt;/code&gt;。&lt;/p&gt;
&lt;h3 id=&#34;7-多模态ai-不只处理文字&#34;&gt;7. 多模态：AI 不只处理文字
&lt;/h3&gt;&lt;p&gt;“多模态”说的是 AI 不再只会读写文本，而是可以同时处理多种信息形态。&lt;/p&gt;
&lt;p&gt;比如它可以看图、听语音、理解视频、生成图片，甚至做实时语音和视频交互。和早期只会处理文字的模型相比，多模态模型更像是在同时拥有“看、听、说、写”的能力。&lt;/p&gt;
&lt;p&gt;这也是为什么现在很多 AI 产品的交互方式，已经不再局限于一个输入框。&lt;/p&gt;
&lt;h3 id=&#34;8-rag先检索资料再组织答案&#34;&gt;8. RAG：先检索资料，再组织答案
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;RAG&lt;/code&gt; 是 &lt;code&gt;Retrieval-Augmented Generation&lt;/code&gt;，通常译作检索增强生成。&lt;/p&gt;
&lt;p&gt;它适合解决一个很现实的问题：模型本身的训练数据有时间边界，也不知道你企业内部的新文档、客服记录和业务规则。&lt;code&gt;RAG&lt;/code&gt; 的思路就是，先从指定资料里把相关内容找出来，再结合这些资料生成回答。&lt;/p&gt;
&lt;p&gt;它的价值通常体现在三点：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;答案更容易贴近真实资料&lt;/li&gt;
&lt;li&gt;可以追溯回答依据来自哪里&lt;/li&gt;
&lt;li&gt;新文档加入后，知识可随时更新&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;所以很多企业知识库、智能客服和内部问答系统，底层都会用到 &lt;code&gt;RAG&lt;/code&gt;。&lt;/p&gt;
&lt;h3 id=&#34;9-aigcai-生成内容的总称&#34;&gt;9. AIGC：AI 生成内容的总称
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;AIGC&lt;/code&gt; 是 &lt;code&gt;AI Generated Content&lt;/code&gt; 的缩写。&lt;/p&gt;
&lt;p&gt;它不是某一个单独工具，而是一个总称，泛指 AI 生成出来的内容，包括文本、图片、音频、视频等各种形式。你看到的 AI 写稿、AI 制图、AI 做短视频、AI 配音，都可以放进 &lt;code&gt;AIGC&lt;/code&gt; 这个大框里理解。&lt;/p&gt;
&lt;p&gt;这个词真正重要的地方在于，它描述的是一种内容生产方式，而不是某个具体模型。&lt;/p&gt;
&lt;h3 id=&#34;10-token模型处理内容时的计量单位&#34;&gt;10. Token：模型处理内容时的计量单位
&lt;/h3&gt;&lt;p&gt;&lt;code&gt;Token&lt;/code&gt; 可以理解成模型处理文本时使用的基础计量单位。&lt;/p&gt;
&lt;p&gt;它不完全等于“一个字”或者“一个单词”，但在使用层面上，你可以先把它当成模型计算和计费时的通用单位。你的输入会消耗 &lt;code&gt;Token&lt;/code&gt;，模型的输出会消耗 &lt;code&gt;Token&lt;/code&gt;，上下文里保留的历史内容同样会占用 &lt;code&gt;Token&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;所以为什么很多模型服务都在强调上下文长度、成本控制和压缩提示词，本质上都和 &lt;code&gt;Token&lt;/code&gt; 有关。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>Claude Code 多 Agent 协作：Subagents 和 Agent Teams 怎么选</title>
        <link>https://knightli.com/2026/04/22/claude-code-subagents-vs-agent-teams/</link>
        <pubDate>Wed, 22 Apr 2026 21:35:52 +0800</pubDate>
        
        <guid>https://knightli.com/2026/04/22/claude-code-subagents-vs-agent-teams/</guid>
        <description>&lt;p&gt;Claude Code 里和多 Agent 协作相关的能力，最容易混淆的就是 &lt;code&gt;Subagents&lt;/code&gt; 和 &lt;code&gt;Agent Teams&lt;/code&gt;。它们看起来都像“多开几个 Agent 一起做事”，但定位并不一样。简单说，前者更适合把独立任务分出去做，后者更适合让多个 Agent 围绕同一件事持续协作、互相验证。&lt;/p&gt;
&lt;p&gt;如果你之前用过 Skill，也可以先这样理解：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Skill 负责定义流程和规则&lt;/li&gt;
&lt;li&gt;Subagent 或 Agent teammate 负责实际执行任务&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;所以问题不在于“哪个更高级”，而在于你要解决的是哪一类协作。&lt;/p&gt;
&lt;h2 id=&#34;subagents把支线任务分出去&#34;&gt;Subagents：把支线任务分出去
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;Subagents&lt;/code&gt; 更像是在当前会话里临时派出去的分身。每个分身都有自己的上下文窗口，做完之后只把结果摘要带回来，主对话不会被大量中间输出塞满。&lt;/p&gt;
&lt;p&gt;这类能力的优势很直接：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;主线对话更干净，不容易被测试日志、搜索结果或长输出污染&lt;/li&gt;
&lt;li&gt;可以把相互独立的研究或执行任务并行化&lt;/li&gt;
&lt;li&gt;适合“给我结果就行”的任务，不需要持续讨论&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;原文提到，Claude Code 内置了三类 Subagent：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Explore&lt;/code&gt;：只读、适合快速搜索代码库&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Plan&lt;/code&gt;：只读、适合在 plan mode 下后台收集信息&lt;/li&gt;
&lt;li&gt;&lt;code&gt;General-purpose&lt;/code&gt;：可读可写，适合同时探索和修改的任务&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;自定义-subagent&#34;&gt;自定义 Subagent
&lt;/h3&gt;&lt;p&gt;如果内置能力不够，可以自己定义一个 Subagent。方式也不复杂，本质上就是写一个 Markdown 文件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;.claude/agents/&lt;/code&gt;：只对当前项目生效&lt;/li&gt;
&lt;li&gt;&lt;code&gt;~/.claude/agents/&lt;/code&gt;：对所有项目生效&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;文件格式类似这样：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;15
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;16
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;17
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;18
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;19
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;20
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;21
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;22
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;23
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;24
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;25
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;26
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;27
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;28
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;29
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;30
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;31
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-markdown&#34; data-lang=&#34;markdown&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;name: code-reviewer
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;description: Expert code review specialist. Proactively reviews code for quality, security, and maintainability. Use immediately after writing or modifying code.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tools: Read, Grep, Glob, Bash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;model: inherit
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;---
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;You are a senior code reviewer ensuring high standards of code quality and security.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;When invoked:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;1.&lt;/span&gt; Run git diff to see recent changes
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;2.&lt;/span&gt; Focus on modified files
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;3.&lt;/span&gt; Begin review immediately
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Review checklist:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; Code is clear and readable
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; Functions and variables are well-named
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; No duplicated code
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; Proper error handling
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; No exposed secrets or API keys
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; Input validation implemented
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; Good test coverage
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; Performance considerations addressed
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Provide feedback organized by priority:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; Critical issues (must fix)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; Warnings (should fix)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; Suggestions (consider improving)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Include specific examples of how to fix issues.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;这里最关键的是 &lt;code&gt;description&lt;/code&gt;。Claude 会根据这段描述判断什么时候应该调用这个 Subagent，所以写得越清楚，触发越准。&lt;/p&gt;
&lt;p&gt;另外几个常见配置项也很实用：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;tools&lt;/code&gt;：限制它能用哪些工具&lt;/li&gt;
&lt;li&gt;&lt;code&gt;model&lt;/code&gt;：决定使用 &lt;code&gt;sonnet&lt;/code&gt;、&lt;code&gt;opus&lt;/code&gt;、&lt;code&gt;haiku&lt;/code&gt; 或 &lt;code&gt;inherit&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;permissionMode&lt;/code&gt;：控制编辑权限和权限提示行为&lt;/li&gt;
&lt;li&gt;&lt;code&gt;memory&lt;/code&gt;：给 Subagent 配跨对话记忆目录&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果只是临时用一次，也可以直接通过 CLI 注入：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;8
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;claude --agents &lt;span class=&#34;s1&#34;&gt;&amp;#39;{
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  &amp;#34;code-reviewer&amp;#34;: {
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    &amp;#34;description&amp;#34;: &amp;#34;Expert code reviewer. Use proactively after code changes.&amp;#34;,
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    &amp;#34;prompt&amp;#34;: &amp;#34;You are a senior code reviewer. Focus on code quality, security, and best practices.&amp;#34;,
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    &amp;#34;tools&amp;#34;: [&amp;#34;Read&amp;#34;, &amp;#34;Grep&amp;#34;, &amp;#34;Glob&amp;#34;, &amp;#34;Bash&amp;#34;],
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;    &amp;#34;model&amp;#34;: &amp;#34;sonnet&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  }
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;}&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;subagents-适合什么场景&#34;&gt;Subagents 适合什么场景
&lt;/h3&gt;&lt;p&gt;最适合 &lt;code&gt;Subagents&lt;/code&gt; 的，通常是这些任务：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;跑测试并返回失败摘要，而不是把几千行日志全塞回主会话&lt;/li&gt;
&lt;li&gt;并行调查几个互不依赖的模块&lt;/li&gt;
&lt;li&gt;把“检查问题”和“修问题”拆成两步流水线&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;例如：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-md&#34; data-lang=&#34;md&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Research the authentication, database, and API modules in parallel using separate subagents
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-md&#34; data-lang=&#34;md&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Use the code-reviewer subagent to find performance issues, then use the optimizer subagent to fix them
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;但如果任务需要频繁来回修正、多个阶段共享大量上下文，或者改动高度集中在少数几个文件里，那么直接在主对话里做，往往比派 Subagent 更省事。&lt;/p&gt;
&lt;h2 id=&#34;agent-teams多个独立会话一起协作&#34;&gt;Agent Teams：多个独立会话一起协作
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;Agent Teams&lt;/code&gt; 是另一个层级的能力。它不是在一个会话里派出分身，而是启动多个彼此独立的 Claude Code 实例，让它们围绕共享任务列表协作，还可以互相发消息。&lt;/p&gt;
&lt;p&gt;这意味着它更像一个真正的小团队，而不只是“分出去做个支线”。&lt;/p&gt;
&lt;p&gt;原文提到，这项能力目前还是实验功能，需要先开启：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;env&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;&amp;#34;CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;1&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;把它加到 &lt;code&gt;settings.json&lt;/code&gt; 后，就可以让 Claude 按你的要求组织一个 team。比如：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-md&#34; data-lang=&#34;md&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;I&amp;#39;m designing a CLI tool that helps developers track TODO comments across
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;their codebase. Create an agent team to explore this from different angles: one
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;teammate on UX, one on technical architecture, one playing devil&amp;#39;s advocate.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;agent-teams-的组成&#34;&gt;Agent Teams 的组成
&lt;/h3&gt;&lt;p&gt;一个 Agent Team 主要由三部分组成：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Team lead：你当前正在使用的主会话，负责组队、分派和汇总&lt;/li&gt;
&lt;li&gt;Teammates：多个独立的 Claude Code 实例&lt;/li&gt;
&lt;li&gt;Task list 和 Mailbox：共享任务列表与消息通道&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;和 Subagents 最大的不同在于，teammates 之间可以直接沟通，不需要每次都经过 lead 中转。任务状态通常会在 &lt;code&gt;pending&lt;/code&gt;、&lt;code&gt;in progress&lt;/code&gt;、&lt;code&gt;completed&lt;/code&gt; 之间流转，成员完成一个任务后，还可以继续认领下一个任务。&lt;/p&gt;
&lt;h3 id=&#34;agent-teams-适合什么场景&#34;&gt;Agent Teams 适合什么场景
&lt;/h3&gt;&lt;p&gt;当任务需要多角度讨论、互相挑战结论、或者拆成多个模块并行推进时，&lt;code&gt;Agent Teams&lt;/code&gt; 会更合适。&lt;/p&gt;
&lt;p&gt;原文给了几个很典型的场景：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;多人并行审查同一个 PR，但每个人关注不同维度&lt;/li&gt;
&lt;li&gt;围绕同一个 bug 提出不同假设，并互相反驳&lt;/li&gt;
&lt;li&gt;前端、后端、测试分别推进不同模块&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;比如并行代码审查：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-md&#34; data-lang=&#34;md&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Create an agent team to review PR &lt;span class=&#34;ni&#34;&gt;#142&lt;/span&gt;. Spawn three reviewers:
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; One focused on security implications
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; One checking performance impact
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;-&lt;/span&gt; One validating test coverage
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Have them each review and report findings.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;再比如竞争假说式调试：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-md&#34; data-lang=&#34;md&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Users report the app exits after one message instead of staying connected.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Spawn 5 agent teammates to investigate different hypotheses. Have them talk to
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;each other to try to disprove each other&amp;#39;s theories, like a scientific
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;debate. Update the findings doc with whatever consensus emerges.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;这类任务的共性是：不是只要一个结果，而是需要不同 Agent 之间不断交换判断、修正方向，最后再形成比较可靠的结论。&lt;/p&gt;
&lt;h2 id=&#34;两者怎么选&#34;&gt;两者怎么选
&lt;/h2&gt;&lt;p&gt;如果要快速区分，可以直接记这条：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;做完给结果，用 &lt;code&gt;Subagents&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;需要讨论和相互验证，用 &lt;code&gt;Agent Teams&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;再展开一点，区别主要在这几个维度：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;通信方式：&lt;code&gt;Subagents&lt;/code&gt; 主要把结果回传给主对话；&lt;code&gt;Agent Teams&lt;/code&gt; 的成员之间可以直接通信&lt;/li&gt;
&lt;li&gt;协调模式：&lt;code&gt;Subagents&lt;/code&gt; 更依赖主会话统一调度；&lt;code&gt;Agent Teams&lt;/code&gt; 有共享任务列表，成员可以自己认领任务&lt;/li&gt;
&lt;li&gt;Token 成本：&lt;code&gt;Subagents&lt;/code&gt; 更省；&lt;code&gt;Agent Teams&lt;/code&gt; 成本更高，因为每个 teammate 都是独立实例&lt;/li&gt;
&lt;li&gt;适合任务：&lt;code&gt;Subagents&lt;/code&gt; 更适合独立、结果导向的任务；&lt;code&gt;Agent Teams&lt;/code&gt; 更适合需要讨论、交叉验证的任务&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;使用时要注意什么&#34;&gt;使用时要注意什么
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;Agent Teams&lt;/code&gt; 虽然更强，但并不意味着任何任务都值得开 team。原文特别提醒了几个现实问题：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;token 消耗明显更高&lt;/li&gt;
&lt;li&gt;同时让多个 teammate 改同一个文件，很容易互相覆盖&lt;/li&gt;
&lt;li&gt;teammate 太多会增加协调成本，收益未必继续增长&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;因此，比较稳妥的做法通常是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;3 到 5 个 teammate 作为起点&lt;/li&gt;
&lt;li&gt;按模块或文件拆任务，避免写入冲突&lt;/li&gt;
&lt;li&gt;如果 lead 过早接手了 teammate 的任务，要明确告诉它先等队友完成&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;另外，当前实验能力还有一些限制，例如：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;不支持 &lt;code&gt;/resume&lt;/code&gt; 和 &lt;code&gt;/rewind&lt;/code&gt; 恢复 in-process teammates&lt;/li&gt;
&lt;li&gt;任务状态偶尔会滞后，需要人工提醒更新&lt;/li&gt;
&lt;li&gt;一个 lead 一次只能管理一个 team&lt;/li&gt;
&lt;li&gt;teammate 不能再继续派子 team&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;简单结论&#34;&gt;简单结论
&lt;/h2&gt;&lt;p&gt;这两个能力并不是替代关系，而是分别解决两类协作问题。&lt;/p&gt;
&lt;p&gt;如果你的需求是“把支线任务并行做掉，别污染主上下文”，优先用 &lt;code&gt;Subagents&lt;/code&gt;。如果你的需求是“让几个 Agent 像一个小团队一样协作、讨论、交叉验证”，再考虑 &lt;code&gt;Agent Teams&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;先用一个真实场景试一次，通常很快就能体会到差别：一个强调上下文隔离和结果回收，另一个强调多视角协同和持续互动。&lt;/p&gt;
&lt;h2 id=&#34;相关链接&#34;&gt;相关链接
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;原文链接：&lt;a class=&#34;link&#34; href=&#34;https://cloud.tencent.com/developer/article/2652960&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://cloud.tencent.com/developer/article/2652960&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        
    </channel>
</rss>
