AI 编码智能体走向企业:从单兵助手到可编排的智能体舰队

·阅读约11分钟·Evergreen Tools Team

过去两年,编码智能体的故事是一场编辑器之间的赛跑:谁的补全更准、谁能重构模块、谁能接管整个仓库。到了 2026 年,有意思的活儿上移到另一层——问题不再是「选哪个智能体」,而是「如何让许多智能体在真实仓库、真实管控之下跑起来」。UiPath 于 2026 年 5 月 12 日发布 UiPath for Coding Agents,宣称这项平台级集成让「每一个编码智能体都可在企业部署」,首发接入 Anthropic 的 Claude Code 与 OpenAI 的 Codex,并在年内陆续加入 Cursor、GitHub Copilot 与 Gemini。9 月 9 日,它又推出 Maestro Flow——面向开发者优先的编码智能体编排能力。本文讲清究竟交付了什么,以及该怎么围绕它设计架构。

编排一支舰队,而不是挑一件工具

编排一支舰队,而不是挑一件工具

一、到底交付了什么

2026 年 5 月 12 日的发布,与其说是一款产品,不如说是一个品类标志。UiPath 把企业已在使用的编码智能体,搬进它本就卖给大型组织的编排与治理层。卖点是集成广度:过去管 RPA 机器人的同一套控制、审计与部署机制,现在开始管 Claude Code 与 Codex,并计划覆盖 Cursor、GitHub Copilot 与 Gemini。2026 年 9 月 9 日发布的 Maestro Flow 则更进一步,提供开发者优先的编排面,让平台团队能定义编码智能体如何被调用、以什么顺序、拿什么权限。

# agents.registry.yaml - who may run, and with what
agents:
  - id: claude-code
    vendor: anthropic
    skills: [read, edit, run_tests, commit]
    denied: [push_protected_branch, unrestricted_shell]
  - id: codex
    vendor: openai
    skills: [read, edit, run_tests]
    denied: [push_protected_branch, unrestricted_shell]
sources_of_truth:
  policy: git://platform/policy.git
  capability_report: s3://ai-telemetry/capability/weekly.json

二、harness 才是产品

模型只是一个组件;编码智能体是套在模型外面的 harness。同一个模型,工具如何暴露、上下文如何组装、重试如何处理、权限如何把关不同,表现就如同两个不同产品。这也是为什么平台团队开始像对待服务一样给 harness 打版本。当两个团队说同一个智能体在一个代码库上神勇、在另一个上废柴时,变量通常是 harness 与仓库本身,而不是模型权重。

# policy_gate.py - deny by default, promote only on evidence
POLICY = {
    "read_file":   {"risk": "low",  "requires_eval": None},
    "run_tests":   {"risk": "low",  "requires_eval": None},
    "push_branch": {"risk": "high", "requires_eval": "branch_safety_v3"},
    "shell_exec":  {"risk": "high", "requires_eval": "shell_containment_v2"},
}

def allow(agent, skill, evals):
    rule = POLICY[skill]
    if rule["requires_eval"] is None:
        return skill in agent["skills"]
    score = evals.get(rule["requires_eval"], {}).get(agent["id"], 0.0)
    return score > 0.9

三、沙箱不再是可选项

一旦智能体能跑 shell 命令、装依赖、推分支,隔离就从「加分项」变成「硬门槛」。2026 年企业部署的默认做法是用 microVM 支撑的远程编码沙箱,例如 Kata Containers、Firecracker 或 gVisor,每次执行都拿到自己的内核,并附带网络隔离、用量上限与租户边界。这就是「让智能体干活」与「把智能体放出去咬人」之间的区别。

# sandbox.spec.yaml - one kernel per run, no exceptions
runtime: microvm
isolation: firecracker        # alternatives: kata-containers, gvisor
network:
  default: deny_all_egress
  allow: [pypi.org, registry.npmjs.org]
resources:
  vcpu: 4
  memory_gb: 8
  wall_clock_max: 30m
tenancy: single_use_ephemeral
secrets: injected_at_runtime_only
一次运行一个内核:microVM 隔离

一次运行一个内核:microVM 隔离

四、把治理写成代码

