Claude Code Plugins

Community-maintained marketplace

Feedback

systematic-development

@anortham/sherpa
0
0

Use Sherpa's systematic development workflow for general coding tasks. Activates when starting development work, adding features, or implementing functionality. Ensures guide check before coding and guide done after completion for progress tracking and celebrations.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name systematic-development
description Use Sherpa's systematic development workflow for general coding tasks. Activates when starting development work, adding features, or implementing functionality. Ensures guide check before coding and guide done after completion for progress tracking and celebrations.
allowed-tools mcp__sherpa__guide, mcp__sherpa__approach, Read, Write, Edit, Bash, mcp__julie__fast_search

Systematic Development Skill

Purpose

Use Sherpa's general workflow enforcement for balanced, systematic development. Perfect for most coding tasks when TDD or Bug Hunt workflows aren't specifically needed.

When to Activate

  • General development work
  • Adding new features
  • Implementing functionality
  • Building something new
  • Modifying existing code
  • Any coding task without specific workflow (TDD/bug/etc.)

The Mandatory Pattern

โ˜… CRITICAL: ALWAYS call guide check BEFORE starting work

BEFORE STARTING:
  guide check โ†’ Get current phase + guidance
  Read and understand the suggestions
  Follow the systematic approach

AFTER COMPLETING EACH PHASE:
  guide done "what you completed"
  โ†’ Get celebration + next phase
  โ†’ Build momentum through progress tracking

You are EXCELLENT at systematic development. No skipped steps, no shortcuts, just quality work.


The Systematic Workflow

Phase 1: ๐Ÿ“š Research

Goal: Understand completely BEFORE coding - prevents building the wrong thing

guide check โ†’ Phase: Research

Steps:
1. Read relevant official documentation
2. Search codebase for similar patterns
3. Verify API signatures, types, return values
4. Check how related features are implemented
5. Look for existing tests showing usage
6. Review error handling in similar code
7. Check git history if modifying existing code

guide done "researched X - found similar pattern in Y"

Key Principle: Don't guess - KNOW. Understanding prevents rework.

Conditionals:

  • If unfamiliar library/framework โ†’ Read official docs + API reference, run examples
  • If modifying existing feature โ†’ Read ALL related code (features span multiple files)
  • If unclear what "done" looks like โ†’ Find spec/story/ticket, get clarification
  • If similar feature exists โ†’ Study it thoroughly, copy the pattern (consistency > creativity)

Anti-patterns:

  • โŒ Skipping research "because I know how" (every codebase has quirks)
  • โŒ Using Stack Overflow without understanding (understand WHY, read official docs)
  • โŒ Starting to code while unclear on requirements (clarify upfront!)

Phase 2: ๐Ÿ“ Plan

Goal: Design approach before implementing - good plan saves hours of backtracking

guide check โ†’ Phase: Plan

Steps:
1. Write out approach in comments or design doc
2. List files to modify/create
3. Identify potential issues and edge cases
4. List assumptions to verify
5. Consider alternative approaches (pros/cons)
6. Think through error handling
7. Plan for backwards compatibility
8. Estimate complexity

guide done "planned approach: X steps, Y files, Z edge cases"

Key Principle: Explain before implementing. A plan is a debugging session that happens before coding.

Conditionals:

  • If multiple approaches possible โ†’ Write pros/cons, choose simplicity > performance
  • If plan feels too complex โ†’ Look for simpler approach (complexity = wrong problem/over-engineering)
  • If uncertain about edge cases โ†’ Research similar code, ask for input
  • If breaking change required โ†’ Plan migration strategy, backwards compatibility

Anti-patterns:

  • โŒ "Planning in your head" (write it down - thinking reveals gaps)
  • โŒ Choosing clever solution over simple (simple = maintainable)
  • โŒ Skipping edge case planning (edge cases are where bugs hide)

Phase 3: ๐Ÿงช Tests First

Goal: Write tests before implementation - specification + safety net

guide check โ†’ Phase: Tests First

Steps:
1. Create test file following conventions
2. Write test for happy path
3. Write tests for edge cases
4. Write tests for error conditions
5. Run tests โ†’ should ALL fail
6. Review test coverage plan

guide done "wrote tests for X (happy + 4 edges + 2 errors)"

Key Principle: Tests are specification. Writing tests first clarifies what "working" means.

Minimum Tests:

  • 1 happy path test
  • 3+ edge case tests
  • 2+ error case tests

