devloop

Start development workflow - lightweight entry point

6 stars

Best use case

devloop is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Start development workflow - lightweight entry point

Teams using devloop should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/devloop/SKILL.md --create-dirs "https://raw.githubusercontent.com/Zate/cc-plugins/main/plugins/devloop/skills/devloop/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/devloop/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How devloop Compares

Feature / AgentdevloopStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Start development workflow - lightweight entry point

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Devloop - Smart Development Workflow

The main entry point for devloop. Detects your current state and suggests the most relevant actions. **You do the work directly.**

## Step 1: Detect State

Run the state detection script:

```bash
"${CLAUDE_PLUGIN_ROOT}/scripts/check-devloop-state.sh"
```

Parse the JSON output:
- `state`: Current state identifier
- `priority`: 1-7 (lower = more urgent)
- `details`: State-specific information
- `suggestions`: Recommended actions

## Step 2: Display Status and Options

Based on detected state, display status and present contextual options:

### State: `not_setup` (Priority 1)

```
Devloop not set up in this project.

The .devloop/ directory doesn't exist yet.
```

```yaml
AskUserQuestion:
  questions:
    - question: "What would you like to do?"
      header: "Setup"
      multiSelect: false
      options:
        - label: "Create a plan (Recommended)"
          description: "Autonomous exploration -> actionable plan"
        - label: "Deep exploration"
          description: "Comprehensive investigation with spike report"
        - label: "Quick task"
          description: "Small, well-defined fix or change"
        - label: "GitHub issues"
          description: "Start from an existing issue"
```

**Routing:**
- "Create a plan" -> `/devloop:plan $ARGUMENTS`
- "Deep exploration" -> `/devloop:plan --deep $ARGUMENTS`
- "Quick task" -> `/devloop:plan --quick $ARGUMENTS`
- "GitHub issues" -> `/devloop:issues`

### State: `active_plan` (Priority 2)

Display plan status from details:

```
Active Plan: [plan_title]
Progress: [done]/[total] tasks ([pending] remaining)
Next: [next_task]
```

```yaml
AskUserQuestion:
  questions:
    - question: "What would you like to do?"
      header: "Action"
      multiSelect: false
      options:
        - label: "Continue working (Recommended)"
          description: "Pick up where you left off"
        - label: "Ship progress"
          description: "Commit and optionally create PR"
        - label: "View full plan"
          description: "Review the complete plan"
        - label: "Start fresh"
          description: "Archive current plan and start new"
```

**Routing:**
- "Continue working" -> `/devloop:run`
- "Ship progress" -> `/devloop:ship`
- "View full plan" -> Display `.devloop/plan.md` content
- "Start fresh" -> Archive then ask what to do

### State: `uncommitted` (Priority 3)

```
Uncommitted Changes Detected
[total_changes] files changed ([staged] staged, [unstaged] unstaged)
```

```yaml
AskUserQuestion:
  questions:
    - question: "You have uncommitted changes. What would you like to do?"
      header: "Git"
      multiSelect: false
      options:
        - label: "Commit changes (Recommended)"
          description: "Create a commit with current changes"
        - label: "Review changes"
          description: "See what's changed before committing"
        - label: "Continue without committing"
          description: "Start new work, keep changes staged"
        - label: "Stash changes"
          description: "Save changes for later"
```

**Routing:**
- "Commit changes" -> `/devloop:ship`
- "Review changes" -> Run `git diff --stat` then `git diff`
- "Continue without committing" -> Proceed with $ARGUMENTS or ask
- "Stash changes" -> Run `git stash push -m "devloop: work in progress"`

### State: `open_bugs` (Priority 4)

```
Open Bugs: [bug_count]
```

```yaml
AskUserQuestion:
  questions:
    - question: "[bug_count] open bug(s) found. What would you like to do?"
      header: "Bugs"
      multiSelect: false
      options:
        - label: "Fix a bug"
          description: "View and work on open bugs"
        - label: "Start new feature"
          description: "Work on something new instead"
        - label: "Deep exploration"
          description: "Research or explore an idea"
```

**Routing:**
- "Fix a bug" -> List bugs from GitHub issues then create plan
- "Start new feature" -> Ask for details, `/devloop:plan`
- "Deep exploration" -> `/devloop:plan --deep`

### State: `backlog` (Priority 5)

```
Backlog: [feature_count] feature(s) waiting
```

```yaml
AskUserQuestion:
  questions:
    - question: "[feature_count] item(s) in backlog. What would you like to do?"
      header: "Backlog"
      multiSelect: false
      options:
        - label: "Work on backlog item"
          description: "Pick from existing features/tasks"
        - label: "Deep exploration"
          description: "Research or explore an idea"
        - label: "Quick task"
          description: "Small, well-defined fix"
```

**Routing:**
- "Work on backlog item" -> List items then `/devloop:plan --from-issue N`
- "Deep exploration" -> `/devloop:plan --deep`
- "Quick task" -> `/devloop:plan --quick`

### State: `complete_plan` (Priority 6)

```
Plan Complete: [plan_title]
All [total] tasks finished!
```

