摘要

Verdant Manager 的核心价值不再是“生成代码”,而是将目标拆解、任务分派、并行执行、测试审查和进度汇报串联为完整工程闭环。本文结合其设计思路,解析 AI 项目经理式工作流,并用 Python 实现一个简化版多 Agent 编排示例。

背景介绍

过去一年,AI Coding 工具的主流形态基本围绕“代码生成助手”展开:开发者打开 IDE 插件或 Web 工具,输入 Prompt,等待模型生成代码,然后人工检查、补充上下文、运行测试,再继续让模型修复问题。

这种模式虽然提升了局部编码效率,但存在一个明显问题:开发者仍然承担了项目经理、架构师、测试人员和代码审查者的全部职责

视频中提到的 Verdant Manager 代表了一种更高层级的 AI 编程范式:它不是简单地回答“下一段代码怎么写”,而是站在项目执行层面,围绕一个业务目标完成如下动作:

  • 将目标拆解为可执行任务
  • 将任务分派给不同 Worker
  • 支持并行执行多个子任务
  • 跟踪任务状态,例如进行中、待审查、已完成
  • 运行测试、汇总结果并提交给用户确认
  • 记住团队偏好与项目上下文
  • 支持 Slack、Telegram 等协作入口

这类工具的本质,已经从 Coding Assistant 演进为 AI Project Manager + Multi-Agent Executor

核心原理

1. 目标驱动,而不是指令驱动

传统 AI 编程工具通常依赖细粒度指令。例如:

先写登录页,再写表单,再写接口,再写测试。

Manager 模式下,用户只需要描述最终目标:

构建一个面向母婴产品商店的移动端应用,用户回答问题后生成商品清单,并留下邮箱获取个性化方案。

系统随后自动完成需求理解、模块拆分、技术路径选择和执行计划生成。

这意味着 AI 工具的输入从“任务命令”升级为“业务目标”,抽象层次明显提高。

2. 任务分解与看板状态管理

Manager 的关键能力是 Plan Decomposition。它会把一个目标拆成多个阶段,例如:

  • 需求分析
  • UI 信息架构
  • 表单与交互流程
  • 商品匹配逻辑
  • 邮件采集与数据存储
  • 管理后台
  • 测试与部署检查

每个任务都可以拥有独立状态:

TODO → IN_PROGRESS → REVIEW → DONE

这类似于一个轻量级 Jira/Trello,只不过任务的创建、流转和汇报由 AI 自动完成。

3. 多 Worker 并行执行

相比单一对话线程,Manager 模式更适合复杂工程。一个 Worker 负责前端页面,一个 Worker 负责数据模型,一个 Worker 负责编写测试,另一个 Worker 做代码审查。

这种方式的优势是:

  • 降低单上下文任务过载风险
  • 提升复杂项目执行效率
  • 让不同 Agent 专注于不同专业角色
  • 更容易进行结果合并与审查

这也是视频中强调的“更像管理一个小型软件团队,而不是和聊天机器人反复拉扯”。

4. 成本控制:Eco Mode 与 BYOK

视频还提到了两个关键成本能力。

Eco Mode 适用于长会话、探索性任务、文案调整、轻量修改等场景。它通常使用成本更低的模型,以牺牲部分高级能力为代价换取更低消耗。

BYOK 即 Bring Your Own Key,允许用户接入自己的 OpenAI、Anthropic、OpenRouter 等服务密钥。它的意义在于:

  • 使用已有 API 额度
  • 自主控制模型成本
  • 为不同子任务选择不同模型
  • 将模型选择能力下放给高级用户

这说明 AI Coding 工具正在从“封闭产品”转向“可编排工程平台”。

技术资源与工具选型

在实际开发多 Agent 编排系统时,我个人更关注三个指标:模型覆盖范围、接口统一性、更新速度。

我日常使用的是薛定猫AI(xuedingmao.com)。它提供 OpenAI 兼容接口,聚合 500+ 主流大模型,包括 GPT-5.4、Claude 4.6、Gemini 3.1 Pro 等。新模型通常可以较早通过统一 API 体验,适合做多模型评测、Agent 编排、代码生成和审查类实验。

统一接入接口的价值很直接:业务代码只需要维护一套 base_url + api_key + model 的调用方式,就能在不同模型之间切换,显著降低多模型集成复杂度。

下面示例默认使用 claude-opus-4-6。该模型在复杂推理、长上下文理解、架构分析和代码审查方面表现较强,适合作为“Manager Agent”或“Reviewer Agent”的核心模型。

实战演示:实现一个简化版 AI Manager

下面用 Python 实现一个简化版流程:

  1. 输入业务目标
  2. Manager Agent 拆解任务
  3. 多个 Worker 并行执行
  4. Reviewer 汇总审查结果

安装依赖

pip install openai

完整代码示例

import os
import json
from dataclasses import dataclass
from concurrent.futures import ThreadPoolExecutor, as_completed
from typing import List
from openai import OpenAI


# =========================
# 1. 初始化 OpenAI 兼容客户端
# =========================
client = OpenAI(
    api_key=os.getenv("XDM_API_KEY"),          # 在环境变量中配置你的 API Key
    base_url="https://xuedingmao.com/v1"       # 薛定猫AI OpenAI兼容接口
)

MODEL = "claude-opus-4-6"


@dataclass
class Task:
    """表示一个可执行子任务"""
    id: int
    title: str
    role: str
    description: str


