一键导入
convert
Convert tasks.md to prd.json with smart routing classification. Use after creating tasks. Triggers on: convert to prd, generate prd.json, convert tasks.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Convert tasks.md to prd.json with smart routing classification. Use after creating tasks. Triggers on: convert to prd, generate prd.json, convert tasks.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Generate quality validation checklist from spec, plan, and tasks. Use after creating tasks. Triggers on: create checklist, quality checklist, validation checklist.
Create or update the project constitution - personalized governance and coding principles. Use when starting a project or updating project standards. Triggers on: create constitution, update principles, set project rules.
Distill learnings from completed features and propose amendments to constitution.md or prompt.md. Use after feature completion. Triggers on: capture learnings, learn from feature, distill learnings, relentless learn.
Generate technical implementation plan from feature specification. Use after creating spec. Triggers on: create plan, technical plan, implementation design.
Create feature specification from natural language description. Use when starting a new feature or creating a spec. Triggers on: create spec, specify feature, new feature spec.
Generate dependency-ordered user stories and tasks from plan. Use after creating plan. Triggers on: create tasks, generate user stories, break down implementation.
| name | convert |
| description | Convert tasks.md to prd.json with smart routing classification. Use after creating tasks. Triggers on: convert to prd, generate prd.json, convert tasks. |
Convert user stories from tasks.md into prd.json format WITH automatic routing classification.
Note: This command is typically auto-run by the
/relentless.tasksskill. Manual execution is only needed if you edittasks.mdby hand after generation.
⚠️ CRITICAL: This skill requires executing the relentless convert CLI command. Do NOT generate prd.json manually!
relentless convert relentless/features/NNN-feature/tasks.md --feature <feature-name>Routing is the core value of Relentless:
Without routing, you lose the intelligent cost optimization that makes Relentless valuable.
Look in relentless/features/ for the most recent feature:
ls -la relentless/features/
Verify:
If tasks.md doesn't exist, suggest running /relentless.tasks first.
The CLI now automatically validates tasks.md before conversion. You can also validate manually:
relentless validate relentless/features/NNN-feature/tasks.md
The validator checks for:
The following criteria are automatically filtered during conversion:
`src/file.ts` → Add context: "src/file.ts contains X"**Files:** → Move outside acceptance criteria section### US-001: Create User Registration
**Description:** As a new user, I want to register so I can access the app.
**Acceptance Criteria:**
- [ ] POST /api/register endpoint exists
- [ ] Email validation works
- [ ] Password is hashed
- [ ] `src/auth/register.ts` contains the registration handler
- [ ] Unit tests pass
- [ ] Integration test passes
**Dependencies:** None
**Phase:** Foundation
**Priority:** 1
Validating tasks.md...
⚠️ 2 validation warning(s):
[FILTERED_CRITERIA]
2 acceptance criteria will be filtered during conversion
📝 2 criteria will be filtered during conversion
US-003: "`src/queue/types.ts`"
US-004: "**"
⚠️ IMPORTANT: Execute this bash command using the Bash tool. Do NOT generate prd.json manually!
relentless convert relentless/features/NNN-feature/tasks.md --feature <feature-name>
Replace NNN-feature with the actual feature directory name (e.g., 001-user-auth).
| Flag | Description |
|---|---|
--mode <mode> | Routing mode: free, cheap, good (default), genius |
--skip-routing | Skip routing (NOT recommended) |
--auto-number | Auto-number feature directory |
--with-checklist | Merge checklist criteria |
Converting tasks.md...
Classifying 6 stories for routing (mode: good)...
US-001: simple -> claude/haiku-4.5 ($0.0012)
US-002: medium -> claude/sonnet-4.5 ($0.0034)
US-003: complex -> claude/opus-4.5 ($0.0156)
US-004: simple -> claude/haiku-4.5 ($0.0010)
US-005: medium -> claude/sonnet-4.5 ($0.0028)
US-006: expert -> claude/opus-4.5 ($0.0234)
Total estimated cost: $0.0474
Created relentless/features/NNN-feature/
prd.json - 6 stories
Routing metadata included
prd.md - from tasks.md
progress.txt - progress log
After conversion, verify the prd.json has routing metadata:
cat relentless/features/<feature>/prd.json | jq '.userStories[0].routing'
{
"complexity": "simple",
"harness": "claude",
"model": "haiku-4.5",
"mode": "good",
"estimatedCost": 0.0012,
"classificationReasoning": "Task classified as simple (confidence: 85%)..."
}
CRITICAL: If routing is missing, the conversion was run with --skip-routing. Re-run without that flag.
After successful conversion, provide this summary:
## Conversion Complete
**Feature:** NNN-feature-name
**Stories:** 6 total
### Routing Summary
| Story | Complexity | Harness/Model | Est. Cost |
|--------|------------|----------------------|-----------|
| US-001 | simple | claude/haiku-4.5 | $0.0012 |
| US-002 | medium | claude/sonnet-4.5 | $0.0034 |
| US-003 | complex | claude/opus-4.5 | $0.0156 |
| US-004 | simple | claude/haiku-4.5 | $0.0010 |
| US-005 | medium | claude/sonnet-4.5 | $0.0028 |
| US-006 | expert | claude/opus-4.5 | $0.0234 |
**Total Estimated Cost:** $0.0474
### Files Created
- `relentless/features/<feature>/prd.json` - PRD with routing
- `relentless/features/<feature>/prd.md` - Copy of tasks.md
### Next Steps
1. Review routing decisions (adjust mode if needed)
2. Run `/relentless.analyze` to check consistency
3. Run `relentless run --feature <name> --mode good`
The classifier determines complexity based on:
| Complexity | Indicators | Example |
|---|---|---|
| simple | Basic CRUD, single file, straightforward | "Add logging to function" |
| medium | Multiple files, some logic | "Create REST endpoint with validation" |
| complex | Architecture changes, multiple systems | "Implement OAuth2 authentication" |
| expert | Novel solutions, deep expertise | "Design event sourcing system" |
| Mode | Simple | Medium | Complex | Expert |
|---|---|---|---|---|
| free | glm-4.7 | glm-4.7 | grok-code-fast-1 | grok-code-fast-1 |
| cheap | haiku-4.5 | gemini-flash | gpt-5.2-low | gpt-5.2-low |
| good | sonnet-4.5 | sonnet-4.5 | opus-4.5 | opus-4.5 |
| genius | opus-4.5 | opus-4.5 | opus-4.5 | opus-4.5 |
Run /relentless.tasks first to generate tasks.md from spec.md and plan.md.
The conversion was run with --skip-routing. Re-run:
relentless convert relentless/features/<feature>/tasks.md --feature <feature-name>
The tasks.md has format issues. Run validation to see details:
relentless validate relentless/features/<feature>/tasks.md
Common issues:
Some acceptance criteria don't meet format requirements. Fix by:
`src/file.ts` → "src/file.ts contains X"A story references a non-existent story ID. Check the Dependencies: line.
Stories reference each other in a cycle. Example: US-001 depends on US-002, and US-002 depends on US-001.
Use dashes in story IDs: US-001 not US_001.
--mode free for testing/experimentation--mode good (default) for production work--mode genius for critical/complex features