Agent skill
task-dependency-patterns
Task Management patterns with TaskCreate, TaskUpdate, TaskGet, TaskList tools. Decompose complex work into trackable tasks with dependency chains. Use when managing multi-step implementations, coordinating parallel work, or tracking completion status.
Install this agent skill to your Project
npx add-skill https://github.com/yonatangross/orchestkit/tree/main/plugins/ork/skills/task-dependency-patterns
Metadata
Additional technical details for this skill
- category
- workflow-automation
SKILL.md
Task Dependency Patterns
Overview
Claude Code 2.1.16 introduces a native Task Management System with four tools:
- TaskCreate: Create new tasks with subject, description, and activeForm
- TaskUpdate: Update status (pending → in_progress → completed), set dependencies
- TaskGet: Retrieve full task details including blockers
- TaskList: View all tasks with status and dependency summary
Tasks enable structured work tracking, parallel coordination, and clear progress visibility.
When to Use
- Breaking down complex multi-step implementations
- Coordinating parallel work across multiple files
- Tracking progress on large features
- Managing dependencies between related changes
- Providing visibility into work status
Key Patterns
1. Task Decomposition
Break complex work into atomic, trackable units:
Feature: Add user authentication
Tasks:
#1. [pending] Create User model
#2. [pending] Add auth endpoints (blockedBy: #1)
#3. [pending] Implement JWT tokens (blockedBy: #2)
#4. [pending] Add auth middleware (blockedBy: #3)
#5. [pending] Write integration tests (blockedBy: #4)
2. Dependency Chains
Use addBlockedBy to create execution order:
// Task #3 cannot start until #1 and #2 complete
{"taskId": "3", "addBlockedBy": ["1", "2"]}
3. Status Workflow
pending → in_progress → completed
↓ ↓
(unblocked) (active)
pending/in_progress → deleted
- pending: Task created but not started
- in_progress: Actively being worked on
- completed: Work finished and verified
- deleted: Task removed — permanently removes the task
Task Deletion
Use status: "deleted" to permanently remove tasks:
// Delete a task
{"taskId": "3", "status": "deleted"}
When to delete:
- Orphaned tasks whose blockers have all failed
- Tasks superseded by a different approach
- Duplicate tasks created in error
- Tasks from a cancelled pipeline
When NOT to delete:
- Tasks that might be retried later (keep as pending)
- Tasks with useful history (mark completed instead)
- Tasks blocked by in_progress work (wait for resolution)
4. activeForm Pattern
Provide present-continuous form for spinner display:
| subject (imperative) | activeForm (continuous) |
|---|---|
| Run tests | Running tests |
| Update schema | Updating schema |
| Fix authentication | Fixing authentication |
Agent Teams
Agent Teams provides multi-agent coordination with shared task lists and peer-to-peer messaging.
Team Workflow
1. TeamCreate("my-feature") → Creates team + shared task list
2. TaskCreate(subject, description) → Add tasks to shared list
3. Agent(prompt, team_name, name) → Spawn teammates
4. TaskUpdate(owner: "teammate-name") → Assign tasks
5. SendMessage(type: "message") → Direct teammate communication
6. SendMessage(type: "shutdown_request") → Graceful shutdown
When to Use Teams vs Task Tool
| Criteria | Task Tool (subagents) | Agent Teams |
|---|---|---|
| Independent tasks | Yes | Overkill |
| Cross-cutting changes | Limited | Yes |
| Agents need to talk | No (star topology) | Yes (mesh) |
| Cost sensitivity | Lower (~1x) | Higher (~2.5x) |
| Complexity < 3.0 | Yes | No |
| Complexity > 3.5 | Possible | Recommended |
Team Task Patterns
# Spawn teammate into shared task list
Agent(
prompt="You are the backend architect...",
team_name="my-feature",
name="backend-architect",
subagent_type="backend-system-architect"
)
# Teammate claims and works tasks
TaskList → find unblocked, unowned tasks
TaskUpdate(taskId, owner: "backend-architect", status: "in_progress")
# ... do work ...
TaskUpdate(taskId, status: "completed")
TaskList → find next task
Peer Messaging
# Direct message between teammates
SendMessage(type: "message", recipient: "frontend-dev",
content: "API contract ready: GET /users/:id returns {...}",
summary: "API contract shared")
# Broadcast to all (use sparingly)
SendMessage(type: "broadcast",
content: "Breaking change: auth header format changed",
summary: "Breaking auth change")
Context Exhaustion Handling
When using Agent Teams, if context limit is reached mid-workflow:
- Collect partial results from completed teammates via
TaskList - Synthesize available outputs — prefer partial results over silent failure
- Log skipped tasks with
TaskUpdate(status: "cancelled", note: "context limit")
Anti-Patterns
- Creating tasks for trivial single-step work
- Circular dependencies (A blocks B, B blocks A)
- Leaving tasks in_progress when blocked
- Not marking tasks completed after finishing
- Using broadcast for messages that only concern one teammate
- Spawning teams for simple sequential work (use Task tool instead)
Related Skills
ork:implement- Implementation workflow with task tracking and progress updatesork:verify- Verification tasks and completion checklistsork:fix-issue- Issue resolution with hypothesis-based RCA trackingork:brainstorm- Design exploration with parallel agent tasks
References
Load on demand with Read("${CLAUDE_SKILL_DIR}/references/<file>"):
| File | Content |
|---|---|
dependency-tracking.md |
Dependency tracking patterns |
status-workflow.md |
Status workflow details |
multi-agent-coordination.md |
Multi-agent coordination |
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
expect
Diff-aware AI browser testing — analyzes git changes, generates targeted test plans, and executes them via agent-browser. Reads git diff to determine what changed, maps changes to affected pages via route map, generates a test plan scoped to the diff, and runs it with pass/fail reporting. Use when testing UI changes, verifying PRs before merge, running regression checks on changed components, or validating that recent code changes don't break the user-facing experience.
github-operations
GitHub CLI operations for issues, PRs, milestones, and Projects v2. Covers gh commands, REST API patterns, and automation scripts. Use when managing GitHub issues, PRs, milestones, or Projects with gh.
chain-patterns
Chain patterns for CC 2.1.71 pipelines — MCP detection, handoff files, checkpoint-resume, worktree agents, CronCreate monitoring. Use when building multi-phase pipeline skills. Loaded via skills: field by pipeline skills (fix-issue, implement, brainstorm, verify). Not user-invocable.
storybook-mcp-integration
Storybook MCP server integration for component-aware AI development. Covers 6 tools across 3 toolsets (dev, docs, testing): component discovery via list-all-documentation/get-documentation, story previews via preview-stories, and automated testing via run-story-tests. Use when generating components that should reuse existing Storybook components, running component tests via MCP, or previewing stories in chat.
component-search
Search 21st.dev component registry for production-ready React components. Finds components by natural language description, filters by framework and style system, returns ranked results with install instructions. Use when looking for UI components, finding alternatives to existing components, or sourcing design system building blocks.
ai-ui-generation
AI-assisted UI generation patterns for json-render, v0, Bolt, and Cursor workflows. Covers prompt engineering for component generation, review checklists for AI-generated code, design token injection, refactoring for design system conformance, and CI gates for quality assurance. Use when generating UI components with AI tools, rendering multi-surface MCP visual output, reviewing AI-generated code, or integrating AI output into design systems.
Didn't find tool you were looking for?