frontend

Comprehensive frontend development toolkit with TypeScript, React 19, Vite, TanStack Router & Query v5, shadcn/ui. Features code-analysis integration via claudemem semantic search (replaces claude-context MCP), session-based artifact isolation, LLM performance tracking, shadcn/ui component library knowledge (60+ components), multi-model plan/code review (parallel, 3-5x speedup), 13 focused skills, intelligent workflow detection, and Chrome DevTools MCP debugging.

View on GitHub
Author Jack Rudenko
Namespace @MadAppGang/mag-claude-plugins
Category development
Version 3.13.0
Stars 204
Downloads 4
self.md verified
Table of content

Comprehensive frontend development toolkit with TypeScript, React 19, Vite, TanStack Router & Query v5, shadcn/ui. Features code-analysis integration via claudemem semantic search (replaces claude-context MCP), session-based artifact isolation, LLM performance tracking, shadcn/ui component library knowledge (60+ components), multi-model plan/code review (parallel, 3-5x speedup), 13 focused skills, intelligent workflow detection, and Chrome DevTools MCP debugging.

Installation

npx claude-plugins install @MadAppGang/mag-claude-plugins/frontend

Contents

Folders: agents, commands, mcp-servers, skills

Files: CHANGELOG.md, DEPENDENCIES.md, QUICK_REFERENCE_SPEC.md, README.md, TIERED_PRICING_SPEC.md, plugin.json, recommended-models.md

Documentation

This directory contains resources shared across all Claude Code plugins.

Purpose

Centralized management of common resources to ensure consistency and reduce duplication.

Architecture

shared/                                    ← SOURCE OF TRUTH (edit here)
├── recommended-models.md                  ← Model recommendations
├── QUICK_REFERENCE_SPEC.md                ← Quick reference spec
├── README.md                              ← This file
└── skills/                                ← Shared skills
    └── claudish-usage/                    ← Claudish usage skill
        └── SKILL.md                       ← AUTO-DISTRIBUTED

scripts/
└── sync-shared.ts                         ← Distribution script (recursive)

plugins/
├── frontend/
│   ├── recommended-models.md              ← AUTO-COPIED
│   ├── QUICK_REFERENCE_SPEC.md            ← AUTO-COPIED
│   ├── README.md                          ← AUTO-COPIED
│   └── skills/                            ← AUTO-CREATED
│       └── claudish-usage/                ← AUTO-CREATED
│           └── SKILL.md                   ← AUTO-COPIED
├── bun/
│   ├── recommended-models.md              ← AUTO-COPIED
│   ├── QUICK_REFERENCE_SPEC.md            ← AUTO-COPIED
│   ├── README.md                          ← AUTO-COPIED
│   └── skills/                            ← AUTO-CREATED
│       └── claudish-usage/                ← AUTO-CREATED
│           └── SKILL.md                   ← AUTO-COPIED
└── code-analysis/
    ├── recommended-models.md              ← AUTO-COPIED
    ├── QUICK_REFERENCE_SPEC.md            ← AUTO-COPIED
    ├── README.md                          ← AUTO-COPIED
    └── skills/                            ← AUTO-CREATED
        └── claudish-usage/                ← AUTO-CREATED
            └── SKILL.md                   ← AUTO-COPIED

How It Works

1. Edit Source Files

All shared resources are stored in shared/ directory. This is the ONLY place you should edit these files.

Example:

# Edit the source
vim shared/recommended-models.md

2. Sync to Plugins

Run the sync script to copy resources to all plugins:

# Sync all shared resources
bun run sync-shared

# Or use the short alias
bun run sync

3. Automatic Distribution

The sync script copies each file from shared/ to all plugin directories:

4. Plugin Usage

Commands and agents read the synced files using plugin-relative paths:

For flat files:

Read file: ${CLAUDE_PLUGIN_ROOT}/recommended-models.md

For skills:

Read file: ${CLAUDE_PLUGIN_ROOT}/skills/claudish-usage/SKILL.md

This ensures each plugin always has access to the latest recommendations and shared skills.

Shared Skills

What are Shared Skills?

Shared skills are reusable knowledge modules that are distributed across all plugins. They provide:

Current Shared Skills

  1. claudish-usage (skills/claudish-usage/SKILL.md)
    • How to use Claudish CLI with OpenRouter models
    • File-based sub-agent patterns
    • Model selection and cost tracking
    • Best practices for AI agents

