Back to Discover

claude-sdlc

skill

AratKruglik

Claude Code SDLC marketplace and plugins for different tech stacks

View on GitHub
30 starsMITSynced Aug 2, 2026

Install to Claude Code

/plugin marketplace add AratKruglik/claude-sdlc

README

SDLC Marketplace for Claude Code

Multi-stack AI-assisted SDLC pipelines built on the Stack Provider Pattern: a single core orchestrator runs the pipeline, framework plugins register themselves via declarative stack.md profiles. No core overrides, no slot registries, no copy-paste between stacks.

v1.3.0 — 27 marketplace entries: 24 local (1 core + 5 shared libs + 7 JS/TS stacks + 4 PHP/Laravel/Symfony stacks + 3 Java/.NET stacks + 4 Python stacks) plus 3 optional external. Cost-optimized: model tiering + effort per-subagent, two-tier development phase (Opus plans, Sonnet implements), enforced workflow cost caps, file-scoped format hooks, shared architect conventions (~1,600 lines of boilerplate deduped), per-aspect QA fan-out on full-stack runs. See MODEL-ROUTING.md for the routing audit behind this release.


Quickstart

# 1. Add the marketplace
/plugin marketplace add AratKruglik/claude-sdlc

# 2. Install the stack plugin you need (sdlc core is installed automatically as a dependency)
/plugin install laravel-plugin@sdlc-marketplace
# or for JS/TS projects:
/plugin install nodejs-plugin@sdlc-marketplace   # Express/Fastify/Koa
/plugin install nestjs-plugin@sdlc-marketplace   # NestJS
/plugin install nextjs-plugin@sdlc-marketplace   # Next.js (full-stack)
/plugin install react-plugin@sdlc-marketplace    # React SPA
/plugin install vue-plugin@sdlc-marketplace      # Vue 3 SPA
/plugin install angular-plugin@sdlc-marketplace  # Angular 18-21
/plugin install react-native-plugin@sdlc-marketplace  # React Native / Expo
# or for Python projects:
/plugin install django-plugin@sdlc-marketplace   # Django + DRF
/plugin install fastapi-plugin@sdlc-marketplace  # FastAPI + SQLAlchemy 2.0
/plugin install flask-plugin@sdlc-marketplace    # Flask + Flask-Migrate
/plugin install python-plugin@sdlc-marketplace   # Plain Python (CLI/library/scripts)

# 3. Install optional plugins
/plugin marketplace add mattpocock/skills
/plugin install mattpocock-skills@skills # Enhances BA phase with interactive grilling

# 4. Verify
/sdlc:doctor
/sdlc:list-stacks

# 4. Run
/sdlc:start "Add subscription billing with Stripe"

Execution model: /sdlc:start runs synchronously in your current Claude Code session, not as a detached background job. You stay engaged through dependency/stack-detection checks and phase boundaries — including an interactive approve/request-changes/abort gate before the development phase writes any code. The final phase autonomously opens a Pull Request via gh pr create. See Pipeline Phases below.


How It Works: Stack Provider Pattern

┌─────────────────────────────────────────────────────────────┐
│                    sdlc (core)                               │
│  ┌──────────────────────────────────────────────────────┐  │
│  │  pipeline-orchestrator (skill) — NEVER CHANGES        │  │
│  │                                                       │  │
│  │  Phase 1: BA          → core's business-analyst       │  │
│  │  Phase 2: Dev         → ⚡ DISPATCH to stack provider │  │
│  │  Phase X: extra       → ⚡ stack-specific phases      │  │
│  │  Phase N-2: QA        → core's qa-engineer            │  │
│  │  Phase N-1: Security  → core's security-analyst       │  │
│  │  Phase N: Docs/PR     → core's document-writer        │  │
│  └──────────────────────────────────────────────────────┘  │
│                            ▲                                │
│                            │ reads stack.md profiles        │
└────────────────────────────┼────────────────────────────────┘
                             │
    ┌────────────────────────┼───────────────────────────┐
    │            │           │             │             │
┌───▼───┐  ┌────▼────┐ ┌────▼────┐  ┌────▼────┐  ┌────▼────┐
│laravel│  │ nodejs  │ │  nestjs │  │ nextjs  │  │  react  │
│plugin │  │ plugin  │ │  plugin │  │ plugin  │  │  plugin │
│stack.md│ │ stack.md│ │stack.md │  │stack.md │  │stack.md │
└───────┘  └─────────┘ └─────────┘  └─────────┘  └─────────┘

Key principles:

  1. Core never changes. Pipeline logic lives exclusively in pipeline-orchestrator/SKILL.md.
  2. Plugins register themselves via stack.md frontmatter — they declare auto-detection rules, priority, agents per phase, and convention skills.
  3. Per-aspect dispatch. A project can have multiple aspects (backend + frontend + database). Each aspect gets its own specialist.
  4. Priority wins. When multiple profiles match, the highest priority takes over.

