Files
united-workforce/packages/workflow-template-develop
Scott Wei a11cc62a81 refactor(workflow-runtime): use full ThreadContext in WorkflowFn
Redefine WorkflowFn to accept a complete ThreadContext plus WorkflowRuntime dependencies, removing ThreadInput and WorkflowFnOptions.

Move thread context construction into engine executeThread, update runtime loop/agent paths, and align templates/docs/tests with template-only definition exports.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-08 17:08:01 +08:00
..

@uncaged/workflow-template-develop

Reference develop workflow template: plan phases, implement in a loop, review, test, then commit.

Export a pure WorkflowDefinition (developWorkflowDefinition) and role/moderator pieces. Workflow instantiation (createWorkflow(definition, binding)) happens in the workflow instance layer, not in this template package.

Install

bun add @uncaged/workflow-template-develop @uncaged/workflow zod

In this monorepo: workspace:* for @uncaged/workflow-template-develop and @uncaged/workflow.

Usage

import { createWorkflow } from "@uncaged/workflow";
import { developWorkflowDefinition } from "@uncaged/workflow-template-develop";

const run = createWorkflow(developWorkflowDefinition, binding);

Roles

Role Purpose
planner Break work into ordered phases (hashes)
coder Implement current phase; repeats until phases complete or limits hit
reviewer Code review gate (approved vs send back to coder)
tester Verify via tests/build/lint (passed vs send back to coder)
committer Final commit step

Also exported: role factories/meta schemas (plannerRole, coderRole, …), DevelopMeta, developRoles.

Moderator flow

  1. Startplanner
  2. After plannercoder
  3. After coder → if all planned phases are done (or last phase completed) → reviewer; else coder again, until maxRounds then END
  4. After reviewer → if approved → tester; else coder (or END if out of rounds)
  5. After tester → if passed → committer; else coder (or END if out of rounds)
  6. After committerEND

API overview

Export Description
developWorkflowDefinition description, roles, developModerator
developModerator Moderator<DevelopMeta>
buildDevelopDescriptor buildDescriptor({ … }) for bundle metadata
DEVELOP_WORKFLOW_DESCRIPTION Human-readable one-liner