Adding New Shared Skills

  1. Create skill directory: shared/skills/skill-name/
  2. Add SKILL.md file with YAML frontmatter:
    ---
    name: skill-name
    description: Clear description of what the skill does and when to use it
    ---
    
  3. Write skill content (instructions, examples, best practices)
  4. Run bun run sync-shared
  5. Skill is automatically distributed to all plugins and discovered by Claude

Using Shared Skills in Commands/Agents

Skills are automatically discovered - Claude loads them based on the task at hand.

Skills must have YAML frontmatter with name and description:

---
name: claudish-usage
description: Guide for using Claudish CLI to run Claude Code with OpenRouter models. Use when working with external AI models, multi-model workflows, or cost optimization.
---

How it works:

  1. Startup: Skill metadata (name + description) loaded into system prompt (~100 tokens/skill)
  2. Task matching: When user request matches description, Claude automatically reads SKILL.md via bash
  3. Progressive loading: Claude only loads relevant skills, avoiding context pollution

You do NOT need to:

Claude automatically uses skills when:

…(truncated)

Included Skills

This plugin includes 4 skill definitions:

api-integration

Use when integrating Apidog + OpenAPI specifications with your React app. Covers MCP server setup, type generation, and query layer integration. Use when setting up API clients, generating types from OpenAPI, or integrating with Apidog MCP.

View skill definition

API Integration (Apidog + MCP)

Integrate OpenAPI specifications with your frontend using Apidog MCP for single source of truth.

Goal

The AI agent always uses the latest API specification to generate types and implement features correctly.

Architecture

Apidog (or Backend)
  → OpenAPI 3.0/3.1 Spec
    → MCP Server (apidog-mcp-server)
      → AI Agent reads spec
        → Generate TypeScript types
          → TanStack Query hooks
            → React Components

Process

1. Expose OpenAPI from Apidog

Option A: Remote URL

Option B: Local File

2. Wire MCP Server

// .claude/mcp.json or settings
{
  "mcpServers": {
    "API specification": {
      "command": "npx",
      "args": [
        "-y",
        "apidog-mcp-server@latest",
        "--oas=https://api.example.com/openapi.json"
      ]
    }
  }
}

With Local File:

{
  "mcpServers": {
    "API specification": {
      "command": "npx",
      "args": [
        "-y",
        "apidog-mcp-server@latest",
        "--oas=./api-spec/openapi.json"
      ]
    }
  }
}

Multiple APIs:

