<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>DAG on Square Uncle</title>
    <link>https://squareuncle.com/tags/dag/</link>
    <description>Recent content in DAG on Square Uncle</description>
    <generator>Hugo -- 0.147.7</generator>
    <language>zh-cn</language>
    <lastBuildDate>Fri, 20 Mar 2026 10:30:00 +0800</lastBuildDate>
    <atom:link href="https://squareuncle.com/tags/dag/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>手搓 Claw 系列 (2)：策略家的大脑 —— AX Planner 与 Flow Architect</title>
      <link>https://squareuncle.com/posts/2026-03-20-hand-rolled-claw-2-ax-planner-flow/</link>
      <pubDate>Fri, 20 Mar 2026 10:30:00 +0800</pubDate>
      <guid>https://squareuncle.com/posts/2026-03-20-hand-rolled-claw-2-ax-planner-flow/</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;[!TIP]
&lt;strong&gt;目标&lt;/strong&gt;：从单步对话进化为“计划-模拟-执行”的闭环，并引入基于 YAML 的 DAG 异步编排。&lt;/p&gt;&lt;/blockquote&gt;
&lt;h3 id=&#34;1-从聊天到执行ax-architect-executive-范式&#34;&gt;1. 从“聊天”到“执行”：AX (Architect-Executive) 范式&lt;/h3&gt;
&lt;p&gt;Agent 与普通 Chatbot 的分水岭在于：它是否能将模糊的目标拆解为可操作的步骤。在 VISAGENT 中，我们实现了一套 &lt;strong&gt;AX Planner&lt;/strong&gt; 逻辑：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Architect (架构师)&lt;/strong&gt;：接收需求，输出 &lt;code&gt;TODO.json&lt;/code&gt;。此时严禁执行，只准规划。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Simulation (心理演操)&lt;/strong&gt;：在执行前，让另一个“安全专家”角色对计划进行风险评估。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Executive (执行官)&lt;/strong&gt;：逐一调用 &lt;code&gt;execute_step&lt;/code&gt; 完成任务。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;这种“先想后做”的机制，通过简单的 Prompt 约束即可在任意 CLI 上实现：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# AX_PLANNING_MODE 核心指令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;plan_prompt &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; (
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;You are a specialized Task Architect. Output ONLY valid JSON.&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;\n&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Schema: { &amp;#39;goal&amp;#39;: &amp;#39;...&amp;#39;, &amp;#39;steps&amp;#39;: [ {&amp;#39;id&amp;#39;: 1, &amp;#39;desc&amp;#39;: &amp;#39;...&amp;#39;, &amp;#39;type&amp;#39;: &amp;#39;EXECUTION&amp;#39;} ] }&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;2-线性落后为什么需要-dag&#34;&gt;2. 线性落后：为什么需要 DAG？&lt;/h3&gt;
&lt;p&gt;早期的 AX Planner 是线性的。但现实中，复杂的工程任务往往是拓扑结构：有的步骤可以并行，有的则必须等待前序结果。这就是我们引入 &lt;strong&gt;Flow Architect&lt;/strong&gt; 的原因。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
