skills/skill-workflow-creator/SKILL.md
Create multi-step workflow skills with progressive step loading, state management, and interactive decisions. Use when building complex skills like APEX that need structured phases.
npx skillsauth add devattom/.claude create-skills-workflowInstall 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.
<when_to_use> Use this skill when building:
Don't use for:
<workflow_creation_process>
<step_1_define_structure> 1.1 Identify Workflow Steps
Ask yourself:
1.2 Map Dependencies
Step 1 ──► Step 2 ──► Step 3 ──┬──► Step 4a (if condition)
└──► Step 4b (else)
1.3 Define State Variables
What data needs to persist across steps?
state_variables:
- task_description: string # What to do
- task_id: string # Unique identifier
- auto_mode: boolean # Skip confirmations
- results: object # Accumulated results
</step_1_define_structure>
<step_2_create_structure> 2.1 Create Folder Structure
skills/{skill-name}/
├── SKILL.md # Main entry point
├── steps/
│ ├── step-00-init.md # Initialization (parse flags, setup)
│ ├── step-01-{name}.md # First step
│ ├── step-02-{name}.md # Second step
│ └── ...
└── references/ # Optional: templates, patterns
└── ...
2.2 Naming Conventions
step-NN-{descriptive-name}.md</workflow_creation_process>
<templates> **Load templates from references:**<execution_flow>
Step 1: Create SKILL.md
Use this structure:
---
name: {skill-name}
description: {what it does}
argument-hint: {flags and args}
---
<objective>
{Clear goal statement}
</objective>
<parameters>
{Flags and arguments}
</parameters>
<state_variables>
{Data that persists across steps}
</state_variables>
<entry_point>
Load `steps/step-00-init.md`
</entry_point>
<step_files>
{Table of all steps}
</step_files>
Step 2: Create step-00-init.md
Always start with an init step that:
Step 3: Create Each Step File
Use the step template from references/step-template.md
Step 4: Test the Workflow
Run through the workflow to ensure:
</execution_flow>
<critical_patterns>
ALWAYS: Each step is a self-contained file with embedded rules
ALWAYS: Load one step at a time (progressive loading)
NEVER: Load all steps upfront
NEVER: Assume knowledge from future steps
Why: Saves context, disciplined execution, clear boundaries
Every step MUST start with this:
## MANDATORY EXECUTION RULES (READ FIRST):
- 🛑 NEVER {critical forbidden action}
- ✅ ALWAYS {critical required action}
- 📋 YOU ARE A {role}, not a {anti-role}
- 💬 FOCUS on {this step's scope} only
- 🚫 FORBIDDEN to {boundary violation}
## EXECUTION PROTOCOLS:
- 🎯 Show your analysis before taking any action
- 💾 Update document/frontmatter after each phase
- 📖 Complete this step fully before loading next
- 🚫 FORBIDDEN to load next step until {criteria}
## CONTEXT BOUNDARIES:
- Variables from previous steps are available in memory
- Previous context = what's in output document + frontmatter
- Don't assume knowledge from future steps
- {Resource} loaded on-demand when needed
One clear sentence describing the step's purpose:
## YOUR TASK:
Initialize the workflow by parsing flags and setting up state.
CRITICAL: NEVER use plain text "[C] Continue" prompts. ALWAYS use AskUserQuestion.
**If `{auto_mode}` = true:**
→ Use recommended option automatically
**If `{auto_mode}` = false:**
Use AskUserQuestion:
```yaml
questions:
- header: "Continue"
question: "Ready to proceed to the next step?"
options:
- label: "Continue (Recommended)"
description: "Proceed to next phase"
- label: "Review first"
description: "I want to review before continuing"
- label: "Go back"
description: "Return to previous step"
multiSelect: false
### 7. Success Metrics & Failure Modes
```markdown
## SUCCESS METRICS:
✅ {Criterion 1}
✅ {Criterion 2}
✅ Frontmatter properly updated
## FAILURE MODES:
❌ {Failure 1}
❌ {Failure 2}
❌ **CRITICAL**: Not using AskUserQuestion for user input
Track progress in document frontmatter:
---
stepsCompleted: [1, 2, 3]
task_description: "Add auth middleware"
selected_approach: "jwt"
---
Use <critical> tags for essential reminders:
<critical>
Remember: This step is ONLY about analysis - don't plan or implement!
</critical>
## NEXT STEP:
After user confirms via AskUserQuestion, load `./step-02-plan.md`
<critical>
Remember: {Important boundary reminder}
</critical>
</critical_patterns>
<common_mistakes>
❌ Loading all steps at once → Use micro-file architecture, one step at a time
❌ Plain text prompts like "[C] Continue" → ALWAYS use AskUserQuestion tool for ANY user input
❌ Missing MANDATORY EXECUTION RULES section → Every step MUST start with rules using 🛑✅📋💬🚫 emojis
❌ No CONTEXT BOUNDARIES section → Always define what's in scope and what's not
❌ Vague YOUR TASK statement → Must be ONE clear sentence describing step's purpose
❌ Forgetting state handoff → Each step must document available variables from previous steps
❌ Missing SUCCESS METRICS / FAILURE MODES → Every step needs ✅ success criteria and ❌ failure modes
❌ Not handling auto_mode → Check auto_mode before ANY AskUserQuestion call
❌ No frontmatter state tracking
→ Track stepsCompleted array in document frontmatter
❌ Missing <critical> reminders
→ End each step with critical boundary reminder
❌ Hardcoding paths → Use relative paths and state variables
</common_mistakes>
<success_criteria> A well-designed workflow skill (BMAD-style):
Structure:
Each Step Has:
<critical> reminder at the endUser Interaction:
State Management:
stepsCompleted array tracked in frontmatter<quick_start>
To create a new workflow skill:
Reference files to consult:
references/step-template.md - Step file structurereferences/ask-patterns.md - User interaction patternsreferences/state-management.md - State persistencereferences/workflow-patterns.md - Common workflowsreferences/prompt-engineering.md - Prompt best practices
</quick_start>development
Use when you want to audit a project wiki for quality issues — stale version claims, contradictions between pages, orphan pages, broken wiki links, missing cross-references, or misalignment between wiki content and the actual codebase state.
development
Systematic error debugging with analysis, solution discovery, and verification
development
Structured adversarial debate between AI councillors using Agent Teams to evaluate ideas, plans, or decisions. ALWAYS use when the user says "council", "debate this", "evaluate this idea", "challenge my plan", "stress-test", "devil's advocate", "multiple perspectives", "évaluer cette idée", "débattre", "challenger mon plan", "tester cette décision", or when the user wants rigorous multi-perspective analysis of a proposal, architecture decision, or strategic choice. Each councillor (visionary, critic, pragmatist, innovator, ethicist, domain expert) represents a distinct perspective and they challenge each other through cross-examination and peer exchange, producing a nuanced verdict (PROCEED / PROCEED WITH CONDITIONS / RECONSIDER / DO NOT PROCEED). Do NOT use for divergent brainstorming or idea generation — use workflow-brainstorm instead.
testing
Automated CI/CD pipeline fixer - watches CI, fixes errors locally, commits, and loops until green. Use when CI is failing and you want to automatically fix and verify changes.