Comprehensive developer toolkit providing reusable skills for Java/Spring Boot, TypeScript/NestJS/React/Next.js, Python, PHP, AWS CloudFormation, AI/RAG, DevOps, and more.
90
90%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Risky
Do not use without reviewing
Manages tasks after task generation. Use when you need to add, split, update, or modify tasks in an existing specification.
This command provides task management capabilities after initial task generation by devkit.spec-to-tasks.
Supported Actions:
add - Add a new task to the specificationsplit - Split a complex task into smaller subtasksmark-optional - Mark a task as optionalmark-required - Mark a task as requiredupdate - Update task detailsregenerate-index - Regenerate the task indexlist - List all tasks with complexity# Add a new task
/specs:task-manage --action=add --spec=docs/specs/001-feature/ --lang=spring
# Split a complex task
/specs:task-manage --action=split --task=docs/specs/001-feature/tasks/TASK-007.md
# Mark task as optional/required
/specs:task-manage --action=mark-optional --task=docs/specs/001-feature/tasks/TASK-003.md
/specs:task-manage --action=mark-required --task=docs/specs/001-feature/tasks/TASK-003.md
# Update task details
/specs:task-manage --action=update --task=docs/specs/001-feature/tasks/TASK-005.md
# Regenerate task index
/specs:task-manage --action=regenerate-index --spec=docs/specs/001-feature/
# List all tasks
/specs:task-manage --action=list --spec=docs/specs/001-feature/| Argument | Required | Description |
|---|---|---|
--action | Yes | The management action to perform |
--task | Conditional | Path to task file (required for task-specific actions) |
--spec | Conditional | Path to spec folder (required for add, regenerate-index, list) |
--lang | No | Language/framework hint for new tasks |
You are managing existing task files. Follow the appropriate process based on the requested action.
IMPORTANT: When suggesting how to implement a task, ALWAYS use
/specs:task-implementation, NEVER use/developer-kit:devkit.feature-development. The correct command is:/specs:task-implementation --lang=[lang] --task="[task-file-path]"
Adds a new task to an existing specification.
Parse $ARGUMENTS to extract:
--spec parameter (spec folder path)--lang parameter (optional language hint)Read the existing task index (YYYY-MM-DD--feature-name--tasks.md)
Determine the next task ID (e.g., if last is TASK-007, next is TASK-008)
Ask the user for:
Create the new task file following the standard task format
Validate dependencies before saving:
Update the task index to include the new task
Update the traceability matrix if requirements are affected
Choose the appropriate template based on task complexity:
Use this template for straightforward tasks with clear scope.
---
id: "TASK-XXX"
title: "[Task Title]"
status: "pending" # pending | in-progress | completed | superseded | optional
description: "[What this task implements]"
acceptance_criteria:
- "[Criterion 1]"
- "[Criterion 2]"
definition_of_ready:
- "[Precondition 1]"
- "[Precondition 2]"
definition_of_done:
- "[Completion condition 1]"
- "[Completion condition 2]"
dependencies: []
# - "TASK-YYY" # if depends on other tasks
files_to_create:
- "[file path]"
files_to_modify:
- "[file path]"
implementation_command: "/specs:task-implementation --lang=[lang] --task=\"docs/specs/[id]/tasks/TASK-XXX.md\""
---
# TASK-XXX: [Task Title]
**Description**: [Functional description]
**Complexity**: [Score]/100 - [Simple/Moderate/Complex]
## Acceptance Criteria
- [ ] [Criterion 1]
- [ ] [Criterion 2]
## Definition of Ready (DoR)
- [ ] [Precondition 1]
- [ ] [Precondition 2]
## Definition of Done (DoD)
- [ ] [Completion condition 1]
- [ ] [Completion condition 2]
## Files
**To Create**:
- `[file path]`
**To Modify**:
- `[file path]`
**Implementation Command**:
/specs:task-implementation --lang=[lang] --task="docs/specs/[id]/tasks/TASK-XXX.md"Use this template for complex tasks that need business context, data contracts, observability, and complexity tracking.
---
id: "TASK-XXX"
title: "[Task Title]"
status: "pending" # pending | in-progress | completed | superseded | optional
description: "[What this task implements]"
acceptance_criteria:
- "[Criterion 1]"
- "[Criterion 2]"
definition_of_ready:
- "[Precondition 1]"
- "[Precondition 2]"
definition_of_done:
- "[Completion condition 1]"
- "[Completion condition 2]"
dependencies: []
# - "TASK-YYY" # if depends on other tasks
files_to_create:
- "[file path]"
files_to_modify:
- "[file path]"
implementation_command: "/specs:task-implementation --lang=[lang] --task=\"docs/specs/[id]/tasks/TASK-XXX.md\""
business_goals:
- "[Business goal this task serves]"
data_contracts:
input:
- "[Input data contract]"
output:
- "[Output data contract]"
external_dependencies:
- "[External system/dependency]"
observability:
logging:
- "[Log point 1]"
- "[Log point 2]"
metrics:
- "[Metric 1]"
- "[Metric 2]"
security:
- "[Security consideration 1]"
- "[Security consideration 2]"
complexity:
score: 0
files: 0
acceptance_criteria: 0
independent_components: 0
design_decisions: 0
integration_points: 0
external_dependencies: 0
parent_task: null
supersedes: []
notes:
- "[Note]"
context_hash: "[SHA-256 hash for change detection]"
---
# TASK-XXX: [Task Title]
**Description**: [Functional description]
**Complexity**: [Score]/100 - [Simple/Moderate/Complex]
## Context Linkage
**Business Goal**: [Goal ID] - [Goal description]
**Data Contract**:
- Input: [Input contract reference]
- Output: [Output contract reference]
**External Dependencies**: [List or "None"]
## Implementation Notes
- [Technical constraint or guidance]
- [Integration point]
## Acceptance Criteria
- [ ] [Criterion 1]
- [ ] [Criterion 2]
## Definition of Ready (DoR)
- [ ] [Precondition 1]
- [ ] [Precondition 2]
## Definition of Done (DoD)
- [ ] [Completion condition 1]
- [ ] [Completion condition 2]
## Files
**To Create**:
- `[file path]`
**To Modify**:
- `[file path]`
## Observability
**Logging**:
- [Log point]
**Metrics**:
- [Metric]
**Security**:
- [Security consideration]
**Implementation Command**:
/specs:task-implementation --lang=[lang] --task="docs/specs/[id]/tasks/TASK-XXX.md"The context_hash field is used for change detection. Generate SHA-256 hash of: task title + description + acceptance_criteria + definition_of_ready + definition_of_done + files_to_create + files_to_modify.
Regenerate whenever these fields change to detect task drift.
Splits a complex task into smaller, more manageable subtasks.
Read the task file to be split
Analyze the task complexity:
Propose a split strategy to the user:
Get user confirmation on the split strategy
Create subtask files:
Mark original task as superseded:
status: supersededsuperseded status is automatically tracked by hookssupersedes reference to new subtasks in the frontmatterUpdate task index with new structure
Update traceability matrix
When splitting tasks, child tasks inherit context from parent:
# Parent task context (preserved)
business_goals:
- "[Inherited from parent]"
data_contracts:
# Inherited but can be refined
input:
- "[Subset relevant to child]"
output:
- "[Subset relevant to child]"
external_dependencies:
# Assign only pertinent dependencies to each child
- "[Relevant dependency]"
observability:
# Inherited framework, refined specifics
logging:
- "[Relevant log points]"
metrics:
- "[Relevant metrics]"
security:
- "[Relevant security considerations]"
parent_task: "TASK-XXX" # Reference to parent
supersedes: [] # Child tasks don't supersedeToggles the optional status of a task.
Read the task file
Update the task frontmatter:
mark-optional: Set optional: truemark-required: Set optional: falseUpdate the task index to reflect the change
Update the traceability matrix
Updates task details.
Read the current task file
Present current values and ask what to update:
Apply the requested changes
Recalculate complexity if relevant fields changed
Update context_hash if task structure changed
Update task index
Update traceability matrix if requirements mapping changed
Recreates the task index file from existing task files.
Scan docs/specs/[id]/tasks/ directory for all TASK-XXX.md files
Read each task file and extract:
Sort tasks by ID
Generate new task index:
Write updated index file
Displays all tasks with their status and complexity.
Read the task index
Display formatted list:
Task List for [Feature Name]
============================
Simple Tasks (≤30):
✅ TASK-001: [Title] ([Status])
✅ TASK-002: [Title] ([Status])
Moderate Tasks (31-50):
⚠️ TASK-003: [Title] ([Status])
Complex Tasks (>50):
❌ TASK-004: [Title] ([Status]) - Consider splitting
Optional Tasks:
○ TASK-005: [Title] (optional)
Total: X tasks | Y simple | Z moderate | W complexWhen task details change, recalculate complexity:
COMPLEXITY SCORE =
(Files × 10) +
(Acceptance Criteria × 5) +
(Independent Components × 25) +
(Design Decisions × 10) +
(Integration Points × 15) +
(External Dependencies × 20)
Thresholds:
- 0-30: Simple
- 31-50: Moderate
- 51+: Complex (must split)Update both the score and complexity level in the task frontmatter.
When updating the task index, use this format:
# Task List: [Feature Name]
**Specification**: [Spec file path]
**Last Updated**: [Date]
## Summary
- **Total Tasks**: [N]
- **Simple (≤30)**: [N]
- **Moderate (31-50)**: [N]
- **Complex (>50)**: [N]
- **Optional Tasks**: [N]
## Tasks
| ID | Title | Status | Complexity | Optional | Dependencies |
|----|-------|--------|------------|----------|--------------|
| TASK-001 | [Title] | [Status] | [Score]/[Level] | [Yes/No] | [Deps] |
## Complexity DistributionSimple: [████░░░░░░] X tasks Moderate: [██░░░░░░░░] Y tasks Complex: [█░░░░░░░░░] Z tasks (requires splitting)
## Implementation Commands
```bash
# Task 1
/specs:task-implementation --lang=[lang] --task="docs/specs/[id]/tasks/TASK-001.md"
# Task 2
/specs:task-implementation --lang=[lang] --task="docs/specs/[id]/tasks/TASK-002.md"# Add a new task to a specification
/specs:task-manage --action=add --spec=docs/specs/001-user-auth/ --lang=spring# Split a complex task into subtasks
/specs:task-manage --action=split --task=docs/specs/001-user-auth/tasks/TASK-007.md# Mark a task as optional
/specs:task-manage --action=mark-optional --task=docs/specs/001-user-auth/tasks/TASK-003.md# Regenerate the task index file
/specs:task-manage --action=regenerate-index --spec=docs/specs/001-user-auth/# List all tasks with complexity
/specs:task-manage --action=list --spec=docs/specs/001-user-auth/For each action, maintain a todo list:
[ ] Parse arguments and validate
[ ] Read existing context (task/spec)
[ ] Perform requested action
[ ] Update affected files
[ ] Regenerate index if needed
[ ] Update traceability matrix
[ ] Confirm changes to userdocs
plugins
developer-kit-ai
developer-kit-aws
agents
docs
skills
aws
aws-cli-beast
aws-cost-optimization
aws-drawio-architecture-diagrams
aws-sam-bootstrap
aws-cloudformation
aws-cloudformation-auto-scaling
aws-cloudformation-bedrock
aws-cloudformation-cloudfront
aws-cloudformation-cloudwatch
aws-cloudformation-dynamodb
aws-cloudformation-ec2
aws-cloudformation-ecs
aws-cloudformation-elasticache
references
aws-cloudformation-iam
references
aws-cloudformation-lambda
aws-cloudformation-rds
aws-cloudformation-s3
aws-cloudformation-security
aws-cloudformation-task-ecs-deploy-gh
aws-cloudformation-vpc
references
developer-kit-core
agents
commands
skills
developer-kit-devops
developer-kit-java
agents
commands
docs
skills
aws-lambda-java-integration
aws-rds-spring-boot-integration
aws-sdk-java-v2-bedrock
aws-sdk-java-v2-core
aws-sdk-java-v2-dynamodb
aws-sdk-java-v2-kms
aws-sdk-java-v2-lambda
aws-sdk-java-v2-messaging
aws-sdk-java-v2-rds
aws-sdk-java-v2-s3
aws-sdk-java-v2-secrets-manager
clean-architecture
graalvm-native-image
langchain4j-ai-services-patterns
references
langchain4j-mcp-server-patterns
references
langchain4j-rag-implementation-patterns
references
langchain4j-spring-boot-integration
langchain4j-testing-strategies
langchain4j-tool-function-calling-patterns
langchain4j-vector-stores-configuration
references
qdrant
references
spring-ai-mcp-server-patterns
spring-boot-actuator
spring-boot-cache
spring-boot-crud-patterns
spring-boot-dependency-injection
spring-boot-event-driven-patterns
spring-boot-openapi-documentation
spring-boot-project-creator
spring-boot-resilience4j
spring-boot-rest-api-standards
spring-boot-saga-pattern
spring-boot-security-jwt
assets
references
scripts
spring-boot-test-patterns
spring-data-jpa
references
spring-data-neo4j
references
unit-test-application-events
unit-test-bean-validation
unit-test-boundary-conditions
unit-test-caching
unit-test-config-properties
references
unit-test-controller-layer
unit-test-exception-handler
references
unit-test-json-serialization
unit-test-mapper-converter
references
unit-test-parameterized
unit-test-scheduled-async
references
unit-test-service-layer
references
unit-test-utility-methods
unit-test-wiremock-rest-api
references
developer-kit-php
developer-kit-project-management
developer-kit-python
developer-kit-specs
commands
docs
hooks
test-templates
tests
skills
developer-kit-tools
developer-kit-typescript
agents
docs
hooks
rules
skills
aws-cdk
aws-lambda-typescript-integration
better-auth
clean-architecture
drizzle-orm-patterns
dynamodb-toolbox-patterns
references
nestjs
nestjs-best-practices
nestjs-code-review
nestjs-drizzle-crud-generator
nextjs-app-router
nextjs-authentication
nextjs-code-review
nextjs-data-fetching
nextjs-deployment
nextjs-performance
nx-monorepo
react-code-review
react-patterns
shadcn-ui
tailwind-css-patterns
tailwind-design-system
references
turborepo-monorepo
typescript-docs
typescript-security-review
zod-validation-utilities
references
github-spec-kit