Project Management
This skill manages project tasks and documentation for AI-driven development. Work is tracked in:
docs/changes/NNNN-name.md— Feature-level task lists tied to specific change documentsdocs/tasks.md— Catch-all task list for work not tied to a specific change- External tools — GitHub Issues or Jira when configured in the project's CLAUDE.md
Core Principles
- Changes are primary — Most feature work SHOULD be tracked in
docs/changes/documents, not indocs/tasks.md. Change documents are what/teamand/devconsume. - NEVER duplicate tasks — Tasks that exist in a
docs/changes/document MUST NOT be copied, summarized, or mirrored intodocs/tasks.md. Each task lives in exactly one place.docs/tasks.mdis ONLY for orphan work not tied to any change document. - One task = one PR — Every top-level task represents work that results in a single pull request.
- Smaller PRs are better — Prefer many focused PRs over few large ones.
- Clarify before acting — Use AskUserQuestion to resolve ambiguity.
- Research first — Understand requirements before planning.
When This Skill Triggers
CRITICAL: Load this skill BEFORE reading, modifying, or editing docs/tasks.md or task lists in docs/changes/. Do not use Read/Edit tools on these files without loading this skill first.
Load this skill IMMEDIATELY when:
- About to modify
docs/tasks.mdor## Tasksindocs/changes/files - Mentions tasks.md, changes/, "the task file", "task list"
- Says: "add a task", "new task", "track this"
- Says: "mark as done", "mark complete", "check off", "finished this"
- Says: "next task", "what's next", "work on next"
- Discusses tasks, features, or project tracking
- Asks to create tickets, issues, or feature documentation
- Says "add a feature that does X" or "improve X to allow Y"
- Asks to plan, break down, or organize work
Task Source Priority
When looking for tasks, adding tasks, or marking completion, follow this strict priority:
- Check
docs/changes/FIRST — Scan change documents for uncompleted- [ ]tasks. These are the primary work items. If work relates to an existing spec or change document, tasks MUST go here. - Check
docs/tasks.mdONLY for orphan work — Tasks that do not relate to any spec or change document. Before adding a task here, verify no relevant change document exists. If a relevant spec exists, create a change document for the work instead. - Check external tools — If CLAUDE.md specifies GitHub Issues or Jira preference.
Strong default to change documents: When the user asks to add or track work that relates to any existing spec in docs/specs/, ALWAYS create or find a change document for it. NEVER put spec-related work in docs/tasks.md. If no change document exists yet, propose creating one.
External Task Tracking
Projects MAY define a preference for external task tracking in their CLAUDE.md. Look for patterns like:
task-tracking: github-issuestask-tracking: jira- "Use GitHub Issues for task tracking"
- "Track tasks in Jira project X"
When external tracking is configured:
- Load the GitHub skill (
Skill tool: skill="fx-dev:github") if using GitHub - Create issues/tickets in the external tool
- Keep
docs/tasks.mdas a lightweight reference linking to external items - Mark completion in BOTH the external tool and
docs/tasks.mdor change documents
When no external tracking is configured:
Default to docs/tasks.md and docs/changes/ task lists.
Available Skills (for Sub-Agents)
Research Skills
fx-research:tech-scout— Research libraries, technologies, solutionsExplore— Explore codebase structure, patterns, implementations (built-in subagent type)Plan— Design implementation plans (built-in subagent type)
Development Skills
fx-dev:coder— Implement features, fix bugsfx-dev:planner— Create detailed implementation plansfx-dev:pr-preparer— Prepare and create pull requestsfx-dev:dev— Orchestrate complete SDLC workflow
Workflows
Workflow 1: Feature Requests
When user says "add a feature that does X" or "improve X to allow Y":
- Analyze deeply using Explore and tech-scout sub-agents
- Check if a relevant spec exists in
docs/specs/ - Determine scope — Single PR? Multiple PRs? Needs a change document?
- If multi-PR: Invoke
/spec-writerto create or update the spec and propose change documents - If single PR: Add to
docs/tasks.mdand proceed to implementation - Get approval then begin work
Workflow 2: "Work on Next"
When user says "work on next", "next task", "what's next":
- Scan
docs/changes/for change documents with statusin-progressordraftthat have uncompleted tasks - Scan
docs/tasks.mdfor uncompleted items (top = highest priority) - Check external tools if configured
- Select next uncompleted task — prioritize in-progress changes over new work
- Announce the task to user
- Execute using development sub-agents
- Mark task complete with PR number in the file where it lives
- Ensure PR includes the task-list update
Workflow 3: Break Down Tasks for a Change Document
When instructed to break down tasks for a change document or spec:
- Read the document to understand scope and design
- Explore the codebase to understand what needs to change
- Write tasks as nested markdown checkboxes in the
## Taskssection:## Tasks - [ ] Task one — brief description - [ ] Subtask if needed - [ ] Task two — brief description - Scope each top-level task to one PR
- Be specific — include file paths, function names, test requirements
- Do not duplicate — if another change document already tracks related work, reference it
Workflow 4: Initial Setup
When docs/tasks.md doesn't exist:
- Invoke the setup skill:
Skill tool: skill="fx-dev:setup" - Ask about tracking preferences via AskUserQuestion:
- "Use docs/tasks.md + docs/changes/ (default)"
- "Use GitHub Issues + docs/changes/"
- "Other (Jira, Linear, etc.)"
- Migrate existing tracking (PROJECT.md, TODO.md, STATUS.md) if present
Workflow 5: Update Indexes
After any task modification (creation, completion, status change), update the documentation indexes:
- Update
docs/index.yml— Update the status field for any affected change documents - Update
docs/index.md— Update the status in the table
Pre-Flight: Run Setup
Every time this skill is invoked, run the setup skill first to ensure docs structure and instruction files are in place:
Skill tool: skill="fx-dev:setup"
This is fast and idempotent — it checks what exists and only creates/modifies what's missing. It handles:
docs/folder structure (specs/, changes/, tasks.md, index.yml, index.md)CLAUDE.mdtask-tracking instructions.github/copilot-instructions.mdPR review instructions
Critical Requirements
Every Task Completion MUST:
- Mark task complete in the file where the task lives:
- [x] Task (PR #N) - Task lists may be in
docs/tasks.mdOR indocs/changes/*.mdfiles - Include the task-list update in the PR
Before Creating Tasks:
- Verify task is atomic (single PR scope)
- Ensure description is clear and actionable
- Prefer placing tasks in change documents over
docs/tasks.md - Check if a change document already tracks this work — if so, add the task there, NEVER in
docs/tasks.md
When Ambiguity Exists:
- ALWAYS use AskUserQuestion to clarify
- Present concrete options
- Wait for user decision before proceeding
Converted and distributed by TomeVault — claim your Tome and manage your conversions.