AgileFlow

/assign

PreviousNext

Assign or reassign a story to an owner

/assign

Assign or reassign a story to an owner with optional status update. Updates story metadata and broadcasts the assignment via the message bus.

Quick Start

/agileflow:assign STORY=US-0001 NEW_OWNER=AG-UI

Parameters

ParameterRequiredDefaultDescription
STORYYes-Story ID to assign (e.g., US-0001, US-0042)
NEW_OWNERYes-Agent/owner ID (e.g., AG-UI, AG-API, AG-CI)
NEW_STATUSNo-Update status: ready, in-progress, blocked, in-review, done
NOTENo-Optional context about the assignment

Examples

Assign Story to Owner

/agileflow:assign STORY=US-0042 NEW_OWNER=AG-UI

Assign the story to the UI team without changing status.

Assign and Start Work

/agileflow:assign STORY=US-0042 NEW_OWNER=AG-UI NEW_STATUS=in-progress NOTE="Starting login form implementation"

Assign story and immediately mark as in progress with context.

Reassign to Different Owner

/agileflow:assign STORY=US-0038 NEW_OWNER=AG-API NEW_STATUS=ready NOTE="Re-prioritized for OAuth implementation"

Move story from one agent to another.

Assign from Unassigned

/agileflow:assign STORY=US-0050 NEW_OWNER=AG-CI NEW_STATUS=ready NOTE="Ready for CI/CD integration work"

Give work to an unassigned story.

Reassign Due to Blocker

/agileflow:assign STORY=US-0055 NEW_OWNER=AG-DEVOPS NEW_STATUS=blocked NOTE="Blocked on infrastructure provisioning. Needs DevOps attention"

Reassign when different expertise needed.

What Gets Updated

The command updates two files:

1. Story File

Updates story frontmatter (in docs/06-stories/**/<STORY>.md):

---
owner: AG-UI
status: in-progress
updated: 2025-12-24T14:30:00Z
---

2. Status Tracking File

Updates docs/09-agents/status.json with assignment and status change.

3. Message Bus

Appends an "assign" event to docs/09-agents/bus/log.jsonl:

{"ts":"2025-12-24T14:30:00Z","from":"claude","type":"assign","story":"US-0042","owner":"AG-UI","status":"in-progress","text":"Starting login form implementation"}

Status Values

When using NEW_STATUS, choose from:

StatusMeaningWhen to Use
readyPrepared, waiting to startAfter creation or when unblocked
in-progressCurrently being worked onWhen owner begins work
blockedWaiting on external dependencyWhen blocker identified
in-reviewComplete, awaiting approvalCode review or QA
doneFinished and verifiedAfter all checks pass

Assignment Flow Example

Typical workflow through assignment states:

1. Story created (STORY=US-0042, OWNER=unassigned, STATUS=ready)

/agileflow:assign STORY=US-0042 NEW_OWNER=AG-UI NEW_STATUS=ready

2. Owner starts work

/agileflow:assign STORY=US-0042 NEW_OWNER=AG-UI NEW_STATUS=in-progress

3. Code complete, ready for review

/agileflow:status STORY=US-0042 STATUS=in-review PR=https://github.com/...

4. Review complete

/agileflow:status STORY=US-0042 STATUS=done

5. If blocked during work

/agileflow:status STORY=US-0042 STATUS=blocked SUMMARY="Blocked on API response format"

6. Unblocked, resume work

/agileflow:status STORY=US-0042 STATUS=in-progress SUMMARY="API clarified, resuming development"

Output

The command displays:

  1. Diff Preview - Shows changes to be made
  2. Confirmation - YES/NO prompt to confirm
  3. Success Message - Confirms assignment completed

Example output:

✅ Story Assigned
Story:     US-0042
Owner:     unassigned → AG-UI
Status:    ready (unchanged)
Updated:   2025-12-24T14:30:00Z
 
Message broadcast: Assigned US-0042 to AG-UI

JSON Safety

The command uses safe JSON handling:

  • Never uses echo/cat - Always uses jq or Edit tool
  • Validates after update - Checks JSON is valid before finishing
  • Backs up on error - Can restore from backup if corruption occurs

Best Practices

  1. Assign immediately - Don't leave stories unassigned
  2. Include context - Use NOTE to explain why assignment happened
  3. Match expertise - Assign to agent with relevant skills
  4. Balance load - Distribute work fairly across agents
  5. Update status - Consider updating status when assigning
  6. Communicate - Team should understand why reassignment happened

Common Scenarios

Load Balancing

Distribute work when one agent is overloaded:

/agileflow:assign STORY=US-0055 NEW_OWNER=AG-DEVOPS NOTE="Load balancing: AG-API at WIP limit"

Cross-Training

Assign to less experienced agent with guidance:

/agileflow:assign STORY=US-0060 NEW_OWNER=AG-CI NEW_STATUS=ready NOTE="Cross-training opportunity for CI/CD work. Pair with AG-API"

Expertise Transfer

Reassign to specialist when expertise needed:

/agileflow:assign STORY=US-0065 NEW_OWNER=AG-SECURITY NEW_STATUS=in-progress NOTE="Security vulnerability fix - needs security expertise"

Recovery from Blocker

Resume work after unblock:

/agileflow:assign STORY=US-0070 NEW_OWNER=AG-UI NEW_STATUS=in-progress NOTE="Unblocked: API endpoint now available, resuming frontend work"

FAQ