How Stack Selection Works

When /sdlc:start runs, the orchestrator needs to decide which agent handles development. The priority system is how it picks.

Each plugin has a stack.md file where it describes itself: "I handle projects that have X, and my priority is Y." The orchestrator scans all installed plugins, runs their detection rules against the current project, and picks the highest-priority match.

Step by step:

  1. Scan ~/.claude/plugins/cache/**/stack.md — collect all registered profiles.
  2. Each profile checks its detect rules: is there a package.json? Does it contain react? Is there a manage.py? And so on.
  3. From those that matched — the profile with the highest priority number wins.

Example — Laravel + React (Inertia.js) project:

PluginPriorityMatched?
vanilla (sdlc)0✅ always
laravel-plugin100composer.json + laravel
react-plugin150package.json + react
inertia-react-plugin175package.json + @inertiajs/react

Result: backendlaravel-architect, frontendinertia-react-architect (beats plain react at 175 vs 150).

Why numbers, not "first match"?

Some technologies are supersets of others. Next.js is React + a server. NestJS is Node.js + a DI framework. When multiple plugins recognize the same project, the more specialized one should win — not whichever was installed first. The numbers encode that specialization:

0   → vanilla fallback (always matches, always loses)
100 → base stacks (laravel, django, java, python...)
150 → more specific (spring-boot, react SPA, vue...)
175 → super-stacks (inertia = laravel + react combined)
200 → even more specific (nestjs, angular...)
250 → full-stack (nextjs = backend + frontend in one)
300 → mobile (react-native — its own ecosystem)

Aspects let one project run multiple specialist agents in parallel. laravel-plugin covers backend + database aspects; inertia-react-plugin covers frontend. So a Laravel + Inertia project gets three agents — laravel-architect, artisan-specialist, and inertia-react-architect — each focused on its own slice, dispatched in canonical order: database → backend → frontend.

Stack Priority Table

PriorityPluginAspectsDetect
0vanilla (sdlc)* (always matches)
100nodejs-pluginbackendpackage.json + express/fastify/koa/...
100laravel-pluginbackend, databasecomposer.json + laravel/framework
100symfony-pluginbackend, databasecomposer.json + symfony/framework-bundle
100java-pluginbackendpom.xml or build.gradle or build.gradle.kts
100aspnet-core-pluginbackend, databaseappsettings.json
100python-pluginbackendpyproject.toml or requirements.txt or setup.py or Pipfile
150react-pluginfrontendpackage.json + react (without next, react-native)
150vue-pluginfrontendpackage.json + vue
150spring-boot-pluginbackendany build file + spring-boot marker
150django-pluginbackend, databasemanage.py or Django in pyproject.toml/requirements.txt
150fastapi-pluginbackend, databasefastapi in pyproject.toml/requirements.txt
150flask-pluginbackend, databaseFlask in pyproject.toml/requirements.txt
175inertia-vue-pluginfrontendpackage.json + @inertiajs/vue3
175inertia-react-pluginfrontendpackage.json + @inertiajs/react
200nestjs-pluginbackend, databasepackage.json + @nestjs/core
200angular-pluginfrontendpackage.json + @angular/core
250nextjs-pluginbackend, frontendpackage.json + next
300react-native-pluginfrontendpackage.json + react-native

Pipeline Phases

Standard 5-phase pipeline

Phase 1: BA → business-analyst (opus/high)
          ↓ output: docs/plans/{slug}/01-business-analysis.md
Phase 2: Dev → [stack agent] (sonnet/medium)
          ↓ output: docs/plans/{slug}/02-development.md
Phase 3: QA → qa-engineer (sonnet/medium, max 3 attempts)
          ↓ output: docs/plans/{slug}/03-qa.md
Phase 4: Security → security-analyst (opus/high)
          ↓ output: docs/plans/{slug}/04-security.md
Phase 5: Docs → document-writer (haiku/low)
          ↓ output: PR on GitHub

Example: Laravel (6 phases)

Phase 1: BA → business-analyst
Phase 2: Dev/backend  → laravel-architect    (aspect=backend)
Phase 3: Dev/database → artisan-specialist   (extra phase after backend)
Phase 4: QA → qa-engineer
Phase 5: Security → security-analyst
Phase 6: Docs → document-writer

Per-aspect dispatch (multi-framework projects)

For a project with a Node.js backend and a React frontend:

  • Phase 2/backend → node-architect
  • Phase 2/frontend → react-architect (separate run)

Aspects are dispatched in canonical order: database → backend → frontend → testing.


Commands

CommandPurpose
/sdlc:start "feature"Run the full 5-phase pipeline
/sdlc:batch "task1" "task2"Run pipelines in parallel for multiple tasks (isolated worktrees)
/sdlc:list-stacksShow detected stack profiles and their priorities
/sdlc:doctorPreflight check: dependency check, stack detection, cost baseline
/sdlc:security-initMaterialize security-patterns.yaml for the security-guidance plugin

