52 lines
2.0 KiB
Markdown
52 lines
2.0 KiB
Markdown
---
|
|
name: verify-plan
|
|
description: |
|
|
Verify an existing plan by delegating to the oracle subagent. The oracle checks
|
|
guideline conformance, flaws, errors, and optimization opportunities. The skill
|
|
synthesizes oracle feedback into an amended plan with severity annotations, or
|
|
flags blockers and asks the user how to proceed. Use when a plan exists and needs
|
|
validation before implementation.
|
|
user-invocable: true
|
|
---
|
|
|
|
# verify-plan
|
|
|
|
1. **Determine plan source**
|
|
- If the user provided a filename, read that file.
|
|
- Otherwise, use the current session direction / decisions as the plan.
|
|
|
|
2. **Delegate to oracle**
|
|
Launch `oracle` with forked context and a verification task:
|
|
- Identify guideline violations (if project/user guidelines exist).
|
|
- Flag flaws or errors in the plan.
|
|
- Suggest more optimal approaches that do not sacrifice clarity/simplicity.
|
|
- Return findings in structured markdown with these fixed headings:
|
|
- `## Blockers`
|
|
- `## Warnings`
|
|
- `## Optimizations`
|
|
- `## Guideline Violations`
|
|
- Under each heading, use this per-item format:
|
|
```
|
|
- **Plan item**: <what the plan says>
|
|
- **Finding**: <what is wrong or suboptimal>
|
|
- **Suggestion**: <how to fix or improve>
|
|
```
|
|
|
|
3. **Synthesize results**
|
|
- If any `## Blockers` exist:
|
|
- Present each blocker clearly.
|
|
- Ask the user how to proceed before continuing.
|
|
- Else if any other findings exist:
|
|
- Re-present the plan inline.
|
|
- Annotate each affected item with its severity:
|
|
- `⚠️ WARNING — <description>` for warnings.
|
|
- `💡 OPTIMIZATION — <description>` for optimizations.
|
|
- `📋 GUIDELINE — <description>` for guideline violations.
|
|
- Else (no findings at all):
|
|
- Reply: "Plan was verified and no problems were found."
|
|
|
|
4. **Constraints**
|
|
- Do not save the amended plan to a file.
|
|
- Do not modify the original plan file without user approval.
|
|
- Blockers require explicit user direction before proceeding.
|