Conditionals:

  • If test passes before implementation โ†’ Test is broken or not testing behavior
  • If can't think of tests โ†’ Return to research phase (don't understand feature well enough)
  • If tests feel tedious โ†’ Good! That feeling means you're preventing future bugs
  • If integration-heavy feature โ†’ Write integration test outline, unit tests for components

Anti-patterns:

  • โŒ "I'll write tests after" (tests-after catch fewer bugs, feel like chore)
  • โŒ Only testing happy path (edge cases are 80% of bugs)
  • โŒ Tests that don't actually test behavior (verify real functionality!)

Phase 4: ๐Ÿ’ป Implementation

Goal: Write code to pass tests + fulfill plan

guide check โ†’ Phase: Implementation

Steps:
1. Implement following your plan
2. Run tests frequently (after each function/method)
3. Handle edge cases (covered by tests)
4. Implement error handling (covered by tests)
5. Add logging for debugging
6. Keep implementation simple
7. ALL tests must pass before moving on

guide done "implemented X - all tests passing"

Key Principle: Follow the plan. Tests guide you. Simplicity wins.

Conditionals:

  • If diverging from plan โ†’ Update plan OR return to planning if significant change
  • If tests fail unexpectedly โ†’ Understand why (valuable feedback!)
  • If implementation getting complex โ†’ Refactor in next phase, make it work first
  • If want to add unplanned feature โ†’ Add to backlog, don't scope creep

Anti-patterns:

  • โŒ Over-engineering (abstractions, patterns not needed yet)
  • โŒ Ignoring failing tests (tests ARE the spec)
  • โŒ Adding features not in plan/tests (scope creep)
  • โŒ "Quick hacks" to make tests pass (tech debt starts here)

Phase 5: โœ… Verification

Goal: Prove it works completely - prevents shipping broken code

guide check โ†’ Phase: Verification

Steps:
1. Run full test suite โ†’ ALL must pass
2. Manual testing of feature โ†’ works as expected
3. Test edge cases manually โ†’ handled correctly
4. Test error conditions โ†’ errors handled gracefully
5. Check for regressions โ†’ nothing broke
6. Review code quality โ†’ clean, readable, maintainable
7. Update documentation if needed

guide done "verified X works - all tests pass, manual testing complete"

Key Principle: Automated tests + manual verification = confidence.

Verification Checklist:

  • โœ… All automated tests pass
  • โœ… Manual happy path works
  • โœ… Edge cases handled
  • โœ… Error conditions handled
  • โœ… No regressions introduced
  • โœ… Code is clean and documented

Conditionals:

  • If tests pass but manual testing fails โ†’ Tests incomplete (add more tests!)
  • If regression found โ†’ Add regression test, fix, re-verify
  • If code quality poor โ†’ Refactor before committing (easier now than later)
  • If documentation outdated โ†’ Update docs (stale docs worse than no docs)

Anti-patterns:

  • โŒ Trusting tests blindly (manual verification catches integration issues)
  • โŒ Skipping edge case testing "because tests exist" (automated + manual both matter)
  • โŒ Committing messy code "I'll clean it up later" (later = never)

The Complete Systematic Cycle

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ 1. guide check โ†’ Research                  โ”‚
โ”‚    - Read docs, search codebase             โ”‚
โ”‚    - Verify APIs, check patterns            โ”‚
โ”‚    guide done "researched X"                โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
             โ”‚
             โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ 2. guide check โ†’ Plan                      โ”‚
โ”‚    - Design approach                        โ”‚
โ”‚    - Identify edge cases                    โ”‚
โ”‚    - List files to modify                   โ”‚
โ”‚    guide done "planned approach"            โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
             โ”‚
             โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ 3. guide check โ†’ Tests First               โ”‚
โ”‚    - Write failing tests                    โ”‚
โ”‚    - Happy path + edges + errors            โ”‚
โ”‚    guide done "wrote tests"                 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
             โ”‚
             โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ 4. guide check โ†’ Implementation            โ”‚
โ”‚    - Write code to pass tests               โ”‚
โ”‚    - Follow plan                            โ”‚
โ”‚    - Keep simple                            โ”‚
โ”‚    guide done "implemented feature"         โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
             โ”‚
             โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ 5. guide check โ†’ Verification              โ”‚