Dynamic Workflow Recipes

A workflow recipe is a YAML file that declares which pipeline phases to run. Instead of always running all 5 phases, the orchestrator selects the right recipe automatically — or you can pick one explicitly.

Built-in recipes

RecipePhasesAuto-selects when
defaultBA → Dev → QA → Security → Docsany task
bugfixDev → QA → Security → Docsarguments contain fix, bug, issue; ≤500 LOC
hotfixDev → QA → Security → Docsarguments contain hotfix, urgent, emergency; ≤200 LOC; $0.60 cost cap
refactorDev → QA → Security → Docsarguments contain refactor, cleanup, extract
docs-onlyDocsarguments contain docs, readme, changelog; $0.10 cost cap

Using a specific recipe

/sdlc:start --workflow=hotfix "Fix null pointer in payment handler"
/sdlc:start --workflow=docs-only "Update README for new auth flow"

Auto-selection

If no --workflow flag is given, the orchestrator checks each recipe's match rules against your $ARGUMENTS in priority order. First match wins; default always matches as the fallback.

Custom recipes

Place a YAML file at ~/.claude/plugins/cache/sdlc/workflows/my-recipe.yaml:

name: my-recipe
description: Internal audit workflow — skip BA, security required.
phases:
  - development
  - qa
  - security
caps:
  max_total_cost_usd: 1.00
/sdlc:start --workflow=my-recipe "Audit user permissions module"

Recipe files are validated against schemas/workflow.schema.json on load. Invalid recipes halt with an error listing each violation.


Model Enforcement

Every agent in the SDLC pipeline declares its model: tier in frontmatter. The pipeline enforces that tier on dispatch, so a session running on an expensive default model does not drag every phase up with it.

Two enforcement layers:

  1. Orchestrator (Layer 1) — Step 3b-3 in the pipeline explicitly reads the agent's .md frontmatter and passes the tier alias in the Agent() dispatch call.

  2. PreToolUse hook (Layer 2)plugins/sdlc/hooks/enforce-agent-model.sh intercepts every Agent tool call at the harness level. It reads the agent's declared tier, compares it with the requested model, and corrects it via updatedInput if they differ. This fires even if the orchestrator misses the step.

The hook is registered in plugins/sdlc/hooks/hooks.json and activates automatically when the plugin is installed via the marketplace — no manual settings.json changes needed.

Model tiers: both layers pass the short alias (opus / sonnet / haiku / fable) as-is — the Agent tool's model parameter accepts only these aliases, and a full pinned model ID would fail validation and silently fall back to the session model. (Agent frontmatter is more permissive and does accept full IDs and inherit; the dispatch parameter does not.) Which concrete model each alias resolves to is decided by the harness, so the marketplace never goes stale on model releases.

Two-tier development phase: the development phase runs a planning pass and an implementation pass either side of a human approval gate, and they resolve different tiers. The planning pass reads model_plan: (Opus by default), the implementation pass reads model: (Sonnet). The orchestrator marks the pass in the Agent() description field so the hook enforces the matching one — see MODEL-ROUTING.md §4.1.

⚠️ Enforcement is not absolute. Claude Code resolves a subagent's model in the order CLAUDE_CODE_SUBAGENT_MODEL → per-invocation parameter → frontmatter. That environment variable overrides both layers above, and every phase silently runs on whatever it names. An organization availableModels allowlist can likewise skip a value in favour of the inherited model. Run /sdlc:doctor to see whether either is in play — while an override is active, none of the cost figures below apply.


Cost Optimization: model + effort

Why model + effort instead of temperature

Claude Code subagent frontmatter supports:

  • modelopus / sonnet / haiku / fable / full model ID / inherit
  • effortlow / medium / high / xhigh / maxoverrides the session-level reasoning budget

temperature is not configurable per-subagent in Claude Code. We control cost exclusively through model + effort.

Note the asymmetry between the two levers: model can be overridden per dispatch (the Agent tool takes a model parameter), but effort cannot — it is read from frontmatter only. An agent invoked twice in one phase therefore shares one effort value across both invocations, which is why the development phase varies model between its passes but not effort. See MODEL-ROUTING.md §6.

model_plan is this marketplace's own optional field, not a Claude Code one — the orchestrator resolves it for the development planning pass and falls back to model when absent.

model+effort table for all agents

Development-phase agents carry a second tier in model_plan — resolved for the planning pass only, with model used for implementation.

