惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - Franky
N
Netflix TechBlog - Medium
宝玉的分享
宝玉的分享
Google DeepMind News
Google DeepMind News
腾讯CDC
G
Google Developers Blog
Martin Fowler
Martin Fowler
Microsoft Security Blog
Microsoft Security Blog
Recent Announcements
Recent Announcements
爱范儿
爱范儿
Engineering at Meta
Engineering at Meta
Microsoft Azure Blog
Microsoft Azure Blog
A
About on SuperTechFans
aimingoo的专栏
aimingoo的专栏
有赞技术团队
有赞技术团队
Jina AI
Jina AI
人人都是产品经理
人人都是产品经理
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
M
MIT News - Artificial intelligence
罗磊的独立博客
博客园 - 三生石上(FineUI控件)
美团技术团队
WordPress大学
WordPress大学
阮一峰的网络日志
阮一峰的网络日志

博客园 - 张善友

纯 .NET 手写 CUDA kernel,GLM-5.3-Flash decode 跑出 llama.cpp 的 2 倍 3 张卡到底能不能跑大模型推理?从 vLLM、llama.cpp 到 TensorSharp 的多卡真相 AI 编程时代,.NET 的机会在哪里? Vibe Coding 月提交量 29 亿次之后:GitHub 的危机、Azure 迁移,以及 .NET 的机会 从 PostgreSQL 到 Kubernetes:开源的护城河,从来不写在代码里 人工智能最先替代的,是人工智能学院自己 企业架构的六种场景:从"四大流派"到数字原生与 AI 原生 TensorSharp 最新进展研究报告:从 DeepSeek V4 Flash 到 GLM-5.2,以及等待中的 GLM-5.3 Google 官方下场安利:Go 是 AI 时代的"理想语言"?其实 C# 更有资格坐这个位置 当"入门第一课"的作者开始 Vibe Coding:廖雪峰 2026 上半年 AI 编程实践深度探索 两种 Harness 哲学:从 DeepSeek Harness 的"过度抽象"争议,看 OpenClaw.NET 的另一种答案 JVMGuard 来了,.NET 开发者别慌:你的 dotnet-monitor 早就准备好了 .NET 11 Preview 7 发布:一大波硬核更新来袭,离正式版又近了一步! Agent 系统的不确定性治理:当软件工程遭遇"梯度下降" WorkBuddy 专家团的下一步:用 MetaSkill 把「提示词约定」升级为「运行时硬约束」 改变世界的17个方程,如何重塑 GoodCrew 的架构哲学 修 Bug 的手艺与架构的艺术:从熵增到熵减 "从"前锋"到"中场":为什么 Agent 基础设施的建设者必须是系统思考者" 纯 C# 追平 llama.cpp?.NET 本地推理三国杀 MCP 第五版 × OpenClaw.NET:从协议升级到生态编排 把 284B 的 DeepSeek V4 Flash 装进纯 .NET:TensorSharp 用一天改写了 .NET 推理栈的位置 从DDD到Ontology:当数字员工不再认"限界上下文"这堵墙 从 Harness 引擎到 MetaSkill DAG 的确定性架构 25家巨头联名的那封公开信,为什么数字员工架构师应该逐字读一遍 AI + C# NativeAOT:破解应用开发的"最后一公里" 本体:AI落地的"企业翻译官" C# MCP SDK 2.0 即将发布:去会话化、去握手、去运维噩梦 数字员工的成本账:OpenClaw.NET 如何用工程化实现"成功任务的单位经济学"(下) AI 成本战的隐性成本与降本五层:从"成功率悖论"到"系统复杂度"(中) 从 Token 价格战到成功任务单位经济学:AI 成本战的真正主线(上)
Claude Code Dynamic Workflows vs OpenClaw.NET MetaSKILL
张善友 · 2026-06-27 · via 博客园 - 张善友

一句话定位