2026 年收敛出来的做法,都把手写策略当成一等工作产物。权限按技能授予,而不是按模型授予:读文件、跑测试便宜且低风险;推受保护分支、执行任意 shell 命令则不然,它们要各自过闸。每一次工具调用都被记录,每一条轨迹都被保留,只有当某项评估通过时,自治范围才扩大。代码示例 2 就是这种策略闸门的最小可用版本。

# trajectory.py - capture is the step nobody can reconstruct later
import json, time

def record(agent_id, tool, args, result, latency_ms, ok):
    return {
        "agent": agent_id,
        "ts": time.time(),
        "tool": tool,
        "args": args,
        "ok": ok,
        "latency_ms": latency_ms,
        "result_digest": digest(result),
    }

# append one JSON object per line; never sample, never truncate silently
# this file is the only artifact that turns a cost centre into a capability report

五、一套参考架构

反复出现的只有四个组件:一份注册表,声明哪些智能体被允许运行、具备哪些技能;一个路由器,按实测能力而非品牌忠诚来分配任务;一个沙箱,给每次运行独立内核与独立预算;以及一个遥测下沉端,把每条轨迹变成可评分的数。代码示例 1 勾勒注册表条目,代码示例 3 勾勒沙箱规格,代码示例 5 把路由与「每美元实测质量」绑定。

# router.py - spend where quality is measured, not hoped for
def choose_agent(task, registry, capability_report):
    candidates = [a for a in registry if task.skill in a["skills"]]
    if not candidates:
        raise NoEligibleAgent(task.skill)
    scored = [
        (a["id"], capability_report[a["id"]][task.skill] / a["cost_index"])
        for a in candidates
    ]
    scored.sort(key=lambda pair: pair[1], reverse=True)
    return scored[0][0]   # best measured quality per dollar, per skill

六、这个季度该做的三件事

三个动作。第一,盘点公司里已经在跑的编码智能体——无论是否被批准,它们几乎一定存在。第二,把策略按技能写成代码,并让默认值取「拒绝」。第三,把某个生产智能体端到端地埋点,用它产出第一份能力报告。舰队一定会来,问题只在于你看不看得见它。

七、自建还是采购

厂商真正卖的其实是治理界面:控制台、审计轨迹、审批流、集成目录。而底层模式——注册表、路由器、沙箱、遥测——是可移植、可用开源组件复现的。所以诚实的答案是:界面可以买,策略必须自持。如果你的策略写死在厂商的专有格式里,你只是租了一套自治模型而不是建了一套,日后迁移意味着把每个闸门从零重推一遍。把策略文件留在自己的仓库里,把厂商当成它的一个实现。

八、要提前布防的失败模式

几乎每一支舰队都会撞上三种失败模式。其一是「智能体蔓生」:团队悄悄接上未经批准的智能体,平台团队直到出事故才知道。其二是「静默能力漂移」:模型或 harness 的更新改变了行为,却没人重跑评估。其三是「预算爆掉」:一个重试循环在凌晨三点把廉价任务变成昂贵任务。这三种都不稀奇,每一种都有一个很无聊的对策。注册表治蔓生,每周评估治漂移,单次运行成本上限加熔断器治爆预算。第一天就要全部布防,因为等出事故后再补,往往是这类项目被砍掉的原因。

治理即代码,权限按技能授予

治理即代码,权限按技能授予

📌 常见问题 FAQ

什么是 UiPath for Coding Agents?

2026 年 5 月 12 日发布的平台级集成,把编码智能体接入 UiPath 的编排与治理层,首发支持 Anthropic 的 Claude Code 与 OpenAI 的 Codex。

支持哪些智能体?

首发 Claude Code 与 OpenAI Codex,并计划在 2026 年内陆续加入 Cursor、GitHub Copilot 与 Gemini。

为什么要用 microVM 沙箱?

它让每次智能体执行都有独立内核与网络隔离,失控的智能体无法触碰生产系统或其他租户。

Maestro Flow 是什么?

2026 年 9 月 9 日发布的开发者优先编排面,让团队定义编码智能体如何被调用、被允许做什么。

必须依赖厂商才能做吗?

不必。注册表、路由器、沙箱与遥测这套模式用开源组件在小规模下同样可行,厂商主要卖的是外围治理界面。