AgentPluginmodelmodel_planeffortRationale
business-analystsdlcopushighRequirement errors cascade through every later phase; small token volume, maximum leverage
security-analystsdlcopusxhighNon-obvious vulnerabilities (TOCTOU, JWT confusion, SSRF) need deep reasoning, and a miss here is silent — no error, no failing test
developersdlcsonnetopusmediumVanilla fallback — Opus plans, Sonnet executes against the approved plan
qa-engineersdlcsonnetmediumTests against clear criteria; hard 3-attempt cap keeps cost in check
document-writersdlchaikulowStructured output from known facts; ~5x cheaper than Opus
angular-architectangularsonnetopusmediumAngular standalone/NgModule, signals, NgRx
aspnet-core-architectaspnet-coresonnetopusmediumMinimal API / MVC, DTOs, FluentValidation, DI, authorization, HTTPS/HSTS
django-architectdjangosonnetopusmediumDjango views, DRF ViewSets/serializers, URLconf, models
fastapi-architectfastapisonnetopusmediumAPIRouter, Pydantic v2, Depends, async SQLAlchemy, OAuth2/JWT
flask-architectflasksonnetopusmediumApp factory, Blueprints, Flask-Login/JWT, Marshmallow/WTForms
inertia-react-architectinertia-reactsonnetopusmediumInertia.js + React server-driven pages, no React Router
inertia-vue-architectinertia-vuesonnetopusmediumInertia.js + Vue 3 server-driven pages, no client-side router
java-architectjavasonnetopusmediumPlain Java — records, domain objects, build tooling
laravel-architectlaravelsonnetopusmediumLaravel idioms + Inertia props contract
nest-architectnestjssonnetopusmediumConvention skills carry per-domain depth
nextjs-architectnextjssonnetopusmediumRSC/Client patterns well-defined by spec and convention skills
node-architectnodejssonnetopusmediumExpress/Fastify — implementation driven by clear Node.js idioms
python-architectpythonsonnetopusmediumPlain Python — CLI tools, pipelines, API clients
react-architectreactsonnetopusmediumReact conventions and state/routing skills
rn-architectreact-nativesonnetopusmediumExpo/bare + iOS/Android axes
spring-boot-architectspring-bootsonnetopusmediumSpring Boot — controllers, JPA, migrations, Spring Security
symfony-architectsymfonysonnetopusmediumAttribute routing, controllers-as-services, DI, Voters, Serializer, Messenger, Twig
vue-architectvuesonnetopusmediumVue 3/2 detection + convention skills
efcore-specialistaspnet-coresonnetlowEF Core Fluent API config, indexes, migration generation and verification
django-migrations-specialistdjangosonnetlowModel fields/Meta indexes, makemigrations/sqlmigrate/migrate, migrate --check
alembic-specialistfastapisonnetlowSQLAlchemy 2.0 mapped classes, autogenerated Alembic revisions, upgrade + verify
flask-migrate-specialistflasksonnetlowFlask-Migrate revision, upgrade, schema check
artisan-specialistlaravelsonnetlowMechanical DB work: column types, indexes, factories
doctrine-specialistsymfonysonnetlowDoctrine entity mappings, generated migrations, fixtures, schema verification

High effort on Opus is the most expensive combination, so only the two leverage agents use it — BA and Security, where reasoning quality propagates into every later phase. Security sits one rung higher (xhigh) because its failures are the only ones the pipeline cannot detect on its own.

Estimated cost for a medium feature

Assumes a medium feature, split roughly by phase workload below. Sonnet pricing includes an introductory discount through 2026-08-31 ($2/$10 per MTok in/out vs. the $3/$15 standard rate) — both are shown since most runs during the discount window will land closer to the lower figure.

PhaseAgentModelEst. input / output tokensCost (standard)Cost (intro, thru 2026-08-31)
BAbusiness-analystopus/high40K / 3K~$0.28~$0.28
Dev — planstack architectopus80K / 4K~$0.50~$0.50
Dev — implementstack architectsonnet/medium250K / 8K~$0.87~$0.58
QAqa-engineersonnet/medium (≤3 attempts)100K / 5K~$0.38~$0.25
Securitysecurity-analystopus/xhigh40K / 6K~$0.35~$0.35
Docsdocument-writerhaiku/low15K / 2K~$0.03~$0.03
Total525K / 28K~$2.40~$1.98

Per-MTok list prices used above: opus $5 in / $0.50 cached / $25 out; sonnet $3 / $0.30 / $15; haiku $1 / $0.10 / $5.

Two rows carry real uncertainty. The Dev plan pass has no measured token volume yet — 80K/4K is an assumption. Security at xhigh bills thinking tokens at the output rate, and how much xhigh adds has not been measured here; the row assumes output roughly doubles. Both are replaced by real numbers once docs/cost-baseline.md is populated.

This is roughly 30% above the previous single-tier estimate, and the trade is deliberate: the argument is cost per completed task, not per run. A development pass that starts from a weak plan gets redone and drags QA and security with it, which costs more than the delta. To opt out on any agent, set model_plan: sonnet or drop the field — that agent reverts to single-tier behaviour with no other changes.