```yaml
AskUserQuestion:
  questions:
    - question: "Plan is complete. What would you like to do?"
      header: "Complete"
      multiSelect: false
      options:
        - label: "Ship it (Recommended)"
          description: "Commit and optionally create PR"
        - label: "Archive and start new"
          description: "Move to archive, begin fresh"
        - label: "Review before shipping"
          description: "Look over the work one more time"
```

**Routing:**
- "Ship it" -> `/devloop:ship`
- "Archive and start new" -> Archive then ask what's next
- "Review before shipping" -> `/devloop:review`

### State: `clean` (Priority 7)

```
Ready for new work!
No active plans or pending changes.
```

```yaml
AskUserQuestion:
  questions:
    - question: "What would you like to work on?"
      header: "Start"
      multiSelect: false
      options:
        - label: "Create a plan (Recommended)"
          description: "Autonomous exploration -> actionable plan"
        - label: "Deep exploration"
          description: "Comprehensive investigation with spike report"
        - label: "GitHub issues"
          description: "View and work from GitHub issues"
        - label: "Quick task"
          description: "Small, well-defined fix"
```

**Routing:**
- "Create a plan" -> `/devloop:plan`
- "Deep exploration" -> `/devloop:plan --deep`
- "GitHub issues" -> `/devloop:issues`
- "Quick task" -> `/devloop:plan --quick`

## Step 3: Handle Arguments

If `$ARGUMENTS` is provided and non-empty:
- Skip state display
- Use arguments as task description
- Route appropriately based on state:
  - `active_plan` -> Ask: continue plan or start new with this task?
  - Other states -> Create new plan with the description

## Key Principles

1. **You (Claude) do the work** - Don't spawn subagents for tasks you can do yourself
2. **Skills on demand** - Load with `Skill: skill-name` only when needed
3. **Minimal questions** - One question at a time, not multi-part interrogations
4. **Fast iteration** - Ship working code, then improve

## Workflow Commands

| Command | Purpose |
|---------|---------|
| `/devloop` | Smart entry point (this command) |
| `/devloop:plan` | Autonomous exploration -> actionable plan |
| `/devloop:plan --deep` | Comprehensive exploration with spike report |
| `/devloop:plan --quick` | Fast path for small tasks |
| `/devloop:plan --from-issue N` | Start from GitHub issue |
| `/devloop:run` | Execute plan autonomously |
| `/devloop:epic` | Create multi-phase epic with TDD |
| `/devloop:run-epic` | Execute epic phase-by-phase |
| `/devloop:fresh` | Save state and exit cleanly |
| `/devloop:new` | Create GitHub issue |
| `/devloop:issues` | List GitHub issues |
| `/devloop:review` | Code review |
| `/devloop:ship` | Commit and/or PR |

## Files

- `.devloop/plan.md` - Current task plan (or promoted epic phase)
- `.devloop/epic.md` - Multi-phase epic plan
- `.devloop/local.md` - Project settings (git workflow, etc.)
- `.devloop/next-action.json` - Fresh start state
- `.devloop/spikes/` - Spike reports (from --deep exploration)

---

**Now**: Detect state and present options.

Related Skills

devloop-audit

6
from Zate/cc-plugins

Audit devloop against Claude Code updates to identify integration opportunities. Use after Claude Code releases, monthly maintenance, or when exploring new features.

Example Skill

6
from Zate/cc-plugins

Brief description of what this skill does and the domain expertise it provides.

vulnerability-patterns

6
from Zate/cc-plugins

Index of vulnerability detection pattern skills. Routes to core patterns (universal) and language-specific patterns for security scanning.

vuln-patterns-languages

6
from Zate/cc-plugins

Language-specific vulnerability detection patterns for JavaScript/TypeScript, Python, Go, Java, Ruby, and PHP. Provides regex patterns and grep commands for common security vulnerabilities.

vuln-patterns-core

6
from Zate/cc-plugins

Universal vulnerability detection patterns applicable across all programming languages. Includes hardcoded secrets, SQL/command injection, path traversal, and configuration file patterns.

scan

6
from Zate/cc-plugins

Run a security assessment using deterministic static analysis tools with LLM-powered triage

results

6
from Zate/cc-plugins

View the most recent security scan results without re-running the scan

remediation-library

6
from Zate/cc-plugins

Index of security remediation skills. Routes to specialized skills for injection, cryptography, authentication, and configuration vulnerabilities.

remediation-injection

6
from Zate/cc-plugins

Security fix patterns for injection vulnerabilities (SQL, Command, XSS). Provides language-specific code examples showing vulnerable and secure implementations.

remediation-crypto

6
from Zate/cc-plugins

Security fix patterns for cryptographic vulnerabilities (weak algorithms, insecure randomness, TLS issues). Provides language-specific secure implementations.

remediation-config

6
from Zate/cc-plugins

Security fix patterns for configuration and deployment vulnerabilities (path traversal, debug mode, security headers). Provides language-specific secure implementations.

remediation-auth

6
from Zate/cc-plugins

Security fix patterns for authentication and authorization vulnerabilities (credentials, JWT, deserialization, access control). Provides language-specific secure implementations.