mit einem Klick
dex-plan
// Create dex task from markdown planning documents (plans, specs, design docs, roadmaps)
// Create dex task from markdown planning documents (plans, specs, design docs, roadmaps)
| name | dex-plan |
| description | Create dex task from markdown planning documents (plans, specs, design docs, roadmaps) |
Use dex directly for all commands:
dex <command>
If dex is not on PATH, use npx @zeeg/dex <command> instead. Check once at the start:
command -v dex &>/dev/null && echo "use: dex" || echo "use: npx @zeeg/dex"
Use /dex-plan to convert any markdown planning document into a trackable dex task.
Any markdown file containing planning or design content:
~/.claude/plans/*.md)SPEC.md, REQUIREMENTS.md)DESIGN.md, ARCHITECTURE.md)ROADMAP.md)/dex-plan <markdown-file-path>
From plan mode:
/dex-plan /home/user/.claude/plans/moonlit-brewing-lynx.md
From specification document:
/dex-plan @SPEC.md
From design document:
/dex-plan docs/AUTHENTICATION_DESIGN.md
From roadmap:
/dex-plan ROADMAP.md
# heading (or uses filename as fallback)From plan mode file:
# Plan: Add JWT Authentication
## Summary
...
→ Task description: "Add JWT Authentication" (note: "Plan: " prefix stripped)
From specification document:
# User Authentication Specification
## Requirements
...
→ Task description: "User Authentication Specification"
After creating the main task, the skill analyzes the plan structure to determine if breaking it into subtasks adds value.
The skill supports up to 3 levels (maximum depth enforced by dex):
| Level | Name | Example |
|---|---|---|
| L0 | Epic | "Add user authentication system" |
| L1 | Task | "Implement JWT middleware" |
| L2 | Subtask | "Add token verification function" |
The skill creates subtasks when the plan has:
Epic-level breakdown (creates tasks, not subtasks) when:
The skill keeps a single task when:
When breakdown occurs, each subtask includes:
--parentInput plan (auth-plan.md):
# Plan: Add Authentication System
## Implementation
1. Create database schema for users/tokens
2. Implement auth controller with endpoints
3. Add JWT middleware for route protection
4. Build frontend login/register forms
5. Add integration tests
Output:
Created task abc123 from plan
Analyzed plan structure: Found 5 distinct implementation steps
Created 5 subtasks:
- abc124: Create database schema for users/tokens
- abc125: Implement auth controller with endpoints
- abc126: Add JWT middleware for route protection
- abc127: Build frontend login/register forms
- abc128: Add integration tests
View full structure: dex show abc123
Input plan (bugfix-plan.md):
# Plan: Fix Login Validation Bug
## Problem
Login fails when username has spaces
## Solution
Update validation regex in auth.ts line 42 to allow spaces
Output:
Created task xyz789 from plan
Plan describes a cohesive single task. No subtask breakdown needed.
View task: dex show xyz789
Input plan (full-auth-plan.md):
# Plan: Complete User Authentication System
## Phase 1: Backend Infrastructure
1. Create database schema for users and sessions
2. Implement password hashing with bcrypt
3. Add JWT token generation and validation
## Phase 2: API Endpoints
1. POST /auth/register - User registration
2. POST /auth/login - User login
3. POST /auth/logout - Session invalidation
4. POST /auth/reset-password - Password reset flow
## Phase 3: Frontend Integration
1. Login/register forms with validation
2. Protected route components
3. Session persistence with refresh tokens
Output:
Created epic abc123 from plan
Analyzed plan structure: Found 3 major phases with sub-items
Created as epic with 3 tasks:
- def456: Backend Infrastructure (3 subtasks)
- ghi789: API Endpoints (4 subtasks)
- jkl012: Frontend Integration (3 subtasks)
View full structure: dex list abc123
/dex-plan <file> --priority 2 # Set priority
/dex-plan <file> --parent abc123 # Create as subtask
Once created, you can:
dex show <task-id>dex create "..." --parent <task-id> --description "..."dex complete <task-id> --result "..."Run dex show <task-id> to see the full task structure including any automatically created subtasks.
These instructions are for the skill agent executing /dex-plan. Follow this workflow exactly:
Execute the dex plan command with the provided markdown file:
dex plan <markdown-file> [options]
This creates the parent task and returns its ID. Capture this ID for subsequent steps.
After creating the main task, read it back to analyze its structure:
dex show <task-id>
Examine the context field (which contains the full markdown) for breakdown potential.
Analyze the plan structure and decide: Should this be broken down into subtasks?
Numbered or bulleted implementation lists (3-7 items):
## Implementation
1. Create database schema → SUBTASK
2. Build API endpoints → SUBTASK
3. Add frontend components → SUBTASK
Clear subsections under implementation/tasks/steps:
### 1. Backend Changes
- Modify server.ts
- Add authentication
→ SUBTASK: "Backend Changes" with this context
### 2. Frontend Updates
- Update login form
- Add error handling
→ SUBTASK: "Frontend Updates" with this context
File-specific sections:
### `src/auth.ts` - Add JWT validation
[Details about changes]
→ SUBTASK: "Add JWT validation to auth.ts"
### `src/middleware.ts` - Create auth middleware
[Details about changes]
→ SUBTASK: "Create auth middleware"
Sequential phases:
## Implementation Sequence
**Phase 1: Database Layer**
[Details] → SUBTASK
**Phase 2: API Layer**
[Details] → SUBTASK
**Phase 3: Frontend Layer**
[Details] → SUBTASK
For each identified subtask:
Extract description: Use the list item text, heading, or section title
Extract context: Include relevant details from that section
Create the subtask:
dex create "<subtask-description>" \
--parent <parent-task-id> \
--description "<extracted-context-with-parent-reference>"
If subtasks were created:
Created task <id> from plan
Analyzed plan structure: Found <N> distinct implementation steps
Created <N> subtasks:
- <subtask-id-1>: <description-1>
- <subtask-id-2>: <description-2>
- <subtask-id-3>: <description-3>
...
View full structure: dex show <parent-id>
If no breakdown occurred:
Created task <id> from plan
Plan describes a cohesive single task. No subtask breakdown needed.
View task: dex show <id>
Example 1: Numbered list
## Implementation Steps
1. Create User model with email, password fields
2. Add POST /api/auth/register endpoint
3. Implement JWT token generation
Extracted subtasks:
dex create "Create User model with email, password fields" \
--parent abc123 \
--description "Create a User model with email and password fields. This is part of 'Add Authentication System'."
dex create "Add POST /api/auth/register endpoint" \
--parent abc123 \
--description "Add POST /api/auth/register endpoint to handle user registration. This is part of 'Add Authentication System'."
dex create "Implement JWT token generation" \
--parent abc123 \
--description "Implement JWT token generation for authenticated sessions. This is part of 'Add Authentication System'."
Example 2: Subsections with details
### Frontend: Login Form Component
Create a new React component at `src/components/LoginForm.tsx`:
- Email and password inputs
- Submit button with loading state
- Error message display
- Validation on submit
### Backend: Auth Routes
Add to `src/routes/auth.ts`:
- POST /login endpoint
- Password verification using bcrypt
- JWT token generation on success
Extracted subtasks:
dex create "Frontend: Login Form Component" \
--parent abc123 \
--description "Create a new React component at src/components/LoginForm.tsx with email/password inputs, submit button with loading state, error message display, and validation on submit. This is part of 'Add Authentication System'."
dex create "Backend: Auth Routes" \
--parent abc123 \
--description "Add to src/routes/auth.ts: POST /login endpoint, password verification using bcrypt, JWT token generation on success. This is part of 'Add Authentication System'."
Example 3: Should NOT break down
# Plan: Fix Typo in Error Message
## Problem
Error message says 'Sucessful' instead of 'Successful'
## Solution
Fix typo in src/messages.ts line 42
Decision: Single cohesive task, only one change. Do NOT create subtasks.