Actual cost varies with codebase size, diff scope, and QA retry count — treat this as an order-of-magnitude estimate, not a quote. It also excludes the orchestrator's own token use; see docs/cost-baseline.md.

Additional cost levers

  • Skip-rules: typo-fix, whitespace-only, config-only, lightweight-no-db — skip unnecessary phases automatically.
  • QA hard cap: max 3 attempts to fix failing tests, then STOP.
  • Compact handoffs: each agent returns a ≤2–3K-token summary.
  • Prompt caching: stable system prompts (no timestamps, slugs, or dynamic content) → ~60% cache hit rate on Sonnet.
  • Workflow cost caps: caps.max_total_cost_usd in a recipe halts the run (with confirmation) once the running total crosses it. Set as a runaway guard, not a routine blocker.
  • Fewer spawns beat cheaper spawns. The dominant cost driver is the per-phase subagent spawn, so removing an unnecessary phase saves more than re-tiering one. Skip-rules are the strongest lever here; adding a cheap agent to feed an expensive one usually loses.

Available Plugins

PluginTypeStack / Technology
sdlcCorePipeline orchestrator + 5 default agents
js-foundationShared libTypeScript + npm patterns (no stack profile)
php-foundationShared libPHP 8 conventions + Composer + PHPUnit/Pest (no stack profile)
java-foundationShared libJava conventions + Maven/Gradle + JVM testing (no stack profile)
csharp-foundationShared libC# conventions + dotnet CLI/NuGet + xUnit/Moq/FluentAssertions (no stack profile)
nodejs-pluginStack providerExpress / Fastify / Koa / plain Node.js
nestjs-pluginStack providerNestJS + TypeORM/Prisma/Mongoose
nextjs-pluginStack providerNext.js App Router (full-stack)
react-pluginStack providerReact SPA (Vite/Webpack)
vue-pluginStack providerVue 3 SPA
angular-pluginStack providerAngular 18-21
react-native-pluginStack providerReact Native / Expo
inertia-vue-pluginStack providerInertia.js + Vue 3 (Laravel backend)
inertia-react-pluginStack providerInertia.js + React (Laravel backend)
laravel-pluginStack providerLaravel + Eloquent + Artisan + Inertia
symfony-pluginStack providerSymfony + Doctrine ORM + Twig / API Platform
java-pluginStack providerPlain Java (Maven/Gradle, no web framework)
spring-boot-pluginStack providerSpring Boot REST + Spring Data JPA + Flyway/Liquibase
aspnet-core-pluginStack providerASP.NET Core Web API + EF Core (.NET 6+)

Optional external dependencies

PluginSourceRole
superpowersobra/superpowersAdds brainstorming to BA, TDD to QA, verification-before-completion to architects. Pipeline degrades gracefully without it.
security-guidanceanthropics/claude-plugins-officialHooks-based in-session security review: per-edit pattern match, end-of-turn diff review. The OWASP security phase runs fully without it.

Stack Composition Examples

ProjectProfileDevelopment dispatch
Laravel + Vue SPA (Inertia)laravel (100) + inertia-vue (175)laravel-architect (backend) + artisan-specialist (db) + inertia-vue-architect (frontend)
Laravel + React SPA (Inertia)laravel (100) + inertia-react (175)laravel-architect (backend) + artisan-specialist (db) + inertia-react-architect (frontend)
Symfony + Doctrinesymfony (100)symfony-architect (backend) + doctrine-specialist (db)
Express + Reactnodejs (100) + react (150)node-architect (backend) + react-architect (frontend)
NestJS + Angularnestjs (200) + angular (200)nest-architect (backend) + angular-architect (frontend)
Next.js (full-stack)nextjs (250)nextjs-architect (owns backend + frontend)
Expo mobilereact-native (300)rn-architect (frontend)
Vanilla Node.jsnodejs (100)node-architect
Plain Java (no framework)java (100)java-architect
Spring Boot REST APIspring-boot (150)spring-boot-architect
ASP.NET Core Web API + EF Coreaspnet-core (100)aspnet-core-architect (backend) + efcore-specialist (db)
ASP.NET Core + React SPAaspnet-core (100) + react (150)aspnet-core-architect (backend) + efcore-specialist (db) + react-architect (frontend)
Unknown stackvanilla (0)developer (fallback)

Local Overrides

A .claude/sdlc.local.yaml file at the project root (not inside the plugin) lets you adapt the pipeline without modifying any plugin:

post_pipeline_checks:
  - "composer test"
  - "php artisan route:list --json"

phase_command_overrides:
  qa: "php artisan test --coverage --min=80"

convention_skills_extra:
  - "local:custom-coding-standards"

skip_phases:
  - security  # for internal hotfix branches

extra_phase_prompts:
  development: "Follow our internal-styleguide.md"

Adding a New Stack Plugin