Claude Code Dynamic Workflows OpenClaw.NET MetaSKILL
本质 可执行 JavaScript 编排脚本,在会话内动态驱动多 Agent 协作 YAML 声明的 DAG 编排引擎,由 .NET 运行时调度执行
设计范式 代码即编排(Code-as-Orchestration) 声明即编排(Declaration-as-Orchestration)
运行环境 Claude Code CLI 会话内,Node.js 沙箱 OpenClaw.NET Gateway 服务器进程内
触发方式 用户调用 /workflow 或使用 Workflow 工具 自然语言触发器匹配 + meta_invoke 工具

一、编排模型对比

Claude Code Dynamic Workflows:JavaScript 脚本编排

export const meta = {
  name: 'review-changes',
  description: 'Review changed files across dimensions, verify each finding',
  phases: [{ title: 'Review' }, { title: 'Verify' }],
}

// Pipeline: items 流经 Review → Verify 两阶段,无 barrier
const DIMENSIONS = [
  {key: 'bugs', prompt: 'Find security and correctness bugs'},
  {key: 'perf', prompt: 'Find performance issues'},
]
const results = await pipeline(
  DIMENSIONS,
  d => agent(d.prompt, {
    phase: 'Review',
    schema: FINDINGS_SCHEMA,
  }),
  review => parallel(review.findings.map(f => () =>
    agent(`Verify: ${f.title}`, {
      phase: 'Verify',
      schema: VERDICT_SCHEMA,
    }).then(v => ({...f, verdict: v}))
  ))
)
const confirmed = results.flat().filter(Boolean)
  .filter(f => f.verdict?.isReal)

核心特点:

  • 编排逻辑是可执行的 JavaScript 代码
  • agent() — 生成一个子 Agent 执行特定任务
  • pipeline() — 流式多阶段处理,无同步屏障
  • parallel() — 并行执行多个任务,有同步屏障
  • phase() — 进度分组显示
  • log() — 实时日志输出
  • budget — Token 预算感知
  • 支持 isolation: 'worktree' 隔离并行修改

OpenClaw.NET MetaSKILL:YAML 声明式 DAG

name: review-changes
kind: meta
composition:
  steps:
    - id: review_all
      kind: fan_out
      iterable: "['bugs', 'perf', 'security']"
      fan_out_max_concurrency: 3
      fan_out_template:
        kind: llm_chat
        with:
          instruction: "Review {{ item }} issues"
    - id: verify_all
      kind: fan_out
      iterable: "{{ outputs.review_all | from_json }}"
      fan_out_max_concurrency: 3
      depends_on: [review_all]
      fan_out_template:
        kind: llm_chat
        with:
          instruction: "Verify finding: {{ item }}"

核心特点:

  • 编排逻辑是声明式的 YAML
  • 7 种步骤类型覆盖不同执行需求
  • depends_on 声明 DAG 依赖
  • fan_out 动态展开并行子步骤
  • routes 条件路由分支
  • on_failure 失败替换步骤
  • user_input 人机交互暂停点

二、核心差异矩阵

维度 Claude Code Workflows OpenClaw.NET MetaSKILL
编排语言 JavaScript(图灵完备) YAML(声明式,非图灵完备)
学习曲线 需要 JS 编程能力 需要理解 YAML 结构和运行时语义
表达力 极高:循环、条件、动态计算、try-catch 中等:DAG + 条件路由 + fan_out 覆盖主流场景
安全性 运行时沙箱约束(无文件系统/网络) 三步门禁:tool_allowlist + capabilities + MetaSkill.Enabled
状态恢复 会话级 checkpoint + resume SessionMetaRunRecord + CLI replay/reconstruct
审计能力 会话内追踪 持久化审计记录,CLI 可查询
超时保护 Agent 级超时 4 层保护:step / retry / session contract / agent loop
输出校验 JSON Schema(schema option) output_contract 每步 JSON Schema
并行策略 parallel() barrier, pipeline() streaming Wave-based 调度,同 wave 内并行

三、编排原语对比