{
  "mcpServers": {
    "Main API": {
      "command": "npx",
      "args": ["-y", "apidog-mcp-server@latest", "--oas=https://api.main.com/openapi.json"]
    },
    "Auth API": {
      "command": "npx

...(truncated)

</details>

### api-spec-analyzer

> Analyzes API documentation from OpenAPI specs to provide TypeScript interfaces, request/response formats, and implementation guidance. Use when implementing API integrations, debugging API errors (400, 401, 404), replacing mock APIs, verifying data types, or when user mentions endpoints, API calls, or backend integration.

<details>
<summary>View skill definition</summary>

# API Specification Analyzer

This Skill analyzes OpenAPI specifications to provide accurate API documentation, TypeScript interfaces, and implementation guidance for the caremaster-tenant-frontend project.

## When to use this Skill

Claude should invoke this Skill when:

- User is implementing a new API integration
- User encounters API errors (400 Bad Request, 401 Unauthorized, 404 Not Found, etc.)
- User wants to replace mock API with real backend
- User asks about data types, required fields, or API formats
- User mentions endpoints like "/api/users" or "/api/tenants"
- Before implementing any feature that requires API calls
- When debugging type mismatches between frontend and backend

## Instructions

### Step 1: Fetch API Documentation

Use the MCP server tools to get the OpenAPI specification:

mcp__Tenant_Management_Portal_API__read_project_oas_f4bjy4


If user requests fresh data or if documentation seems outdated:

mcp__Tenant_Management_Portal_API__refresh_project_oas_f4bjy4


For referenced schemas (when $ref is used):

mcp__Tenant_Management_Portal_API__read_project_oas_ref_resources_f4bjy4


### Step 2: Analyze the Specification

Extract the following information for each relevant endpoint:

1. **HTTP Method and Path**: GET /api/users, POST /api/tenants, etc.
2. **Authentication**: Bearer token, API key, etc.
3. **Request Parameters**:
   - Path parameters (e.g., `:id`)
   - Query parameters (e.g., `?page=1&limit=10`)
   - Request body sch

...(truncated)

</details>

### browser-debugger

> Systematically tests UI functionality, validates design fidelity with AI visual analysis, monitors console output, tracks network requests, and provides debugging reports using Chrome DevTools MCP. Use after implementing UI features, for design validation, when investigating console errors, for regression testing, or when user mentions testing, browser bugs, console errors, or UI verification.

<details>
<summary>View skill definition</summary>

# Browser Debugger

This Skill provides comprehensive browser-based UI testing, visual analysis, and debugging capabilities using Chrome DevTools MCP server and optional external vision models via Claudish.

## When to Use This Skill

Claude and agents (developer, reviewer, tester, ui-developer) should invoke this Skill when:

- **Validating Own Work**: After implementing UI features, agents should verify their work in a real browser
- **Design Fidelity Checks**: Comparing implementation screenshots against design references
- **Visual Regression Testing**: Detecting layout shifts, styling issues, or visual bugs
- **Console Error Investigation**: User reports console errors or warnings
- **Form/Interaction Testing**: Verifying user interactions work correctly
- **Pre-Commit Verification**: Before committing or deploying code
- **Bug Reproduction**: User describes UI bugs that need investigation

## Prerequisites

### Required: Chrome DevTools MCP

This skill requires Chrome DevTools MCP. Check availability and install if needed:

```bash
# Check if available
mcp__chrome-devtools__list_pages 2>/dev/null && echo "Available" || echo "Not available"

# Install via claudeup (recommended)
npm install -g claudeup@latest
claudeup mcp add chrome-devtools

Optional: External Vision Models (via OpenRouter)

For advanced visual analysis, use external vision-language models via Claudish:

# Check OpenRouter API key
[[ -n "${OPENROUTER_API_KEY}" ]] && echo "OpenRouter confi

...(truncated)

</details>

### claudish-usage

> CRITICAL - Guide for using Claudish CLI ONLY through sub-agents to run Claude Code with OpenRouter models (Grok, GPT-5, Gemini, MiniMax). NEVER run Claudish directly in main context unless user explicitly requests it. Use when user mentions external AI models, Claudish, OpenRouter, or alternative models. Includes mandatory sub-agent delegation patterns, agent selection guide, file-based instructions, and strict rules to prevent context window pollution.

<details>
<summary>View skill definition</summary>

# Claudish Usage Skill

**Version:** 1.1.0
**Purpose:** Guide AI agents on how to use Claudish CLI to run Claude Code with OpenRouter models
**Status:** Production Ready

## ⚠️ CRITICAL RULES - READ FIRST

### 🚫 NEVER Run Claudish from Main Context

**Claudish MUST ONLY be run through sub-agents** unless the user **explicitly** requests direct execution.

**Why:**
- Running Claudish directly pollutes main context with 10K+ tokens (full conversation + reasoning)
- Destroys context window efficiency
- Makes main conversation unmanageable

**When you can run Claudish directly:**
- ✅ User explicitly says "run claudish directly" or "don't use a sub-agent"
- ✅ User is debugging and wants to see full output
- ✅ User specifically requests main context execution

**When you MUST use sub-agent:**
- ✅ User says "use Grok to implement X" (delegate to sub-agent)
- ✅ User says "ask GPT-5 to review X" (delegate to sub-agent)
- ✅ User mentions any model name without "directly" (delegate to sub-agent)
- ✅ Any production task (always delegate)

### 📋 Workflow Decision Tree

User Request ↓ Does it mention Claudish/OpenRouter/model name? → NO → Don’t use this skill ↓ YES ↓ Does user say “directly” or “in main context”? → YES → Run in main context (rare) ↓ NO ↓ Find appropriate agent or create one → Delegate to sub-agent (default)


## 🤖 Agent Selection Guide

### Step 1: Find the Right Agent

**When user requests Claudish task, follow this process:**

1. **Check for

...(truncated)

</details>

## Source

[View on GitHub](https://github.com/MadAppGang/claude-code)