Contract for a new framework provider:

plugins/your-framework-plugin/
├── .claude-plugin/
│   └── plugin.json          # { "name": "...", "dependencies": ["sdlc"] }
├── stack.md                 # YAML frontmatter: stack, priority, aspects, detect
├── agents/
│   └── your-architect.md    # frontmatter: name, model, effort, color, tools
├── skills/
│   └── your-conventions/
│       └── SKILL.md
└── README.md

stack.md example

---
stack: django
priority: 150
aspects: [backend, database]
detect:
  any:
    - file_exists: manage.py
    - file_contains:
        path: pyproject.toml
        pattern: "[Dd]jango"
    - file_contains:
        path: requirements.txt
        pattern: "[Dd]jango"
---
# Django Stack Profile

## Agents per phase
# business_analysis: business-analyst
# development.backend: django-architect
# database: django-migrations-specialist
# qa: qa-engineer / security: security-analyst / documentation: document-writer

## Convention skills to apply
# python-foundation:python-conventions
# python-foundation:python-tooling
# python-foundation:pytest-testing
# django-plugin:django-conventions
# django-plugin:django-orm-patterns

Schema validation

# Validate plugin.json
npx check-jsonschema --schemafile schemas/plugin.schema.json .claude-plugin/plugin.json

# Validate stack.md frontmatter
npx check-jsonschema --schemafile schemas/stack.schema.json <(yq '.frontmatter' stack.md)

Installation (step-by-step)

1. Add the marketplace

/plugin marketplace add AratKruglik/claude-sdlc
# or for local development:
/plugin marketplace add /path/to/claude-sdlc

2. Install core + required plugins

# Core is installed automatically as a dependency
/plugin install nodejs-plugin@sdlc-marketplace     # Node.js backend
/plugin install js-foundation@sdlc-marketplace     # required for JS/TS plugins

3. Optional external dependencies

/plugin marketplace add mattpocock/skills
/plugin install mattpocock-skills@skills
/plugin marketplace add obra/superpowers
/plugin install superpowers@superpowers-marketplace

/plugin marketplace add anthropics/claude-plugins-official
/plugin install security-guidance@claude-plugins-official

4. Verify

/sdlc:doctor
# → Stack profiles detected: vanilla(0), nodejs(100), react(150), ...
# → superpowers: ✅ installed
# → security-guidance: ⚠️ not found (pipeline will run in degraded mode)

/sdlc:list-stacks
# → Shows all matched stack profiles for current project

5. Run

/sdlc:start "Add user authentication with JWT"
# → Auto-detects stack, runs 5 phases in-session (with a dev-phase approval gate), creates PR

Requirements

  • Claude Code (latest)
  • API Tier 2+ or Claude Max — a medium feature uses ~445K input tokens; Pro plan rate limits will throttle the pipeline.
  • A Git repository for document-writer (PR creation).

License

MIT — see LICENSE.

Rendered live from AratKruglik/claude-sdlc's GitHub README — not stored, always reflects the source repo.

27 Plugins