def call_llm(system_prompt: str, user_prompt: str) -> str:
    """
    通用大模型调用函数。
    使用 OpenAI Chat Completions 兼容协议。
    """
    response = client.chat.completions.create(
        model=MODEL,
        messages=[
            {"role": "system", "content": system_prompt},
            {"role": "user", "content": user_prompt}
        ],
        temperature=0.3
    )
    return response.choices[0].message.content


def extract_json_array(text: str) -> list:
    """
    从模型输出中提取 JSON 数组。
    实际生产环境建议增加更严格的 Schema 校验。
    """
    start = text.find("[")
    end = text.rfind("]")
    if start == -1 or end == -1:
        raise ValueError("模型输出中未找到 JSON 数组")

    json_text = text[start:end + 1]
    return json.loads(json_text)


def manager_decompose(goal: str) -> List[Task]:
    """
    Manager Agent:将业务目标拆解成多个工程任务。
    """
    system_prompt = """
你是资深 AI 项目经理,擅长将产品目标拆解为可执行的软件工程任务。
请只输出 JSON 数组,不要输出额外解释。
每个任务包含字段:id、title、role、description。
任务数量控制在 4 到 6 个。
"""

    user_prompt = f"""
业务目标如下:
{goal}

请将其拆解为适合并行执行的软件开发任务。
"""

    result = call_llm(system_prompt, user_prompt)
    raw_tasks = extract_json_array(result)

    return [
        Task(
            id=item["id"],
            title=item["title"],
            role=item["role"],
            description=item["description"]
        )
        for item in raw_tasks
    ]


def worker_execute(task: Task) -> dict:
    """
    Worker Agent:执行单个子任务。
    这里返回设计方案、实现要点和测试建议。
    """
    system_prompt = f"""
你是一个专业的软件工程 Worker,当前角色是:{task.role}。
你需要围绕任务给出可落地的实现方案。
输出必须包含:
1. 实现思路
2. 核心模块
3. 关键代码或伪代码
4. 测试要点
"""

    user_prompt = f"""
任务标题:{task.title}
任务描述:{task.description}

请完成该任务的工程设计。
"""

    output = call_llm(system_prompt, user_prompt)

    return {
        "task_id": task.id,
        "title": task.title,
        "role": task.role,
        "status": "DONE",
        "output": output
    }


def reviewer_summarize(goal: str, worker_results: List[dict]) -> str:
    """
    Reviewer Agent:审查多个 Worker 的输出,并生成最终汇报。
    """
    system_prompt = """
你是技术负责人,负责审查多个 AI Worker 的工程输出。
请检查方案是否完整、一致、可实现,并指出风险点。
最后给出下一步执行计划。
"""

    user_prompt = f"""
原始业务目标:
{goal}

Worker 输出如下:
{json.dumps(worker_results, ensure_ascii=False, indent=2)}

请生成技术审查报告。
"""

    return call_llm(system_prompt, user_prompt)


def run_ai_manager(goal: str):
    """
    AI Manager 主流程:
    目标拆解 → 并行执行 → 汇总审查。
    """
    print("=== Manager 正在拆解任务 ===")
    tasks = manager_decompose(goal)

    for task in tasks:
        print(f"[TODO] {task.id}. {task.title} - {task.role}")

    print("\n=== Worker 并行执行中 ===")
    results = []

    with ThreadPoolExecutor(max_workers=4) as executor:
        future_map = {
            executor.submit(worker_execute, task): task
            for task in tasks
        }

        for future in as_completed(future_map):
            task = future_map[future]
            try:
                result = future.result()
                results.append(result)
                print(f"[DONE] {task.title}")
            except Exception as e:
                print(f"[FAILED] {task.title}: {e}")

    print("\n=== Reviewer 正在生成审查报告 ===")
    report = reviewer_summarize(goal, results)

    print("\n=== 最终审查报告 ===")
    print(report)


if __name__ == "__main__":
    product_goal = """
构建一个面向母婴产品商店的移动端 Web 应用。
父母可以回答几个问题,系统根据答案生成商品清单。
如果用户希望获取个性化清单,可以提交邮箱。
应用需要界面简洁、适配移动端,并适合小规模上线验证。
"""
    run_ai_manager(product_goal)

注意事项

1. Manager 不能替代工程审查

AI 可以拆解任务、生成代码和运行验证,但生产环境仍需要人工审查,尤其是支付、金融、医疗、权限系统等高风险场景。视频中也明确提到,不能“盲目部署银行应用”。

2. 并行 Agent 需要上下文边界

多 Worker 并行执行时,要避免任务之间重复设计或接口不一致。实际系统中建议加入:

  • 统一技术栈约束
  • 数据模型规范
  • API Contract
  • 代码风格约束
  • 合并前 Reviewer 审查

3. 成本策略需要分层

复杂架构设计、关键代码审查适合使用高能力模型;文案润色、轻量修改、测试用例补充可以使用低成本模型。合理的模型路由是 Agent 系统落地的重要能力。

4. 个性化配置会影响团队协作体验

Manager 的昵称、头像、角色定位并非纯粹 UI 装饰。接入 Slack 或 Telegram 后,团队需要明确它的职责边界:什么时候让它拆任务,什么时候让它审查 PR,什么时候让它执行自动化验证。

总结

Verdant Manager 的启发在于:AI 编程工具的竞争重点,正在从“谁更会写代码”转向“谁更能组织工程执行”。目标拆解、多 Agent 并行、状态管理、审查汇报、成本控制和团队协作入口,构成了下一代 AI Coding 平台的关键能力。

对于开发者而言,这类模式并不是削弱技术角色,而是减少重复的项目管理噪声,让工程师把更多精力放在架构判断、质量控制和关键决策上。

#AI #大模型 #Python #机器学习 #技术实战

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