home / skills / scientiacapital / skills / workflow-enforcer-skill

workflow-enforcer-skill skill

/stable/workflow-enforcer-skill

This skill enforces workflow discipline by ensuring the correct specialized agent is used, announces usage, and creates multi-step todos.

npx playbooks add skill scientiacapital/skills --skill workflow-enforcer-skill

Review the files below or copy the command above to add this skill to your agents.

Files (3)
SKILL.md
4.5 KB
---
name: "workflow-enforcer-skill"
description: "Enforces workflow discipline across ALL projects. Ensures Claude checks for specialized agents before responding, announces skill/agent usage, and creates TodoWrite todos for multi-step tasks. Triggers: automatic on all sessions, use the right agent, follow workflow."
---

<objective>
Enforce workflow discipline across all projects by ensuring Claude checks for specialized agents before responding, announces skill/agent usage, and creates TodoWrite todos for multi-step tasks. This skill activates automatically on every session to maintain consistent quality and tool utilization.
</objective>

<quick_start>
**Before responding to ANY request:**

1. **Check for agent**: Is there a specialized agent for this task?
2. **Announce**: "I'm using [agent] to [action]"
3. **Create todos**: Use TodoWrite for multi-step work
4. **Track**: Mark `in_progress` → `completed`

| Request | Agent |
|---------|-------|
| Fix bug | `debugging-toolkit:debugger` |
| Review code | `code-documentation:code-reviewer` |
| Write tests | `unit-testing:test-automator` |
</quick_start>

<success_criteria>
Workflow enforcement is successful when:
- Specialized agent identified and used for every applicable task
- Agent usage announced before starting work
- TodoWrite used for all multi-step tasks (3+ steps)
- Progress tracked with in_progress and completed statuses
- No rationalizations for skipping agents ("it's simple", "just a quick fix")
</success_criteria>

<mandatory_protocol>
Before responding to ANY user request, complete this checklist:

1. **Check for specialized agent** - Is there an agent for this task type?
2. **Announce usage** - "I'm using [agent] to [action]"
3. **Create todos/tasks** - Use TaskCreate (preferred) or TodoWrite for multi-step work
4. **Track progress** - Mark in_progress before starting, completed after finishing

## Quick Reference

| User Request | Agent to Use |
|--------------|--------------|
| Fix bug / error | `debugging-toolkit:debugger` |
| Review code | `code-documentation:code-reviewer` |
| Write tests | `unit-testing:test-automator` |
| Optimize performance | `performance-engineer` |
| Security audit | `security-auditor` |
| Deploy / CI/CD | `deployment-engineer` |
| Write docs | `docs-architect` |
| Refactor code | `legacy-modernizer` |
| Build AI feature | `ai-engineer` |
| Production incident | `incident-responder` |

For the complete 70+ agent catalog, see `reference/agents-catalog.md`.

## How to Use

### Step 1: Identify Task Type

Categorize the request:
- Debugging? → debugging agents
- Code review? → review agents
- Testing? → test automation agents
- Performance? → performance engineers
- Security? → security auditors
- Deployment? → deployment engineers

### Step 2: Announce

Before starting work:
> "I'm using the [agent-name] to [what you're doing]"

**Examples:**
- "I'm using debugging-toolkit:debugger to trace this authentication error"
- "I'm using python-development:python-pro to refactor this async code"

### Step 3: Create Todos / Tasks

For multi-step tasks, use **TaskCreate** (preferred — renders live UI spinners) or **TodoWrite** (fallback):

**TaskCreate (native progress UI):**
1. Break work into specific items
2. Use `TaskCreate({ subject: "...", activeForm: "..." })` for each item
3. Use `TaskUpdate({ taskId, status: "in_progress" })` before starting → shows spinner
4. Use `TaskUpdate({ taskId, status: "completed" })` after finishing → shows checkmark
5. Use `addBlockedBy` for sequential dependencies between tasks

**TodoWrite (simpler, text-based):**
1. Break work into specific items
2. Use TodoWrite to create the list
3. Mark `in_progress` before starting, `completed` after finishing

### Step 4: Follow Agent Discipline

Each agent type has its own methodology:
- **TDD agents** → Write tests first
- **Debugging agents** → Systematic root cause analysis
- **Code review agents** → Follow review checklist
- **Deployment agents** → Follow deployment protocols

## Common Rationalizations to Avoid

If you think any of these, STOP and use the appropriate agent:

- "This is simple, I don't need an agent"
- "Let me just quickly fix this"
- "I can debug this manually"
- "This doesn't need a formal review"
- "I'll skip the test for now"

**The right thought:** "What specialized agent should I use for this task?"

## Guidelines

- This skill applies to EVERY session, EVERY project, EVERY task
- No exceptions, no rationalizations, no shortcuts
- When in doubt, check `reference/agents-catalog.md`
</mandatory_protocol>

Overview

This skill enforces strict workflow discipline across all projects by automatically checking for and routing tasks to specialized agents, announcing agent usage, and creating tracked todos for multi-step work. It activates on every session to ensure consistent tool use, clear handoffs, and measurable progress tracking. The goal is to eliminate ad-hoc shortcuts and ensure reproducible, auditable workflows.

How this skill works

Before any response, the skill inspects the request to identify a matching specialized agent from the catalog. It then announces the chosen agent and intended action, creates TaskCreate or TodoWrite items for multi-step tasks, and updates task status from in_progress to completed as work proceeds. The skill also blocks common rationalizations for skipping agents and enforces the discipline that every applicable task uses the right agent.

When to use it

  • Every session and every incoming request — applies universally
  • When a task maps to common categories like debugging, code review, tests, deployment, security, or performance
  • For any multi-step or multi-day work that benefits from tracked subtasks
  • When you want consistent, repeatable tool usage and auditable progress
  • Whenever there is a chance to leverage a specialized agent instead of ad-hoc manual work

Best practices

  • Always check the agent catalog first; prefer the mapped agent for the task type
  • Announce agent usage before starting: “I'm using [agent] to [action]”
  • Use TaskCreate for live progress UI; fall back to TodoWrite for simpler lists
  • Break multi-step work into discrete todos and set in_progress before work begins
  • Mark todos completed after finishing each step and avoid rationalizations for skipping agents

Example use cases

  • Fix a production bug: identify debugging-toolkit:debugger, announce usage, create tasks for reproduce, patch, test, deploy
  • Run a code review: use code-documentation:code-reviewer, announce the agent, create a todo list for checklist items
  • Write unit tests: call unit-testing:test-automator, create test cases as TaskCreate items and track status
  • Deploy a release: assign deployment-engineer, create deployment checklist tasks and update progress
  • Perform a security audit: engage security-auditor and break findings into tracked remediation tasks

FAQ

What if no specialized agent fits my exact request?

Map the request to the closest agent category and document the rationale. If truly unmatched, default to a generalist agent but still create tracked todos.

When should I use TaskCreate vs TodoWrite?

Use TaskCreate for interactive progress and UI spinners; use TodoWrite when a simple text-based checklist suffices or TaskCreate is unavailable.

Can I skip agent usage for small fixes?

No. The skill forbids skipping agents for convenience. Even small fixes should use the right agent or a justified closest match.