NameDescriptionCategorySource
superpowersRuntime dependency. Enables richer reasoning in BA (brainstorming), QA (test-driven-development), and all architect agents (verification-before-completion). Pipeline degrades gracefully without it.https://github.com/obra/superpowers.git
security-guidanceOptional external dependency (official Anthropic). Hooks-based in-session security review: per-edit pattern match, end-of-turn diff review, commit review. Pipeline runs without it; the security phase still does full OWASP.https://github.com/anthropics/claude-plugins-official.git
frontend-designOptional external dependency (official Anthropic). Design guidance for the frontend architects (react, vue, angular, react-native, inertia-*). Raw generation converges on generic AI aesthetics regardless of model tier — this is the fix for that, not a bigger model. Pipeline runs without it.https://github.com/anthropics/claude-plugins-official.git
sdlcUniversal SDLC orchestrator with auto-discovery of stack providers. Provides pipeline-orchestrator skill plus 5 cost-tiered default agents (BA Opus/high, Dev Sonnet/medium, QA Sonnet/medium, Sec Opus/high, Docs Haiku/low). Slash commands: /sdlc:start, /sdlc:batch, /sdlc:doctor, /sdlc:list-stacks, /sdlc:security-init../plugins/sdlc
js-foundationShared JavaScript/TypeScript foundation skills (typescript-patterns + npm-patterns). No agent, no stack profile. Referenced cross-plugin by every JS/TS framework provider in the marketplace../plugins/js-foundation
nodejs-pluginNode.js backend stack provider for Express/Fastify/Koa/plain Node.js projects. Adds node-architect agent (Sonnet/medium) and node-conventions skill. Reuses TypeScript and npm skills from js-foundation. Composes with frontend plugins via aspect resolution../plugins/nodejs-plugin
nestjs-pluginNestJS opinionated backend stack provider. Adds nest-architect agent (Sonnet/medium) covering REST + ORM (TypeORM/Prisma/Mongoose) + GraphQL + WebSockets + Microservices. Reuses TypeScript and npm skills from js-foundation../plugins/nestjs-plugin
nextjs-pluginNext.js full-stack React framework. Multi-aspect ownership (backend + frontend, priority=250). App Router, Server Components, Server Actions, Route Handlers, ISR/SSG/SSR. Adds nextjs-architect agent (Sonnet/medium). Reuses TypeScript and npm skills from js-foundation../plugins/nextjs-plugin
react-pluginReact SPA frontend stack provider (priority=150). Components, hooks, state management, routing, react-hook-form, RTL+Vitest+Playwright. Adds react-architect agent (Sonnet/medium). Composes with backend plugins via aspect resolution../plugins/react-plugin
vue-pluginVue 3 SPA frontend stack provider (priority=150). Composition API, Pinia, Vue Router v4, vee-validate + zod, Vitest + @vue/test-utils. Adds vue-architect agent (Sonnet/medium). Vue 3 primary; Vue 2 fallback notes../plugins/vue-plugin
angular-pluginAngular 18-21 SPA frontend stack provider (priority=200). Standalone + NgModule equally, signals + NgRx, typed Reactive Forms, Angular Router. Adds angular-architect agent (Sonnet/medium). Reuses TypeScript and npm skills from js-foundation../plugins/angular-plugin
react-native-pluginReact Native mobile stack provider (priority=300). Both Expo (managed/dev-client/EAS) and bare workflows. React Navigation v7 + Expo Router, AsyncStorage/MMKV, Jest + RTL Native. Adds rn-architect agent (Sonnet/medium). Wins over react-plugin on RN projects../plugins/react-native-plugin
php-foundationShared PHP foundation skills for the SDLC marketplace. Contains stack-agnostic PHP conventions (php-conventions — readonly properties, enums, match, constructor promotion, strict_types, PSR-12), composer-tooling (PSR-4 autoloading, version constraints, scripts, platform requirements), and php-testing (PHPUnit + Pest structure, data providers, test doubles, fixtures, coverage). No agent, no stack profile — pure shared library. Referenced by laravel-plugin and symfony-plugin../plugins/php-foundation
laravel-pluginLaravel backend + database stack provider (priority=100). Registers Laravel profile via stack.md; provides laravel-architect (Sonnet/medium, backend-only) and artisan-specialist (Sonnet/low) agents plus laravel-conventions and eloquent-patterns skills. Reuses php-foundation skills. Extra database phase after development. Laravel Boost MCP integration when wired. Pairs with inertia-vue-plugin or inertia-react-plugin for Inertia frontends../plugins/laravel-plugin
symfony-pluginSymfony backend + database stack provider (priority=100). Detects symfony/framework-bundle in composer.json. Provides symfony-architect (Sonnet/medium — attribute routing, controllers-as-services, DI, Form types, validation, Voters, Serializer, Messenger, Twig) and doctrine-specialist (Sonnet/low — entity mappings, generated migrations, fixtures, schema verification) agents plus symfony-conventions and doctrine-patterns skills. Reuses php-foundation skills. Extra database phase after development. Renders Twig views and designs the Serializer/API contract for SPA frontend plugins (vue/react)../plugins/symfony-plugin
inertia-vue-pluginInertia.js + Vue 3 frontend stack provider (priority=175). Pairs with laravel-plugin for full-stack Laravel+Inertia projects. Detects @inertiajs/vue3 adapter. Adds inertia-vue-architect agent (Sonnet/medium). Beats generic vue-plugin (150) for the frontend aspect. Server-driven Inertia pages — no client-side Vue Router../plugins/inertia-vue-plugin
inertia-react-pluginInertia.js + React frontend stack provider (priority=175). Pairs with laravel-plugin for full-stack Laravel+Inertia+React projects. Detects @inertiajs/react adapter. Adds inertia-react-architect agent (Sonnet/medium). Beats generic react-plugin (150) for the frontend aspect. Server-driven Inertia pages — no React Router../plugins/inertia-react-plugin
csharp-foundationShared C#/.NET foundation skills for the SDLC marketplace. Contains stack-agnostic C# conventions (csharp-conventions — nullable reference types, records, pattern matching, async/await + CancellationToken, IDisposable, naming), dotnet-tooling (dotnet CLI, NuGet PackageReference, central package management, Directory.Build.props, dotnet format), and dotnet-testing (xUnit [Fact]/[Theory], Moq/NSubstitute, FluentAssertions, coverlet coverage). No agent, no stack profile — pure shared library. Referenced by aspnet-core-plugin../plugins/csharp-foundation
aspnet-core-pluginASP.NET Core backend + database stack provider (priority=100). Detects projects via appsettings.json. Provides aspnet-core-architect (Sonnet/medium — Minimal API / MVC controllers, DTOs, FluentValidation, DI, Options pattern, authorization policies, HTTPS/HSTS, EF Core entity stubs, Program.cs composition) and efcore-specialist (Sonnet/low — entity Fluent API configuration, column types, indexes, unique constraints, cascade rules, migration generation and verification) agents plus aspnet-conventions and efcore-patterns skills. Reuses csharp-foundation skills. Extra database phase after development. Designs the API contract for SPA frontend plugins (vue/react)../plugins/aspnet-core-plugin
java-foundationShared Java foundation skills for the SDLC marketplace. Contains stack-agnostic Java conventions (java-conventions — records, sealed types, Optional, streams), build-tooling (Maven/Gradle wrapper, BOM dependency management), and jvm-testing (JUnit 5, Mockito, AssertJ, Testcontainers). No agent, no stack profile — pure shared library. Referenced by java-plugin and spring-boot-plugin../plugins/java-foundation
java-pluginPlain Java backend stack provider (priority=100). Detects any Maven or Gradle project (pom.xml / build.gradle / build.gradle.kts). Adds java-architect agent (Sonnet/medium) for plain Java libraries, CLI tools, and micro-services without a recognized web framework. Falls back gracefully when spring-boot-plugin (priority 150) matches instead. Reuses java-foundation skills../plugins/java-plugin
spring-boot-pluginSpring Boot backend stack provider (priority=150). Detects Spring Boot projects via spring-boot marker in any build file. Adds spring-boot-architect agent (Sonnet/medium) covering REST controllers, Spring Data JPA, Bean Validation, Spring Security, Flyway/Liquibase migrations, and @SpringBootTest/@WebMvcTest/@DataJpaTest test slices. Beats java-plugin (100) on the backend aspect for Spring projects. Reuses java-foundation skills../plugins/spring-boot-plugin
python-foundationShared Python foundation skills for the SDLC marketplace. Contains stack-agnostic Python conventions (python-conventions — type hints, dataclasses, match, pathlib, enums, context managers, PEP 8, strict typing), python-tooling (pyproject.toml as source of truth, pip/Poetry/uv/pipenv, venv, lockfiles, ruff lint+format, mypy, console scripts), and pytest-testing (fixtures, parametrize, conftest, monkeypatch, unittest.mock, pytest-cov). No agent, no stack profile — pure shared library. Referenced by django-plugin, fastapi-plugin, flask-plugin, and python-plugin../plugins/python-foundation
python-pluginPlain Python backend stack provider (priority=100). Detects any Python project via pyproject.toml/requirements.txt/setup.py/Pipfile. Adds python-architect agent (Sonnet/medium) for libraries, CLI tools, scripts, data pipelines, and microservices without a recognized web framework. Falls back gracefully when django-plugin/fastapi-plugin/flask-plugin (priority 150) match instead. Adds python-app-conventions skill. Reuses python-foundation skills../plugins/python-plugin
django-pluginDjango backend + database stack provider (priority=150). Detects manage.py or Django in pyproject.toml/requirements.txt. Provides django-architect (Sonnet/medium — views, DRF ViewSets, serializers, forms, URLconf, middleware, signals, model definitions, Django templates, DRF API contract for SPA frontends) and django-migrations-specialist (Sonnet/low — model field finalization, indexes/constraints, makemigrations, sqlmigrate review, migrate, verify) agents plus django-conventions and django-orm-patterns skills. Reuses python-foundation skills. Extra database phase after development../plugins/django-plugin
fastapi-pluginFastAPI backend + database stack provider (priority=150). Detects fastapi in pyproject.toml/requirements.txt. Provides fastapi-architect (Sonnet/medium — APIRouter, Pydantic v2 schemas, Depends injection, async endpoints, OAuth2/JWT, OpenAPI, SQLAlchemy model stubs, API contract for SPA frontends) and alembic-specialist (Sonnet/low — SQLAlchemy 2.0 mapped classes, alembic revision --autogenerate, migration review, alembic upgrade head, verification) agents plus fastapi-conventions and sqlalchemy-patterns skills. Reuses python-foundation skills. Extra database phase after development../plugins/fastapi-plugin
flask-pluginFlask backend + database stack provider (priority=150). Detects Flask in pyproject.toml/requirements.txt. Provides flask-architect (Sonnet/medium — app factory, Blueprints, views, Flask-Login/JWT auth, Jinja2 templates or JSON API, Marshmallow/WTForms, SQLAlchemy model definitions) and flask-migrate-specialist (Sonnet/low — Flask-Migrate: flask db migrate, SQL review, flask db upgrade, flask db check) agents plus flask-conventions and sqlalchemy-patterns skills. Reuses python-foundation skills. Extra database phase after development../plugins/flask-plugin

0 Comments

Login required
Log in to post a comment or update on this repo.

No comments yet — be the first to share an update.