parallel-task-format
Compact YAML format for defining parallel task specifications with scope, boundaries, and agent assignments. Use when creating task files for parallel development.
Best use case
parallel-task-format is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Compact YAML format for defining parallel task specifications with scope, boundaries, and agent assignments. Use when creating task files for parallel development.
Teams using parallel-task-format should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/parallel-task-format/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How parallel-task-format Compares
| Feature / Agent | parallel-task-format | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Compact YAML format for defining parallel task specifications with scope, boundaries, and agent assignments. Use when creating task files for parallel development.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Task Specification Format
Compact YAML format for parallel task files in `parallel/TS-XXXX-slug/tasks/`.
## Complete Task Example
```yaml
---
id: task-001
component: users
wave: 1
deps: []
blocks: [task-004, task-005]
agent: python-experts:django-expert
skills: [python-experts:python-style, python-experts:django-dev, python-experts:django-api]
tech_spec: TS-0042
contracts: [contracts/types.py, contracts/api-schema.yaml]
---
# task-001: User Management
## Scope
CREATE: apps/users/{models,views,serializers,urls}.py, apps/users/tests/*.py
MODIFY: config/urls.py
BOUNDARY: apps/orders/*, apps/products/*, apps/*/migrations/*
## Requirements
- User model with email authentication
- UserSerializer with explicit fields
- UserViewSet (list, retrieve, create, update)
- Email uniqueness validation
## Checklist
- [ ] Model matches UserDTO in contracts/types.py
- [ ] API matches /api/users/* in contracts/api-schema.yaml
- [ ] pytest apps/users/ passes
- [ ] mypy apps/users/ passes
- [ ] ruff check apps/users/ passes
- [ ] No files modified outside scope
```
## YAML Frontmatter Fields
| Field | Required | Description |
|-------|----------|-------------|
| `id` | Yes | Task identifier (task-NNN or task-NNN-component) |
| `component` | Yes | System component name |
| `wave` | Yes | Dependency wave number (1, 2, 3...) |
| `deps` | Yes | Task IDs this depends on (empty list `[]` if none) |
| `blocks` | No | Task IDs this blocks (optional) |
| `agent` | Yes | Recommended agent type |
| `skills` | Yes | Skills the agent should invoke (list from agent-skills-mapping.yaml) |
| `tech_spec` | No | Tech Spec ID (if applicable) |
| `contracts` | Yes | Contract files to reference (relative paths) |
**Note:** `skills` are stored in task files so prompt generation can include them in `=== REQUIRED SKILLS ===` sections. They are NOT stored in manifest.json.
## Scope Section Format
Use compact notation with three directives:
### CREATE
Files to create (use glob patterns). **A file can only be in CREATE for ONE task.**
```
CREATE: apps/users/{models,views,serializers,urls}.py, apps/users/tests/*.py
```
### MODIFY
Existing files to modify. Use **scoped syntax** for parallel modifications:
**Unscoped** (whole file - only ONE task per wave can use this):
```
MODIFY: config/urls.py, config/settings.py
```
**Scoped** (specific section - multiple tasks in same wave can modify different scopes):
```
MODIFY: apps/users/models.py::User.save # Owns User.save method
MODIFY: apps/users/models.py::User.clean # Different task owns User.clean
MODIFY: apps/users/views.py::UserViewSet # Owns entire class
MODIFY: config/urls.py::urlpatterns # Owns urlpatterns list
```
**Scoped syntax rules:**
- `file.py::ClassName` - owns entire class
- `file.py::function_name` - owns entire function
- `file.py::ClassName.method` - owns specific method
- Scopes must NOT overlap (no nesting like `::Class` and `::Class.method` in same wave)
### BOUNDARY
Files NOT to touch (owned by other tasks):
```
BOUNDARY: apps/orders/*, apps/products/*, apps/*/migrations/*
```
## Task Naming Convention
```
task-{number}-{component}.md
Examples:
- task-001-users.md
- task-002-products.md
- task-003-orders.md
- task-004-api.md
- task-005-integration.md
```
## Agent Type Selection
| Task Files | Agent | Description |
|------------|-------|-------------|
| `apps/*/models.py`, `apps/*/views.py` | `python-experts:django-expert` | Django models, views, serializers |
| `api/*.py`, `routers/*.py` | `python-experts:fastapi-expert` | FastAPI endpoints |
| `src/components/*.tsx` | `frontend-experts:react-typescript-expert` | React components |
| `**/test_*.py`, `**/tests/*.py` | `python-experts:python-testing-expert` | Python tests |
| `*.spec.ts`, `*.test.tsx` | `frontend-experts:playwright-testing-expert` | TypeScript/E2E tests |
| `terraform/`, `docker-compose.yml` | `devops-data:devops-expert` | Infrastructure |
| Integration, architecture | `devops-data:cto-architect` | Cross-cutting concerns |
## Contract References
Contracts are in the same parallel directory:
```
parallel/TS-0042-slug/
contracts/
types.py # Reference as: contracts/types.py
api-schema.yaml # Reference as: contracts/api-schema.yaml
tasks/
task-001-users.md
```
## Wave Dependencies
Tasks in Wave N can only depend on tasks in Waves 1 to N-1:
```
Wave 1: task-001, task-002 (no dependencies, run in parallel)
Wave 2: task-003 (depends on task-001, task-002)
Wave 3: task-004 (depends on task-003)
```
### deps vs blocks
- `deps`: Tasks that MUST complete before this task starts
- `blocks`: Tasks that CANNOT start until this task completes
Both express the same relationship from different perspectives:
```yaml
# task-001
blocks: [task-003]
# task-003
deps: [task-001]
```
## Requirements Section
Clear, actionable requirements:
```markdown
## Requirements
- Implement `User` model with fields: `email`, `username`, `password`, `is_active`
- Create `UserSerializer` with all User fields (hide password)
- Implement `UserViewSet` with: list, retrieve, create, update
- Add email validation and uniqueness constraint
- Test coverage: minimum 85%
```
## Checklist Section
Verification criteria:
```markdown
## Checklist
- [ ] Model matches DTO in contracts/types.py
- [ ] API matches schema in contracts/api-schema.yaml
- [ ] pytest apps/users/ passes
- [ ] mypy apps/users/ --strict passes
- [ ] Coverage >= 85%
- [ ] No files modified outside scope
```
## Why Compact Format?
1. **Token efficiency**: Less tokens for agent context
2. **Faster parsing**: YAML frontmatter is standard
3. **Clear boundaries**: Scope section is scannable
4. **Actionable checklist**: Verification is explicit
## Validation Rules
Before using tasks:
- [ ] Every task has unique `id`
- [ ] Every task has `agent` assigned
- [ ] Every task has `skills` list (from agent-skills-mapping.yaml)
- [ ] Every task has `contracts` referenced
- [ ] Every task has BOUNDARY section
- [ ] No circular dependencies in `deps`
- [ ] Wave numbers are sequential (1, 2, 3...)
- [ ] Wave 1 tasks have `deps: []`
## Output Format
The Output Format JSON block is **not included in task files or generated prompts**. It's managed via system prompt by the external execution tool (`cpo` orchestrator).
This ensures consistent JSON output format across all agents without duplicating the schema in every prompt.Related Skills
parallel-ready-django
Audit and prepare a Django codebase for parallel multi-agent development. Use when asked to check if a Django project is ready for parallelization, prepare a repo for multi-agent work, audit codebase structure, set up orchestration infrastructure, or identify blockers for parallel development. Analyzes Django apps, models, migrations, and module boundaries.
parallel-fix-django
Fix Django-specific blockers identified in parallelization readiness assessment
task-orchestration
Documentation-first task execution with quality checks and progress tracking. Use when working with task lists, implementing features, or executing multi-step work to ensure systematic completion with proper documentation review.
task-list
List tasks by directory with progress and visual indicators
task-focus
Focus on a specific task with context loading
parallel-validate-prompts
Validate and fix parallel prompts for required sections
parallel-setup
One-time setup of parallel/ directory for multi-agent development
parallel-run
Orchestrate parallel agent execution with git worktrees
parallel-prompt-generator
Generate agent-ready prompts from existing task specification files. Use when regenerating prompts after editing tasks, updating prompt templates, or preparing tasks for cpo execution.
parallel-integrate
Verify integration after parallel agent execution and generate report
parallel-execution
Execute multiple Claude Code agents in parallel using the cpo CLI tool. Use when running parallel tasks, monitoring execution, or understanding the execution workflow.
parallel-decompose
Decompose PRDs and Tech Specs into parallel-executable tasks with contracts, prompts, and dependency graphs. Use when breaking down a PRD for multi-agent execution.