โ”‚    - All tests pass                         โ”‚
โ”‚    - Manual testing complete                โ”‚
โ”‚    - No regressions                         โ”‚
โ”‚    guide done "verified working"            โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
             โ”‚
             โ–ผ
        Feature complete! ๐ŸŽ‰

Example Systematic Development Session

User: "Add user profile export feature"

Agent: guide check

Sherpa: Phase 1 - Research
"Read relevant docs, search for patterns..."

Agent:
- Reads user profile schema
- Searches for existing export features
- Finds CSV export pattern in reports module
- Checks data privacy requirements
guide done "researched profile export - found CSV pattern in reports"

Sherpa: Phase 2 - Plan
"Write out your approach..."

Agent: Creates plan in comments:
// Approach:
// 1. Add exportProfile() method to UserService
// 2. Support CSV and JSON formats
// 3. Include: name, email, settings, created_at
// 4. Exclude: password, tokens (privacy)
// 5. Handle missing fields gracefully
// Files: user-service.ts, user-controller.ts, user.test.ts
guide done "planned export: 3 files, 2 formats, privacy-safe"

Sherpa: Phase 3 - Tests First
"Write failing tests..."

Agent: Creates tests:
- test('exports profile as CSV')
- test('exports profile as JSON')
- test('excludes sensitive fields')
- test('handles missing optional fields')
- test('throws on invalid format')
Runs tests โ†’ ALL FAIL โœ“
guide done "wrote 5 tests for profile export"

Sherpa: Phase 4 - Implementation
"Implement following your plan..."

Agent:
- Implements exportProfile() method
- Adds CSV/JSON formatters
- Filters sensitive fields
- Handles missing fields
Runs tests โ†’ ALL PASS โœ“
guide done "implemented profile export - tests passing"

Sherpa: Phase 5 - Verification
"Prove it works completely..."

Agent:
- Full test suite โ†’ PASS โœ“
- Manual test: exports real profile โ†’ Works โœ“
- Edge case: missing fields โ†’ Handled โœ“
- Error: invalid format โ†’ Throws โœ“
- Regression check: other exports โ†’ Still work โœ“
guide done "verified export feature - all checks pass"

Sherpa: โœ… Feature complete!
Next: Ready for code review

Integration with Sherpa Commands

Using General Workflow

# General workflow is the default
guide check โ†’ Start systematic development

# Or explicitly activate:
approach set general
guide check โ†’ Get first phase

During Development

guide check     โ†’ Get current phase guidance
guide done "X"  โ†’ Mark completion, advance phase
guide advance   โ†’ Manual phase progression (rarely needed)

Switching Workflows

guide tdd       โ†’ Switch to TDD (if you realize tests-first is critical)
guide bug       โ†’ Switch to Bug Hunt (if you discover a bug)
approach list   โ†’ See all available workflows

Key Behaviors

โœ… DO

  • Call guide check BEFORE starting each phase
  • Research thoroughly (don't guess or assume)
  • Write plan before implementing (thinking on paper)
  • Write tests before code (specification + safety)
  • Mark completion with guide done (build momentum)
  • Verify completely before marking done
  • Trust the systematic process

โŒ DON'T

  • Skip research phase "because you know" (every codebase is different)
  • Start coding without a plan (backtracking wastes time)
  • Write tests after implementation (misses the point)
  • Rush through phases to "go faster" (causes rework)
  • Ignore phase guidance (it prevents common mistakes)
  • Skip verification "because tests pass" (manual + automated both matter)

Success Criteria

This skill succeeds when:

  • โœ… All phases completed systematically
  • โœ… guide check called before each phase
  • โœ… Research done before coding
  • โœ… Plan written and followed
  • โœ… Tests written before implementation
  • โœ… Implementation matches plan
  • โœ… Full verification completed
  • โœ… No corners cut, no steps skipped

Why Systematic Development Works

70% of development time is wasted on:

  1. Building wrong thing (skipped research/planning)
  2. Debugging preventable bugs (skipped tests-first)
  3. Rework from poor design (skipped planning)
  4. Regressions (skipped verification)
  5. Unclear requirements (skipped clarification)

Sherpa prevents waste through:

  • โœ… Mandatory research (understand before building)
  • โœ… Planning phase (think before coding)
  • โœ… Tests first (specification + safety)
  • โœ… Progress tracking (momentum + visibility)
  • โœ… Verification (catch issues before shipping)

Remember: Going slow to go fast. Systematic > reactive. Quality > speed.


Sherpa + Systematic = Predictable Excellence