界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
效率与协作 · SKILL.md

orchestrate

orchestrate

【效率与协作】Pipeline orchestration: dispatch the highest-priority ready tasks/work units to agents, manage capacity, and coordinate the Todo to Done flow. Invoked as /agiflow:orchestrate. Uses list_tasks, list_active_tasks_by_org, list_members, update_task, get_work_unit_progress.

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: orchestrate description: "Pipeline orchestration: dispatch the highest-priority ready tasks/work units to agents, manage capacity, and coordinate the Todo to Done flow. Invoked as /agiflow:orchestrate. Uses list_tasks, list_active_tasks_by_org, list_members, update_task, get_work_unit_progress." tags:

  • agiflow
  • mcp
  • orchestration
  • dispatch metadata: mirrors: backend/apis/agiflow-api .../prompts/orchestrate.md

Invoked as /agiflow:orchestrate. In hosts without slash-prompts, this skill is triggered by matching intent and drives AgiFlow via its MCP tools.

Usage:

  • /agiflow:orchestrate - Check pipeline state and dispatch the next highest-priority task

Guardrails

  • This is a read-assess-dispatch loop, not an implementation prompt.
  • Do NOT implement tasks here — use /agiflow:run-task for that.
  • Keep capacity checks honest: do not dispatch if at capacity.
  • Report pipeline state even when no dispatch is needed.

AgiFlow Project Management Guidelines

Follow the shared AgiFlow project-management guidelines in references/agiflow-agents.md — agent assignment, the task status workflow and transitions, work-unit best practices, and the tags strategy apply to this workflow.


Steps Track these steps as TODOs and complete them one by one.

1. Assess Current Pipeline State

  1. Use list_tasks to count tasks in each active status column:

    • status: "In Progress" — tasks currently being coded by agents
    • status: "Testing" — tasks running test suites
    • status: "Review" — tasks awaiting human review
    • status: "Blocked" — tasks requiring human intervention
    • status: "Todo" — tasks ready for pickup (sorted by priority automatically)
  2. Report the pipeline state in a concise table:

    Pipeline State:
    ┌──────────────┬───────┐
    │ Status       │ Count │
    ├──────────────┼───────┤
    │ Todo         │   N   │
    │ In Progress  │   N   │
    │ Testing      │   N   │
    │ Review       │   N   │
    │ Blocked      │   N   │
    └──────────────┴───────┘
    

2. Check Capacity

  1. Determine active task count: In Progress + Testing combined.
  2. Check capacity limit (default: 3 concurrent active tasks unless specified).
  3. If at or above capacity:
    • Report: "At capacity (N active tasks). No dispatch needed."
    • List any Blocked tasks that need human attention.
    • Stop here.

3. Prioritize the Todo Queue

  1. Use list_tasks with status: "Todo" to retrieve the ready queue.

    • Tasks are automatically sorted by priority (high → medium → low).
    • Within the same priority, tasks are ordered by position then creation date.
  2. Review the top candidates:

    • Show the top 3-5 Todo tasks with: slug, title, priority, assignee, retryCount (from devInfo)
    • Skip any task where devInfo.retryCount >= devInfo.maxRetries (should be Blocked — flag it)

4. Dispatch

  1. Pick the highest-priority eligible Todo task.
  2. Report the dispatch decision:
    Dispatching: [SLUG] Task title (priority: high)
    Reason: Highest priority task in Todo queue
    
  3. Instruct the agent to run the task:
    • Use /agiflow:run-task <slug> to execute it
    • Or if already in an agent session, invoke the run-task prompt directly

5. Surface Blocked Tasks

  1. If there are any Blocked tasks, list them with their blockedReason from devInfo:
    Blocked Tasks Requiring Human Attention:
    - [SLUG] Task title: <blockedReason>
    
  2. Suggest actions for each blocked task (e.g., resolve dependency, provide credentials, clarify spec).

Common Mistakes to Avoid

  • ❌ Dispatching when already at capacity
  • ❌ Picking a lower-priority task when a higher-priority Todo exists
  • ❌ Dispatching a task that has retryCount >= maxRetries (it should be Blocked)
  • ❌ Skipping the pipeline state report
  • ❌ Attempting to implement the task inside this prompt
我的收藏