.claude/skills/pm-done/SKILL.md
Mark tasks, issues, or feature requests as completed and report cascading state changes. Automatically completes linked entities when a work package auto-completes.
npx skillsauth add pinkroosterai/PinkRoosterMcp pm-doneInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Mark entities as completed and report all cascading state changes. Automatically propagate completion to linked entities without asking.
Parse $ARGUMENTS to detect the mode:
Detect entity type from ID format:
proj-N-wp-N-task-N → Taskproj-N-issue-N → Issueproj-N-fr-N → Feature Requestproj-N-wp-N → Work Package (used with "all" mode)mcp__pinkrooster__create_or_update_task with:
taskId: the provided task IDstate: CompletedstateChanges from the responsemcp__pinkrooster__create_or_update_issue with:
projectId: extracted from the issue IDissueId: the provided issue IDstate: CompletedNote: Do NOT prompt about missing rootCause/resolution. The user can add those separately before calling /pm-done. Only ask if the user explicitly requests help documenting the fix.
mcp__pinkrooster__create_or_update_feature_request with:
projectId: extracted from the FR IDfeatureRequestId: the provided FR IDstatus: Completed-task-N)mcp__pinkrooster__batch_update_task_states with:
workPackageId: extracted WP IDtasks: array of { taskId, state: "Completed" } for each provided task IDstateChangesmcp__pinkrooster__get_work_package_details with the WP IDAskUserQuestion tool:
[{label: "Complete all", description: "Mark all {N} non-terminal tasks as Completed"}, {label: "Cancel", description: "Do not complete any tasks"}]mcp__pinkrooster__batch_update_task_states with all task IDsstateChangesThis runs automatically after any task or batch completion that produces a WP auto-complete cascade. No user confirmation needed — the WP completing means the work is done.
stateChanges for any entry where entityType is WorkPackage and newState is Completedmcp__pinkrooster__get_work_package_details with the WP ID to get linkedIssueIds and linkedFeatureRequestIds
b. For each issue ID in linkedIssueIds: Call mcp__pinkrooster__get_issue_details with the issue ID
mcp__pinkrooster__create_or_update_issue with projectId, issueId, and state: "Completed"linkedFeatureRequestIds: Call mcp__pinkrooster__get_feature_request_details with the FR IDmcp__pinkrooster__create_or_update_feature_request with projectId, featureRequestId, and status: "Completed"This is the most important output. Format cascades clearly:
## Completed
- {entityId} "{name}" -> Completed
## Cascading State Changes
(If stateChanges array is present and non-empty)
- **Phase auto-complete**: {phaseId} "{name}" -> Completed
(all tasks in phase reached terminal state)
- **WP auto-complete**: {wpId} "{name}" -> Completed
(all phases reached terminal state)
- **Auto-unblock**: {entityId} "{name}" -> {newState}
(blocker {blockerId} completed, restored from Blocked)
## Linked Entity Updates
(If any linked issues/FRs were auto-completed)
- **Issue auto-complete**: {issueId} "{name}" -> Completed
(linked WP {wpId} completed)
- **FR auto-complete**: {frId} "{name}" -> Completed
(linked WP {wpId} completed)
If no cascading changes occurred, show: "No cascading state changes."
Choose the most relevant suggestions based on what happened:
/pm-verify {phaseId or wpId} — then re-run /pm-done"/pm-implement {entityId}" or "Pick up next priority: /pm-next"/pm-next" or "Check progress: /pm-status"/pm-housekeeping to remove them."/pm-implement {wpId}"/pm-next" or "Check progress: /pm-status"tools
Verify acceptance criteria for a phase or entire work package. Runs verification based on each criterion's method (AutomatedTest, Manual, AgentReview) and records results via the MCP tool.
development
Diagnose the root cause of a bug, error, crash, or unexpected behavior. Traces through code, logs, services, database state, and git history to find why something is broken. Researches error messages online for known issues. Produces a diagnosis with evidence and suggested fix. Use when the user reports a problem, error message, stack trace, test failure, or says things like "why is this happening", "this is broken", "I'm getting an error", "something's wrong with...", "debug this", or "figure out why...".
development
Review and prioritize open issues and feature requests. Analyzes severity, age, and codebase impact to recommend priority adjustments and next steps.
tools
Show project status dashboard with issue/FR/WP counts, active items, blocked items, and priority next actions. Use when the user asks about project status, progress, what's happening, what needs attention, or what to work on.