Claude Code Workflows MetaSKILL 说明
agent(prompt, {schema}) kind: agent / kind: llm_chat 单次 LLM 调用或子 Agent
pipeline(items, stage1, stage2, ...) depends_on 流式多阶段,无 barrier
parallel(thunks) fan_out + wave 调度 并行执行
while (condition) { agent() } 无原生循环 Workflows 支持图灵完备循环
if (result.foo) { ... } routes / when 条件分支
phase('Verify') 步骤分组(隐式) 进度组织
budget.remaining() timeout_seconds / contract 资源边界
user_input 人机交互暂停
on_failure 声明式失败替换
skill_exec (子进程) 确定性脚本执行

四、设计哲学对比

Claude Code Workflows:程序员友好,最大化灵活

"编排就是代码" — 开发者用熟悉的 JavaScript 表达编排逻辑。循环、条件、递归、try-catch 全都可以。适合需要动态决策的复杂场景。

优势:

  • 图灵完备,没有表达能力上限
  • 开发者零学习成本(就是写 JS)
  • Token 预算感知,可动态调整策略
  • pipeline() 流式处理避免不必要的 barrier

代价:

  • 脚本中的 bug 可能导致非预期行为
  • 缺少声明式约束的编译期安全性
  • 没有 user_input 暂停点
  • 不持久化审计记录

OpenClaw.NET MetaSKILL:安全第一,声明即约束

"声明就是约束" — 用 YAML 描述 DAG 结构,运行时保证执行正确性。适合需要长期维护、多人协作的生产工作流。

优势:

  • 解析时 DAG 验证(环路检测、5 条 on_failure 约束)
  • 三步安全门禁保证工具访问范围
  • 7 种步骤类型精细控制执行成本
  • 4 层超时保护
  • 完整审计追踪 + CLI replay/reconstruct
  • 双运行时(AgentRuntime + MafAgentRuntime)

代价:

  • 表达能力限于 DAG(无循环,元技能不能调用元技能)
  • 学习 YAML 结构和 7 种步骤类型
  • 需要 OpenClaw.NET Gateway 运行时

五、适用场景

场景 推荐
快速审查 PR、寻找 bug Claude Code Workflows(灵活的 ad-hoc 脚本)
多维度研究分析 Claude Code Workflows(循环探索、动态调整)
生产环境 CI/CD 工作流 MetaSKILL(审计、CLI、持久化)
需要人机交互暂停审批 MetaSKILL(user_input 检查点)
多人长期维护的重复任务 MetaSKILL(声明式修改边界清晰)
需要跨运行时一致执行 MetaSKILL(双运行时 parity 保证)
一次性探索性分析 Claude Code Workflows
确定性脚本 + LLM 混合编排 MetaSKILL(skill_exec + llm_chat 混合)

六、互补关系

两者不是竞争,而是覆盖编排光谱的两端:

  • Claude Code Workflows 覆盖会话内动态编排 — 开发者用 JS 快速表达意图,适合探索性工作
  • MetaSKILL 覆盖持久化生产编排 — 声明式定义,运行时保证审计、安全、可恢复

理想的组合:用 Claude Code Workflows 做原型和探索,模式稳定后用 MetaSKILL 模板固化成可审计、可回放的生产级工作流。

总结

Claude Code Workflows MetaSKILL
编排形式 JavaScript 可执行脚本 YAML 声明式 DAG
图灵完备 否(DAG,无循环)
声明期验证 运行时 解析时 + 运行时
安全门禁 沙箱 三步 tool_allowlist + capabilities + policy
审计持久化 会话内 持久化 + CLI 查询
人机交互 无原生暂停点 user_input 检查点
Token 预算感知 budget 全局变量 4 层超时保护
部署方式 Claude Code CLI 会话 .NET Gateway 服务器
最适合 探索性、一次性、程序员驱动 生产级、可审计、长期维护

两者共同的核心洞察:复杂 AI 工作流不能靠单一长 prompt 驱动,需要显式的编排结构。区别在于 Claude Code 选择"用代码表达编排",MetaSKILL 选择"用声明约束编排"。


参考