thuantan2060 f2e09b317c feat(typescript-clean-code): add change-shape, TypeScript, and tooling smell layers
The catalog was Java-shaped and per-line only: a diff could satisfy every rule
and still force edits in eleven files. Three new reference layers cover what
rules.md is blind to by construction.

References:
- fowler.md: twelve change-shape smells, each with a detection question, a
  TypeScript remedy, and a "when NOT to fix" case
- typescript.md: TS1-TS10 native smells (any leakage, assertion vs validation,
  exhaustiveness, strictness flags), plus the G23-vs-discriminated-union
  resolution
- tooling.md: which smells a tool decides. knip replaces the archived ts-prune;
  documents that no-unsafe-type-assertion ships in no preset, not even
  strict-type-checked

Review posture, sourced to Google eng-practices and Conventional Comments:
approve when the change improves code health; a correct finding nobody acts on
is a false positive; polish is labelled ignorable. Every catalog entry now
carries severity, when-NOT-to-fix, and mechanically-detected-by.

Contested rules marked as positions with counter-arguments rather than law:
function length (Ousterhout's deep modules), comments, G23 polymorphism.

Refactoring workflow gains step 3, a Fowler sweep over all twelve that picks
the root smell before planning; later steps shift to 4-8.

SKILL.md rewritten as a router, 189 -> 108 lines: sharpened description, one
source of truth per concept, completion criteria per step, and ~154 lines of
frontmatter restatement removed across the step files.

Includes the research run the changes are sourced from under _bmad-output/.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-15 12:27:34 +07:00
2026-09-15 10:48:13 +07:00
2026-06-14 23:09:09 +07:00
2026-06-14 23:09:09 +07:00

BMAD Skills Marketplace

A collection of skills for Claude Code that extend its capabilities with specialized knowledge and workflows.

What are Skills?

Skills are self-contained instruction sets that teach Claude Code how to perform specialized tasks. Each skill is defined in a SKILL.md file with optional supporting resources like scripts, templates, and reference documentation.

Repository Structure

<root>/
├── skills/                  # All skill implementations
│   └── [skill-name]/        # Individual skill folder
│       ├── SKILL.md         # Required - Main skill definition
│       ├── scripts/         # Optional - Supporting scripts
│       ├── references/      # Optional - Reference documentation
│       └── assets/          # Optional - Images, resources
├── template/                # Starter template for new skills
├── spec/                    # Skills specification documentation
├── CONTRIBUTING.md          # Contribution guidelines
└── README.md                # This file

Installation

The easiest way to install skills using the skills package. Supports Claude Code, Cursor, Codex, OpenCode, and 20+ other agents.

# Install all skills
npx skills add bmad-labs/skills

# Install specific skills for TypeScript development
npx skills add bmad-labs/skills --skill typescript-clean-code --skill typescript-e2e-testing --skill typescript-unit-testing

# Install to specific agent (e.g., claude-code, cursor, codex)
npx skills add bmad-labs/skills -a claude-code

# Install globally (user-level, available in all projects)
npx skills add bmad-labs/skills -g

Method 2: Install via Plugin Marketplace

This method installs the entire plugin with all skills automatically detected.

Step 1: Add the marketplace

/plugin marketplace add bmad-labs/skills

Step 2: Install the plugin

/plugin install bmad-labs@skills

Step 3: Verify installation

# Open the plugin manager to see installed plugins
/plugin

# Or ask Claude: "What skills are available?"

Method 3: Install via settings.json

Add to your project's .claude/settings.json:

{
  "extraKnownMarketplaces": {
    "bmad-labs": {
      "source": {
        "source": "github",
        "repo": "bmad-labs/skills"
      }
    }
  },
  "enabledPlugins": {
    "bmad-labs@skills": true
  }
}

Method 4: Install Individual Skills

If you only need specific skills, add them individually to your project's .claude/settings.json:

{
  "skills": [
    "github:bmad-labs/skills/skills/typescript-clean-code",
    "github:bmad-labs/skills/skills/typescript-e2e-testing",
    "github:bmad-labs/skills/skills/typescript-unit-testing"
  ]
}

Available skill paths:

  • github:bmad-labs/skills/skills/mcp-builder
  • github:bmad-labs/skills/skills/typescript-e2e-testing
  • github:bmad-labs/skills/skills/typescript-unit-testing
  • github:bmad-labs/skills/skills/skill-creator
  • github:bmad-labs/skills/skills/typescript-clean-code
  • github:bmad-labs/skills/skills/book-converter
  • github:bmad-labs/skills/skills/skill-from-book
  • github:bmad-labs/skills/skills/slides-generator
  • github:bmad-labs/skills/skills/ai-multimodal
  • github:bmad-labs/skills/skills/atlassian-rest
  • github:bmad-labs/skills/skills/multi-repo-git-ops
  • github:bmad-labs/skills/skills/trade-off-analysis
  • github:bmad-labs/skills/skills/manual-testing
  • github:bmad-labs/skills/skills/load-docs
  • github:bmad-labs/skills/skills/rca-report
  • github:bmad-labs/skills/skills/jira-to-local

Troubleshooting

If skills are not detected after installation:

  1. Clear the plugin cache:

    rm -rf ~/.claude/plugins/cache
    
  2. Restart Claude Code (exit and run claude again)

  3. Verify skills are loaded:

    • Ask Claude: "What skills are available?"
    • Or run /plugin and check the Errors tab
  4. Check plugin structure:

    claude plugin validate .
    

Using Skills

Invoking a Skill

Once installed, you can invoke skills using the slash command format:

/skill-name [arguments]

Or simply describe what you need - Claude will automatically use relevant skills based on their descriptions.

Creating New Skills

  1. Copy the template/ folder to skills/your-skill-name/
  2. Edit SKILL.md with your skill definition
  3. Add any supporting scripts or references
  4. Test the skill locally
  5. Submit a PR

See CONTRIBUTING.md for detailed guidelines.

Skill Categories

Category Description
Development Coding, architecture, testing, DevOps
Productivity Documents, project management, workflows
Creative Design, content creation, branding
Data Processing, analysis, visualization

Available Skills

Skill Description Category
mcp-builder Guide for creating high-quality MCP servers for LLM integrations Development
typescript-e2e-testing Comprehensive E2E testing for TypeScript/NestJS with Kafka, PostgreSQL, MongoDB, Redis Development
typescript-unit-testing Unit testing for TypeScript/NestJS with Jest, DeepMocked, mongodb-memory-server, pg-mem, Kafka, Redis Development
typescript-clean-code Clean Code principles and workflows for TypeScript development Development
book-converter Convert EPUB books to formatted Markdown Productivity
skill-from-book Convert book content into structured Claude Code skills Development
slides-generator Generate interactive presentation slides using React + Tailwind, export to PDF or HTML Productivity
slide-maker Design-system-agnostic slide/deck maker — brainstorm, generate, and export to editable PPTX, image PPTX, standalone HTML, or PDF; 34 token-driven layouts, bundled neutral theme, works with your design system or a suggested one Productivity
ai-multimodal Process and generate multimedia content using Google Gemini API (audio, images, videos, documents) Data
atlassian-rest Jira & Confluence integration via REST APIs — tickets, epics, pages, status reports, triage, bidirectional BMAD document sync Productivity
multi-repo-git-ops Git operations across multi-repo systems with submodules — branching, committing, pushing, syncing across parent and service repos Development
release-please Automated versioning and releases with Google's release-please — pipeline setup, Conventional Commits, pre-releases, monorepos Development
trade-off-analysis Structured technology trade-off analysis with scored comparison matrices for architecture decisions, build-vs-buy, and technology selection Productivity
manual-testing Plan, write, review, execute, and maintain manual test cases — API/backend, frontend, pipeline, AI/LLM, and infrastructure testing with risk-based prioritization Development
load-docs Load documents (files, folders, URLs, PDFs) fully into the main agent's context for follow-up Q&A, summarization, or review Productivity
rca-report Investigate and document production incidents — guides evidence collection during the investigation and produces rich, reproducible Root Cause Analysis reports with layered root cause, workaround playbook, Five Whys, and binned recommendations Development
software-research STORM-style, dev-specialized research: auto-detects a mode (library-eval, deep-research, architecture/ADR, spike, migration), runs expert lenses in parallel, and verifies every claim against primary sources (docs, RFCs, OSV/CVE, benchmarks) version-aware Development
jira-to-local Pull a Jira issue onto disk as readable local files — fields, comments, subtasks, worklogs, images, dev panel, and any linked Confluence page; read-only, markdown or JSON output Productivity

Expand your Claude Code capabilities with these excellent skills from the community:

Vercel Labs Skills

# Install agent-browser skill for browser automation
npx skills add vercel-labs/agent-browser

# Install React best practices skill
npx skills add vercel-labs/agent-skills --skill vercel-react-best-practices

# Install all recommended skills at once
npx skills add vercel-labs/agent-browser && \
npx skills add vercel-labs/agent-skills --skill vercel-react-best-practices
Repository Skill Description
vercel-labs/agent-browser agent-browser Browser automation and web interaction capabilities
vercel-labs/agent-skills vercel-react-best-practices React development best practices and patterns

License

MIT License - See individual skills for specific licensing.

S
Description
E2E and integration testing for TypeScript/NestJS projects using Jest, supertest, and real infrastructure via Docker (Kafka, PostgreSQL, MongoDB, Redis) with…
Readme MIT 23 MiB
Languages
HTML 46.9%
JavaScript 41.1%
Python 8.2%
CSS 3.7%
Shell 0.1%