Compare commits
13 Commits
v8.0.0
...
developmen
| Author | SHA1 | Date | |
|---|---|---|---|
| bbce9ed321 | |||
| 16bf1b969d | |||
| 1fe19b85e3 | |||
| e824b18e44 | |||
| f4e62dd1fb | |||
| 97362576dc | |||
| a169399da7 | |||
| 47d2ef2e07 | |||
| 78429a709f | |||
| 382a3a3af8 | |||
| 2d51df7a42 | |||
| 5098422858 | |||
| 9ba2e660d3 |
@@ -6,12 +6,12 @@
|
||||
},
|
||||
"metadata": {
|
||||
"description": "Project management plugins with Gitea and NetBox integrations",
|
||||
"version": "8.0.0"
|
||||
"version": "9.1.2"
|
||||
},
|
||||
"plugins": [
|
||||
{
|
||||
"name": "projman",
|
||||
"version": "7.1.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Sprint planning and project management with Gitea integration",
|
||||
"source": "./plugins/projman",
|
||||
"author": {
|
||||
@@ -20,9 +20,6 @@
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/projman/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"hooks": [
|
||||
"./hooks/hooks.json"
|
||||
],
|
||||
"category": "development",
|
||||
"tags": [
|
||||
"sprint",
|
||||
@@ -30,12 +27,11 @@
|
||||
"gitea",
|
||||
"project-management"
|
||||
],
|
||||
"license": "MIT",
|
||||
"domain": "core"
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "doc-guardian",
|
||||
"version": "7.1.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Automatic documentation drift detection and synchronization",
|
||||
"source": "./plugins/doc-guardian",
|
||||
"author": {
|
||||
@@ -44,21 +40,17 @@
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/doc-guardian/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"hooks": [
|
||||
"./hooks/hooks.json"
|
||||
],
|
||||
"category": "productivity",
|
||||
"tags": [
|
||||
"documentation",
|
||||
"drift-detection",
|
||||
"sync"
|
||||
],
|
||||
"license": "MIT",
|
||||
"domain": "core"
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "code-sentinel",
|
||||
"version": "7.1.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Security scanning and code refactoring tools",
|
||||
"source": "./plugins/code-sentinel",
|
||||
"author": {
|
||||
@@ -76,13 +68,12 @@
|
||||
"refactoring",
|
||||
"vulnerabilities"
|
||||
],
|
||||
"license": "MIT",
|
||||
"domain": "core"
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "project-hygiene",
|
||||
"version": "7.1.0",
|
||||
"description": "Post-task cleanup hook that removes temp files and manages orphaned files",
|
||||
"version": "9.0.1",
|
||||
"description": "Manual project hygiene checks — temp files, misplaced files, empty dirs, debug artifacts",
|
||||
"source": "./plugins/project-hygiene",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
@@ -90,21 +81,18 @@
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/project-hygiene/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"hooks": [
|
||||
"./hooks/hooks.json"
|
||||
],
|
||||
"category": "productivity",
|
||||
"tags": [
|
||||
"cleanup",
|
||||
"automation",
|
||||
"hygiene"
|
||||
"hygiene",
|
||||
"maintenance",
|
||||
"manual-check"
|
||||
],
|
||||
"license": "MIT",
|
||||
"domain": "core"
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "cmdb-assistant",
|
||||
"version": "7.1.0",
|
||||
"version": "9.0.1",
|
||||
"description": "NetBox CMDB integration with data quality validation and machine registration",
|
||||
"source": "./plugins/cmdb-assistant",
|
||||
"author": {
|
||||
@@ -125,12 +113,11 @@
|
||||
"data-quality",
|
||||
"validation"
|
||||
],
|
||||
"license": "MIT",
|
||||
"domain": "ops"
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "claude-config-maintainer",
|
||||
"version": "7.1.0",
|
||||
"version": "9.0.1",
|
||||
"description": "CLAUDE.md and settings.local.json optimization for Claude Code projects",
|
||||
"source": "./plugins/claude-config-maintainer",
|
||||
"author": {
|
||||
@@ -139,21 +126,17 @@
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/claude-config-maintainer/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"hooks": [
|
||||
"./hooks/hooks.json"
|
||||
],
|
||||
"category": "development",
|
||||
"tags": [
|
||||
"claude-md",
|
||||
"configuration",
|
||||
"optimization"
|
||||
],
|
||||
"license": "MIT",
|
||||
"domain": "core"
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "clarity-assist",
|
||||
"version": "7.1.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Prompt optimization and requirement clarification with ND-friendly accommodations",
|
||||
"source": "./plugins/clarity-assist",
|
||||
"author": {
|
||||
@@ -172,12 +155,11 @@
|
||||
"clarification",
|
||||
"nd-friendly"
|
||||
],
|
||||
"license": "MIT",
|
||||
"domain": "core"
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "git-flow",
|
||||
"version": "7.1.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Git workflow automation with intelligent commit messages and branch management",
|
||||
"source": "./plugins/git-flow",
|
||||
"author": {
|
||||
@@ -196,12 +178,11 @@
|
||||
"commits",
|
||||
"branching"
|
||||
],
|
||||
"license": "MIT",
|
||||
"domain": "core"
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "pr-review",
|
||||
"version": "7.1.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Multi-agent pull request review with confidence scoring and actionable feedback",
|
||||
"source": "./plugins/pr-review",
|
||||
"author": {
|
||||
@@ -210,9 +191,6 @@
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/pr-review/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"hooks": [
|
||||
"./hooks/hooks.json"
|
||||
],
|
||||
"category": "development",
|
||||
"tags": [
|
||||
"code-review",
|
||||
@@ -220,12 +198,11 @@
|
||||
"security",
|
||||
"quality"
|
||||
],
|
||||
"license": "MIT",
|
||||
"domain": "core"
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "data-platform",
|
||||
"version": "7.1.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Data engineering tools with pandas, PostgreSQL/PostGIS, and dbt integration",
|
||||
"source": "./plugins/data-platform",
|
||||
"author": {
|
||||
@@ -234,9 +211,6 @@
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/data-platform/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"hooks": [
|
||||
"./hooks/hooks.json"
|
||||
],
|
||||
"category": "data",
|
||||
"tags": [
|
||||
"pandas",
|
||||
@@ -246,12 +220,11 @@
|
||||
"data-engineering",
|
||||
"etl"
|
||||
],
|
||||
"license": "MIT",
|
||||
"domain": "data"
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "viz-platform",
|
||||
"version": "7.1.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Visualization tools with Dash Mantine Components validation, Plotly charts, and theming",
|
||||
"source": "./plugins/viz-platform",
|
||||
"author": {
|
||||
@@ -260,9 +233,6 @@
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/viz-platform/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"hooks": [
|
||||
"./hooks/hooks.json"
|
||||
],
|
||||
"category": "visualization",
|
||||
"tags": [
|
||||
"dash",
|
||||
@@ -273,12 +243,11 @@
|
||||
"theming",
|
||||
"dmc"
|
||||
],
|
||||
"license": "MIT",
|
||||
"domain": "data"
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "contract-validator",
|
||||
"version": "7.1.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Cross-plugin compatibility validation and Claude.md agent verification",
|
||||
"source": "./plugins/contract-validator",
|
||||
"author": {
|
||||
@@ -287,9 +256,6 @@
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/contract-validator/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"hooks": [
|
||||
"./hooks/hooks.json"
|
||||
],
|
||||
"category": "development",
|
||||
"tags": [
|
||||
"validation",
|
||||
@@ -299,8 +265,179 @@
|
||||
"interfaces",
|
||||
"cross-plugin"
|
||||
],
|
||||
"license": "MIT",
|
||||
"domain": "core"
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "saas-api-platform",
|
||||
"version": "0.1.0",
|
||||
"description": "REST and GraphQL API scaffolding for FastAPI and Express projects",
|
||||
"source": "./plugins/saas-api-platform",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
"email": "leobmiranda@gmail.com"
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/saas-api-platform/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"category": "development",
|
||||
"tags": [
|
||||
"api",
|
||||
"rest",
|
||||
"graphql",
|
||||
"fastapi",
|
||||
"express",
|
||||
"openapi"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "saas-db-migrate",
|
||||
"version": "0.1.0",
|
||||
"description": "Database migration management for Alembic, Prisma, and raw SQL",
|
||||
"source": "./plugins/saas-db-migrate",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
"email": "leobmiranda@gmail.com"
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/saas-db-migrate/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"category": "development",
|
||||
"tags": [
|
||||
"database",
|
||||
"migrations",
|
||||
"alembic",
|
||||
"prisma",
|
||||
"sql",
|
||||
"schema"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "saas-react-platform",
|
||||
"version": "0.1.0",
|
||||
"description": "React frontend development toolkit for Next.js and Vite projects",
|
||||
"source": "./plugins/saas-react-platform",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
"email": "leobmiranda@gmail.com"
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/saas-react-platform/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"category": "development",
|
||||
"tags": [
|
||||
"react",
|
||||
"nextjs",
|
||||
"vite",
|
||||
"typescript",
|
||||
"frontend",
|
||||
"components"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "saas-test-pilot",
|
||||
"version": "0.1.0",
|
||||
"description": "Test automation toolkit for pytest, Jest, Vitest, and Playwright",
|
||||
"source": "./plugins/saas-test-pilot",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
"email": "leobmiranda@gmail.com"
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/saas-test-pilot/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"category": "development",
|
||||
"tags": [
|
||||
"testing",
|
||||
"pytest",
|
||||
"jest",
|
||||
"vitest",
|
||||
"playwright",
|
||||
"coverage"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "data-seed",
|
||||
"version": "0.1.0",
|
||||
"description": "Test data generation and database seeding with relationship-aware profiles",
|
||||
"source": "./plugins/data-seed",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
"email": "leobmiranda@gmail.com"
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/data-seed/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"category": "data",
|
||||
"tags": [
|
||||
"seed-data",
|
||||
"test-data",
|
||||
"faker",
|
||||
"fixtures",
|
||||
"database"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "ops-release-manager",
|
||||
"version": "0.1.0",
|
||||
"description": "Release management with semantic versioning, changelogs, and tag automation",
|
||||
"source": "./plugins/ops-release-manager",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
"email": "leobmiranda@gmail.com"
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/ops-release-manager/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"category": "development",
|
||||
"tags": [
|
||||
"release",
|
||||
"semver",
|
||||
"changelog",
|
||||
"versioning",
|
||||
"tags"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "ops-deploy-pipeline",
|
||||
"version": "0.1.0",
|
||||
"description": "CI/CD deployment pipeline management for Docker Compose and systemd services",
|
||||
"source": "./plugins/ops-deploy-pipeline",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
"email": "leobmiranda@gmail.com"
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/ops-deploy-pipeline/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"category": "infrastructure",
|
||||
"tags": [
|
||||
"deploy",
|
||||
"docker-compose",
|
||||
"systemd",
|
||||
"caddy",
|
||||
"cicd"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
{
|
||||
"name": "debug-mcp",
|
||||
"version": "0.1.0",
|
||||
"description": "MCP server debugging, inspection, and development toolkit",
|
||||
"source": "./plugins/debug-mcp",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
"email": "leobmiranda@gmail.com"
|
||||
},
|
||||
"homepage": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace/src/branch/main/plugins/debug-mcp/README.md",
|
||||
"repository": "https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git",
|
||||
"category": "development",
|
||||
"tags": [
|
||||
"mcp",
|
||||
"debugging",
|
||||
"diagnostics",
|
||||
"server",
|
||||
"development"
|
||||
],
|
||||
"license": "MIT"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,249 +0,0 @@
|
||||
# CLAUDE.md
|
||||
|
||||
This file provides guidance to Claude Code when working with code in this repository.
|
||||
|
||||
## Project Overview
|
||||
|
||||
**Repository:** leo-claude-mktplace
|
||||
**Version:** 3.0.1
|
||||
**Status:** Production Ready
|
||||
|
||||
A plugin marketplace for Claude Code containing:
|
||||
|
||||
| Plugin | Description | Version |
|
||||
|--------|-------------|---------|
|
||||
| `projman` | Sprint planning and project management with Gitea integration | 3.0.0 |
|
||||
| `git-flow` | Git workflow automation with smart commits and branch management | 1.0.0 |
|
||||
| `pr-review` | Multi-agent PR review with confidence scoring | 1.0.0 |
|
||||
| `clarity-assist` | Prompt optimization with ND-friendly accommodations | 1.0.0 |
|
||||
| `doc-guardian` | Automatic documentation drift detection and synchronization | 1.0.0 |
|
||||
| `code-sentinel` | Security scanning and code refactoring tools | 1.0.0 |
|
||||
| `claude-config-maintainer` | CLAUDE.md optimization and maintenance | 1.0.0 |
|
||||
| `cmdb-assistant` | NetBox CMDB integration for infrastructure management | 1.0.0 |
|
||||
| `project-hygiene` | Post-task cleanup automation via hooks | 0.1.0 |
|
||||
|
||||
## Quick Start
|
||||
|
||||
```bash
|
||||
# Validate marketplace compliance
|
||||
./scripts/validate-marketplace.sh
|
||||
|
||||
# Setup commands (in a target project with plugin installed)
|
||||
/initial-setup # First time: full setup wizard
|
||||
/project-init # New project: quick config
|
||||
/project-sync # After repo move: sync config
|
||||
|
||||
# Run projman commands
|
||||
/sprint-plan # Start sprint planning
|
||||
/sprint-status # Check progress
|
||||
/review # Pre-close code quality review
|
||||
/test-check # Verify tests before close
|
||||
/sprint-close # Complete sprint
|
||||
```
|
||||
|
||||
## Repository Structure
|
||||
|
||||
```
|
||||
leo-claude-mktplace/
|
||||
├── .claude-plugin/
|
||||
│ └── marketplace.json # Marketplace manifest
|
||||
├── mcp-servers/ # SHARED MCP servers (v3.0.0+)
|
||||
│ ├── gitea/ # Gitea MCP (issues, PRs, wiki)
|
||||
│ └── netbox/ # NetBox MCP (CMDB)
|
||||
├── plugins/
|
||||
│ ├── projman/ # Sprint management
|
||||
│ │ ├── .claude-plugin/plugin.json
|
||||
│ │ ├── .mcp.json
|
||||
│ │ ├── mcp-servers/gitea -> ../../../mcp-servers/gitea # SYMLINK
|
||||
│ │ ├── commands/ # 12 commands (incl. setup)
|
||||
│ │ ├── hooks/ # SessionStart mismatch detection
|
||||
│ │ ├── agents/ # 4 agents
|
||||
│ │ └── skills/label-taxonomy/
|
||||
│ ├── git-flow/ # Git workflow automation
|
||||
│ │ ├── .claude-plugin/plugin.json
|
||||
│ │ ├── commands/ # 8 commands
|
||||
│ │ └── agents/
|
||||
│ ├── pr-review/ # Multi-agent PR review
|
||||
│ │ ├── .claude-plugin/plugin.json
|
||||
│ │ ├── .mcp.json
|
||||
│ │ ├── mcp-servers/gitea -> ../../../mcp-servers/gitea # SYMLINK
|
||||
│ │ ├── commands/ # 6 commands (incl. setup)
|
||||
│ │ ├── hooks/ # SessionStart mismatch detection
|
||||
│ │ └── agents/ # 5 agents
|
||||
│ ├── clarity-assist/ # Prompt optimization (NEW v3.0.0)
|
||||
│ │ ├── .claude-plugin/plugin.json
|
||||
│ │ ├── commands/ # 2 commands
|
||||
│ │ └── agents/
|
||||
│ ├── doc-guardian/ # Documentation drift detection
|
||||
│ ├── code-sentinel/ # Security scanning & refactoring
|
||||
│ ├── claude-config-maintainer/
|
||||
│ ├── cmdb-assistant/
|
||||
│ └── project-hygiene/
|
||||
├── scripts/
|
||||
│ ├── setup.sh, post-update.sh
|
||||
│ └── validate-marketplace.sh # Marketplace compliance validation
|
||||
└── docs/
|
||||
├── CANONICAL-PATHS.md # Single source of truth for paths
|
||||
└── CONFIGURATION.md # Centralized configuration guide
|
||||
```
|
||||
|
||||
## CRITICAL: Rules You MUST Follow
|
||||
|
||||
### File Operations
|
||||
- **NEVER** create files in repository root unless listed in "Allowed Root Files"
|
||||
- **NEVER** modify `.gitignore` without explicit permission
|
||||
- **ALWAYS** use `.scratch/` for temporary/exploratory work
|
||||
- **ALWAYS** verify paths against `docs/CANONICAL-PATHS.md` before creating files
|
||||
|
||||
### Plugin Development
|
||||
- **plugin.json MUST be in `.claude-plugin/` directory** (not plugin root)
|
||||
- **Every plugin MUST be listed in marketplace.json**
|
||||
- **MCP servers are SHARED at root** with symlinks from plugins
|
||||
- **MCP server venv path**: `${CLAUDE_PLUGIN_ROOT}/mcp-servers/{name}/.venv/bin/python`
|
||||
- **CLI tools forbidden** - Use MCP tools exclusively (never `tea`, `gh`, etc.)
|
||||
|
||||
### Hooks (Valid Events Only)
|
||||
`PreToolUse`, `PostToolUse`, `UserPromptSubmit`, `SessionStart`, `SessionEnd`, `Notification`, `Stop`, `SubagentStop`, `PreCompact`
|
||||
|
||||
**INVALID:** `task-completed`, `file-changed`, `git-commit-msg-needed`
|
||||
|
||||
### Allowed Root Files
|
||||
`CLAUDE.md`, `README.md`, `LICENSE`, `CHANGELOG.md`, `.gitignore`, `.env.example`
|
||||
|
||||
### Allowed Root Directories
|
||||
`.claude/`, `.claude-plugin/`, `.claude-plugins/`, `.scratch/`, `docs/`, `hooks/`, `mcp-servers/`, `plugins/`, `scripts/`
|
||||
|
||||
## Architecture
|
||||
|
||||
### Four-Agent Model (projman)
|
||||
|
||||
| Agent | Personality | Responsibilities |
|
||||
|-------|-------------|------------------|
|
||||
| **Planner** | Thoughtful, methodical | Sprint planning, architecture analysis, issue creation, lesson search |
|
||||
| **Orchestrator** | Concise, action-oriented | Sprint execution, parallel batching, Git operations, lesson capture |
|
||||
| **Executor** | Implementation-focused | Code implementation, branch management, MR creation |
|
||||
| **Code Reviewer** | Thorough, practical | Pre-close quality review, security scan, test verification |
|
||||
|
||||
### MCP Server Tools (Gitea)
|
||||
|
||||
| Category | Tools |
|
||||
|----------|-------|
|
||||
| Issues | `list_issues`, `get_issue`, `create_issue`, `update_issue`, `add_comment` |
|
||||
| Labels | `get_labels`, `suggest_labels`, `create_label` |
|
||||
| Milestones | `list_milestones`, `get_milestone`, `create_milestone`, `update_milestone` |
|
||||
| Dependencies | `list_issue_dependencies`, `create_issue_dependency`, `get_execution_order` |
|
||||
| Wiki | `list_wiki_pages`, `get_wiki_page`, `create_wiki_page`, `create_lesson`, `search_lessons` |
|
||||
| **Pull Requests** | `list_pull_requests`, `get_pull_request`, `get_pr_diff`, `get_pr_comments`, `create_pr_review`, `add_pr_comment` *(NEW v3.0.0)* |
|
||||
| Validation | `validate_repo_org`, `get_branch_protection` |
|
||||
|
||||
### Hybrid Configuration
|
||||
|
||||
| Level | Location | Purpose |
|
||||
|-------|----------|---------|
|
||||
| System | `~/.config/claude/gitea.env` | Credentials (GITEA_API_URL, GITEA_API_TOKEN) |
|
||||
| Project | `.env` in project root | Repository specification (GITEA_ORG, GITEA_REPO) |
|
||||
|
||||
**Note:** `GITEA_ORG` is at project level since different projects may belong to different organizations.
|
||||
|
||||
### Branch-Aware Security
|
||||
|
||||
| Branch Pattern | Mode | Capabilities |
|
||||
|----------------|------|--------------|
|
||||
| `development`, `feat/*` | Development | Full access |
|
||||
| `staging` | Staging | Read-only code, can create issues |
|
||||
| `main`, `master` | Production | Read-only, emergency only |
|
||||
|
||||
## Label Taxonomy
|
||||
|
||||
43 labels total: 27 organization + 16 repository
|
||||
|
||||
**Organization:** Agent/2, Complexity/3, Efforts/5, Priority/4, Risk/3, Source/4, Type/6
|
||||
**Repository:** Component/9, Tech/7
|
||||
|
||||
Sync with `/labels-sync` command.
|
||||
|
||||
## Lessons Learned System
|
||||
|
||||
Stored in Gitea Wiki under `lessons-learned/sprints/`.
|
||||
|
||||
**Workflow:**
|
||||
1. Orchestrator captures at sprint close via MCP tools
|
||||
2. Planner searches at sprint start using `search_lessons`
|
||||
3. Tags enable cross-project discovery
|
||||
|
||||
## Common Operations
|
||||
|
||||
### Adding a New Plugin
|
||||
|
||||
1. Create `plugins/{name}/.claude-plugin/plugin.json`
|
||||
2. Add entry to `.claude-plugin/marketplace.json` with category, tags, license
|
||||
3. Create `README.md` and `claude-md-integration.md`
|
||||
4. If using MCP server, create symlink: `ln -s ../../../mcp-servers/{server} plugins/{name}/mcp-servers/{server}`
|
||||
5. Run `./scripts/validate-marketplace.sh`
|
||||
6. Update `CHANGELOG.md`
|
||||
|
||||
### Adding a Command to projman
|
||||
|
||||
1. Create `plugins/projman/commands/{name}.md`
|
||||
2. Update `plugins/projman/README.md`
|
||||
3. Update marketplace description if significant
|
||||
|
||||
### Validation
|
||||
|
||||
```bash
|
||||
./scripts/validate-marketplace.sh # Validates all manifests
|
||||
```
|
||||
|
||||
## Path Verification Protocol
|
||||
|
||||
**Before creating any file:**
|
||||
|
||||
1. Read `docs/CANONICAL-PATHS.md`
|
||||
2. List all paths to be created/modified
|
||||
3. Verify each against canonical paths
|
||||
4. If not in canonical paths, STOP and ask
|
||||
|
||||
## Documentation Index
|
||||
|
||||
| Document | Purpose |
|
||||
|----------|---------|
|
||||
| `docs/CANONICAL-PATHS.md` | **Single source of truth** for paths |
|
||||
| `docs/COMMANDS-CHEATSHEET.md` | All commands quick reference with workflow examples |
|
||||
| `docs/CONFIGURATION.md` | Centralized setup guide |
|
||||
| `docs/UPDATING.md` | Update guide for the marketplace |
|
||||
| `plugins/projman/CONFIGURATION.md` | Quick reference (links to central) |
|
||||
| `plugins/projman/README.md` | Projman full documentation |
|
||||
|
||||
## Versioning and Changelog Rules
|
||||
|
||||
### Version Display
|
||||
**The marketplace version is displayed ONLY in the main `README.md` title.**
|
||||
|
||||
- Format: `# Leo Claude Marketplace - vX.Y.Z`
|
||||
- Do NOT add version numbers to individual plugin documentation titles
|
||||
- Do NOT add version numbers to configuration guides
|
||||
- Do NOT add version numbers to CLAUDE.md or other docs
|
||||
|
||||
### Changelog Maintenance (MANDATORY)
|
||||
**`CHANGELOG.md` is the authoritative source for version history.**
|
||||
|
||||
When releasing a new version:
|
||||
1. Update main `README.md` title with new version
|
||||
2. Update `CHANGELOG.md` with:
|
||||
- Version number and date: `## [X.Y.Z] - YYYY-MM-DD`
|
||||
- **Added**: New features, commands, files
|
||||
- **Changed**: Modifications to existing functionality
|
||||
- **Fixed**: Bug fixes
|
||||
- **Removed**: Deleted features, files, deprecated items
|
||||
3. Update `marketplace.json` metadata version
|
||||
4. Update plugin `plugin.json` versions if plugin-specific changes
|
||||
|
||||
### Version Format
|
||||
- Follow [Semantic Versioning](https://semver.org/): MAJOR.MINOR.PATCH
|
||||
- MAJOR: Breaking changes
|
||||
- MINOR: New features, backward compatible
|
||||
- PATCH: Bug fixes, minor improvements
|
||||
|
||||
---
|
||||
|
||||
**Last Updated:** 2026-01-20
|
||||
@@ -1,66 +0,0 @@
|
||||
# Doc Guardian Queue - cleared after sync on 2026-02-02
|
||||
2026-02-02T11:41:00 | .claude-plugin | /home/lmiranda/claude-plugins-work/.claude-plugin/marketplace.json | CLAUDE.md .claude-plugin/marketplace.json
|
||||
2026-02-02T13:35:48 | skills | /home/lmiranda/claude-plugins-work/plugins/projman/skills/sprint-approval.md | README.md
|
||||
2026-02-02T13:36:03 | commands | /home/lmiranda/claude-plugins-work/plugins/projman/commands/sprint-start.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-02T13:36:16 | agents | /home/lmiranda/claude-plugins-work/plugins/projman/agents/orchestrator.md | README.md CLAUDE.md
|
||||
2026-02-02T13:39:07 | commands | /home/lmiranda/claude-plugins-work/plugins/projman/commands/rfc.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-02T13:39:15 | commands | /home/lmiranda/claude-plugins-work/plugins/projman/commands/setup.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-02T13:39:32 | skills | /home/lmiranda/claude-plugins-work/plugins/projman/skills/rfc-workflow.md | README.md
|
||||
2026-02-02T13:43:14 | skills | /home/lmiranda/claude-plugins-work/plugins/projman/skills/rfc-templates.md | README.md
|
||||
2026-02-02T13:44:55 | skills | /home/lmiranda/claude-plugins-work/plugins/projman/skills/sprint-lifecycle.md | README.md
|
||||
2026-02-02T13:45:04 | skills | /home/lmiranda/claude-plugins-work/plugins/projman/skills/label-taxonomy/labels-reference.md | README.md
|
||||
2026-02-02T13:45:14 | commands | /home/lmiranda/claude-plugins-work/plugins/projman/commands/sprint-plan.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-02T13:45:48 | commands | /home/lmiranda/claude-plugins-work/plugins/projman/commands/review.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-02T13:46:07 | commands | /home/lmiranda/claude-plugins-work/plugins/projman/commands/sprint-close.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-02T13:46:21 | commands | /home/lmiranda/claude-plugins-work/plugins/projman/commands/sprint-status.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-02T13:46:38 | agents | /home/lmiranda/claude-plugins-work/plugins/projman/agents/planner.md | README.md CLAUDE.md
|
||||
2026-02-02T13:46:57 | agents | /home/lmiranda/claude-plugins-work/plugins/projman/agents/code-reviewer.md | README.md CLAUDE.md
|
||||
2026-02-02T13:49:13 | commands | /home/lmiranda/claude-plugins-work/plugins/viz-platform/commands/design-gate.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-02T13:49:24 | commands | /home/lmiranda/claude-plugins-work/plugins/data-platform/commands/data-gate.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-02T13:49:35 | skills | /home/lmiranda/claude-plugins-work/plugins/projman/skills/domain-consultation.md | README.md
|
||||
2026-02-02T13:50:04 | mcp-servers | /home/lmiranda/claude-plugins-work/mcp-servers/contract-validator/mcp_server/validation_tools.py | docs/COMMANDS-CHEATSHEET.md CLAUDE.md
|
||||
2026-02-02T13:50:59 | mcp-servers | /home/lmiranda/claude-plugins-work/mcp-servers/contract-validator/mcp_server/server.py | docs/COMMANDS-CHEATSHEET.md CLAUDE.md
|
||||
2026-02-02T13:51:32 | mcp-servers | /home/lmiranda/claude-plugins-work/mcp-servers/contract-validator/tests/test_validation_tools.py | docs/COMMANDS-CHEATSHEET.md CLAUDE.md
|
||||
2026-02-02T13:51:49 | skills | /home/lmiranda/claude-plugins-work/plugins/contract-validator/skills/validation-rules.md | README.md
|
||||
2026-02-02T13:52:07 | skills | /home/lmiranda/claude-plugins-work/plugins/contract-validator/skills/mcp-tools-reference.md | README.md
|
||||
2026-02-02T13:59:09 | skills | /home/lmiranda/claude-plugins-work/plugins/projman/skills/progress-tracking.md | README.md
|
||||
2026-02-02T14:01:34 | commands | /home/lmiranda/claude-plugins-work/plugins/projman/commands/test.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:08:38 | commands | /home/lmiranda/claude-plugins-work/plugins/git-flow/commands/git-commit.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:08:39 | commands | /home/lmiranda/claude-plugins-work/plugins/git-flow/commands/git-commit-push.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:08:40 | commands | /home/lmiranda/claude-plugins-work/plugins/git-flow/commands/git-commit-merge.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:08:41 | commands | /home/lmiranda/claude-plugins-work/plugins/git-flow/commands/git-commit-sync.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:08:49 | commands | /home/lmiranda/claude-plugins-work/plugins/cmdb-assistant/commands/cmdb-setup.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:08:50 | commands | /home/lmiranda/claude-plugins-work/plugins/pr-review/commands/project-init.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:08:51 | skills | /home/lmiranda/claude-plugins-work/plugins/cmdb-assistant/skills/visual-header.md | README.md
|
||||
2026-02-03T21:08:51 | commands | /home/lmiranda/claude-plugins-work/plugins/projman/commands/pm-review.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:08:53 | commands | /home/lmiranda/claude-plugins-work/plugins/projman/commands/pm-test.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:08:54 | skills | /home/lmiranda/claude-plugins-work/plugins/projman/skills/review-checklist.md | README.md
|
||||
2026-02-03T21:08:55 | skills | /home/lmiranda/claude-plugins-work/plugins/projman/skills/visual-output.md | README.md
|
||||
2026-02-03T21:08:58 | skills | /home/lmiranda/claude-plugins-work/plugins/projman/skills/setup-workflows.md | README.md
|
||||
2026-02-03T21:08:59 | skills | /home/lmiranda/claude-plugins-work/plugins/git-flow/skills/sync-workflow.md | README.md
|
||||
2026-02-03T21:09:00 | skills | /home/lmiranda/claude-plugins-work/plugins/git-flow/skills/commit-conventions.md | README.md
|
||||
2026-02-03T21:09:00 | skills | /home/lmiranda/claude-plugins-work/plugins/git-flow/skills/merge-workflow.md | README.md
|
||||
2026-02-03T21:09:08 | commands | /home/lmiranda/claude-plugins-work/plugins/projman/commands/pm-setup.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:08 | commands | /home/lmiranda/claude-plugins-work/plugins/data-platform/commands/data-setup.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:10 | commands | /home/lmiranda/claude-plugins-work/plugins/data-platform/commands/data-run.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:10 | commands | /home/lmiranda/claude-plugins-work/plugins/contract-validator/commands/cv-setup.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:11 | commands | /home/lmiranda/claude-plugins-work/plugins/projman/commands/pm-debug.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:13 | agents | /home/lmiranda/claude-plugins-work/plugins/contract-validator/agents/full-validation.md | README.md CLAUDE.md
|
||||
2026-02-03T21:09:14 | commands | /home/lmiranda/claude-plugins-work/plugins/data-platform/commands/data-ingest.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:18 | commands | /home/lmiranda/claude-plugins-work/plugins/data-platform/commands/data-profile.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:18 | commands | /home/lmiranda/claude-plugins-work/plugins/viz-platform/commands/viz-setup.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:20 | commands | /home/lmiranda/claude-plugins-work/plugins/data-platform/commands/data-schema.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:20 | commands | /home/lmiranda/claude-plugins-work/plugins/viz-platform/commands/viz-theme.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:23 | commands | /home/lmiranda/claude-plugins-work/plugins/viz-platform/commands/viz-theme-new.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:24 | commands | /home/lmiranda/claude-plugins-work/plugins/data-platform/commands/data-explain.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:26 | commands | /home/lmiranda/claude-plugins-work/plugins/data-platform/commands/data-lineage.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:26 | commands | /home/lmiranda/claude-plugins-work/plugins/viz-platform/commands/viz-theme-css.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:29 | commands | /home/lmiranda/claude-plugins-work/plugins/viz-platform/commands/viz-chart.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:32 | commands | /home/lmiranda/claude-plugins-work/plugins/viz-platform/commands/viz-chart-export.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:33 | commands | /home/lmiranda/claude-plugins-work/plugins/data-platform/commands/data-review.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:35 | commands | /home/lmiranda/claude-plugins-work/plugins/viz-platform/commands/viz-dashboard.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:38 | commands | /home/lmiranda/claude-plugins-work/plugins/viz-platform/commands/viz-component.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:40 | commands | /home/lmiranda/claude-plugins-work/plugins/viz-platform/commands/viz-breakpoints.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:09:46 | commands | /home/lmiranda/claude-plugins-work/plugins/viz-platform/commands/design-review.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-03T21:10:22 | commands | /home/lmiranda/claude-plugins-work/plugins/viz-platform/commands/accessibility-check.md | docs/COMMANDS-CHEATSHEET.md README.md
|
||||
2026-02-04T21:32:01 | .claude-plugin | /home/lmiranda/claude-plugins-work/.claude-plugin/marketplace-lean.json | CLAUDE.md .claude-plugin/marketplace.json
|
||||
152
CHANGELOG.md
152
CHANGELOG.md
@@ -6,6 +6,158 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [9.1.2] - 2026-02-07
|
||||
|
||||
### Fixed
|
||||
|
||||
- **BREAKING FIX:** Removed `"domain"` field from all `marketplace.json` and `plugin.json` files — Claude Code's strict schema validator rejects unrecognized keys, causing `Failed to load marketplace` error
|
||||
- Domain metadata moved to `metadata.json` per plugin (same pattern as `mcp_servers`)
|
||||
- `validate-marketplace.sh` updated to read domain from `metadata.json` instead of `marketplace.json`/`plugin.json`
|
||||
- All documentation updated to reference `metadata.json` as domain source
|
||||
|
||||
## [9.1.1] - 2026-02-07
|
||||
|
||||
### Changed
|
||||
|
||||
- README.md fully rewritten — clean structure with plugins grouped by domain, accurate structure tree, all 10 scripts, all 7 docs
|
||||
- CLAUDE.md structure tree updated to match README (was showing only 12 plugins, 3 scripts, 2 docs)
|
||||
- doc-guardian `/doc sync` and `sync-workflow.md` updated to remove stale `.doc-guardian-queue` references (queue file deleted in v8.1.0)
|
||||
|
||||
### Removed
|
||||
|
||||
- `scripts/check-venv.sh` — dead code designed for SessionStart hooks that were never implemented; functionality covered by `setup-venvs.sh`
|
||||
|
||||
## [9.1.0] - 2026-02-07
|
||||
|
||||
### Added
|
||||
|
||||
- `docs/ARCHITECTURE.md` — Consolidated architecture document covering all 20 plugins, 5 MCP servers, hook inventory, agent model, launch profiles, and per-plugin command reference
|
||||
|
||||
### Changed
|
||||
|
||||
- All 12 original plugin versions bumped to 9.0.1 in both `plugin.json` and `marketplace.json` (were at various pre-9.x versions)
|
||||
- `project-hygiene` description updated from "Post-task cleanup hook" to "Manual project hygiene checks" in both manifests; removed "hooks" and "automation" keywords
|
||||
- `CANONICAL-PATHS.md` refreshed for v9.1.0: added Phase 3 plugins, added ARCHITECTURE.md and MIGRATION-v9.md, removed stale hooks/ dirs, updated Domain table
|
||||
- `UPDATING.md` updated with all 5 MCP servers
|
||||
- `COMMANDS-CHEATSHEET.md` expanded /rfc, /project, /adr to individual rows per sub-command
|
||||
- `README.md` documentation table and structure tree updated; command rows normalized; project-hygiene description corrected
|
||||
- `CLAUDE.md` documentation index updated with ARCHITECTURE.md and MIGRATION-v9.md; plugin version table updated; /rfc, /project, /adr commands expanded
|
||||
|
||||
### Removed
|
||||
|
||||
- `.doc-guardian-queue` — orphan file from deleted PostToolUse hook
|
||||
- `.claude/backups/CLAUDE.md.2026-01-22_132037` — v3.0.1 backup, superseded by git history
|
||||
- `scripts/switch-profile.sh` — deprecated in favor of `claude-launch.sh`
|
||||
- `docs/architecture/` — stale pre-v3.0.0 Draw.io specs (replaced by `docs/ARCHITECTURE.md`)
|
||||
- `docs/designs/` — Phase 3 design specs (implemented as plugin scaffolds, now redundant)
|
||||
- `docs/prompts/` — moved to Gitea Wiki
|
||||
|
||||
## [9.0.1] - 2026-02-06
|
||||
|
||||
### Fixed
|
||||
|
||||
- **claude-config-maintainer:** `claude-config-audit-settings.md` Step 4 referenced deleted hooks.json files (doc-guardian, project-hygiene, data-platform, contract-validator) — updated to current hook inventory (code-sentinel, git-flow, cmdb-assistant, clarity-assist)
|
||||
- **claude-config-maintainer:** `maintainer.md` agent referenced project-hygiene PostToolUse hooks — updated to current hook types
|
||||
- **claude-config-maintainer:** `claude-config-audit-settings.md` output format referenced doc-guardian review layer — updated to git-flow, cmdb-assistant, clarity-assist
|
||||
- **claude-config-maintainer:** `claude-config-audit-settings.md` Mermaid diagram referenced doc-guardian — updated to git-flow
|
||||
- **claude-config-maintainer:** `claude-config-optimize-settings.md` reviewed profile prerequisites referenced doc-guardian PostToolUse — updated to git-flow PreToolUse
|
||||
- **project-hygiene:** `claude-md-integration.md` described PostToolUse hook behavior that was removed in v8.1.0 — rewritten for manual `/hygiene check` command
|
||||
- **doc-guardian:** `doc-sync.md` referenced doc-guardian hooks — updated to reference `/doc audit`
|
||||
- **doc-guardian:** `sync-workflow.md` referenced PostToolUse hook — updated to note removal per Decision #29
|
||||
- **projman:** `task-sizing.md` example referenced PostToolUse — updated to PreToolUse
|
||||
- **docs:** `MIGRATION-v9.md` listed `/pm-debug`, `/suggest-version`, `/proposal-status` as renamed to `/projman` sub-commands — corrected to show as **Removed** (these were deleted in v8.1.0, not renamed in v9.0.0)
|
||||
- **docs:** `CONFIGURATION.md` listed doc-guardian as "Commands and hooks only" — corrected to "Commands only"
|
||||
- **scripts:** `setup.sh` referenced old `/labels-sync` command — updated to `/labels sync`
|
||||
|
||||
## [9.0.0] - 2026-02-06
|
||||
|
||||
### Added
|
||||
|
||||
- **Phase 3: 8 new plugin scaffolds**
|
||||
- `saas-api-platform` (domain: saas) — REST/GraphQL API scaffolding for FastAPI and Express. 6 commands, 2 agents, 5 skills
|
||||
- `saas-db-migrate` (domain: saas) — Database migration management for Alembic, Prisma, and raw SQL. 6 commands, 2 agents, 5 skills
|
||||
- `saas-react-platform` (domain: saas) — React frontend toolkit for Next.js and Vite projects. 6 commands, 2 agents, 6 skills
|
||||
- `saas-test-pilot` (domain: saas) — Test automation for pytest, Jest, Vitest, and Playwright. 6 commands, 2 agents, 6 skills
|
||||
- `data-seed` (domain: data) — Test data generation and database seeding. 5 commands, 2 agents, 5 skills
|
||||
- `ops-release-manager` (domain: ops) — Release management with SemVer, changelogs, and tag automation. 6 commands, 2 agents, 5 skills
|
||||
- `ops-deploy-pipeline` (domain: ops) — CI/CD deployment pipeline for Docker Compose and systemd. 6 commands, 2 agents, 6 skills
|
||||
- `debug-mcp` (domain: debug) — MCP server debugging, inspection, and development toolkit. 5 commands, 1 agent, 5 skills
|
||||
- 8 design documents in `docs/designs/` for all new plugins
|
||||
|
||||
---
|
||||
|
||||
## [9.0.0] - 2026-02-06
|
||||
|
||||
### BREAKING CHANGES
|
||||
|
||||
#### Command Consolidation (v9.0.0)
|
||||
|
||||
All commands renamed to `/<noun> <action>` sub-command pattern. Every command across all 12 plugins now follows this convention. See [MIGRATION-v9.md](./docs/MIGRATION-v9.md) for the complete old-to-new mapping.
|
||||
|
||||
**Key changes:**
|
||||
- **projman:** `/sprint-plan` → `/sprint plan`, `/pm-setup` → `/projman setup`, `/pm-review` → `/sprint review`, `/pm-test` → `/sprint test`, `/labels-sync` → `/labels sync`
|
||||
- **git-flow:** 8→5 commands. `/git-commit` → `/gitflow commit`. Three commit variants (`-push`, `-merge`, `-sync`) consolidated into `--push`/`--merge`/`--sync` flags. `/branch-start` → `/gitflow branch-start`, `/git-status` → `/gitflow status`, `/git-config` → `/gitflow config`
|
||||
- **pr-review:** `/pr-review` → `/pr review`, `/project-init` → `/pr init`, `/project-sync` → `/pr sync`
|
||||
- **clarity-assist:** `/clarify` → `/clarity clarify`, `/quick-clarify` → `/clarity quick-clarify`
|
||||
- **doc-guardian:** `/doc-audit` → `/doc audit`, `/changelog-gen` → `/doc changelog-gen`, `/stale-docs` → `/doc stale-docs`
|
||||
- **code-sentinel:** `/security-scan` → `/sentinel scan`, `/refactor` → `/sentinel refactor`
|
||||
- **claude-config-maintainer:** `/config-analyze` → `/claude-config analyze` (all 8 commands prefixed)
|
||||
- **contract-validator:** `/validate-contracts` → `/cv validate`, `/check-agent` → `/cv check-agent`
|
||||
- **cmdb-assistant:** `/cmdb-search` → `/cmdb search`, `/change-audit` → `/cmdb change-audit`, `/ip-conflicts` → `/cmdb ip-conflicts`
|
||||
- **data-platform:** `/data-ingest` → `/data ingest`, `/dbt-test` → `/data dbt-test`, `/lineage-viz` → `/data lineage-viz`
|
||||
- **viz-platform:** `/accessibility-check` → `/viz accessibility-check`, `/design-gate` → `/viz design-gate`, `/design-review` → `/viz design-review`
|
||||
|
||||
### Added
|
||||
|
||||
- Dispatch files for all 12 plugins — each plugin now has a `<noun>.md` routing table listing all sub-commands
|
||||
- `name:` frontmatter field added to all command files for sub-command resolution
|
||||
- `docs/MIGRATION-v9.md` — Complete old-to-new command mapping for consumer migration
|
||||
- `docs/COMMANDS-CHEATSHEET.md` — Full rewrite with v9.0.0 command names
|
||||
|
||||
### Changed
|
||||
|
||||
- All documentation updated with new command names: CLAUDE.md, README.md, CONFIGURATION.md, UPDATING.md, agent-workflow.spec.md, netbox/README.md
|
||||
- All cross-plugin references updated (skills, agents, integration files)
|
||||
- `marketplace.json` version bumped to 9.0.0
|
||||
|
||||
---
|
||||
|
||||
## [8.1.0] - 2026-02-06
|
||||
|
||||
### BREAKING CHANGES
|
||||
|
||||
#### Hook Migration (v8.1.0)
|
||||
|
||||
All `SessionStart` and `PostToolUse` hooks removed. Only `PreToolUse` safety hooks and `UserPromptSubmit` quality hooks remain. Plugins that relied on automatic startup checks or post-write automation must use manual commands instead.
|
||||
|
||||
### Added
|
||||
|
||||
- **projman:** 7 new skills — `source-analysis`, `project-charter`, `adr-conventions`, `epic-conventions`, `wbs`, `risk-register`, `sprint-roadmap`
|
||||
- **projman:** `/project` command family — `initiation`, `plan`, `status`, `close` for full project lifecycle management
|
||||
- **projman:** `/adr` command family — `create`, `list`, `update`, `supersede` for Architecture Decision Records
|
||||
- **projman:** Expanded `wiki-conventions.md` with dependency headers, R&D notes, page naming patterns
|
||||
- **projman:** Epic/* labels (5) and RnD/* labels (4) added to label taxonomy
|
||||
- **project-hygiene:** `/hygiene check` manual command replacing PostToolUse hook
|
||||
- **contract-validator:** `/cv status` marketplace-wide health check command
|
||||
|
||||
### Changed
|
||||
|
||||
- `verify-hooks.sh` rewritten to validate post-migration hook inventory (4 plugins, 5 hooks)
|
||||
- `config-permissions-map.md` updated to reflect reduced hook inventory
|
||||
- `settings-optimization.md` updated for current hook landscape
|
||||
- `sprint-plan.md` no longer loads `token-budget-report.md` skill
|
||||
- `sprint-close.md` loads `rfc-workflow.md` conditionally; manual CHANGELOG review replaces `/suggest-version`
|
||||
- `planner.md` and `orchestrator.md` no longer reference domain consultation or domain gates
|
||||
- Label taxonomy updated from 43 to 58 labels (added Status/4, Domain/2, Epic/5, RnD/4)
|
||||
|
||||
### Removed
|
||||
|
||||
- **hooks:** 8 hooks.json files deleted (projman, pr-review, doc-guardian, project-hygiene, claude-config-maintainer, viz-platform, data-platform, contract-validator SessionStart/PostToolUse hooks)
|
||||
- **hooks:** Orphaned shell scripts deleted (startup-check.sh, notify.sh, cleanup.sh, enforce-rules.sh, schema-diff-check.sh, auto-validate.sh, breaking-change-check.sh)
|
||||
- **projman:** `/pm-debug`, `/suggest-version`, `/proposal-status` commands deleted
|
||||
- **projman:** `domain-consultation.md` skill deleted
|
||||
- **cmdb-assistant:** SessionStart hook removed (PreToolUse hook retained)
|
||||
|
||||
---
|
||||
|
||||
## [8.0.0] - 2026-02-06
|
||||
|
||||
234
CLAUDE.md
234
CLAUDE.md
@@ -128,43 +128,59 @@ These plugins exist in source but are **NOT relevant** to this project's workflo
|
||||
| **data-platform** | For data engineering projects (pandas, PostgreSQL, dbt) |
|
||||
| **viz-platform** | For dashboard projects (Dash, Plotly) |
|
||||
| **cmdb-assistant** | For infrastructure projects (NetBox) |
|
||||
| **saas-api-platform** | For REST/GraphQL API projects (FastAPI, Express) |
|
||||
| **saas-db-migrate** | For database migration projects (Alembic, Prisma) |
|
||||
| **saas-react-platform** | For React frontend projects (Next.js, Vite) |
|
||||
| **saas-test-pilot** | For test automation projects (pytest, Jest, Playwright) |
|
||||
| **data-seed** | For test data generation and seeding |
|
||||
| **ops-release-manager** | For release management workflows |
|
||||
| **ops-deploy-pipeline** | For deployment pipeline management |
|
||||
| **debug-mcp** | For MCP server debugging and development |
|
||||
|
||||
**Do NOT suggest** `/data-ingest`, `/data-profile`, `/viz-chart`, `/cmdb-*` commands - they don't apply here.
|
||||
**Do NOT suggest** `/data ingest`, `/data profile`, `/viz chart`, `/cmdb *`, `/api *`, `/db-migrate *`, `/react *`, `/test *`, `/seed *`, `/release *`, `/deploy *`, `/debug-mcp *` commands - they don't apply here.
|
||||
|
||||
### Key Distinction
|
||||
|
||||
| Context | Path | What To Do |
|
||||
|---------|------|------------|
|
||||
| **Editing plugin source** | `~/claude-plugins-work/plugins/` | Modify code, add features |
|
||||
| **Using installed plugins** | `~/.claude/plugins/marketplaces/` | Run commands like `/sprint-plan` |
|
||||
| **Using installed plugins** | `~/.claude/plugins/marketplaces/` | Run commands like `/sprint plan` |
|
||||
|
||||
When user says "run /sprint-plan", use the INSTALLED plugin.
|
||||
When user says "fix the sprint-plan command", edit the SOURCE code.
|
||||
When user says "run /sprint plan", use the INSTALLED plugin.
|
||||
When user says "fix the sprint plan command", edit the SOURCE code.
|
||||
|
||||
---
|
||||
|
||||
## Project Overview
|
||||
|
||||
**Repository:** leo-claude-mktplace
|
||||
**Version:** 7.0.0
|
||||
**Version:** 9.1.2
|
||||
**Status:** Production Ready
|
||||
|
||||
A plugin marketplace for Claude Code containing:
|
||||
|
||||
| Plugin | Description | Version |
|
||||
|--------|-------------|---------|
|
||||
| `projman` | Sprint planning and project management with Gitea integration | 3.3.0 |
|
||||
| `git-flow` | Git workflow automation with smart commits and branch management | 1.0.0 |
|
||||
| `pr-review` | Multi-agent PR review with confidence scoring | 1.1.0 |
|
||||
| `clarity-assist` | Prompt optimization with ND-friendly accommodations | 1.0.0 |
|
||||
| `doc-guardian` | Automatic documentation drift detection and synchronization | 1.0.0 |
|
||||
| `code-sentinel` | Security scanning and code refactoring tools | 1.0.1 |
|
||||
| `claude-config-maintainer` | CLAUDE.md optimization and maintenance | 1.0.0 |
|
||||
| `cmdb-assistant` | NetBox CMDB integration for infrastructure management | 1.2.0 |
|
||||
| `data-platform` | pandas, PostgreSQL, and dbt integration for data engineering | 1.3.0 |
|
||||
| `viz-platform` | DMC validation, Plotly charts, and theming for dashboards | 1.1.0 |
|
||||
| `contract-validator` | Cross-plugin compatibility validation and agent verification | 1.1.0 |
|
||||
| `project-hygiene` | Post-task cleanup automation via hooks | 0.1.0 |
|
||||
| `projman` | Sprint planning and project management with Gitea integration | 9.0.1 |
|
||||
| `git-flow` | Git workflow automation with smart commits and branch management | 9.0.1 |
|
||||
| `pr-review` | Multi-agent PR review with confidence scoring | 9.0.1 |
|
||||
| `clarity-assist` | Prompt optimization with ND-friendly accommodations | 9.0.1 |
|
||||
| `doc-guardian` | Automatic documentation drift detection and synchronization | 9.0.1 |
|
||||
| `code-sentinel` | Security scanning and code refactoring tools | 9.0.1 |
|
||||
| `claude-config-maintainer` | CLAUDE.md optimization and maintenance | 9.0.1 |
|
||||
| `cmdb-assistant` | NetBox CMDB integration for infrastructure management | 9.0.1 |
|
||||
| `data-platform` | pandas, PostgreSQL, and dbt integration for data engineering | 9.0.1 |
|
||||
| `viz-platform` | DMC validation, Plotly charts, and theming for dashboards | 9.0.1 |
|
||||
| `contract-validator` | Cross-plugin compatibility validation and agent verification | 9.0.1 |
|
||||
| `project-hygiene` | Manual project hygiene checks | 9.0.1 |
|
||||
| `saas-api-platform` | REST/GraphQL API scaffolding for FastAPI and Express | 0.1.0 |
|
||||
| `saas-db-migrate` | Database migration management for Alembic, Prisma, raw SQL | 0.1.0 |
|
||||
| `saas-react-platform` | React frontend toolkit for Next.js and Vite | 0.1.0 |
|
||||
| `saas-test-pilot` | Test automation for pytest, Jest, Vitest, Playwright | 0.1.0 |
|
||||
| `data-seed` | Test data generation and database seeding | 0.1.0 |
|
||||
| `ops-release-manager` | Release management with SemVer and changelog automation | 0.1.0 |
|
||||
| `ops-deploy-pipeline` | Deployment pipeline for Docker Compose and systemd | 0.1.0 |
|
||||
| `debug-mcp` | MCP server debugging and development toolkit | 0.1.0 |
|
||||
|
||||
## Quick Start
|
||||
|
||||
@@ -180,16 +196,18 @@ A plugin marketplace for Claude Code containing:
|
||||
|
||||
| Category | Commands |
|
||||
|----------|----------|
|
||||
| **Setup** | `/pm-setup` (modes: `--full`, `--quick`, `--sync`) |
|
||||
| **Sprint** | `/sprint-plan`, `/sprint-start`, `/sprint-status` (with `--diagram`), `/sprint-close` |
|
||||
| **Quality** | `/pm-review`, `/pm-test` (modes: `run`, `gen`) |
|
||||
| **Versioning** | `/suggest-version` |
|
||||
| **PR Review** | `/pr-review`, `/pr-summary`, `/pr-findings`, `/pr-diff` |
|
||||
| **Docs** | `/doc-audit`, `/doc-sync`, `/changelog-gen`, `/doc-coverage`, `/stale-docs` |
|
||||
| **Security** | `/security-scan`, `/refactor`, `/refactor-dry` |
|
||||
| **Config** | `/config-analyze`, `/config-optimize`, `/config-diff`, `/config-lint` |
|
||||
| **Validation** | `/validate-contracts`, `/check-agent`, `/list-interfaces`, `/dependency-graph` |
|
||||
| **Debug** | `/pm-debug` (modes: `report`, `review`) |
|
||||
| **Setup** | `/projman setup` (modes: `--full`, `--quick`, `--sync`) |
|
||||
| **Sprint** | `/sprint plan`, `/sprint start`, `/sprint status` (with `--diagram`), `/sprint close` |
|
||||
| **Quality** | `/sprint review`, `/sprint test` (modes: `run`, `gen`) |
|
||||
| **Project** | `/project initiation`, `/project plan`, `/project status`, `/project close` |
|
||||
| **ADR** | `/adr create`, `/adr list`, `/adr update`, `/adr supersede` |
|
||||
| **RFC** | `/rfc create`, `/rfc list`, `/rfc review`, `/rfc approve`, `/rfc reject` |
|
||||
| **PR Review** | `/pr review`, `/pr summary`, `/pr findings`, `/pr diff` |
|
||||
| **Docs** | `/doc audit`, `/doc sync`, `/doc changelog-gen`, `/doc coverage`, `/doc stale-docs` |
|
||||
| **Security** | `/sentinel scan`, `/sentinel refactor`, `/sentinel refactor-dry` |
|
||||
| **Config** | `/claude-config analyze`, `/claude-config optimize`, `/claude-config diff`, `/claude-config lint` |
|
||||
| **Validation** | `/cv validate`, `/cv check-agent`, `/cv list-interfaces`, `/cv dependency-graph`, `/cv status` |
|
||||
| **Maintenance** | `/hygiene check` |
|
||||
|
||||
### Plugin Commands - NOT RELEVANT to This Project
|
||||
|
||||
@@ -197,67 +215,82 @@ These commands are being developed but don't apply to this project's workflow:
|
||||
|
||||
| Category | Commands | For Projects Using |
|
||||
|----------|----------|-------------------|
|
||||
| **Data** | `/data-ingest`, `/data-profile`, `/data-schema`, `/data-lineage`, `/dbt-test` | pandas, PostgreSQL, dbt |
|
||||
| **Visualization** | `/viz-component`, `/viz-chart`, `/viz-dashboard`, `/viz-theme` | Dash, Plotly dashboards |
|
||||
| **CMDB** | `/cmdb-search`, `/cmdb-device`, `/cmdb-sync` | NetBox infrastructure |
|
||||
| **Data** | `/data ingest`, `/data profile`, `/data schema`, `/data lineage`, `/data dbt-test` | pandas, PostgreSQL, dbt |
|
||||
| **Visualization** | `/viz component`, `/viz chart`, `/viz dashboard`, `/viz theme` | Dash, Plotly dashboards |
|
||||
| **CMDB** | `/cmdb search`, `/cmdb device`, `/cmdb sync` | NetBox infrastructure |
|
||||
| **API** | `/api scaffold`, `/api validate`, `/api docs`, `/api middleware` | FastAPI, Express |
|
||||
| **DB Migrate** | `/db-migrate generate`, `/db-migrate validate`, `/db-migrate plan` | Alembic, Prisma |
|
||||
| **React** | `/react component`, `/react route`, `/react state`, `/react hook` | Next.js, Vite |
|
||||
| **Testing** | `/test generate`, `/test coverage`, `/test fixtures`, `/test e2e` | pytest, Jest, Playwright |
|
||||
| **Seeding** | `/seed generate`, `/seed profile`, `/seed apply` | Faker, test data |
|
||||
| **Release** | `/release prepare`, `/release validate`, `/release tag` | SemVer releases |
|
||||
| **Deploy** | `/deploy generate`, `/deploy validate`, `/deploy check` | Docker Compose, systemd |
|
||||
| **Debug MCP** | `/debug-mcp status`, `/debug-mcp test`, `/debug-mcp logs` | MCP server development |
|
||||
|
||||
## Repository Structure
|
||||
|
||||
```
|
||||
leo-claude-mktplace/
|
||||
├── .claude-plugin/
|
||||
│ └── marketplace.json # Marketplace manifest
|
||||
├── .claude-plugin/ # Marketplace manifest
|
||||
│ ├── marketplace.json
|
||||
│ ├── marketplace-lean.json # Lean profile (6 core plugins)
|
||||
│ └── marketplace-full.json # Full profile (all plugins)
|
||||
├── .mcp.json # MCP server configuration (all servers)
|
||||
├── mcp-servers/ # SHARED MCP servers
|
||||
│ ├── gitea/ # Gitea MCP (issues, PRs, wiki)
|
||||
│ ├── netbox/ # NetBox MCP (CMDB)
|
||||
│ ├── gitea/ # Gitea (issues, PRs, wiki)
|
||||
│ ├── netbox/ # NetBox (DCIM, IPAM)
|
||||
│ ├── data-platform/ # pandas, PostgreSQL, dbt
|
||||
│ ├── viz-platform/ # DMC validation, charts, themes
|
||||
│ ├── viz-platform/ # DMC, Plotly, theming
|
||||
│ └── contract-validator/ # Plugin compatibility validation
|
||||
├── plugins/
|
||||
│ ├── projman/ # Sprint management
|
||||
├── plugins/ # All plugins (20 total)
|
||||
│ ├── projman/ # [core] Sprint management
|
||||
│ │ ├── .claude-plugin/plugin.json
|
||||
│ │ ├── commands/ # 12 commands
|
||||
│ │ ├── hooks/ # SessionStart: mismatch detection
|
||||
│ │ ├── commands/ # 19 commands
|
||||
│ │ ├── agents/ # 4 agents
|
||||
│ │ └── skills/ # 17 reusable skill files
|
||||
│ ├── git-flow/ # Git workflow automation
|
||||
│ │ ├── .claude-plugin/plugin.json
|
||||
│ │ ├── commands/ # 8 commands
|
||||
│ │ └── agents/
|
||||
│ ├── pr-review/ # Multi-agent PR review
|
||||
│ │ ├── .claude-plugin/plugin.json
|
||||
│ │ ├── commands/ # 6 commands
|
||||
│ │ ├── hooks/ # SessionStart mismatch detection
|
||||
│ │ └── agents/ # 5 agents
|
||||
│ ├── clarity-assist/ # Prompt optimization
|
||||
│ │ ├── .claude-plugin/plugin.json
|
||||
│ │ ├── commands/ # 2 commands
|
||||
│ │ └── agents/
|
||||
│ ├── data-platform/ # Data engineering
|
||||
│ │ ├── .claude-plugin/plugin.json
|
||||
│ │ ├── commands/ # 7 commands
|
||||
│ │ ├── hooks/ # SessionStart PostgreSQL check
|
||||
│ │ └── agents/ # 2 agents
|
||||
│ ├── viz-platform/ # Visualization
|
||||
│ │ ├── .claude-plugin/plugin.json
|
||||
│ │ ├── commands/ # 7 commands
|
||||
│ │ ├── hooks/ # SessionStart DMC check
|
||||
│ │ └── agents/ # 3 agents
|
||||
│ ├── doc-guardian/ # Documentation drift detection
|
||||
│ ├── code-sentinel/ # Security scanning & refactoring
|
||||
│ ├── claude-config-maintainer/
|
||||
│ ├── cmdb-assistant/
|
||||
│ ├── contract-validator/
|
||||
│ └── project-hygiene/
|
||||
├── scripts/
|
||||
│ ├── setup.sh, post-update.sh
|
||||
│ │ └── skills/ # 23 reusable skill files
|
||||
│ ├── git-flow/ # [core] Git workflow automation
|
||||
│ ├── pr-review/ # [core] PR review
|
||||
│ ├── clarity-assist/ # [core] Prompt optimization
|
||||
│ ├── doc-guardian/ # [core] Documentation drift detection
|
||||
│ ├── code-sentinel/ # [core] Security scanning
|
||||
│ ├── claude-config-maintainer/ # [core] CLAUDE.md optimization
|
||||
│ ├── contract-validator/ # [core] Cross-plugin validation
|
||||
│ ├── project-hygiene/ # [core] Manual cleanup checks
|
||||
│ ├── cmdb-assistant/ # [ops] NetBox CMDB integration
|
||||
│ ├── data-platform/ # [data] Data engineering
|
||||
│ ├── viz-platform/ # [data] Visualization
|
||||
│ ├── data-seed/ # [data] Test data generation (scaffold)
|
||||
│ ├── saas-api-platform/ # [saas] API scaffolding (scaffold)
|
||||
│ ├── saas-db-migrate/ # [saas] DB migrations (scaffold)
|
||||
│ ├── saas-react-platform/ # [saas] React toolkit (scaffold)
|
||||
│ ├── saas-test-pilot/ # [saas] Test automation (scaffold)
|
||||
│ ├── ops-release-manager/ # [ops] Release management (scaffold)
|
||||
│ ├── ops-deploy-pipeline/ # [ops] Deployment pipeline (scaffold)
|
||||
│ └── debug-mcp/ # [debug] MCP debugging (scaffold)
|
||||
├── scripts/ # Setup and maintenance
|
||||
│ ├── setup.sh # Initial setup (create venvs, config)
|
||||
│ ├── post-update.sh # Post-update (clear cache, changelog)
|
||||
│ ├── setup-venvs.sh # MCP server venv management (cache-based)
|
||||
│ ├── validate-marketplace.sh # Marketplace compliance validation
|
||||
│ ├── verify-hooks.sh # Verify all hooks are command type
|
||||
│ └── check-venv.sh # Check MCP server venvs exist
|
||||
└── docs/
|
||||
├── CANONICAL-PATHS.md # Single source of truth for paths
|
||||
└── CONFIGURATION.md # Centralized configuration guide
|
||||
│ ├── verify-hooks.sh # Hook inventory verification
|
||||
│ ├── release.sh # Release automation with version bumping
|
||||
│ ├── claude-launch.sh # Profile-based launcher
|
||||
│ ├── install-plugin.sh # Install plugin to consumer project
|
||||
│ ├── list-installed.sh # Show installed plugins in a project
|
||||
│ └── uninstall-plugin.sh # Remove plugin from consumer project
|
||||
├── docs/ # Documentation
|
||||
│ ├── ARCHITECTURE.md # System architecture & plugin reference
|
||||
│ ├── CANONICAL-PATHS.md # Authoritative path reference
|
||||
│ ├── COMMANDS-CHEATSHEET.md # All commands quick reference
|
||||
│ ├── CONFIGURATION.md # Centralized setup guide
|
||||
│ ├── DEBUGGING-CHECKLIST.md # Systematic troubleshooting guide
|
||||
│ ├── MIGRATION-v9.md # v8.x to v9.0.0 migration guide
|
||||
│ └── UPDATING.md # Update guide
|
||||
├── CLAUDE.md # Project instructions for Claude Code
|
||||
├── README.md
|
||||
├── CHANGELOG.md
|
||||
├── LICENSE
|
||||
└── .gitignore
|
||||
```
|
||||
|
||||
## Architecture
|
||||
@@ -366,17 +399,17 @@ Wiki-based Request for Comments system for tracking feature ideas from proposal
|
||||
**Lifecycle:** Draft → Review → Approved → Implementing → Implemented
|
||||
|
||||
**Integration with Sprint Planning:**
|
||||
- `/sprint-plan` detects approved RFCs and offers selection
|
||||
- `/sprint-close` updates RFC status on completion
|
||||
- `/sprint plan` detects approved RFCs and offers selection
|
||||
- `/sprint close` updates RFC status on completion
|
||||
|
||||
## Label Taxonomy
|
||||
|
||||
43 labels total: 27 organization + 16 repository
|
||||
58 labels total: 31 organization + 27 repository
|
||||
|
||||
**Organization:** Agent/2, Complexity/3, Efforts/5, Priority/4, Risk/3, Source/4, Type/6
|
||||
**Repository:** Component/9, Tech/7
|
||||
**Organization:** Agent/2, Complexity/3, Efforts/5, Priority/4, Risk/3, Source/4, Status/4, Type/6
|
||||
**Repository:** Component/9, Tech/7, Domain/2, Epic/5, RnD/4
|
||||
|
||||
Sync with `/labels-sync` command.
|
||||
Sync with `/labels sync` command.
|
||||
|
||||
## Lessons Learned System
|
||||
|
||||
@@ -391,19 +424,18 @@ Stored in Gitea Wiki under `lessons-learned/sprints/`.
|
||||
|
||||
### Adding a New Plugin
|
||||
|
||||
1. Create `plugins/{name}/.claude-plugin/plugin.json` — must include `"domain"` field (`core`, `data`, `saas`, `ops`, or `debug`)
|
||||
2. Add entry to `.claude-plugin/marketplace.json` with category, tags, license, and `"domain"` field (must match plugin.json)
|
||||
3. Create `claude-md-integration.md`
|
||||
4. If using new MCP server, add to root `mcp-servers/` and update `.mcp.json`
|
||||
5. Run `./scripts/validate-marketplace.sh` — rejects plugins without valid `domain` field
|
||||
6. Update `CHANGELOG.md`
|
||||
1. Create `plugins/{name}/.claude-plugin/plugin.json` (standard schema fields only — no custom fields)
|
||||
2. Create `plugins/{name}/.claude-plugin/metadata.json` — must include `"domain"` field (`core`, `data`, `saas`, `ops`, or `debug`)
|
||||
3. Add entry to `.claude-plugin/marketplace.json` with category, tags, license (no custom fields — Claude Code schema is strict)
|
||||
4. Create `claude-md-integration.md`
|
||||
5. If using new MCP server, add to root `mcp-servers/` and update `.mcp.json`
|
||||
6. Run `./scripts/validate-marketplace.sh` — rejects plugins without valid `domain` field
|
||||
7. Update `CHANGELOG.md`
|
||||
|
||||
**Domain field is required (v8.0.0+):**
|
||||
**Domain field is required in metadata.json (v8.0.0+, moved from plugin.json in v9.1.2):**
|
||||
```json
|
||||
{
|
||||
"name": "plugin-name",
|
||||
"domain": "core",
|
||||
...
|
||||
"domain": "core"
|
||||
}
|
||||
```
|
||||
|
||||
@@ -414,8 +446,10 @@ Stored in Gitea Wiki under `lessons-learned/sprints/`.
|
||||
| Domain | Plugins |
|
||||
|--------|---------|
|
||||
| `core` | projman, git-flow, pr-review, code-sentinel, doc-guardian, clarity-assist, contract-validator, claude-config-maintainer, project-hygiene |
|
||||
| `data` | data-platform, viz-platform |
|
||||
| `ops` | cmdb-assistant |
|
||||
| `data` | data-platform, viz-platform, data-seed |
|
||||
| `saas` | saas-api-platform, saas-db-migrate, saas-react-platform, saas-test-pilot |
|
||||
| `ops` | cmdb-assistant, ops-release-manager, ops-deploy-pipeline |
|
||||
| `debug` | debug-mcp |
|
||||
|
||||
### Adding a Command to projman
|
||||
|
||||
@@ -441,10 +475,12 @@ Stored in Gitea Wiki under `lessons-learned/sprints/`.
|
||||
|
||||
| Document | Purpose |
|
||||
|----------|---------|
|
||||
| `docs/ARCHITECTURE.md` | System architecture and plugin reference |
|
||||
| `docs/CANONICAL-PATHS.md` | **Single source of truth** for paths |
|
||||
| `docs/COMMANDS-CHEATSHEET.md` | All commands quick reference |
|
||||
| `docs/CONFIGURATION.md` | Centralized setup guide |
|
||||
| `docs/DEBUGGING-CHECKLIST.md` | Systematic troubleshooting guide |
|
||||
| `docs/MIGRATION-v9.md` | v8.x to v9.0.0 migration guide |
|
||||
| `docs/UPDATING.md` | Update guide for the marketplace |
|
||||
| `plugins/projman/CONFIGURATION.md` | Projman quick reference (links to central) |
|
||||
|
||||
@@ -468,12 +504,12 @@ See `docs/DEBUGGING-CHECKLIST.md` for systematic troubleshooting.
|
||||
| Symptom | Likely Cause | Fix |
|
||||
|---------|--------------|-----|
|
||||
| "X MCP servers failed" | Missing venv in installed path | `cd ~/.claude/plugins/marketplaces/leo-claude-mktplace && ./scripts/setup.sh` |
|
||||
| MCP tools not available | Venv missing or .mcp.json misconfigured | Run `/pm-debug report` to diagnose |
|
||||
| MCP tools not available | Venv missing or .mcp.json misconfigured | Run `/cv status` to diagnose |
|
||||
| Changes not taking effect | Editing source, not installed | Reinstall plugin or edit installed path |
|
||||
|
||||
**Debug Commands:**
|
||||
- `/pm-debug report` - Run full diagnostics, create issue if needed
|
||||
- `/pm-debug review` - Investigate and propose fixes
|
||||
**Diagnostic Commands:**
|
||||
- `/cv status` - Marketplace-wide health check (installation, MCP, configuration)
|
||||
- `/hygiene check` - Project file organization and cleanup check
|
||||
|
||||
## Versioning Workflow
|
||||
|
||||
@@ -527,4 +563,4 @@ The script will:
|
||||
|
||||
---
|
||||
|
||||
**Last Updated:** 2026-02-03
|
||||
**Last Updated:** 2026-02-07
|
||||
|
||||
479
README.md
479
README.md
@@ -1,10 +1,57 @@
|
||||
# Leo Claude Marketplace - v8.0.0
|
||||
# Leo Claude Marketplace — v9.1.2
|
||||
|
||||
A collection of Claude Code plugins for project management, infrastructure automation, and development workflows.
|
||||
A plugin marketplace for Claude Code providing sprint management, code review, security scanning, infrastructure automation, and development workflow tools. 20 plugins across 5 domains, backed by 5 shared MCP servers.
|
||||
|
||||
## Plugins
|
||||
|
||||
### Core (9 plugins — v9.0.1)
|
||||
|
||||
| Plugin | Description |
|
||||
|--------|-------------|
|
||||
| `projman` | Sprint planning and project management with Gitea integration |
|
||||
| `git-flow` | Git workflow automation with intelligent commit messages and branch management |
|
||||
| `pr-review` | Multi-agent pull request review with confidence scoring |
|
||||
| `code-sentinel` | Security scanning and code refactoring tools |
|
||||
| `doc-guardian` | Documentation drift detection and synchronization |
|
||||
| `clarity-assist` | Prompt optimization with ND-friendly accommodations |
|
||||
| `contract-validator` | Cross-plugin compatibility validation and agent verification |
|
||||
| `claude-config-maintainer` | CLAUDE.md and settings.local.json optimization |
|
||||
| `project-hygiene` | Manual project file cleanup checks |
|
||||
|
||||
### Data (3 plugins)
|
||||
|
||||
| Plugin | Version | Description |
|
||||
|--------|---------|-------------|
|
||||
| `data-platform` | 9.0.1 | pandas, PostgreSQL/PostGIS, and dbt integration |
|
||||
| `viz-platform` | 9.0.1 | Dash Mantine Components validation, Plotly charts, and theming |
|
||||
| `data-seed` | 0.1.0 — scaffold | Test data generation and database seeding |
|
||||
|
||||
### Ops (3 plugins)
|
||||
|
||||
| Plugin | Version | Description |
|
||||
|--------|---------|-------------|
|
||||
| `cmdb-assistant` | 9.0.1 | NetBox CMDB integration with data quality validation |
|
||||
| `ops-release-manager` | 0.1.0 — scaffold | Release management with SemVer and changelog automation |
|
||||
| `ops-deploy-pipeline` | 0.1.0 — scaffold | Deployment pipeline for Docker Compose and systemd |
|
||||
|
||||
### SaaS (4 plugins — v0.1.0 scaffolds)
|
||||
|
||||
| Plugin | Description |
|
||||
|--------|-------------|
|
||||
| `saas-api-platform` | REST/GraphQL API scaffolding for FastAPI and Express |
|
||||
| `saas-db-migrate` | Database migration management for Alembic, Prisma, raw SQL |
|
||||
| `saas-react-platform` | React frontend toolkit for Next.js and Vite |
|
||||
| `saas-test-pilot` | Test automation for pytest, Jest, Vitest, Playwright |
|
||||
|
||||
### Debug (1 plugin — v0.1.0 scaffold)
|
||||
|
||||
| Plugin | Description |
|
||||
|--------|-------------|
|
||||
| `debug-mcp` | MCP server debugging, inspection, and development toolkit |
|
||||
|
||||
## Quick Start
|
||||
|
||||
Use the launcher script to load only the plugins you need, reducing token overhead from ~22K to ~4-6K tokens:
|
||||
### Launch with profiles
|
||||
|
||||
```bash
|
||||
./scripts/claude-launch.sh [profile] [extra-args...]
|
||||
@@ -16,233 +63,98 @@ Use the launcher script to load only the plugins you need, reducing token overhe
|
||||
| `review` | pr-review, code-sentinel | Lightweight code review |
|
||||
| `data` | data-platform, viz-platform | Data engineering and visualization |
|
||||
| `infra` | cmdb-assistant | Infrastructure/CMDB management |
|
||||
| `full` | All 12 plugins via marketplace.json | When you need everything |
|
||||
| `full` | All 20 plugins | When you need everything |
|
||||
|
||||
**Examples:**
|
||||
```bash
|
||||
./scripts/claude-launch.sh # Default sprint profile
|
||||
./scripts/claude-launch.sh data --model opus # Data profile with Opus
|
||||
./scripts/claude-launch.sh full # Load all plugins
|
||||
```
|
||||
|
||||
The script enables `ENABLE_TOOL_SEARCH=true` for MCP lazy loading.
|
||||
### Common commands
|
||||
|
||||
## Plugins
|
||||
```bash
|
||||
/sprint plan # Plan a sprint with architecture analysis
|
||||
/sprint start # Begin sprint execution
|
||||
/gitflow commit --push # Commit with auto-generated message and push
|
||||
/pr review # Full multi-agent PR review
|
||||
/sentinel scan # Security audit
|
||||
/doc audit # Check for documentation drift
|
||||
/cv status # Marketplace health check
|
||||
```
|
||||
|
||||
### Development & Project Management
|
||||
## Repository Structure
|
||||
|
||||
#### [projman](./plugins/projman)
|
||||
**Sprint Planning and Project Management**
|
||||
|
||||
AI-guided sprint planning with full Gitea integration. Transforms a proven 15-sprint workflow into a distributable plugin.
|
||||
|
||||
- Four-agent model: Planner, Orchestrator, Executor, Code Reviewer
|
||||
- Plan-then-batch execution: skills loaded once per phase, API calls batched for ~80% token savings
|
||||
- Intelligent label suggestions from 43-label taxonomy
|
||||
- Lessons learned capture via Gitea Wiki
|
||||
- Native issue dependencies with parallel execution
|
||||
- Milestone management for sprint organization
|
||||
- Branch-aware security (development/staging/production)
|
||||
- Pre-sprint-close code quality review and test verification
|
||||
|
||||
**Commands:** `/sprint-plan`, `/sprint-start`, `/sprint-status`, `/sprint-close`, `/labels-sync`, `/pm-setup`, `/pm-review`, `/pm-test`, `/pm-debug`, `/suggest-version`, `/proposal-status`, `/rfc`
|
||||
|
||||
#### [git-flow](./plugins/git-flow)
|
||||
**Git Workflow Automation**
|
||||
|
||||
Smart git operations with intelligent commit messages and branch management.
|
||||
|
||||
- Auto-generated conventional commit messages
|
||||
- Multiple workflow styles (simple, feature-branch, pr-required, trunk-based)
|
||||
- Branch naming enforcement
|
||||
- Merge and cleanup automation
|
||||
- Protected branch awareness
|
||||
|
||||
**Commands:** `/git-commit`, `/git-commit-push`, `/git-commit-merge`, `/git-commit-sync`, `/branch-start`, `/branch-cleanup`, `/git-status`, `/git-config`
|
||||
|
||||
#### [pr-review](./plugins/pr-review)
|
||||
**Multi-Agent PR Review**
|
||||
|
||||
Comprehensive pull request review using specialized agents.
|
||||
|
||||
- Multi-agent review: Security, Performance, Maintainability, Tests
|
||||
- Confidence scoring (only reports HIGH/MEDIUM confidence findings)
|
||||
- Actionable feedback with suggested fixes
|
||||
- Gitea integration for automated review submission
|
||||
|
||||
**Commands:** `/pr-review`, `/pr-summary`, `/pr-findings`, `/pr-diff`, `/pr-setup`, `/project-init`, `/project-sync`
|
||||
|
||||
#### [claude-config-maintainer](./plugins/claude-config-maintainer)
|
||||
**CLAUDE.md and Settings Optimization**
|
||||
|
||||
Analyze, optimize, and create CLAUDE.md configuration files. Audit and optimize settings.local.json permissions.
|
||||
|
||||
**Commands:** `/analyze`, `/optimize`, `/init`, `/config-diff`, `/config-lint`, `/config-audit-settings`, `/config-optimize-settings`, `/config-permissions-map`
|
||||
|
||||
#### [contract-validator](./plugins/contract-validator)
|
||||
**Cross-Plugin Compatibility Validation**
|
||||
|
||||
Validate plugin marketplaces for command conflicts, tool overlaps, and broken agent references.
|
||||
|
||||
- Interface parsing from plugin README.md files
|
||||
- Agent extraction from CLAUDE.md definitions
|
||||
- Pairwise compatibility checks between all plugins
|
||||
- Data flow validation for agent sequences
|
||||
- Markdown or JSON reports with actionable suggestions
|
||||
|
||||
**Commands:** `/validate-contracts`, `/check-agent`, `/list-interfaces`, `/dependency-graph`, `/cv-setup`
|
||||
|
||||
### Productivity
|
||||
|
||||
#### [clarity-assist](./plugins/clarity-assist)
|
||||
**Prompt Optimization with ND Accommodations**
|
||||
|
||||
Transform vague requests into clear specifications using structured methodology.
|
||||
|
||||
- 4-D methodology: Deconstruct, Diagnose, Develop, Deliver
|
||||
- ND-friendly question patterns (option-based, chunked)
|
||||
- Conflict detection and escalation protocols
|
||||
|
||||
**Commands:** `/clarify`, `/quick-clarify`
|
||||
|
||||
#### [doc-guardian](./plugins/doc-guardian)
|
||||
**Documentation Lifecycle Management**
|
||||
|
||||
Automatic documentation drift detection and synchronization.
|
||||
|
||||
**Commands:** `/doc-audit`, `/doc-sync`, `/changelog-gen`, `/doc-coverage`, `/stale-docs`
|
||||
|
||||
#### [project-hygiene](./plugins/project-hygiene)
|
||||
**Post-Task Cleanup Automation**
|
||||
|
||||
Hook-based cleanup that runs after Claude completes work.
|
||||
|
||||
### Security
|
||||
|
||||
#### [code-sentinel](./plugins/code-sentinel)
|
||||
**Security Scanning & Refactoring**
|
||||
|
||||
Security vulnerability detection and code refactoring tools.
|
||||
|
||||
**Commands:** `/security-scan`, `/refactor`, `/refactor-dry`
|
||||
|
||||
### Infrastructure
|
||||
|
||||
#### [cmdb-assistant](./plugins/cmdb-assistant)
|
||||
**NetBox CMDB Integration**
|
||||
|
||||
Full CRUD operations for network infrastructure management directly from Claude Code.
|
||||
|
||||
**Commands:** `/cmdb-setup`, `/cmdb-search`, `/cmdb-device`, `/cmdb-ip`, `/cmdb-site`, `/cmdb-audit`, `/cmdb-register`, `/cmdb-sync`, `/cmdb-topology`, `/change-audit`, `/ip-conflicts`
|
||||
|
||||
### Data Engineering
|
||||
|
||||
#### [data-platform](./plugins/data-platform)
|
||||
**pandas, PostgreSQL/PostGIS, and dbt Integration**
|
||||
|
||||
Comprehensive data engineering toolkit with persistent DataFrame storage.
|
||||
|
||||
- 14 pandas tools with Arrow IPC data_ref system
|
||||
- 10 PostgreSQL/PostGIS tools with connection pooling
|
||||
- 8 dbt tools with automatic pre-validation
|
||||
- 100k row limit with chunking support
|
||||
- Auto-detection of dbt projects
|
||||
|
||||
**Commands:** `/data-ingest`, `/data-profile`, `/data-schema`, `/data-explain`, `/data-lineage`, `/lineage-viz`, `/data-run`, `/dbt-test`, `/data-quality`, `/data-review`, `/data-gate`, `/data-setup`
|
||||
|
||||
### Visualization
|
||||
|
||||
#### [viz-platform](./plugins/viz-platform)
|
||||
**Dash Mantine Components Validation and Theming**
|
||||
|
||||
Visualization toolkit with version-locked component validation and design token theming.
|
||||
|
||||
- 3 DMC tools with static JSON registry (prevents prop hallucination)
|
||||
- 2 Chart tools with Plotly and theme integration
|
||||
- 5 Layout tools for dashboard composition
|
||||
- 6 Theme tools with design token system
|
||||
- 5 Page tools for multi-page app structure
|
||||
- Dual theme storage: user-level and project-level
|
||||
|
||||
**Commands:** `/viz-chart`, `/viz-chart-export`, `/viz-dashboard`, `/viz-theme`, `/viz-theme-new`, `/viz-theme-css`, `/viz-component`, `/accessibility-check`, `/viz-breakpoints`, `/design-review`, `/design-gate`, `/viz-setup`
|
||||
|
||||
## Domain Advisory Pattern
|
||||
|
||||
The marketplace supports cross-plugin domain advisory integration:
|
||||
|
||||
- **Domain Detection**: projman automatically detects when issues involve specialized domains (frontend/viz, data engineering)
|
||||
- **Acceptance Criteria**: Domain-specific acceptance criteria are added to issues during planning
|
||||
- **Execution Gates**: Domain validation gates (`/design-gate`, `/data-gate`) run before issue completion
|
||||
- **Extensible**: New domains can be added by creating advisory agents and gate commands
|
||||
|
||||
**Current Domains:**
|
||||
| Domain | Plugin | Gate Command |
|
||||
|--------|--------|--------------|
|
||||
| Visualization | viz-platform | `/design-gate` |
|
||||
| Data | data-platform | `/data-gate` |
|
||||
```
|
||||
leo-claude-mktplace/
|
||||
├── .claude-plugin/ # Marketplace manifest
|
||||
│ ├── marketplace.json
|
||||
│ ├── marketplace-lean.json # Lean profile (6 core plugins)
|
||||
│ └── marketplace-full.json # Full profile (all plugins)
|
||||
├── mcp-servers/ # Shared MCP servers
|
||||
│ ├── gitea/ # Gitea (issues, PRs, wiki)
|
||||
│ ├── netbox/ # NetBox (DCIM, IPAM)
|
||||
│ ├── data-platform/ # pandas, PostgreSQL, dbt
|
||||
│ ├── viz-platform/ # DMC, Plotly, theming
|
||||
│ └── contract-validator/ # Plugin compatibility validation
|
||||
├── plugins/ # All plugins (20 total)
|
||||
│ ├── projman/ # [core] Sprint management
|
||||
│ ├── git-flow/ # [core] Git workflow automation
|
||||
│ ├── pr-review/ # [core] PR review
|
||||
│ ├── clarity-assist/ # [core] Prompt optimization
|
||||
│ ├── doc-guardian/ # [core] Documentation drift detection
|
||||
│ ├── code-sentinel/ # [core] Security scanning
|
||||
│ ├── claude-config-maintainer/ # [core] CLAUDE.md optimization
|
||||
│ ├── contract-validator/ # [core] Cross-plugin validation
|
||||
│ ├── project-hygiene/ # [core] Manual cleanup checks
|
||||
│ ├── cmdb-assistant/ # [ops] NetBox CMDB integration
|
||||
│ ├── data-platform/ # [data] Data engineering
|
||||
│ ├── viz-platform/ # [data] Visualization
|
||||
│ ├── data-seed/ # [data] Test data generation (scaffold)
|
||||
│ ├── saas-api-platform/ # [saas] API scaffolding (scaffold)
|
||||
│ ├── saas-db-migrate/ # [saas] DB migrations (scaffold)
|
||||
│ ├── saas-react-platform/ # [saas] React toolkit (scaffold)
|
||||
│ ├── saas-test-pilot/ # [saas] Test automation (scaffold)
|
||||
│ ├── ops-release-manager/ # [ops] Release management (scaffold)
|
||||
│ ├── ops-deploy-pipeline/ # [ops] Deployment pipeline (scaffold)
|
||||
│ └── debug-mcp/ # [debug] MCP debugging (scaffold)
|
||||
├── scripts/ # Setup and maintenance
|
||||
│ ├── setup.sh # Initial setup (create venvs, config)
|
||||
│ ├── post-update.sh # Post-update (clear cache, changelog)
|
||||
│ ├── setup-venvs.sh # MCP server venv management (cache-based)
|
||||
│ ├── validate-marketplace.sh # Marketplace compliance validation
|
||||
│ ├── verify-hooks.sh # Hook inventory verification
|
||||
│ ├── release.sh # Release automation with version bumping
|
||||
│ ├── claude-launch.sh # Profile-based launcher
|
||||
│ ├── install-plugin.sh # Install plugin to consumer project
|
||||
│ ├── list-installed.sh # Show installed plugins in a project
|
||||
│ └── uninstall-plugin.sh # Remove plugin from consumer project
|
||||
├── docs/ # Documentation
|
||||
│ ├── ARCHITECTURE.md # System architecture & plugin reference
|
||||
│ ├── CANONICAL-PATHS.md # Authoritative path reference
|
||||
│ ├── COMMANDS-CHEATSHEET.md # All commands quick reference
|
||||
│ ├── CONFIGURATION.md # Centralized setup guide
|
||||
│ ├── DEBUGGING-CHECKLIST.md # Systematic troubleshooting guide
|
||||
│ ├── MIGRATION-v9.md # v8.x to v9.0.0 migration guide
|
||||
│ └── UPDATING.md # Update guide
|
||||
├── CLAUDE.md # Project instructions for Claude Code
|
||||
├── README.md
|
||||
├── CHANGELOG.md
|
||||
├── LICENSE
|
||||
└── .gitignore
|
||||
```
|
||||
|
||||
## MCP Servers
|
||||
|
||||
MCP servers are **shared at repository root** and configured in `.mcp.json`.
|
||||
All MCP servers are shared at repository root and configured in `.mcp.json`.
|
||||
|
||||
### Gitea MCP Server (shared)
|
||||
|
||||
Full Gitea API integration for project management.
|
||||
|
||||
| Category | Tools |
|
||||
|----------|-------|
|
||||
| Issues | `list_issues`, `get_issue`, `create_issue`, `update_issue`, `add_comment`, `aggregate_issues` |
|
||||
| Labels | `get_labels`, `suggest_labels`, `create_label`, `create_label_smart` |
|
||||
| Wiki | `list_wiki_pages`, `get_wiki_page`, `create_wiki_page`, `update_wiki_page`, `create_lesson`, `search_lessons` |
|
||||
| Milestones | `list_milestones`, `get_milestone`, `create_milestone`, `update_milestone`, `delete_milestone` |
|
||||
| Dependencies | `list_issue_dependencies`, `create_issue_dependency`, `remove_issue_dependency`, `get_execution_order` |
|
||||
| **Pull Requests** | `list_pull_requests`, `get_pull_request`, `get_pr_diff`, `get_pr_comments`, `create_pr_review`, `add_pr_comment` |
|
||||
| Validation | `validate_repo_org`, `get_branch_protection` |
|
||||
|
||||
### NetBox MCP Server (shared)
|
||||
|
||||
Comprehensive NetBox REST API integration for infrastructure management.
|
||||
|
||||
| Module | Coverage |
|
||||
|--------|----------|
|
||||
| DCIM | Sites, Racks, Devices, Interfaces, Cables |
|
||||
| IPAM | Prefixes, IPs, VLANs, VRFs |
|
||||
| Circuits | Providers, Circuits, Terminations |
|
||||
| Virtualization | Clusters, VMs, Interfaces |
|
||||
| Extras | Tags, Custom Fields, Audit Log |
|
||||
|
||||
### Data Platform MCP Server (shared)
|
||||
|
||||
pandas, PostgreSQL/PostGIS, and dbt integration for data engineering.
|
||||
|
||||
| Category | Tools |
|
||||
|----------|-------|
|
||||
| pandas | `read_csv`, `read_parquet`, `read_json`, `to_csv`, `to_parquet`, `describe`, `head`, `tail`, `filter`, `select`, `groupby`, `join`, `list_data`, `drop_data` |
|
||||
| PostgreSQL | `pg_connect`, `pg_query`, `pg_execute`, `pg_tables`, `pg_columns`, `pg_schemas` |
|
||||
| PostGIS | `st_tables`, `st_geometry_type`, `st_srid`, `st_extent` |
|
||||
| dbt | `dbt_parse`, `dbt_run`, `dbt_test`, `dbt_build`, `dbt_compile`, `dbt_ls`, `dbt_docs_generate`, `dbt_lineage` |
|
||||
|
||||
### Viz Platform MCP Server (shared)
|
||||
|
||||
Dash Mantine Components validation and visualization tools.
|
||||
|
||||
| Category | Tools |
|
||||
|----------|-------|
|
||||
| DMC | `list_components`, `get_component_props`, `validate_component` |
|
||||
| Chart | `chart_create`, `chart_configure_interaction` |
|
||||
| Layout | `layout_create`, `layout_add_filter`, `layout_set_grid`, `layout_get`, `layout_add_section` |
|
||||
| Theme | `theme_create`, `theme_extend`, `theme_validate`, `theme_export_css`, `theme_list`, `theme_activate` |
|
||||
| Page | `page_create`, `page_add_navbar`, `page_set_auth`, `page_list`, `page_get_app_config` |
|
||||
|
||||
### Contract Validator MCP Server (shared)
|
||||
|
||||
Cross-plugin compatibility validation tools.
|
||||
|
||||
| Category | Tools |
|
||||
|----------|-------|
|
||||
| Parse | `parse_plugin_interface`, `parse_claude_md_agents` |
|
||||
| Validation | `validate_compatibility`, `validate_agent_refs`, `validate_data_flow`, `validate_workflow_integration` |
|
||||
| Report | `generate_compatibility_report`, `list_issues` |
|
||||
| Server | Used By | External System |
|
||||
|--------|---------|-----------------|
|
||||
| gitea | projman, pr-review | Gitea (issues, PRs, wiki, milestones) |
|
||||
| netbox | cmdb-assistant | NetBox (DCIM, IPAM) |
|
||||
| data-platform | data-platform | PostgreSQL, dbt |
|
||||
| viz-platform | viz-platform | DMC component registry |
|
||||
| contract-validator | contract-validator | Internal validation |
|
||||
|
||||
## Installation
|
||||
|
||||
@@ -252,16 +164,14 @@ Cross-plugin compatibility validation tools.
|
||||
- Python 3.10+
|
||||
- Access to target services (Gitea, NetBox as needed)
|
||||
|
||||
### Add Marketplace to Claude Code
|
||||
### Add marketplace to Claude Code
|
||||
|
||||
**Option 1 - CLI command (recommended):**
|
||||
```bash
|
||||
/plugin marketplace add https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git
|
||||
```
|
||||
|
||||
**Option 2 - Settings file (for team distribution):**
|
||||
Or add to `.claude/settings.json`:
|
||||
|
||||
Add to `.claude/settings.json` in your target project:
|
||||
```json
|
||||
{
|
||||
"extraKnownMarketplaces": {
|
||||
@@ -275,124 +185,55 @@ Add to `.claude/settings.json` in your target project:
|
||||
}
|
||||
```
|
||||
|
||||
### Run Interactive Setup
|
||||
### Setup MCP servers
|
||||
|
||||
After installing plugins, run the setup wizard:
|
||||
After installing, create Python venvs for MCP servers:
|
||||
|
||||
```
|
||||
/pm-setup
|
||||
```bash
|
||||
cd ~/.claude/plugins/marketplaces/leo-claude-mktplace && ./scripts/setup.sh
|
||||
```
|
||||
|
||||
The wizard handles everything:
|
||||
- Sets up MCP server (Python venv + dependencies)
|
||||
- Creates system config (`~/.config/claude/gitea.env`)
|
||||
- Guides you through adding your API token
|
||||
- Detects and validates your repository via API
|
||||
- Creates project config (`.env`)
|
||||
|
||||
**For new projects** (when system is already configured):
|
||||
```
|
||||
/project-init
|
||||
```
|
||||
|
||||
**After moving a repository:**
|
||||
```
|
||||
/project-sync
|
||||
```
|
||||
|
||||
See [docs/CONFIGURATION.md](./docs/CONFIGURATION.md) for manual setup and advanced options.
|
||||
|
||||
## Verifying Plugin Installation
|
||||
|
||||
After installing plugins, the `/plugin` command may show `(no content)` - this is normal Claude Code behavior and doesn't indicate an error.
|
||||
|
||||
**To verify a plugin is installed correctly:**
|
||||
|
||||
1. **Check installed plugins list:**
|
||||
```
|
||||
/plugin list
|
||||
```
|
||||
Look for `✔ plugin-name · Installed`
|
||||
|
||||
2. **Test a plugin command directly:**
|
||||
```
|
||||
/git-flow:git-status
|
||||
/projman:sprint-status
|
||||
/clarity-assist:clarify
|
||||
```
|
||||
If the command executes and shows output, the plugin is working.
|
||||
|
||||
3. **Check for loading errors:**
|
||||
```
|
||||
/plugin list
|
||||
```
|
||||
Look for any `Plugin Loading Errors` section - this indicates manifest issues.
|
||||
|
||||
**Command format:** All plugin commands use the format `/plugin-name:command-name`
|
||||
|
||||
| Plugin | Test Command |
|
||||
|--------|--------------|
|
||||
| git-flow | `/git-flow:git-status` |
|
||||
| projman | `/projman:sprint-status` |
|
||||
| pr-review | `/pr-review:pr-summary` |
|
||||
| clarity-assist | `/clarity-assist:clarify` |
|
||||
| doc-guardian | `/doc-guardian:doc-audit` |
|
||||
| code-sentinel | `/code-sentinel:security-scan` |
|
||||
| claude-config-maintainer | `/claude-config-maintainer:analyze` |
|
||||
| cmdb-assistant | `/cmdb-assistant:cmdb-search` |
|
||||
| data-platform | `/data-platform:data-ingest` |
|
||||
| viz-platform | `/viz-platform:viz-chart` |
|
||||
| contract-validator | `/contract-validator:validate-contracts` |
|
||||
|
||||
## Repository Structure
|
||||
Then restart Claude Code and run the interactive setup:
|
||||
|
||||
```
|
||||
leo-claude-mktplace/
|
||||
├── .claude-plugin/ # Marketplace manifest
|
||||
│ └── marketplace.json
|
||||
├── mcp-servers/ # SHARED MCP servers (v3.0.0+)
|
||||
│ ├── gitea/ # Gitea MCP (issues, PRs, wiki)
|
||||
│ ├── netbox/ # NetBox MCP (CMDB)
|
||||
│ ├── data-platform/ # Data engineering (pandas, PostgreSQL, dbt)
|
||||
│ ├── viz-platform/ # Visualization (DMC, Plotly, theming)
|
||||
│ └── contract-validator/ # Cross-plugin validation (v5.0.0)
|
||||
├── plugins/ # All plugins
|
||||
│ ├── projman/ # Sprint management
|
||||
│ ├── git-flow/ # Git workflow automation
|
||||
│ ├── pr-review/ # PR review
|
||||
│ ├── clarity-assist/ # Prompt optimization
|
||||
│ ├── data-platform/ # Data engineering
|
||||
│ ├── viz-platform/ # Visualization
|
||||
│ ├── contract-validator/ # Cross-plugin validation (NEW)
|
||||
│ ├── claude-config-maintainer/ # CLAUDE.md optimization
|
||||
│ ├── cmdb-assistant/ # NetBox CMDB integration
|
||||
│ ├── doc-guardian/ # Documentation drift detection
|
||||
│ ├── code-sentinel/ # Security scanning
|
||||
│ └── project-hygiene/ # Cleanup automation
|
||||
├── docs/ # Documentation
|
||||
│ ├── CANONICAL-PATHS.md # Path reference
|
||||
│ └── CONFIGURATION.md # Setup guide
|
||||
├── scripts/ # Setup scripts
|
||||
└── CHANGELOG.md # Version history
|
||||
/projman setup
|
||||
```
|
||||
|
||||
See [CONFIGURATION.md](./docs/CONFIGURATION.md) for manual setup and advanced options.
|
||||
|
||||
### Install to consumer projects
|
||||
|
||||
```bash
|
||||
./scripts/install-plugin.sh <plugin-name> /path/to/project
|
||||
./scripts/list-installed.sh /path/to/project
|
||||
./scripts/uninstall-plugin.sh <plugin-name> /path/to/project
|
||||
```
|
||||
|
||||
## Documentation
|
||||
|
||||
| Document | Description |
|
||||
|----------|-------------|
|
||||
| [CLAUDE.md](./CLAUDE.md) | Main project instructions |
|
||||
| [CONFIGURATION.md](./docs/CONFIGURATION.md) | Centralized setup guide |
|
||||
| [CLAUDE.md](./CLAUDE.md) | Project instructions for Claude Code |
|
||||
| [ARCHITECTURE.md](./docs/ARCHITECTURE.md) | System architecture and plugin reference |
|
||||
| [COMMANDS-CHEATSHEET.md](./docs/COMMANDS-CHEATSHEET.md) | All commands quick reference |
|
||||
| [UPDATING.md](./docs/UPDATING.md) | Update guide for the marketplace |
|
||||
| [CANONICAL-PATHS.md](./docs/CANONICAL-PATHS.md) | Authoritative path reference |
|
||||
| [CONFIGURATION.md](./docs/CONFIGURATION.md) | Centralized setup guide |
|
||||
| [DEBUGGING-CHECKLIST.md](./docs/DEBUGGING-CHECKLIST.md) | Systematic troubleshooting guide |
|
||||
| [UPDATING.md](./docs/UPDATING.md) | Update guide for the marketplace |
|
||||
| [MIGRATION-v9.md](./docs/MIGRATION-v9.md) | v8.x to v9.0.0 migration guide |
|
||||
| [CANONICAL-PATHS.md](./docs/CANONICAL-PATHS.md) | Authoritative path reference |
|
||||
| [CHANGELOG.md](./CHANGELOG.md) | Version history |
|
||||
|
||||
## Validation
|
||||
|
||||
```bash
|
||||
./scripts/validate-marketplace.sh # Marketplace compliance (manifests, domains, paths)
|
||||
./scripts/verify-hooks.sh # Hook inventory (4 PreToolUse + 1 UserPromptSubmit)
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
MIT License
|
||||
|
||||
## Support
|
||||
|
||||
- **Issues**: Contact repository maintainer
|
||||
- **Repository**: `https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git`
|
||||
- **Repository**: https://gitea.hotserv.cloud/personal-projects/leo-claude-mktplace.git
|
||||
|
||||
184
docs/ARCHITECTURE.md
Normal file
184
docs/ARCHITECTURE.md
Normal file
@@ -0,0 +1,184 @@
|
||||
# Architecture — Leo Claude Marketplace v9.1.0
|
||||
|
||||
## Overview
|
||||
|
||||
Plugin marketplace for Claude Code. 20 plugins across 5 domains, 5 shared MCP servers,
|
||||
4 PreToolUse safety hooks + 1 UserPromptSubmit quality hook.
|
||||
|
||||
## System Architecture
|
||||
|
||||
### Plugin Domains
|
||||
|
||||
| Domain | Purpose | Plugins |
|
||||
|--------|---------|---------|
|
||||
| core | Development workflow | projman, git-flow, pr-review, code-sentinel, doc-guardian, clarity-assist, contract-validator, claude-config-maintainer, project-hygiene |
|
||||
| data | Data engineering | data-platform, viz-platform, data-seed |
|
||||
| saas | SaaS development | saas-api-platform, saas-db-migrate, saas-react-platform, saas-test-pilot |
|
||||
| ops | Operations | cmdb-assistant, ops-release-manager, ops-deploy-pipeline |
|
||||
| debug | Diagnostics | debug-mcp |
|
||||
|
||||
### MCP Servers (Shared at Root)
|
||||
|
||||
| Server | Plugins Using It | External System |
|
||||
|--------|-------------------|-----------------|
|
||||
| gitea | projman, pr-review | Gitea (issues, PRs, wiki) |
|
||||
| netbox | cmdb-assistant | NetBox (DCIM, IPAM) |
|
||||
| data-platform | data-platform | PostgreSQL, dbt |
|
||||
| viz-platform | viz-platform | DMC registry |
|
||||
| contract-validator | contract-validator | (internal validation) |
|
||||
|
||||
### Hook Architecture
|
||||
|
||||
| Plugin | Event | Trigger | Script |
|
||||
|--------|-------|---------|--------|
|
||||
| code-sentinel | PreToolUse | Write\|Edit\|MultiEdit | security-check.sh |
|
||||
| git-flow | PreToolUse | Bash (branch naming) | branch-check.sh |
|
||||
| git-flow | PreToolUse | Bash (git commit) | commit-msg-check.sh |
|
||||
| cmdb-assistant | PreToolUse | MCP create/update | validate-input.sh |
|
||||
| clarity-assist | UserPromptSubmit | All prompts | vagueness-check.sh |
|
||||
|
||||
No other hook types permitted. All workflow automation is via explicit commands.
|
||||
|
||||
### Agent Model (projman)
|
||||
|
||||
| Agent | Model | Permission Mode | Role |
|
||||
|-------|-------|-----------------|------|
|
||||
| Planner | opus | default | Sprint planning, architecture analysis, issue creation |
|
||||
| Orchestrator | sonnet | acceptEdits | Sprint execution, parallel batching, lesson capture |
|
||||
| Executor | sonnet | bypassPermissions | Code implementation, branch management |
|
||||
| Code Reviewer | opus | default | Pre-close quality review, security, tests |
|
||||
|
||||
### Config Hierarchy
|
||||
|
||||
| Level | Location | Contains |
|
||||
|-------|----------|----------|
|
||||
| System | ~/.config/claude/{service}.env | Credentials |
|
||||
| Project | .env in project root | Repo-specific config |
|
||||
|
||||
### Branch Security
|
||||
|
||||
| Pattern | Access |
|
||||
|---------|--------|
|
||||
| development, feat/*, fix/* | Full |
|
||||
| staging, stage/* | Read-only code, can create issues |
|
||||
| main, master, prod/* | READ-ONLY. Emergency only. |
|
||||
|
||||
### Launch Profiles
|
||||
|
||||
| Profile | Plugins |
|
||||
|---------|---------|
|
||||
| sprint | projman, git-flow, pr-review, code-sentinel, doc-guardian, clarity-assist |
|
||||
| data | data-platform, viz-platform, data-seed |
|
||||
| saas | saas-api-platform, saas-react-platform, saas-db-migrate, saas-test-pilot |
|
||||
| ops | cmdb-assistant, ops-release-manager, ops-deploy-pipeline |
|
||||
| review | pr-review, code-sentinel |
|
||||
| debug | debug-mcp |
|
||||
| full | all plugins |
|
||||
|
||||
---
|
||||
|
||||
## Plugin Reference
|
||||
|
||||
### Core Domain
|
||||
|
||||
#### projman (v9.0.1)
|
||||
Sprint planning and project management with Gitea integration.
|
||||
- **Commands:** /sprint (plan|start|status|close|review|test), /project (initiation|plan|status|close), /adr (create|list|update|supersede), /rfc (create|list|review|approve|reject), /labels sync, /projman setup
|
||||
- **Agents:** planner, orchestrator, executor, code-reviewer
|
||||
- **MCP:** gitea
|
||||
|
||||
#### git-flow (v9.0.1)
|
||||
Git workflow automation with smart commits and branch management.
|
||||
- **Commands:** /gitflow (commit|branch-start|branch-cleanup|status|config)
|
||||
- **Commit flags:** --push, --merge, --sync
|
||||
- **Agents:** git-assistant
|
||||
- **Hooks:** PreToolUse (branch-check.sh, commit-msg-check.sh)
|
||||
|
||||
#### pr-review (v9.0.1)
|
||||
Multi-agent PR review with confidence scoring.
|
||||
- **Commands:** /pr (review|summary|findings|diff|setup|init|sync)
|
||||
- **Agents:** coordinator, security-reviewer, performance-analyst, maintainability-auditor, test-validator
|
||||
- **MCP:** gitea
|
||||
|
||||
#### code-sentinel (v9.0.1)
|
||||
Security scanning and code refactoring.
|
||||
- **Commands:** /sentinel (scan|refactor|refactor-dry)
|
||||
- **Agents:** security-reviewer, refactor-advisor
|
||||
- **Hooks:** PreToolUse (security-check.sh)
|
||||
|
||||
#### doc-guardian (v9.0.1)
|
||||
Documentation drift detection and synchronization.
|
||||
- **Commands:** /doc (audit|sync|changelog-gen|coverage|stale-docs)
|
||||
- **Agents:** doc-analyzer
|
||||
|
||||
#### clarity-assist (v9.0.1)
|
||||
Prompt optimization with ND-friendly accommodations.
|
||||
- **Commands:** /clarity (clarify|quick-clarify)
|
||||
- **Agents:** clarity-coach
|
||||
- **Hooks:** UserPromptSubmit (vagueness-check.sh)
|
||||
|
||||
#### contract-validator (v9.0.1)
|
||||
Cross-plugin compatibility validation.
|
||||
- **Commands:** /cv (validate|check-agent|list-interfaces|dependency-graph|setup|status)
|
||||
- **Agents:** full-validation, agent-check
|
||||
- **MCP:** contract-validator
|
||||
|
||||
#### claude-config-maintainer (v9.0.1)
|
||||
CLAUDE.md and settings optimization.
|
||||
- **Commands:** /claude-config (analyze|optimize|init|diff|lint|audit-settings|optimize-settings|permissions-map)
|
||||
- **Agents:** maintainer
|
||||
|
||||
#### project-hygiene (v9.0.1)
|
||||
Manual project file cleanup checks.
|
||||
- **Commands:** /hygiene check (--fix flag for auto-fix)
|
||||
|
||||
### Data Domain
|
||||
|
||||
#### data-platform (v9.0.1)
|
||||
pandas, PostgreSQL, and dbt integration.
|
||||
- **Commands:** /data (ingest|profile|schema|explain|lineage|lineage-viz|run|dbt-test|quality|review|gate|setup)
|
||||
- **Agents:** data-advisor, data-analysis, data-ingestion
|
||||
- **MCP:** data-platform
|
||||
|
||||
#### viz-platform (v9.0.1)
|
||||
DMC validation, Plotly charts, and theming.
|
||||
- **Commands:** /viz (setup|chart|chart-export|dashboard|theme|theme-new|theme-css|component|accessibility-check|breakpoints|design-review|design-gate)
|
||||
- **Agents:** design-reviewer, layout-builder, component-check, theme-setup
|
||||
- **MCP:** viz-platform
|
||||
|
||||
#### data-seed (v0.1.0)
|
||||
Test data generation and database seeding. *Scaffold — not yet implemented.*
|
||||
|
||||
### SaaS Domain
|
||||
|
||||
#### saas-api-platform (v0.1.0)
|
||||
REST/GraphQL API scaffolding for FastAPI and Express. *Scaffold.*
|
||||
|
||||
#### saas-db-migrate (v0.1.0)
|
||||
Database migration management for Alembic, Prisma, raw SQL. *Scaffold.*
|
||||
|
||||
#### saas-react-platform (v0.1.0)
|
||||
React frontend toolkit for Next.js and Vite. *Scaffold.*
|
||||
|
||||
#### saas-test-pilot (v0.1.0)
|
||||
Test automation for pytest, Jest, Vitest, Playwright. *Scaffold.*
|
||||
|
||||
### Ops Domain
|
||||
|
||||
#### cmdb-assistant (v9.0.1)
|
||||
NetBox CMDB integration for infrastructure management.
|
||||
- **Commands:** /cmdb (search|device|ip|site|audit|register|sync|topology|change-audit|ip-conflicts|setup)
|
||||
- **Agents:** cmdb-assistant
|
||||
- **MCP:** netbox
|
||||
- **Hooks:** PreToolUse (validate-input.sh)
|
||||
|
||||
#### ops-release-manager (v0.1.0)
|
||||
Release management with SemVer and changelog automation. *Scaffold.*
|
||||
|
||||
#### ops-deploy-pipeline (v0.1.0)
|
||||
Deployment pipeline for Docker Compose and systemd. *Scaffold.*
|
||||
|
||||
### Debug Domain
|
||||
|
||||
#### debug-mcp (v0.1.0)
|
||||
MCP server debugging and diagnostics. *Scaffold.*
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
**This file defines ALL valid paths in this repository. No exceptions. No inference. No assumptions.**
|
||||
|
||||
Last Updated: 2026-02-06 (v8.0.0)
|
||||
Last Updated: 2026-02-07 (v9.1.0)
|
||||
|
||||
---
|
||||
|
||||
@@ -19,17 +19,13 @@ leo-claude-mktplace/
|
||||
├── .mcp-full.json # Full profile MCP config (all servers)
|
||||
├── .scratch/ # Transient work (auto-cleaned)
|
||||
├── docs/ # All documentation
|
||||
│ ├── architecture/ # Draw.io diagrams and specs
|
||||
│ ├── prompts/ # Shared prompt templates
|
||||
│ │ └── INDEX.md # Prompt template index
|
||||
│ ├── project-lessons-learned/ # Project-level lessons (not sprint-specific)
|
||||
│ │ └── INDEX.md # Lessons index
|
||||
│ ├── ARCHITECTURE.md # System architecture and plugin reference
|
||||
│ ├── CANONICAL-PATHS.md # This file - single source of truth
|
||||
│ ├── COMMANDS-CHEATSHEET.md # All commands quick reference
|
||||
│ ├── CONFIGURATION.md # Centralized configuration guide
|
||||
│ ├── DEBUGGING-CHECKLIST.md # Systematic troubleshooting guide
|
||||
│ ├── MIGRATION-v9.md # v8.x → v9.0.0 migration guide
|
||||
│ └── UPDATING.md # Update guide
|
||||
├── hooks/ # Shared hooks (if any)
|
||||
├── mcp-servers/ # SHARED MCP servers (v3.0.0+)
|
||||
│ ├── gitea/ # Gitea MCP server
|
||||
│ │ ├── mcp_server/
|
||||
@@ -90,7 +86,6 @@ leo-claude-mktplace/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ ├── doc-guardian/ # Documentation drift detection
|
||||
│ │ ├── .claude-plugin/
|
||||
│ │ ├── hooks/
|
||||
│ │ ├── commands/
|
||||
│ │ ├── agents/
|
||||
│ │ ├── skills/
|
||||
@@ -114,7 +109,7 @@ leo-claude-mktplace/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ ├── project-hygiene/
|
||||
│ │ ├── .claude-plugin/
|
||||
│ │ ├── hooks/
|
||||
│ │ ├── commands/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ ├── clarity-assist/
|
||||
│ │ ├── .claude-plugin/
|
||||
@@ -138,29 +133,76 @@ leo-claude-mktplace/
|
||||
│ │ ├── .claude-plugin/
|
||||
│ │ ├── commands/
|
||||
│ │ ├── agents/
|
||||
│ │ ├── hooks/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ ├── contract-validator/
|
||||
│ │ ├── .claude-plugin/
|
||||
│ │ ├── commands/
|
||||
│ │ ├── agents/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ └── viz-platform/
|
||||
│ ├── viz-platform/
|
||||
│ │ ├── .claude-plugin/
|
||||
│ │ ├── commands/
|
||||
│ │ ├── agents/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ ├── saas-api-platform/ # REST/GraphQL API scaffolding (scaffold)
|
||||
│ │ ├── .claude-plugin/
|
||||
│ │ ├── commands/
|
||||
│ │ ├── agents/
|
||||
│ │ ├── skills/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ ├── saas-db-migrate/ # Database migration management (scaffold)
|
||||
│ │ ├── .claude-plugin/
|
||||
│ │ ├── commands/
|
||||
│ │ ├── agents/
|
||||
│ │ ├── skills/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ ├── saas-react-platform/ # React frontend toolkit (scaffold)
|
||||
│ │ ├── .claude-plugin/
|
||||
│ │ ├── commands/
|
||||
│ │ ├── agents/
|
||||
│ │ ├── skills/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ ├── saas-test-pilot/ # Test automation (scaffold)
|
||||
│ │ ├── .claude-plugin/
|
||||
│ │ ├── commands/
|
||||
│ │ ├── agents/
|
||||
│ │ ├── skills/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ ├── data-seed/ # Test data generation (scaffold)
|
||||
│ │ ├── .claude-plugin/
|
||||
│ │ ├── commands/
|
||||
│ │ ├── agents/
|
||||
│ │ ├── skills/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ ├── ops-release-manager/ # Release management (scaffold)
|
||||
│ │ ├── .claude-plugin/
|
||||
│ │ ├── commands/
|
||||
│ │ ├── agents/
|
||||
│ │ ├── skills/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ ├── ops-deploy-pipeline/ # Deployment pipeline (scaffold)
|
||||
│ │ ├── .claude-plugin/
|
||||
│ │ ├── commands/
|
||||
│ │ ├── agents/
|
||||
│ │ ├── skills/
|
||||
│ │ └── claude-md-integration.md
|
||||
│ └── debug-mcp/ # MCP debugging toolkit (scaffold)
|
||||
│ ├── .claude-plugin/
|
||||
│ ├── commands/
|
||||
│ ├── agents/
|
||||
│ ├── hooks/
|
||||
│ ├── skills/
|
||||
│ └── claude-md-integration.md
|
||||
├── scripts/ # Setup and maintenance scripts
|
||||
│ ├── setup.sh # Initial setup (create venvs, config templates)
|
||||
│ ├── post-update.sh # Post-update (clear cache, show changelog)
|
||||
│ ├── check-venv.sh # Check if venvs exist (read-only)
|
||||
│ ├── setup-venvs.sh # Setup MCP server venvs (create only, never delete)
|
||||
│ ├── validate-marketplace.sh # Marketplace compliance validation
|
||||
│ ├── verify-hooks.sh # Verify all hooks use correct event types
|
||||
│ ├── setup-venvs.sh # Setup MCP server venvs (create only, never delete)
|
||||
│ ├── release.sh # Release automation with version bumping
|
||||
│ ├── claude-launch.sh # Task-specific launcher with profile selection
|
||||
│ └── switch-profile.sh # DEPRECATED: use claude-launch.sh instead
|
||||
│ ├── install-plugin.sh # Install plugin to consumer project
|
||||
│ ├── list-installed.sh # Show installed plugins in a project
|
||||
│ └── uninstall-plugin.sh # Remove plugin from consumer project
|
||||
├── CLAUDE.md
|
||||
├── README.md
|
||||
├── LICENSE
|
||||
@@ -260,12 +302,13 @@ fi
|
||||
|
||||
| Type | Location |
|
||||
|------|----------|
|
||||
| Architecture diagrams | `docs/architecture/` |
|
||||
| Architecture & plugin reference | `docs/ARCHITECTURE.md` |
|
||||
| This file | `docs/CANONICAL-PATHS.md` |
|
||||
| Update guide | `docs/UPDATING.md` |
|
||||
| Configuration guide | `docs/CONFIGURATION.md` |
|
||||
| Commands cheat sheet | `docs/COMMANDS-CHEATSHEET.md` |
|
||||
| Debugging checklist | `docs/DEBUGGING-CHECKLIST.md` |
|
||||
| Migration guide (v8→v9) | `docs/MIGRATION-v9.md` |
|
||||
|
||||
---
|
||||
|
||||
@@ -341,24 +384,23 @@ All MCP servers are defined in `.mcp.json` at repository root:
|
||||
|
||||
## Domain Metadata
|
||||
|
||||
### Domain Field Locations
|
||||
### Domain Field Location
|
||||
|
||||
Both manifest files require a `domain` field (v8.0.0+):
|
||||
Domain metadata is stored in `metadata.json` (v9.1.2+, moved from plugin.json/marketplace.json for Claude Code schema compliance):
|
||||
|
||||
| Location | Field | Example |
|
||||
|----------|-------|---------|
|
||||
| `plugins/{name}/.claude-plugin/plugin.json` | `"domain": "core"` | `plugins/projman/.claude-plugin/plugin.json` |
|
||||
| `.claude-plugin/marketplace.json` | `"domain": "core"` per plugin entry | `.claude-plugin/marketplace.json` |
|
||||
| `plugins/{name}/.claude-plugin/metadata.json` | `"domain": "core"` | `plugins/projman/.claude-plugin/metadata.json` |
|
||||
|
||||
### Allowed Domain Values
|
||||
|
||||
| Domain | Purpose | Existing Plugins |
|
||||
|--------|---------|-----------------|
|
||||
| `core` | Development workflow plugins | projman, git-flow, pr-review, code-sentinel, doc-guardian, clarity-assist, contract-validator, claude-config-maintainer, project-hygiene |
|
||||
| `data` | Data engineering and visualization | data-platform, viz-platform |
|
||||
| `ops` | Operations and infrastructure | cmdb-assistant |
|
||||
| `saas` | SaaS application development | (Phase 2) |
|
||||
| `debug` | Debugging and diagnostics | (Phase 2) |
|
||||
| `data` | Data engineering and visualization | data-platform, viz-platform, data-seed |
|
||||
| `ops` | Operations and infrastructure | cmdb-assistant, ops-release-manager, ops-deploy-pipeline |
|
||||
| `saas` | SaaS application development | saas-api-platform, saas-db-migrate, saas-react-platform, saas-test-pilot |
|
||||
| `debug` | Debugging and diagnostics | debug-mcp |
|
||||
|
||||
### Plugin Naming Convention
|
||||
|
||||
@@ -370,23 +412,15 @@ Both manifest files require a `domain` field (v8.0.0+):
|
||||
|
||||
```bash
|
||||
# List all plugins in a domain
|
||||
jq '.plugins[] | select(.domain=="saas") | .name' .claude-plugin/marketplace.json
|
||||
for p in plugins/*; do
|
||||
d=$(jq -r '.domain // empty' "$p/.claude-plugin/metadata.json" 2>/dev/null)
|
||||
[[ "$d" == "saas" ]] && basename "$p"
|
||||
done
|
||||
|
||||
# Count plugins per domain
|
||||
jq '[.plugins[] | .domain] | group_by(.) | map({domain: .[0], count: length})' .claude-plugin/marketplace.json
|
||||
```
|
||||
|
||||
### Future Plugin Path Patterns
|
||||
|
||||
```
|
||||
plugins/saas-api-platform/
|
||||
plugins/saas-db-migrate/
|
||||
plugins/saas-react-platform/
|
||||
plugins/saas-test-pilot/
|
||||
plugins/data-seed/
|
||||
plugins/ops-release-manager/
|
||||
plugins/ops-deploy-pipeline/
|
||||
plugins/debug-mcp/
|
||||
for p in plugins/*; do
|
||||
jq -r '.domain // empty' "$p/.claude-plugin/metadata.json" 2>/dev/null
|
||||
done | sort | uniq -c | sort -rn
|
||||
```
|
||||
|
||||
---
|
||||
@@ -395,6 +429,8 @@ plugins/debug-mcp/
|
||||
|
||||
| Date | Change | By |
|
||||
|------|--------|-----|
|
||||
| 2026-02-07 | v9.1.2: Moved domain field from plugin.json/marketplace.json to metadata.json for Claude Code schema compliance | Claude Code |
|
||||
| 2026-02-07 | v9.1.0: Removed deleted dirs (architecture/, prompts/, project-lessons-learned/), added Phase 3 plugins, added ARCHITECTURE.md, MIGRATION-v9.md, updated Domain table, removed stale hooks/ dirs | Claude Code |
|
||||
| 2026-02-06 | v8.0.0: Added domain metadata section, Phase 1a paths, future plugin paths | Claude Code |
|
||||
| 2026-02-04 | v7.1.0: Added profile configs, prompts/, project-lessons-learned/, metadata.json, deprecated switch-profile.sh | Claude Code |
|
||||
| 2026-01-30 | v5.5.0: Removed plugin-level mcp-servers symlinks - all MCP config now in root .mcp.json | Claude Code |
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# Plugin Commands Cheat Sheet
|
||||
|
||||
Quick reference for all commands in the Leo Claude Marketplace.
|
||||
Quick reference for all commands in the Leo Claude Marketplace (v9.0.0+).
|
||||
|
||||
All commands follow the `/<noun> <action>` sub-command pattern.
|
||||
|
||||
---
|
||||
|
||||
@@ -8,98 +10,106 @@ Quick reference for all commands in the Leo Claude Marketplace.
|
||||
|
||||
| Plugin | Command | Auto | Manual | Description |
|
||||
|--------|---------|:----:|:------:|-------------|
|
||||
| **projman** | `/sprint-plan` | | X | Start sprint planning with AI-guided architecture analysis and issue creation |
|
||||
| **projman** | `/sprint-start` | | X | Begin sprint execution with dependency analysis and parallel task coordination (requires approval or `--force`) |
|
||||
| **projman** | `/sprint-status` | | X | Check current sprint progress (add `--diagram` for Mermaid visualization) |
|
||||
| **projman** | `/pm-review` | | X | Pre-sprint-close code quality review (debug artifacts, security, error handling) |
|
||||
| **projman** | `/pm-test` | | X | Run tests (`/pm-test run`) or generate tests (`/pm-test gen <target>`) |
|
||||
| **projman** | `/sprint-close` | | X | Complete sprint and capture lessons learned to Gitea Wiki |
|
||||
| **projman** | `/labels-sync` | | X | Synchronize label taxonomy from Gitea |
|
||||
| **projman** | `/pm-setup` | | X | Auto-detect mode or use `--full`, `--quick`, `--sync`, `--clear-cache` |
|
||||
| **projman** | *SessionStart hook* | X | | Detects git remote vs .env mismatch, warns to run `/pm-setup --sync` |
|
||||
| **projman** | `/pm-debug` | | X | Diagnostics (`/pm-debug report`) or investigate (`/pm-debug review`) |
|
||||
| **projman** | `/suggest-version` | | X | Analyze CHANGELOG and recommend semantic version bump |
|
||||
| **projman** | `/proposal-status` | | X | View proposal and implementation hierarchy with status |
|
||||
| **projman** | `/rfc` | | X | RFC lifecycle management (`/rfc create\|list\|review\|approve\|reject`) |
|
||||
| **git-flow** | `/git-commit` | | X | Create commit with auto-generated conventional message |
|
||||
| **git-flow** | `/git-commit-push` | | X | Commit and push to remote in one operation |
|
||||
| **git-flow** | `/git-commit-merge` | | X | Commit current changes, then merge into target branch |
|
||||
| **git-flow** | `/git-commit-sync` | | X | Full sync: commit, push, and sync with upstream/base branch |
|
||||
| **git-flow** | `/branch-start` | | X | Create new feature/fix/chore branch with naming conventions |
|
||||
| **git-flow** | `/branch-cleanup` | | X | Remove merged branches locally and optionally on remote |
|
||||
| **git-flow** | `/git-status` | | X | Enhanced git status with recommendations |
|
||||
| **git-flow** | `/git-config` | | X | Configure git-flow settings for the project |
|
||||
| **pr-review** | `/pr-setup` | | X | Setup wizard for pr-review (shares Gitea MCP with projman) |
|
||||
| **pr-review** | `/project-init` | | X | Quick project setup for PR reviews |
|
||||
| **pr-review** | `/project-sync` | | X | Sync config with git remote after repo move/rename |
|
||||
| **pr-review** | *SessionStart hook* | X | | Detects git remote vs .env mismatch |
|
||||
| **pr-review** | `/pr-review` | | X | Full multi-agent PR review with confidence scoring |
|
||||
| **pr-review** | `/pr-summary` | | X | Quick summary of PR changes |
|
||||
| **pr-review** | `/pr-findings` | | X | List and filter review findings by category/severity |
|
||||
| **pr-review** | `/pr-diff` | | X | Formatted diff with inline review comments and annotations |
|
||||
| **clarity-assist** | `/clarify` | | X | Full 4-D prompt optimization with ND accommodations |
|
||||
| **clarity-assist** | `/quick-clarify` | | X | Rapid single-pass clarification for simple requests |
|
||||
| **doc-guardian** | `/doc-audit` | | X | Full documentation audit - scans for doc drift |
|
||||
| **doc-guardian** | `/doc-sync` | | X | Synchronize pending documentation updates |
|
||||
| **doc-guardian** | `/changelog-gen` | | X | Generate changelog from conventional commits |
|
||||
| **doc-guardian** | `/doc-coverage` | | X | Documentation coverage metrics by function/class |
|
||||
| **doc-guardian** | `/stale-docs` | | X | Flag documentation behind code changes |
|
||||
| **doc-guardian** | *PostToolUse hook* | X | | Silently detects doc drift on Write/Edit |
|
||||
| **code-sentinel** | `/security-scan` | | X | Full security audit (SQL injection, XSS, secrets, etc.) |
|
||||
| **code-sentinel** | `/refactor` | | X | Apply refactoring patterns to improve code |
|
||||
| **code-sentinel** | `/refactor-dry` | | X | Preview refactoring without applying changes |
|
||||
| **projman** | `/sprint plan` | | X | Start sprint planning with AI-guided architecture analysis and issue creation |
|
||||
| **projman** | `/sprint start` | | X | Begin sprint execution with dependency analysis and parallel task coordination (requires approval or `--force`) |
|
||||
| **projman** | `/sprint status` | | X | Check current sprint progress (add `--diagram` for Mermaid visualization) |
|
||||
| **projman** | `/sprint review` | | X | Pre-sprint-close code quality review (debug artifacts, security, error handling) |
|
||||
| **projman** | `/sprint test` | | X | Run tests (`/sprint test run`) or generate tests (`/sprint test gen <target>`) |
|
||||
| **projman** | `/sprint close` | | X | Complete sprint and capture lessons learned to Gitea Wiki |
|
||||
| **projman** | `/labels sync` | | X | Synchronize label taxonomy from Gitea |
|
||||
| **projman** | `/projman setup` | | X | Auto-detect mode or use `--full`, `--quick`, `--sync`, `--clear-cache` |
|
||||
| **projman** | `/rfc create` | | X | Create new RFC from conversation or spec |
|
||||
| **projman** | `/rfc list` | | X | List all RFCs grouped by status |
|
||||
| **projman** | `/rfc review` | | X | Submit RFC for maintainer review |
|
||||
| **projman** | `/rfc approve` | | X | Approve RFC for sprint planning |
|
||||
| **projman** | `/rfc reject` | | X | Reject RFC with documented reason |
|
||||
| **projman** | `/project initiation` | | X | Discovery, source analysis, project charter |
|
||||
| **projman** | `/project plan` | | X | WBS, risk register, sprint roadmap |
|
||||
| **projman** | `/project status` | | X | Project health check across all sprints |
|
||||
| **projman** | `/project close` | | X | Final retrospective and archival |
|
||||
| **projman** | `/adr create` | | X | Create new Architecture Decision Record |
|
||||
| **projman** | `/adr list` | | X | List all ADRs with status |
|
||||
| **projman** | `/adr update` | | X | Update existing ADR |
|
||||
| **projman** | `/adr supersede` | | X | Supersede ADR with new decision |
|
||||
| **git-flow** | `/gitflow commit` | | X | Create commit with auto-generated conventional message. Flags: `--push`, `--merge`, `--sync` |
|
||||
| **git-flow** | `/gitflow branch-start` | | X | Create new feature/fix/chore branch with naming conventions |
|
||||
| **git-flow** | `/gitflow branch-cleanup` | | X | Remove merged branches locally and optionally on remote |
|
||||
| **git-flow** | `/gitflow status` | | X | Enhanced git status with recommendations |
|
||||
| **git-flow** | `/gitflow config` | | X | Configure git-flow settings for the project |
|
||||
| **pr-review** | `/pr setup` | | X | Setup wizard for pr-review (shares Gitea MCP with projman) |
|
||||
| **pr-review** | `/pr init` | | X | Quick project setup for PR reviews |
|
||||
| **pr-review** | `/pr sync` | | X | Sync config with git remote after repo move/rename |
|
||||
| **pr-review** | `/pr review` | | X | Full multi-agent PR review with confidence scoring |
|
||||
| **pr-review** | `/pr summary` | | X | Quick summary of PR changes |
|
||||
| **pr-review** | `/pr findings` | | X | List and filter review findings by category/severity |
|
||||
| **pr-review** | `/pr diff` | | X | Formatted diff with inline review comments and annotations |
|
||||
| **clarity-assist** | `/clarity clarify` | | X | Full 4-D prompt optimization with ND accommodations |
|
||||
| **clarity-assist** | `/clarity quick-clarify` | | X | Rapid single-pass clarification for simple requests |
|
||||
| **doc-guardian** | `/doc audit` | | X | Full documentation audit - scans for doc drift |
|
||||
| **doc-guardian** | `/doc sync` | | X | Synchronize pending documentation updates |
|
||||
| **doc-guardian** | `/doc changelog-gen` | | X | Generate changelog from conventional commits |
|
||||
| **doc-guardian** | `/doc coverage` | | X | Documentation coverage metrics by function/class |
|
||||
| **doc-guardian** | `/doc stale-docs` | | X | Flag documentation behind code changes |
|
||||
| **code-sentinel** | `/sentinel scan` | | X | Full security audit (SQL injection, XSS, secrets, etc.) |
|
||||
| **code-sentinel** | `/sentinel refactor` | | X | Apply refactoring patterns to improve code |
|
||||
| **code-sentinel** | `/sentinel refactor-dry` | | X | Preview refactoring without applying changes |
|
||||
| **code-sentinel** | *PreToolUse hook* | X | | Scans code before writing; blocks critical issues |
|
||||
| **claude-config-maintainer** | `/config-analyze` | | X | Analyze CLAUDE.md for optimization opportunities |
|
||||
| **claude-config-maintainer** | `/config-optimize` | | X | Optimize CLAUDE.md structure with preview/backup |
|
||||
| **claude-config-maintainer** | `/config-init` | | X | Initialize new CLAUDE.md for a project |
|
||||
| **claude-config-maintainer** | `/config-diff` | | X | Track CLAUDE.md changes over time with behavioral impact |
|
||||
| **claude-config-maintainer** | `/config-lint` | | X | Lint CLAUDE.md for anti-patterns and best practices |
|
||||
| **claude-config-maintainer** | `/config-audit-settings` | | X | Audit settings.local.json permissions (100-point score) |
|
||||
| **claude-config-maintainer** | `/config-optimize-settings` | | X | Optimize permissions (profiles, consolidation, dry-run) |
|
||||
| **claude-config-maintainer** | `/config-permissions-map` | | X | Visual review layer + permission coverage map |
|
||||
| **cmdb-assistant** | `/cmdb-setup` | | X | Setup wizard for NetBox MCP server |
|
||||
| **cmdb-assistant** | `/cmdb-search` | | X | Search NetBox for devices, IPs, sites |
|
||||
| **cmdb-assistant** | `/cmdb-device` | | X | Manage network devices (create, view, update, delete) |
|
||||
| **cmdb-assistant** | `/cmdb-ip` | | X | Manage IP addresses and prefixes |
|
||||
| **cmdb-assistant** | `/cmdb-site` | | X | Manage sites, locations, racks, and regions |
|
||||
| **cmdb-assistant** | `/cmdb-audit` | | X | Data quality analysis (VMs, devices, naming, roles) |
|
||||
| **cmdb-assistant** | `/cmdb-register` | | X | Register current machine into NetBox with running apps |
|
||||
| **cmdb-assistant** | `/cmdb-sync` | | X | Sync machine state with NetBox (detect drift, update) |
|
||||
| **cmdb-assistant** | `/cmdb-topology` | | X | Infrastructure topology diagrams (rack, network, site views) |
|
||||
| **cmdb-assistant** | `/change-audit` | | X | NetBox audit trail queries with filtering |
|
||||
| **cmdb-assistant** | `/ip-conflicts` | | X | Detect IP conflicts and overlapping prefixes |
|
||||
| **project-hygiene** | *PostToolUse hook* | X | | Removes temp files, warns about unexpected root files |
|
||||
| **data-platform** | `/data-ingest` | | X | Load data from CSV, Parquet, JSON into DataFrame |
|
||||
| **data-platform** | `/data-profile` | | X | Generate data profiling report with statistics |
|
||||
| **data-platform** | `/data-schema` | | X | Explore database schemas, tables, columns |
|
||||
| **data-platform** | `/data-explain` | | X | Explain query execution plan |
|
||||
| **data-platform** | `/data-lineage` | | X | Show dbt model lineage and dependencies |
|
||||
| **data-platform** | `/data-run` | | X | Run dbt models with validation |
|
||||
| **data-platform** | `/lineage-viz` | | X | dbt lineage visualization as Mermaid diagrams |
|
||||
| **data-platform** | `/dbt-test` | | X | Formatted dbt test runner with summary and failure details |
|
||||
| **data-platform** | `/data-quality` | | X | DataFrame quality checks (nulls, duplicates, types, outliers) |
|
||||
| **data-platform** | `/data-setup` | | X | Setup wizard for data-platform MCP servers |
|
||||
| **data-platform** | *SessionStart hook* | X | | Checks PostgreSQL connection (non-blocking warning) |
|
||||
| **viz-platform** | `/viz-setup` | | X | Setup wizard for viz-platform MCP server |
|
||||
| **viz-platform** | `/viz-chart` | | X | Create Plotly charts with theme integration |
|
||||
| **viz-platform** | `/viz-dashboard` | | X | Create dashboard layouts with filters and grids |
|
||||
| **viz-platform** | `/viz-theme` | | X | Apply existing theme to visualizations |
|
||||
| **viz-platform** | `/viz-theme-new` | | X | Create new custom theme with design tokens |
|
||||
| **viz-platform** | `/viz-theme-css` | | X | Export theme as CSS custom properties |
|
||||
| **viz-platform** | `/viz-component` | | X | Inspect DMC component props and validation |
|
||||
| **viz-platform** | `/viz-chart-export` | | X | Export charts to PNG, SVG, PDF via kaleido |
|
||||
| **viz-platform** | `/accessibility-check` | | X | Color blind validation (WCAG contrast ratios) |
|
||||
| **viz-platform** | `/viz-breakpoints` | | X | Configure responsive layout breakpoints |
|
||||
| **viz-platform** | `/design-review` | | X | Detailed design system audits |
|
||||
| **viz-platform** | `/design-gate` | | X | Binary pass/fail design system validation gates |
|
||||
| **viz-platform** | *SessionStart hook* | X | | Checks DMC version (non-blocking warning) |
|
||||
| **data-platform** | `/data-review` | | X | Comprehensive data integrity audits |
|
||||
| **data-platform** | `/data-gate` | | X | Binary pass/fail data integrity gates |
|
||||
| **contract-validator** | `/validate-contracts` | | X | Full marketplace compatibility validation |
|
||||
| **contract-validator** | `/check-agent` | | X | Validate single agent definition |
|
||||
| **contract-validator** | `/list-interfaces` | | X | Show all plugin interfaces |
|
||||
| **contract-validator** | `/dependency-graph` | | X | Mermaid visualization of plugin dependencies |
|
||||
| **contract-validator** | `/cv-setup` | | X | Setup wizard for contract-validator MCP |
|
||||
| **claude-config-maintainer** | `/claude-config analyze` | | X | Analyze CLAUDE.md for optimization opportunities |
|
||||
| **claude-config-maintainer** | `/claude-config optimize` | | X | Optimize CLAUDE.md structure with preview/backup |
|
||||
| **claude-config-maintainer** | `/claude-config init` | | X | Initialize new CLAUDE.md for a project |
|
||||
| **claude-config-maintainer** | `/claude-config diff` | | X | Track CLAUDE.md changes over time with behavioral impact |
|
||||
| **claude-config-maintainer** | `/claude-config lint` | | X | Lint CLAUDE.md for anti-patterns and best practices |
|
||||
| **claude-config-maintainer** | `/claude-config audit-settings` | | X | Audit settings.local.json permissions (100-point score) |
|
||||
| **claude-config-maintainer** | `/claude-config optimize-settings` | | X | Optimize permissions (profiles, consolidation, dry-run) |
|
||||
| **claude-config-maintainer** | `/claude-config permissions-map` | | X | Visual review layer + permission coverage map |
|
||||
| **cmdb-assistant** | `/cmdb setup` | | X | Setup wizard for NetBox MCP server |
|
||||
| **cmdb-assistant** | `/cmdb search` | | X | Search NetBox for devices, IPs, sites |
|
||||
| **cmdb-assistant** | `/cmdb device` | | X | Manage network devices (create, view, update, delete) |
|
||||
| **cmdb-assistant** | `/cmdb ip` | | X | Manage IP addresses and prefixes |
|
||||
| **cmdb-assistant** | `/cmdb site` | | X | Manage sites, locations, racks, and regions |
|
||||
| **cmdb-assistant** | `/cmdb audit` | | X | Data quality analysis (VMs, devices, naming, roles) |
|
||||
| **cmdb-assistant** | `/cmdb register` | | X | Register current machine into NetBox with running apps |
|
||||
| **cmdb-assistant** | `/cmdb sync` | | X | Sync machine state with NetBox (detect drift, update) |
|
||||
| **cmdb-assistant** | `/cmdb topology` | | X | Infrastructure topology diagrams (rack, network, site views) |
|
||||
| **cmdb-assistant** | `/cmdb change-audit` | | X | NetBox audit trail queries with filtering |
|
||||
| **cmdb-assistant** | `/cmdb ip-conflicts` | | X | Detect IP conflicts and overlapping prefixes |
|
||||
| **project-hygiene** | `/hygiene check` | | X | Project file organization and cleanup check |
|
||||
| **data-platform** | `/data ingest` | | X | Load data from CSV, Parquet, JSON into DataFrame |
|
||||
| **data-platform** | `/data profile` | | X | Generate data profiling report with statistics |
|
||||
| **data-platform** | `/data schema` | | X | Explore database schemas, tables, columns |
|
||||
| **data-platform** | `/data explain` | | X | Explain query execution plan |
|
||||
| **data-platform** | `/data lineage` | | X | Show dbt model lineage and dependencies |
|
||||
| **data-platform** | `/data run` | | X | Run dbt models with validation |
|
||||
| **data-platform** | `/data lineage-viz` | | X | dbt lineage visualization as Mermaid diagrams |
|
||||
| **data-platform** | `/data dbt-test` | | X | Formatted dbt test runner with summary and failure details |
|
||||
| **data-platform** | `/data quality` | | X | DataFrame quality checks (nulls, duplicates, types, outliers) |
|
||||
| **data-platform** | `/data review` | | X | Comprehensive data integrity audits |
|
||||
| **data-platform** | `/data gate` | | X | Binary pass/fail data integrity gates |
|
||||
| **data-platform** | `/data setup` | | X | Setup wizard for data-platform MCP servers |
|
||||
| **viz-platform** | `/viz setup` | | X | Setup wizard for viz-platform MCP server |
|
||||
| **viz-platform** | `/viz chart` | | X | Create Plotly charts with theme integration |
|
||||
| **viz-platform** | `/viz chart-export` | | X | Export charts to PNG, SVG, PDF via kaleido |
|
||||
| **viz-platform** | `/viz dashboard` | | X | Create dashboard layouts with filters and grids |
|
||||
| **viz-platform** | `/viz theme` | | X | Apply existing theme to visualizations |
|
||||
| **viz-platform** | `/viz theme-new` | | X | Create new custom theme with design tokens |
|
||||
| **viz-platform** | `/viz theme-css` | | X | Export theme as CSS custom properties |
|
||||
| **viz-platform** | `/viz component` | | X | Inspect DMC component props and validation |
|
||||
| **viz-platform** | `/viz accessibility-check` | | X | Color blind validation (WCAG contrast ratios) |
|
||||
| **viz-platform** | `/viz breakpoints` | | X | Configure responsive layout breakpoints |
|
||||
| **viz-platform** | `/viz design-review` | | X | Detailed design system audits |
|
||||
| **viz-platform** | `/viz design-gate` | | X | Binary pass/fail design system validation gates |
|
||||
| **contract-validator** | `/cv validate` | | X | Full marketplace compatibility validation |
|
||||
| **contract-validator** | `/cv check-agent` | | X | Validate single agent definition |
|
||||
| **contract-validator** | `/cv list-interfaces` | | X | Show all plugin interfaces |
|
||||
| **contract-validator** | `/cv dependency-graph` | | X | Mermaid visualization of plugin dependencies |
|
||||
| **contract-validator** | `/cv setup` | | X | Setup wizard for contract-validator MCP |
|
||||
| **contract-validator** | `/cv status` | | X | Marketplace-wide health check (installation, MCP, configuration) |
|
||||
|
||||
---
|
||||
|
||||
## Migration from v8.x
|
||||
|
||||
All commands were renamed in v9.0.0 to follow `/<noun> <action>` pattern. See [MIGRATION-v9.md](./MIGRATION-v9.md) for the complete old-to-new mapping.
|
||||
|
||||
---
|
||||
|
||||
@@ -107,7 +117,7 @@ Quick reference for all commands in the Leo Claude Marketplace.
|
||||
|
||||
| Category | Plugins | Primary Use |
|
||||
|----------|---------|-------------|
|
||||
| **Setup** | projman, pr-review, cmdb-assistant, data-platform, viz-platform, contract-validator | `/pm-setup`, `/pr-setup`, `/cmdb-setup`, `/data-setup`, `/viz-setup`, `/cv-setup` |
|
||||
| **Setup** | projman, pr-review, cmdb-assistant, data-platform, viz-platform, contract-validator | `/projman setup`, `/pr setup`, `/cmdb setup`, `/data setup`, `/viz setup`, `/cv setup` |
|
||||
| **Task Planning** | projman, clarity-assist | Sprint management, requirement clarification |
|
||||
| **Code Quality** | code-sentinel, pr-review | Security scanning, PR reviews |
|
||||
| **Documentation** | doc-guardian, claude-config-maintainer | Doc sync, CLAUDE.md maintenance |
|
||||
@@ -116,7 +126,7 @@ Quick reference for all commands in the Leo Claude Marketplace.
|
||||
| **Data Engineering** | data-platform | pandas, PostgreSQL, dbt operations |
|
||||
| **Visualization** | viz-platform | DMC validation, Plotly charts, theming |
|
||||
| **Validation** | contract-validator | Cross-plugin compatibility checks |
|
||||
| **Maintenance** | project-hygiene | Automatic cleanup |
|
||||
| **Maintenance** | project-hygiene | Manual cleanup via `/hygiene check` |
|
||||
|
||||
---
|
||||
|
||||
@@ -124,13 +134,10 @@ Quick reference for all commands in the Leo Claude Marketplace.
|
||||
|
||||
| Plugin | Hook Event | Behavior |
|
||||
|--------|------------|----------|
|
||||
| **projman** | SessionStart | Checks git remote vs .env; warns if mismatch detected; suggests sprint planning if issues exist |
|
||||
| **pr-review** | SessionStart | Checks git remote vs .env; warns if mismatch detected |
|
||||
| **doc-guardian** | PostToolUse (Write/Edit) | Tracks documentation drift; auto-updates dependent docs |
|
||||
| **code-sentinel** | PreToolUse (Write/Edit) | Scans for security issues; blocks critical vulnerabilities |
|
||||
| **project-hygiene** | PostToolUse (Write/Edit) | Cleans temp files, warns about misplaced files |
|
||||
| **data-platform** | SessionStart | Checks PostgreSQL connection; non-blocking warning if unavailable |
|
||||
| **viz-platform** | SessionStart | Checks DMC version; non-blocking warning if mismatch detected |
|
||||
| **code-sentinel** | PreToolUse (Write/Edit/MultiEdit) | Scans code before writing; blocks critical security issues |
|
||||
| **git-flow** | PreToolUse (Bash) | Validates branch naming and commit message conventions |
|
||||
| **cmdb-assistant** | PreToolUse (MCP create/update) | Validates input data before NetBox writes |
|
||||
| **clarity-assist** | UserPromptSubmit | Detects vague prompts and suggests clarification |
|
||||
|
||||
---
|
||||
|
||||
@@ -141,15 +148,15 @@ Quick reference for all commands in the Leo Claude Marketplace.
|
||||
Full workflow from idea to implementation using RFCs:
|
||||
|
||||
```
|
||||
1. /clarify # Clarify the feature idea
|
||||
2. /rfc create # Create RFC from clarified spec
|
||||
1. /clarity clarify # Clarify the feature idea
|
||||
2. /rfc create # Create RFC from clarified spec
|
||||
... refine RFC content ...
|
||||
3. /rfc review 0001 # Submit RFC for review
|
||||
3. /rfc review 0001 # Submit RFC for review
|
||||
... review discussion ...
|
||||
4. /rfc approve 0001 # Approve RFC for implementation
|
||||
5. /sprint-plan # Select approved RFC for sprint
|
||||
4. /rfc approve 0001 # Approve RFC for implementation
|
||||
5. /sprint plan # Select approved RFC for sprint
|
||||
... implement feature ...
|
||||
6. /sprint-close # Complete sprint, RFC marked Implemented
|
||||
6. /sprint close # Complete sprint, RFC marked Implemented
|
||||
```
|
||||
|
||||
### Example 1: Starting a New Feature Sprint
|
||||
@@ -157,17 +164,17 @@ Full workflow from idea to implementation using RFCs:
|
||||
A typical workflow for planning and executing a feature sprint:
|
||||
|
||||
```
|
||||
1. /clarify # Clarify requirements if vague
|
||||
2. /sprint-plan # Plan the sprint with architecture analysis
|
||||
3. /labels-sync # Ensure labels are up-to-date
|
||||
4. /sprint-start # Begin execution with dependency ordering
|
||||
5. /branch-start feat/... # Create feature branch
|
||||
1. /clarity clarify # Clarify requirements if vague
|
||||
2. /sprint plan # Plan the sprint with architecture analysis
|
||||
3. /labels sync # Ensure labels are up-to-date
|
||||
4. /sprint start # Begin execution with dependency ordering
|
||||
5. /gitflow branch-start feat/... # Create feature branch
|
||||
... implement features ...
|
||||
6. /git-commit # Commit with conventional message
|
||||
7. /sprint-status --diagram # Check progress with visualization
|
||||
8. /pm-review # Pre-close quality review
|
||||
9. /pm-test run # Verify test coverage
|
||||
10. /sprint-close # Capture lessons learned
|
||||
6. /gitflow commit # Commit with conventional message
|
||||
7. /sprint status --diagram # Check progress with visualization
|
||||
8. /sprint review # Pre-close quality review
|
||||
9. /sprint test run # Verify test coverage
|
||||
10. /sprint close # Capture lessons learned
|
||||
```
|
||||
|
||||
### Example 2: Daily Development Cycle
|
||||
@@ -175,12 +182,12 @@ A typical workflow for planning and executing a feature sprint:
|
||||
Quick daily workflow with git-flow:
|
||||
|
||||
```
|
||||
1. /git-status # Check current state
|
||||
2. /branch-start fix/... # Start bugfix branch
|
||||
1. /gitflow status # Check current state
|
||||
2. /gitflow branch-start fix/... # Start bugfix branch
|
||||
... make changes ...
|
||||
3. /git-commit # Auto-generate commit message
|
||||
4. /git-commit-push # Push to remote
|
||||
5. /branch-cleanup # Clean merged branches
|
||||
3. /gitflow commit # Auto-generate commit message
|
||||
4. /gitflow commit --push # Commit and push to remote
|
||||
5. /gitflow branch-cleanup # Clean merged branches
|
||||
```
|
||||
|
||||
### Example 3: Pull Request Review Workflow
|
||||
@@ -188,10 +195,10 @@ Quick daily workflow with git-flow:
|
||||
Reviewing a PR before merge:
|
||||
|
||||
```
|
||||
1. /pr-summary # Quick overview of changes
|
||||
2. /pr-review # Full multi-agent review
|
||||
3. /pr-findings # Filter findings by severity
|
||||
4. /security-scan # Deep security audit if needed
|
||||
1. /pr summary # Quick overview of changes
|
||||
2. /pr review # Full multi-agent review
|
||||
3. /pr findings # Filter findings by severity
|
||||
4. /sentinel scan # Deep security audit if needed
|
||||
```
|
||||
|
||||
### Example 4: Documentation Maintenance
|
||||
@@ -199,10 +206,10 @@ Reviewing a PR before merge:
|
||||
Keeping docs in sync:
|
||||
|
||||
```
|
||||
1. /doc-audit # Scan for documentation drift
|
||||
2. /doc-sync # Apply pending updates
|
||||
3. /config-analyze # Check CLAUDE.md health
|
||||
4. /config-optimize # Optimize if needed
|
||||
1. /doc audit # Scan for documentation drift
|
||||
2. /doc sync # Apply pending updates
|
||||
3. /claude-config analyze # Check CLAUDE.md health
|
||||
4. /claude-config optimize # Optimize if needed
|
||||
```
|
||||
|
||||
### Example 5: Code Refactoring Session
|
||||
@@ -210,11 +217,11 @@ Keeping docs in sync:
|
||||
Safe refactoring with preview:
|
||||
|
||||
```
|
||||
1. /refactor-dry # Preview opportunities
|
||||
2. /security-scan # Baseline security check
|
||||
3. /refactor # Apply improvements
|
||||
4. /pm-test run # Verify nothing broke
|
||||
5. /git-commit # Commit with descriptive message
|
||||
1. /sentinel refactor-dry # Preview opportunities
|
||||
2. /sentinel scan # Baseline security check
|
||||
3. /sentinel refactor # Apply improvements
|
||||
4. /sprint test run # Verify nothing broke
|
||||
5. /gitflow commit # Commit with descriptive message
|
||||
```
|
||||
|
||||
### Example 6: Infrastructure Documentation
|
||||
@@ -222,10 +229,10 @@ Safe refactoring with preview:
|
||||
Managing infrastructure with CMDB:
|
||||
|
||||
```
|
||||
1. /cmdb-search "server" # Find existing devices
|
||||
2. /cmdb-device view X # Check device details
|
||||
3. /cmdb-ip list # List available IPs
|
||||
4. /cmdb-site view Y # Check site info
|
||||
1. /cmdb search "server" # Find existing devices
|
||||
2. /cmdb device view X # Check device details
|
||||
3. /cmdb ip list # List available IPs
|
||||
4. /cmdb site view Y # Check site info
|
||||
```
|
||||
|
||||
### Example 6b: Data Engineering Workflow
|
||||
@@ -233,12 +240,12 @@ Managing infrastructure with CMDB:
|
||||
Working with data pipelines:
|
||||
|
||||
```
|
||||
1. /data-ingest file.csv # Load data into DataFrame
|
||||
2. /data-profile # Generate data profiling report
|
||||
3. /data-schema # Explore database schemas
|
||||
4. /data-lineage model_name # View dbt model dependencies
|
||||
5. /data-run model_name # Execute dbt models
|
||||
6. /data-explain "SELECT ..." # Analyze query execution plan
|
||||
1. /data ingest file.csv # Load data into DataFrame
|
||||
2. /data profile # Generate data profiling report
|
||||
3. /data schema # Explore database schemas
|
||||
4. /data lineage model_name # View dbt model dependencies
|
||||
5. /data run model_name # Execute dbt models
|
||||
6. /data explain "SELECT ..." # Analyze query execution plan
|
||||
```
|
||||
|
||||
### Example 7: First-Time Setup (New Machine)
|
||||
@@ -246,13 +253,13 @@ Working with data pipelines:
|
||||
Setting up the marketplace for the first time:
|
||||
|
||||
```
|
||||
1. /pm-setup --full # Full setup: MCP + system config + project
|
||||
1. /projman setup --full # Full setup: MCP + system config + project
|
||||
# → Follow prompts for Gitea URL, org
|
||||
# → Add token manually when prompted
|
||||
# → Confirm repository name
|
||||
2. # Restart Claude Code session
|
||||
3. /labels-sync # Sync Gitea labels
|
||||
4. /sprint-plan # Plan first sprint
|
||||
3. /labels sync # Sync Gitea labels
|
||||
4. /sprint plan # Plan first sprint
|
||||
```
|
||||
|
||||
### Example 8: New Project Setup (System Already Configured)
|
||||
@@ -260,22 +267,23 @@ Setting up the marketplace for the first time:
|
||||
Adding a new project when system config exists:
|
||||
|
||||
```
|
||||
1. /pm-setup --quick # Quick project setup (auto-detected)
|
||||
1. /projman setup --quick # Quick project setup (auto-detected)
|
||||
# → Confirms detected repo name
|
||||
# → Creates .env
|
||||
2. /labels-sync # Sync Gitea labels
|
||||
3. /sprint-plan # Plan first sprint
|
||||
2. /labels sync # Sync Gitea labels
|
||||
3. /sprint plan # Plan first sprint
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Quick Tips
|
||||
|
||||
- **Hooks run automatically** - doc-guardian and code-sentinel protect you without manual invocation
|
||||
- **Use `/git-commit` over `git commit`** - generates better commit messages following conventions
|
||||
- **Run `/pm-review` before `/sprint-close`** - catches issues before closing the sprint
|
||||
- **Use `/clarify` for vague requests** - especially helpful for complex requirements
|
||||
- **`/refactor-dry` is safe** - always preview before applying refactoring changes
|
||||
- **Hooks run automatically** - code-sentinel and git-flow protect you without manual invocation
|
||||
- **Use `/gitflow commit` over `git commit`** - generates better commit messages following conventions
|
||||
- **Run `/sprint review` before `/sprint close`** - catches issues before closing the sprint
|
||||
- **Use `/clarity clarify` for vague requests** - especially helpful for complex requirements
|
||||
- **`/sentinel refactor-dry` is safe** - always preview before applying refactoring changes
|
||||
- **`/gitflow commit --push`** replaces the old `/git-commit-push` - fewer commands to remember
|
||||
|
||||
---
|
||||
|
||||
@@ -296,4 +304,4 @@ Ensure credentials are configured in `~/.config/claude/gitea.env`, `~/.config/cl
|
||||
|
||||
---
|
||||
|
||||
*Last Updated: 2026-02-02*
|
||||
*Last Updated: 2026-02-06*
|
||||
|
||||
@@ -9,7 +9,7 @@ Centralized configuration documentation for all plugins and MCP servers in the L
|
||||
**After installing the marketplace and plugins via Claude Code:**
|
||||
|
||||
```
|
||||
/pm-setup
|
||||
/projman setup
|
||||
```
|
||||
|
||||
The interactive wizard auto-detects what's needed and handles everything except manually adding your API tokens.
|
||||
@@ -25,8 +25,8 @@ The interactive wizard auto-detects what's needed and handles everything except
|
||||
└─────────────────────────────────────────────────────────────────────────────┘
|
||||
│
|
||||
▼
|
||||
/pm-setup --full
|
||||
(or /pm-setup auto-detects)
|
||||
/projman setup --full
|
||||
(or /projman setup auto-detects)
|
||||
│
|
||||
┌──────────────────────────────┼──────────────────────────────┐
|
||||
▼ ▼ ▼
|
||||
@@ -79,7 +79,7 @@ The interactive wizard auto-detects what's needed and handles everything except
|
||||
│
|
||||
┌───────────────┴───────────────┐
|
||||
▼ ▼
|
||||
/pm-setup --quick /pm-setup
|
||||
/projman setup --quick /projman setup
|
||||
(explicit mode) (auto-detects mode)
|
||||
│ │
|
||||
│ ┌──────────┴──────────┐
|
||||
@@ -109,7 +109,7 @@ The interactive wizard auto-detects what's needed and handles everything except
|
||||
|
||||
## What Runs Automatically vs User Interaction
|
||||
|
||||
### `/pm-setup --full` - Full Setup
|
||||
### `/projman setup --full` - Full Setup
|
||||
|
||||
| Phase | Type | What Happens |
|
||||
|-------|------|--------------|
|
||||
@@ -121,7 +121,7 @@ The interactive wizard auto-detects what's needed and handles everything except
|
||||
| **6. Project Config** | Automated | Creates `.env` file, checks `.gitignore` |
|
||||
| **7. Validation** | Automated | Tests API connectivity, shows summary |
|
||||
|
||||
### `/pm-setup --quick` - Quick Project Setup
|
||||
### `/projman setup --quick` - Quick Project Setup
|
||||
|
||||
| Phase | Type | What Happens |
|
||||
|-------|------|--------------|
|
||||
@@ -136,10 +136,10 @@ The interactive wizard auto-detects what's needed and handles everything except
|
||||
|
||||
| Mode | When to Use | What It Does |
|
||||
|------|-------------|--------------|
|
||||
| `/pm-setup` | Any time | Auto-detects: runs full, quick, or sync as needed |
|
||||
| `/pm-setup --full` | First time on a machine | Full setup: MCP server + system config + project config |
|
||||
| `/pm-setup --quick` | Starting a new project | Quick setup: project config only (assumes system is ready) |
|
||||
| `/pm-setup --sync` | After repo move/rename | Updates .env to match current git remote |
|
||||
| `/projman setup` | Any time | Auto-detects: runs full, quick, or sync as needed |
|
||||
| `/projman setup --full` | First time on a machine | Full setup: MCP server + system config + project config |
|
||||
| `/projman setup --quick` | Starting a new project | Quick setup: project config only (assumes system is ready) |
|
||||
| `/projman setup --sync` | After repo move/rename | Updates .env to match current git remote |
|
||||
|
||||
**Auto-detection logic:**
|
||||
1. No system config → **full** mode
|
||||
@@ -148,9 +148,9 @@ The interactive wizard auto-detects what's needed and handles everything except
|
||||
4. Both exist, match → already configured, offer to reconfigure
|
||||
|
||||
**Typical workflow:**
|
||||
1. Install plugin → run `/pm-setup` (auto-runs full mode)
|
||||
2. Start new project → run `/pm-setup` (auto-runs quick mode)
|
||||
3. Repository moved? → run `/pm-setup` (auto-runs sync mode)
|
||||
1. Install plugin → run `/projman setup` (auto-runs full mode)
|
||||
2. Start new project → run `/projman setup` (auto-runs quick mode)
|
||||
3. Repository moved? → run `/projman setup` (auto-runs sync mode)
|
||||
|
||||
---
|
||||
|
||||
@@ -182,7 +182,7 @@ This marketplace uses a **hybrid configuration** approach:
|
||||
|
||||
**Benefits:**
|
||||
- Single token per service (update once, use everywhere)
|
||||
- Easy multi-project setup (just run `/pm-setup` in each project)
|
||||
- Easy multi-project setup (just run `/projman setup` in each project)
|
||||
- Security (tokens never committed to git, never typed into AI chat)
|
||||
- Project isolation (each project can override defaults)
|
||||
|
||||
@@ -190,7 +190,7 @@ This marketplace uses a **hybrid configuration** approach:
|
||||
|
||||
## Prerequisites
|
||||
|
||||
Before running `/pm-setup`:
|
||||
Before running `/projman setup`:
|
||||
|
||||
1. **Python 3.10+** installed
|
||||
```bash
|
||||
@@ -213,7 +213,7 @@ Before running `/pm-setup`:
|
||||
Run the setup wizard in Claude Code:
|
||||
|
||||
```
|
||||
/pm-setup
|
||||
/projman setup
|
||||
```
|
||||
|
||||
The wizard will guide you through each step interactively and auto-detect the appropriate mode.
|
||||
@@ -387,18 +387,18 @@ PR_REVIEW_AUTO_SUBMIT=false
|
||||
|
||||
| Plugin | System Config | Project Config | Setup Command |
|
||||
|--------|---------------|----------------|---------------|
|
||||
| **projman** | gitea.env | .env (GITEA_REPO=owner/repo) | `/pm-setup` |
|
||||
| **pr-review** | gitea.env | .env (GITEA_REPO=owner/repo) | `/pr-setup` |
|
||||
| **projman** | gitea.env | .env (GITEA_REPO=owner/repo) | `/projman setup` |
|
||||
| **pr-review** | gitea.env | .env (GITEA_REPO=owner/repo) | `/pr setup` |
|
||||
| **git-flow** | git-flow.env (optional) | .env (optional) | None needed |
|
||||
| **clarity-assist** | None | None | None needed |
|
||||
| **cmdb-assistant** | netbox.env | None | `/cmdb-setup` |
|
||||
| **data-platform** | postgres.env | .env (optional) | `/data-setup` |
|
||||
| **viz-platform** | None | .env (optional DMC_VERSION) | `/viz-setup` |
|
||||
| **cmdb-assistant** | netbox.env | None | `/cmdb setup` |
|
||||
| **data-platform** | postgres.env | .env (optional) | `/data setup` |
|
||||
| **viz-platform** | None | .env (optional DMC_VERSION) | `/viz setup` |
|
||||
| **doc-guardian** | None | None | None needed |
|
||||
| **code-sentinel** | None | None | None needed |
|
||||
| **project-hygiene** | None | None | None needed |
|
||||
| **claude-config-maintainer** | None | None | None needed |
|
||||
| **contract-validator** | None | None | `/cv-setup` |
|
||||
| **contract-validator** | None | None | `/cv setup` |
|
||||
|
||||
---
|
||||
|
||||
@@ -408,7 +408,7 @@ Once system-level config is set up, adding new projects is simple:
|
||||
|
||||
```
|
||||
cd ~/projects/new-project
|
||||
/pm-setup
|
||||
/projman setup
|
||||
```
|
||||
|
||||
The command auto-detects that system config exists and runs quick project setup.
|
||||
@@ -485,7 +485,7 @@ Not all plugins have MCP servers. The install script handles this automatically:
|
||||
| projman | ✓ (via gitea) | Issue, wiki, PR tools |
|
||||
| pr-review | ✓ (via gitea) | PR review tools |
|
||||
| git-flow | ✗ | Commands only |
|
||||
| doc-guardian | ✗ | Commands and hooks only |
|
||||
| doc-guardian | ✗ | Commands only |
|
||||
| code-sentinel | ✗ | Commands and hooks only |
|
||||
| clarity-assist | ✗ | Commands only |
|
||||
|
||||
@@ -631,7 +631,7 @@ For agents with 8+ skills, use **phase-based loading** in the agent body text. T
|
||||
|
||||
### API Validation
|
||||
|
||||
When running `/pm-setup`, the command:
|
||||
When running `/projman setup`, the command:
|
||||
|
||||
1. **Detects** organization and repository from git remote URL
|
||||
2. **Validates** via Gitea API: `GET /api/v1/repos/{org}/{repo}`
|
||||
@@ -646,7 +646,7 @@ When you start a Claude Code session, a hook automatically:
|
||||
|
||||
1. Reads `GITEA_REPO` (in `owner/repo` format) from `.env`
|
||||
2. Compares with current `git remote get-url origin`
|
||||
3. **Warns** if mismatch detected: "Repository location mismatch. Run `/pm-setup --sync` to update."
|
||||
3. **Warns** if mismatch detected: "Repository location mismatch. Run `/projman setup --sync` to update."
|
||||
|
||||
This helps when you:
|
||||
- Move a repository to a different organization
|
||||
@@ -668,7 +668,7 @@ curl -H "Authorization: token $GITEA_API_TOKEN" "$GITEA_API_URL/user"
|
||||
|
||||
In Claude Code, after restarting your session:
|
||||
```
|
||||
/labels-sync
|
||||
/labels sync
|
||||
```
|
||||
|
||||
If this works, your setup is complete.
|
||||
@@ -741,7 +741,7 @@ cat .env
|
||||
|
||||
3. **Never type tokens into AI chat**
|
||||
- Always edit config files directly in your editor
|
||||
- The `/pm-setup` wizard respects this
|
||||
- The `/projman setup` wizard respects this
|
||||
|
||||
4. **Rotate tokens periodically**
|
||||
- Every 6-12 months
|
||||
|
||||
@@ -279,8 +279,8 @@ Error: Could not find a suitable TLS CA certificate bundle, invalid path:
|
||||
|
||||
Use these commands for automated checking:
|
||||
|
||||
- `/pm-debug report` - Run full diagnostics, create issue if problems found
|
||||
- `/pm-debug review` - Investigate existing diagnostic issues and propose fixes
|
||||
- `/cv status` - Marketplace-wide health check (installation, MCP, configuration)
|
||||
- `/hygiene check` - Project file organization and cleanup check
|
||||
|
||||
---
|
||||
|
||||
|
||||
215
docs/MIGRATION-v9.md
Normal file
215
docs/MIGRATION-v9.md
Normal file
@@ -0,0 +1,215 @@
|
||||
# Migration Guide: v8.x → v9.0.0
|
||||
|
||||
## Overview
|
||||
|
||||
v9.0.0 standardizes all commands to the `/<noun> <action>` sub-command pattern. Every command in the marketplace now follows this convention.
|
||||
|
||||
**Breaking change:** All old command names are removed. Update your workflows, scripts, and CLAUDE.md references.
|
||||
|
||||
---
|
||||
|
||||
## Complete Command Mapping
|
||||
|
||||
### projman
|
||||
|
||||
| Old (v8.x) | New (v9.0.0) | Notes |
|
||||
|-------------|--------------|-------|
|
||||
| `/sprint-plan` | `/sprint plan` | |
|
||||
| `/sprint-start` | `/sprint start` | |
|
||||
| `/sprint-status` | `/sprint status` | |
|
||||
| `/sprint-close` | `/sprint close` | |
|
||||
| `/pm-review` | `/sprint review` | Moved under `/sprint` |
|
||||
| `/pm-test` | `/sprint test` | Moved under `/sprint` |
|
||||
| `/pm-setup` | `/projman setup` | Moved under `/projman` |
|
||||
| `/pm-debug` | **Removed** | Deleted in v8.1.0 — migrated to `debug-mcp` plugin (Decision #11) |
|
||||
| `/labels-sync` | `/labels sync` | |
|
||||
| `/suggest-version` | **Removed** | Deleted in v8.1.0 — migrated to `ops-release-manager` plugin (Decision #18) |
|
||||
| `/proposal-status` | **Removed** | Deleted in v8.1.0 — absorbed into `/project status` (Decision #19) |
|
||||
| `/rfc <sub>` | `/rfc <sub>` | Unchanged |
|
||||
| `/project <sub>` | `/project <sub>` | Unchanged |
|
||||
| `/adr <sub>` | `/adr <sub>` | Unchanged |
|
||||
|
||||
### git-flow
|
||||
|
||||
| Old (v8.x) | New (v9.0.0) | Notes |
|
||||
|-------------|--------------|-------|
|
||||
| `/git-commit` | `/gitflow commit` | |
|
||||
| `/git-commit-push` | `/gitflow commit --push` | **Consolidated** into flag |
|
||||
| `/git-commit-merge` | `/gitflow commit --merge` | **Consolidated** into flag |
|
||||
| `/git-commit-sync` | `/gitflow commit --sync` | **Consolidated** into flag |
|
||||
| `/branch-start` | `/gitflow branch-start` | |
|
||||
| `/branch-cleanup` | `/gitflow branch-cleanup` | |
|
||||
| `/git-status` | `/gitflow status` | |
|
||||
| `/git-config` | `/gitflow config` | |
|
||||
|
||||
**Note:** The three commit variants (`-push`, `-merge`, `-sync`) are now flags on `/gitflow commit`. This reduces 8 commands to 5.
|
||||
|
||||
### pr-review
|
||||
|
||||
| Old (v8.x) | New (v9.0.0) | Notes |
|
||||
|-------------|--------------|-------|
|
||||
| `/pr-review` | `/pr review` | |
|
||||
| `/pr-summary` | `/pr summary` | |
|
||||
| `/pr-findings` | `/pr findings` | |
|
||||
| `/pr-diff` | `/pr diff` | |
|
||||
| `/pr-setup` | `/pr setup` | |
|
||||
| `/project-init` | `/pr init` | Renamed |
|
||||
| `/project-sync` | `/pr sync` | Renamed |
|
||||
|
||||
### clarity-assist
|
||||
|
||||
| Old (v8.x) | New (v9.0.0) | Notes |
|
||||
|-------------|--------------|-------|
|
||||
| `/clarify` | `/clarity clarify` | |
|
||||
| `/quick-clarify` | `/clarity quick-clarify` | |
|
||||
|
||||
### doc-guardian
|
||||
|
||||
| Old (v8.x) | New (v9.0.0) | Notes |
|
||||
|-------------|--------------|-------|
|
||||
| `/doc-audit` | `/doc audit` | |
|
||||
| `/doc-sync` | `/doc sync` | |
|
||||
| `/changelog-gen` | `/doc changelog-gen` | Moved under `/doc` |
|
||||
| `/doc-coverage` | `/doc coverage` | |
|
||||
| `/stale-docs` | `/doc stale-docs` | Moved under `/doc` |
|
||||
|
||||
### code-sentinel
|
||||
|
||||
| Old (v8.x) | New (v9.0.0) | Notes |
|
||||
|-------------|--------------|-------|
|
||||
| `/security-scan` | `/sentinel scan` | |
|
||||
| `/refactor` | `/sentinel refactor` | |
|
||||
| `/refactor-dry` | `/sentinel refactor-dry` | |
|
||||
|
||||
### claude-config-maintainer
|
||||
|
||||
| Old (v8.x) | New (v9.0.0) | Notes |
|
||||
|-------------|--------------|-------|
|
||||
| `/config-analyze` (or `/analyze`) | `/claude-config analyze` | |
|
||||
| `/config-optimize` (or `/optimize`) | `/claude-config optimize` | |
|
||||
| `/config-init` (or `/init`) | `/claude-config init` | |
|
||||
| `/config-diff` | `/claude-config diff` | |
|
||||
| `/config-lint` | `/claude-config lint` | |
|
||||
| `/config-audit-settings` | `/claude-config audit-settings` | |
|
||||
| `/config-optimize-settings` | `/claude-config optimize-settings` | |
|
||||
| `/config-permissions-map` | `/claude-config permissions-map` | |
|
||||
|
||||
### contract-validator
|
||||
|
||||
| Old (v8.x) | New (v9.0.0) | Notes |
|
||||
|-------------|--------------|-------|
|
||||
| `/validate-contracts` | `/cv validate` | |
|
||||
| `/check-agent` | `/cv check-agent` | |
|
||||
| `/list-interfaces` | `/cv list-interfaces` | |
|
||||
| `/dependency-graph` | `/cv dependency-graph` | |
|
||||
| `/cv-setup` | `/cv setup` | |
|
||||
| `/cv status` | `/cv status` | Unchanged |
|
||||
|
||||
### cmdb-assistant
|
||||
|
||||
| Old (v8.x) | New (v9.0.0) | Notes |
|
||||
|-------------|--------------|-------|
|
||||
| `/cmdb-setup` | `/cmdb setup` | |
|
||||
| `/cmdb-search` | `/cmdb search` | |
|
||||
| `/cmdb-device` | `/cmdb device` | |
|
||||
| `/cmdb-ip` | `/cmdb ip` | |
|
||||
| `/cmdb-site` | `/cmdb site` | |
|
||||
| `/cmdb-audit` | `/cmdb audit` | |
|
||||
| `/cmdb-register` | `/cmdb register` | |
|
||||
| `/cmdb-sync` | `/cmdb sync` | |
|
||||
| `/cmdb-topology` | `/cmdb topology` | |
|
||||
| `/change-audit` | `/cmdb change-audit` | Moved under `/cmdb` |
|
||||
| `/ip-conflicts` | `/cmdb ip-conflicts` | Moved under `/cmdb` |
|
||||
|
||||
### data-platform
|
||||
|
||||
| Old (v8.x) | New (v9.0.0) | Notes |
|
||||
|-------------|--------------|-------|
|
||||
| `/data-ingest` | `/data ingest` | |
|
||||
| `/data-profile` | `/data profile` | |
|
||||
| `/data-schema` | `/data schema` | |
|
||||
| `/data-explain` | `/data explain` | |
|
||||
| `/data-lineage` | `/data lineage` | |
|
||||
| `/data-run` | `/data run` | |
|
||||
| `/lineage-viz` | `/data lineage-viz` | Moved under `/data` |
|
||||
| `/dbt-test` | `/data dbt-test` | Moved under `/data` |
|
||||
| `/data-quality` | `/data quality` | |
|
||||
| `/data-review` | `/data review` | |
|
||||
| `/data-gate` | `/data gate` | |
|
||||
| `/data-setup` | `/data setup` | |
|
||||
|
||||
### viz-platform
|
||||
|
||||
| Old (v8.x) | New (v9.0.0) | Notes |
|
||||
|-------------|--------------|-------|
|
||||
| `/viz-setup` | `/viz setup` | |
|
||||
| `/viz-chart` | `/viz chart` | |
|
||||
| `/viz-chart-export` | `/viz chart-export` | |
|
||||
| `/viz-dashboard` | `/viz dashboard` | |
|
||||
| `/viz-theme` | `/viz theme` | |
|
||||
| `/viz-theme-new` | `/viz theme-new` | |
|
||||
| `/viz-theme-css` | `/viz theme-css` | |
|
||||
| `/viz-component` | `/viz component` | |
|
||||
| `/accessibility-check` | `/viz accessibility-check` | Moved under `/viz` |
|
||||
| `/viz-breakpoints` | `/viz breakpoints` | |
|
||||
| `/design-review` | `/viz design-review` | Moved under `/viz` |
|
||||
| `/design-gate` | `/viz design-gate` | Moved under `/viz` |
|
||||
|
||||
### project-hygiene
|
||||
|
||||
No changes — already used `/<noun> <action>` pattern.
|
||||
|
||||
| Command | Status |
|
||||
|---------|--------|
|
||||
| `/hygiene check` | Unchanged |
|
||||
|
||||
---
|
||||
|
||||
## Verifying Plugin Installation (v9.0.0)
|
||||
|
||||
Test commands use the new format:
|
||||
|
||||
| Plugin | Test Command |
|
||||
|--------|--------------|
|
||||
| git-flow | `/git-flow:gitflow-status` |
|
||||
| projman | `/projman:sprint-status` |
|
||||
| pr-review | `/pr-review:pr-summary` |
|
||||
| clarity-assist | `/clarity-assist:clarity-clarify` |
|
||||
| doc-guardian | `/doc-guardian:doc-audit` |
|
||||
| code-sentinel | `/code-sentinel:sentinel-scan` |
|
||||
| claude-config-maintainer | `/claude-config-maintainer:claude-config-analyze` |
|
||||
| cmdb-assistant | `/cmdb-assistant:cmdb-search` |
|
||||
| data-platform | `/data-platform:data-ingest` |
|
||||
| viz-platform | `/viz-platform:viz-chart` |
|
||||
| contract-validator | `/contract-validator:cv-validate` |
|
||||
|
||||
---
|
||||
|
||||
## CLAUDE.md Updates
|
||||
|
||||
If your project's CLAUDE.md references old command names, update them:
|
||||
|
||||
**Find old references:**
|
||||
```bash
|
||||
grep -rn '/sprint-plan\|/pm-setup\|/git-commit\|/pr-review\|/security-scan\|/config-analyze\|/validate-contracts\|/cmdb-search\|/data-ingest\|/viz-chart\b\|/clarify\b\|/doc-audit' CLAUDE.md
|
||||
```
|
||||
|
||||
**Key patterns to search and replace:**
|
||||
- `/sprint-plan` → `/sprint plan`
|
||||
- `/pm-setup` → `/projman setup`
|
||||
- `/pm-review` → `/sprint review`
|
||||
- `/git-commit` → `/gitflow commit`
|
||||
- `/pr-review` → `/pr review`
|
||||
- `/security-scan` → `/sentinel scan`
|
||||
- `/refactor` → `/sentinel refactor`
|
||||
- `/config-analyze` → `/claude-config analyze`
|
||||
- `/validate-contracts` → `/cv validate`
|
||||
- `/clarify` → `/clarity clarify`
|
||||
- `/doc-audit` → `/doc audit`
|
||||
- `/cmdb-search` → `/cmdb search`
|
||||
- `/data-ingest` → `/data ingest`
|
||||
- `/viz-chart` → `/viz chart`
|
||||
|
||||
---
|
||||
|
||||
*Last Updated: 2026-02-06*
|
||||
@@ -38,7 +38,7 @@ cd ~/.claude/plugins/marketplaces/leo-claude-mktplace && ./scripts/setup.sh
|
||||
|
||||
## What the Post-Update Script Does
|
||||
|
||||
1. **Updates Python dependencies** for MCP servers (gitea, netbox)
|
||||
1. **Updates Python dependencies** for all 5 MCP servers (gitea, netbox, data-platform, viz-platform, contract-validator)
|
||||
2. **Shows recent changelog entries** so you know what changed
|
||||
3. **Validates your configuration** is still compatible
|
||||
|
||||
@@ -48,7 +48,7 @@ cd ~/.claude/plugins/marketplaces/leo-claude-mktplace && ./scripts/setup.sh
|
||||
|
||||
### When to Re-run Setup
|
||||
|
||||
You typically **don't need** to re-run setup after updates. However, re-run your plugin's setup command (e.g., `/pm-setup`, `/pr-setup`, `/cmdb-setup`) if:
|
||||
You typically **don't need** to re-run setup after updates. However, re-run your plugin's setup command (e.g., `/projman setup`, `/pr setup`, `/cmdb setup`) if:
|
||||
|
||||
- Changelog mentions **new required environment variables**
|
||||
- Changelog mentions **breaking changes** to configuration
|
||||
@@ -59,7 +59,7 @@ You typically **don't need** to re-run setup after updates. However, re-run your
|
||||
If an update requires new project-level configuration:
|
||||
|
||||
```
|
||||
/project-init
|
||||
/pr init
|
||||
```
|
||||
|
||||
This will detect existing settings and only add what's missing.
|
||||
@@ -98,8 +98,8 @@ When updating, review if changes affect the setup workflow:
|
||||
1. **Check for setup command changes:**
|
||||
```bash
|
||||
git diff HEAD~1 plugins/*/commands/*-setup.md
|
||||
git diff HEAD~1 plugins/*/commands/project-init.md
|
||||
git diff HEAD~1 plugins/*/commands/project-sync.md
|
||||
git diff HEAD~1 plugins/*/commands/pr-init.md
|
||||
git diff HEAD~1 plugins/*/commands/pr-sync.md
|
||||
```
|
||||
|
||||
2. **Check for hook changes:**
|
||||
@@ -114,7 +114,7 @@ When updating, review if changes affect the setup workflow:
|
||||
|
||||
**If setup commands changed:**
|
||||
- Review what's new (new validation steps, new prompts, etc.)
|
||||
- Consider re-running your plugin's setup command or `/project-init` to benefit from improvements
|
||||
- Consider re-running your plugin's setup command or `/pr init` to benefit from improvements
|
||||
- Existing configurations remain valid unless changelog notes breaking changes
|
||||
|
||||
**If hooks changed:**
|
||||
@@ -123,7 +123,7 @@ When updating, review if changes affect the setup workflow:
|
||||
|
||||
**If configuration structure changed:**
|
||||
- Check if new variables are required
|
||||
- Run `/project-sync` if repository detection logic improved
|
||||
- Run `/pr sync` if repository detection logic improved
|
||||
|
||||
---
|
||||
|
||||
@@ -142,7 +142,7 @@ deactivate
|
||||
### Configuration no longer works
|
||||
|
||||
1. Check CHANGELOG.md for breaking changes
|
||||
2. Run your plugin's setup command (e.g., `/pm-setup`) to re-validate and fix configuration
|
||||
2. Run your plugin's setup command (e.g., `/projman setup`) to re-validate and fix configuration
|
||||
3. Compare your config files with documentation in `docs/CONFIGURATION.md`
|
||||
|
||||
### MCP server won't start after update
|
||||
@@ -157,10 +157,11 @@ cd ~/.claude/plugins/marketplaces/leo-claude-mktplace && ./scripts/setup.sh
|
||||
If that doesn't work:
|
||||
|
||||
1. Check Python version: `python3 --version` (requires 3.10+)
|
||||
2. Verify venv exists in INSTALLED location:
|
||||
2. Verify venvs exist in INSTALLED location:
|
||||
```bash
|
||||
ls ~/.claude/plugins/marketplaces/leo-claude-mktplace/mcp-servers/gitea/.venv
|
||||
ls ~/.claude/plugins/marketplaces/leo-claude-mktplace/mcp-servers/netbox/.venv
|
||||
for server in gitea netbox data-platform viz-platform contract-validator; do
|
||||
ls ~/.claude/plugins/marketplaces/leo-claude-mktplace/mcp-servers/$server/.venv && echo "$server: OK" || echo "$server: MISSING"
|
||||
done
|
||||
```
|
||||
3. If missing, run setup.sh as shown above.
|
||||
4. Restart Claude Code session
|
||||
|
||||
@@ -1,271 +0,0 @@
|
||||
# Agent Workflow - Draw.io Specification
|
||||
|
||||
**Target File:** `docs/architecture/agent-workflow.drawio`
|
||||
|
||||
**Purpose:** Shows when Planner, Orchestrator, Executor, and Code Reviewer agents trigger during sprint lifecycle.
|
||||
|
||||
**Diagram Type:** Swimlane / Sequence Diagram
|
||||
|
||||
---
|
||||
|
||||
## SWIMLANES
|
||||
|
||||
| ID | Label | Color | Position |
|
||||
|----|-------|-------|----------|
|
||||
| user-lane | User | #E3F2FD | 1 (leftmost) |
|
||||
| planner-lane | Planner Agent | #4A90D9 | 2 |
|
||||
| orchestrator-lane | Orchestrator Agent | #7CB342 | 3 |
|
||||
| executor-lane | Executor Agent | #FF9800 | 4 |
|
||||
| reviewer-lane | Code Reviewer Agent | #9C27B0 | 5 |
|
||||
| gitea-lane | Gitea (Issues + Wiki) | #9E9E9E | 6 (rightmost) |
|
||||
|
||||
---
|
||||
|
||||
## PHASE 1: SPRINT PLANNING
|
||||
|
||||
### Nodes
|
||||
|
||||
| ID | Label | Type | Lane | Sequence |
|
||||
|----|-------|------|------|----------|
|
||||
| p1-start | /sprint-plan | rounded-rect | user-lane | 1 |
|
||||
| p1-activate | Planner Activates | rectangle | planner-lane | 2 |
|
||||
| p1-search-lessons | Search Lessons Learned | rectangle | planner-lane | 3 |
|
||||
| p1-gitea-wiki-query | Query Past Lessons (Wiki) | rectangle | gitea-lane | 4 |
|
||||
| p1-return-lessons | Return Relevant Lessons | rectangle | planner-lane | 5 |
|
||||
| p1-clarify | Ask Clarifying Questions | diamond | planner-lane | 6 |
|
||||
| p1-user-answers | Provide Answers | rectangle | user-lane | 7 |
|
||||
| p1-create-issues | Create Issues with Labels | rectangle | planner-lane | 8 |
|
||||
| p1-gitea-create | Store Issues | rectangle | gitea-lane | 9 |
|
||||
| p1-plan-complete | Planning Complete | rounded-rect | planner-lane | 10 |
|
||||
|
||||
### Edges
|
||||
|
||||
| From | To | Label | Style |
|
||||
|------|----|-------|-------|
|
||||
| p1-start | p1-activate | invokes | solid |
|
||||
| p1-activate | p1-search-lessons | | solid |
|
||||
| p1-search-lessons | p1-gitea-wiki-query | REST API (search_lessons) | solid |
|
||||
| p1-gitea-wiki-query | p1-return-lessons | lessons data | dashed |
|
||||
| p1-return-lessons | p1-clarify | | solid |
|
||||
| p1-clarify | p1-user-answers | questions | solid |
|
||||
| p1-user-answers | p1-clarify | answers | dashed |
|
||||
| p1-clarify | p1-create-issues | | solid |
|
||||
| p1-create-issues | p1-gitea-create | REST API | solid |
|
||||
| p1-gitea-create | p1-plan-complete | confirm | dashed |
|
||||
|
||||
---
|
||||
|
||||
## PHASE 2: SPRINT EXECUTION
|
||||
|
||||
### Nodes
|
||||
|
||||
| ID | Label | Type | Lane | Sequence |
|
||||
|----|-------|------|------|----------|
|
||||
| p2-start | /sprint-start | rounded-rect | user-lane | 11 |
|
||||
| p2-orch-activate | Orchestrator Activates | rectangle | orchestrator-lane | 12 |
|
||||
| p2-fetch-issues | Fetch Sprint Issues | rectangle | orchestrator-lane | 13 |
|
||||
| p2-gitea-list | List Open Issues | rectangle | gitea-lane | 14 |
|
||||
| p2-sequence | Sequence Work (Dependencies) | rectangle | orchestrator-lane | 15 |
|
||||
| p2-dispatch | Dispatch Task | rectangle | orchestrator-lane | 16 |
|
||||
| p2-exec-activate | Executor Activates | rectangle | executor-lane | 17 |
|
||||
| p2-implement | Implement Task | rectangle | executor-lane | 18 |
|
||||
| p2-update-status | Update Issue Status | rectangle | executor-lane | 19 |
|
||||
| p2-gitea-update | Update Issue | rectangle | gitea-lane | 20 |
|
||||
| p2-report | Report Completion | rectangle | executor-lane | 21 |
|
||||
| p2-loop | More Tasks? | diamond | orchestrator-lane | 22 |
|
||||
| p2-exec-complete | Execution Complete | rounded-rect | orchestrator-lane | 23 |
|
||||
|
||||
### Edges
|
||||
|
||||
| From | To | Label | Style |
|
||||
|------|----|-------|-------|
|
||||
| p2-start | p2-orch-activate | invokes | solid |
|
||||
| p2-orch-activate | p2-fetch-issues | | solid |
|
||||
| p2-fetch-issues | p2-gitea-list | REST API | solid |
|
||||
| p2-gitea-list | p2-sequence | issues data | dashed |
|
||||
| p2-sequence | p2-dispatch | parallel batching | solid |
|
||||
| p2-dispatch | p2-exec-activate | execution prompt | solid |
|
||||
| p2-exec-activate | p2-implement | | solid |
|
||||
| p2-implement | p2-update-status | | solid |
|
||||
| p2-update-status | p2-gitea-update | REST API | solid |
|
||||
| p2-gitea-update | p2-report | confirm | dashed |
|
||||
| p2-report | p2-loop | | solid |
|
||||
| p2-loop | p2-dispatch | yes | solid |
|
||||
| p2-loop | p2-exec-complete | no | solid |
|
||||
|
||||
---
|
||||
|
||||
## PHASE 2.5: CODE REVIEW (Pre-Close)
|
||||
|
||||
### Nodes
|
||||
|
||||
| ID | Label | Type | Lane | Sequence |
|
||||
|----|-------|------|------|----------|
|
||||
| p25-start | /review | rounded-rect | user-lane | 24 |
|
||||
| p25-reviewer-activate | Code Reviewer Activates | rectangle | reviewer-lane | 25 |
|
||||
| p25-scan-changes | Scan Recent Changes | rectangle | reviewer-lane | 26 |
|
||||
| p25-check-quality | Check Code Quality | rectangle | reviewer-lane | 27 |
|
||||
| p25-security-scan | Security Scan | rectangle | reviewer-lane | 28 |
|
||||
| p25-report | Generate Review Report | rectangle | reviewer-lane | 29 |
|
||||
| p25-complete | Review Complete | rounded-rect | reviewer-lane | 30 |
|
||||
|
||||
### Edges
|
||||
|
||||
| From | To | Label | Style |
|
||||
|------|----|-------|-------|
|
||||
| p25-start | p25-reviewer-activate | invokes | solid |
|
||||
| p25-reviewer-activate | p25-scan-changes | | solid |
|
||||
| p25-scan-changes | p25-check-quality | | solid |
|
||||
| p25-check-quality | p25-security-scan | | solid |
|
||||
| p25-security-scan | p25-report | | solid |
|
||||
| p25-report | p25-complete | | solid |
|
||||
|
||||
---
|
||||
|
||||
## PHASE 3: SPRINT CLOSE
|
||||
|
||||
### Nodes
|
||||
|
||||
| ID | Label | Type | Lane | Sequence |
|
||||
|----|-------|------|------|----------|
|
||||
| p3-start | /sprint-close | rounded-rect | user-lane | 31 |
|
||||
| p3-orch-activate | Orchestrator Activates | rectangle | orchestrator-lane | 32 |
|
||||
| p3-review | Review Sprint | rectangle | orchestrator-lane | 33 |
|
||||
| p3-gitea-status | Get Final Status | rectangle | gitea-lane | 34 |
|
||||
| p3-capture | Capture Lessons Learned | rectangle | orchestrator-lane | 35 |
|
||||
| p3-user-input | Confirm Lessons | diamond | user-lane | 36 |
|
||||
| p3-create-wiki | Create Wiki Pages | rectangle | orchestrator-lane | 37 |
|
||||
| p3-gitea-wiki-create | Store Lessons (Wiki) | rectangle | gitea-lane | 38 |
|
||||
| p3-close-issues | Close Issues | rectangle | orchestrator-lane | 39 |
|
||||
| p3-gitea-close | Mark Closed | rectangle | gitea-lane | 40 |
|
||||
| p3-complete | Sprint Closed | rounded-rect | orchestrator-lane | 41 |
|
||||
|
||||
### Edges
|
||||
|
||||
| From | To | Label | Style |
|
||||
|------|----|-------|-------|
|
||||
| p3-start | p3-orch-activate | invokes | solid |
|
||||
| p3-orch-activate | p3-review | | solid |
|
||||
| p3-review | p3-gitea-status | REST API | solid |
|
||||
| p3-gitea-status | p3-capture | status data | dashed |
|
||||
| p3-capture | p3-user-input | proposed lessons | solid |
|
||||
| p3-user-input | p3-create-wiki | confirmed | solid |
|
||||
| p3-create-wiki | p3-gitea-wiki-create | REST API (create_lesson) | solid |
|
||||
| p3-gitea-wiki-create | p3-close-issues | confirm | dashed |
|
||||
| p3-close-issues | p3-gitea-close | REST API | solid |
|
||||
| p3-gitea-close | p3-complete | confirm | dashed |
|
||||
|
||||
---
|
||||
|
||||
## LAYOUT NOTES
|
||||
|
||||
```
|
||||
+--------+------------+---------------+------------+----------+------------------+
|
||||
| User | Planner | Orchestrator | Executor | Reviewer | Gitea |
|
||||
| | | | | | (Issues + Wiki) |
|
||||
+--------+------------+---------------+------------+----------+------------------+
|
||||
| | | | | | |
|
||||
| PHASE 1: SPRINT PLANNING |
|
||||
|-------------------------------------------------------------------------------|
|
||||
| O | | | | | |
|
||||
| | | | | | | |
|
||||
| +---->| O | | | | |
|
||||
| | | | | | | |
|
||||
| | +----------|---------------|------------|--------->| O (Wiki Query) |
|
||||
| | |<---------|---------------|------------|----------+ | |
|
||||
| | | | | | | |
|
||||
| | O<> | | | | |
|
||||
| O<--->+ | | | | | |
|
||||
| | | | | | | |
|
||||
| | +----------|---------------|------------|--------->| O (Issues) |
|
||||
| | O | | | | |
|
||||
| | | | | | |
|
||||
|-------------------------------------------------------------------------------|
|
||||
| PHASE 2: SPRINT EXECUTION |
|
||||
|-------------------------------------------------------------------------------|
|
||||
| O | | | | | |
|
||||
| | | | | | | |
|
||||
| +-----|----------->| O | | | |
|
||||
| | | | | | | |
|
||||
| | | +-------------|------------|--------->| O (Issues) |
|
||||
| | | |<------------|------------|----------+ | |
|
||||
| | | | | | | |
|
||||
| | | +------------>| O | | |
|
||||
| | | | | | | |
|
||||
| | | | +----------|--------->| O (Issues) |
|
||||
| | | | |<---------|----------+ | |
|
||||
| | | O<------------+ | | | |
|
||||
| | | | | | | |
|
||||
| | | O (loop) | | | |
|
||||
| | | | | | |
|
||||
|-------------------------------------------------------------------------------|
|
||||
| PHASE 2.5: CODE REVIEW |
|
||||
|-------------------------------------------------------------------------------|
|
||||
| O | | | | | |
|
||||
| | | | | | | |
|
||||
| +-----|------------|---------------|----------->| O | |
|
||||
| | | | | | | |
|
||||
| | | | | O->O->O | |
|
||||
| | | | | | | |
|
||||
| | | | | O | |
|
||||
| | | | | | |
|
||||
|-------------------------------------------------------------------------------|
|
||||
| PHASE 3: SPRINT CLOSE |
|
||||
|-------------------------------------------------------------------------------|
|
||||
| O | | | | | |
|
||||
| | | | | | | |
|
||||
| +-----|----------->| O | | | |
|
||||
| | | +-------------|------------|--------->| O (Issues) |
|
||||
| | | |<------------|------------|----------+ | |
|
||||
| | | | | | | |
|
||||
| O<----|-----------<+ | | | | |
|
||||
| +-----|----------->| | | | | |
|
||||
| | | +-------------|------------|--------->| O (Wiki Create) |
|
||||
| | | |<------------|------------|----------+ | |
|
||||
| | | +-------------|------------|--------->| O (Issues Close) |
|
||||
| | | O | | | |
|
||||
+--------+------------+---------------+------------+----------+------------------+
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## COLOR LEGEND
|
||||
|
||||
| Color | Hex | Meaning |
|
||||
|-------|-----|---------|
|
||||
| Light Blue | #E3F2FD | User actions |
|
||||
| Blue | #4A90D9 | Planner Agent |
|
||||
| Green | #7CB342 | Orchestrator Agent |
|
||||
| Orange | #FF9800 | Executor Agent |
|
||||
| Purple | #9C27B0 | Code Reviewer Agent |
|
||||
| Gray | #9E9E9E | External Services (Gitea) |
|
||||
|
||||
---
|
||||
|
||||
## SHAPE LEGEND
|
||||
|
||||
| Shape | Meaning |
|
||||
|-------|---------|
|
||||
| Rounded Rectangle | Start/End points (commands) |
|
||||
| Rectangle | Process/Action |
|
||||
| Diamond | Decision point |
|
||||
| Cylinder | Data store (in component map) |
|
||||
|
||||
---
|
||||
|
||||
## ARROW LEGEND
|
||||
|
||||
| Style | Meaning |
|
||||
|-------|---------|
|
||||
| Solid | Action/Request |
|
||||
| Dashed | Response/Data return |
|
||||
|
||||
---
|
||||
|
||||
## ARCHITECTURE NOTES
|
||||
|
||||
- **Gitea provides BOTH issue tracking AND wiki** (no separate wiki service)
|
||||
- All wiki operations use Gitea REST API via MCP tools
|
||||
- Lessons learned stored in Gitea Wiki under `lessons-learned/sprints/`
|
||||
- MCP tools: `search_lessons`, `create_lesson`, `list_wiki_pages`, `get_wiki_page`
|
||||
- Four-agent model: Planner, Orchestrator, Executor, Code Reviewer
|
||||
@@ -1,139 +0,0 @@
|
||||
# Component Map - Draw.io Specification
|
||||
|
||||
**Target File:** `docs/architecture/component-map.drawio`
|
||||
|
||||
**Purpose:** Shows all plugins, MCP servers, hooks and their relationships.
|
||||
|
||||
---
|
||||
|
||||
## NODES
|
||||
|
||||
### Plugins (Blue - #4A90D9)
|
||||
|
||||
| ID | Label | Type | Color | Position |
|
||||
|----|-------|------|-------|----------|
|
||||
| projman | projman | rectangle | #4A90D9 | top-center |
|
||||
| projman-pmo | projman-pmo (planned) | rectangle | #4A90D9 | top-right |
|
||||
| project-hygiene | project-hygiene | rectangle | #4A90D9 | top-left |
|
||||
| claude-config | claude-config-maintainer | rectangle | #4A90D9 | bottom-left |
|
||||
| cmdb-assistant | cmdb-assistant | rectangle | #4A90D9 | bottom-right |
|
||||
|
||||
### MCP Servers (Green - #7CB342)
|
||||
|
||||
MCP servers are **bundled inside each plugin** that needs them.
|
||||
|
||||
| ID | Label | Type | Color | Position | Bundled In |
|
||||
|----|-------|------|-------|----------|------------|
|
||||
| gitea-mcp | Gitea MCP Server | rectangle | #7CB342 | middle-left | projman |
|
||||
| netbox-mcp | NetBox MCP Server | rectangle | #7CB342 | middle-right | cmdb-assistant |
|
||||
|
||||
### External Systems (Gray - #9E9E9E)
|
||||
|
||||
| ID | Label | Type | Color | Position |
|
||||
|----|-------|------|-------|----------|
|
||||
| gitea-instance | Gitea\n(Issues + Wiki) | cylinder | #9E9E9E | bottom-left |
|
||||
| netbox-instance | NetBox | cylinder | #9E9E9E | bottom-right |
|
||||
|
||||
### Configuration (Orange - #FF9800)
|
||||
|
||||
| ID | Label | Type | Color | Position |
|
||||
|----|-------|------|-------|----------|
|
||||
| system-config | System Config\n~/.config/claude/ | rectangle | #FF9800 | far-left |
|
||||
| project-config | Project Config\n.env | rectangle | #FF9800 | far-right |
|
||||
|
||||
---
|
||||
|
||||
## EDGES
|
||||
|
||||
### Plugin to MCP Server Connections
|
||||
|
||||
| From | To | Label | Style | Arrow |
|
||||
|------|----|-------|-------|-------|
|
||||
| projman | gitea-mcp | bundled | solid | bidirectional |
|
||||
| cmdb-assistant | netbox-mcp | bundled | solid | bidirectional |
|
||||
|
||||
### Plugin Dependencies
|
||||
|
||||
| From | To | Label | Style | Arrow |
|
||||
|------|----|-------|-------|-------|
|
||||
| projman-pmo | projman | depends on | dashed | forward |
|
||||
|
||||
### MCP Server to External System Connections
|
||||
|
||||
| From | To | Label | Style | Arrow |
|
||||
|------|----|-------|-------|-------|
|
||||
| gitea-mcp | gitea-instance | REST API | solid | forward |
|
||||
| netbox-mcp | netbox-instance | REST API | solid | forward |
|
||||
|
||||
### Configuration Connections
|
||||
|
||||
| From | To | Label | Style | Arrow |
|
||||
|------|----|-------|-------|-------|
|
||||
| system-config | gitea-mcp | credentials | dashed | forward |
|
||||
| system-config | netbox-mcp | credentials | dashed | forward |
|
||||
| project-config | gitea-mcp | repo context | dashed | forward |
|
||||
| project-config | netbox-mcp | site context | dashed | forward |
|
||||
|
||||
---
|
||||
|
||||
## GROUPS
|
||||
|
||||
| ID | Label | Contains | Style |
|
||||
|----|-------|----------|-------|
|
||||
| plugins-group | Plugins | projman, projman-pmo, project-hygiene, claude-config, cmdb-assistant | light blue border |
|
||||
| external-group | External Services | gitea-instance, netbox-instance | light gray border |
|
||||
| config-group | Configuration | system-config, project-config | light orange border |
|
||||
|
||||
---
|
||||
|
||||
## LAYOUT NOTES
|
||||
|
||||
```
|
||||
+------------------------------------------------------------------+
|
||||
| PLUGINS GROUP |
|
||||
| +----------------+ +----------------+ +-------------------+ |
|
||||
| | project- | | projman | | projman-pmo | |
|
||||
| | hygiene | | [gitea-mcp] | | (planned) | |
|
||||
| +----------------+ +-------+--------+ +-------------------+ |
|
||||
| | |
|
||||
| +----------------+ +-------------------+ |
|
||||
| | claude-config | | cmdb-assistant | |
|
||||
| | -maintainer | | [netbox-mcp] | |
|
||||
| +----------------+ +--------+----------+ |
|
||||
+------------------------------------------------------------------+
|
||||
|
|
||||
v
|
||||
+------------------------------------------------------------------+
|
||||
| EXTERNAL SERVICES GROUP |
|
||||
| +-------------------+ +-------------------+ |
|
||||
| | Gitea | | NetBox | |
|
||||
| | (Issues + Wiki) | | | |
|
||||
| +-------------------+ +-------------------+ |
|
||||
+------------------------------------------------------------------+
|
||||
|
||||
CONFIG GROUP (left side): CONFIG GROUP (right side):
|
||||
+-------------------+ +-------------------+
|
||||
| System Config | | Project Config |
|
||||
| ~/.config/claude/ | | .env |
|
||||
+-------------------+ +-------------------+
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## COLOR LEGEND
|
||||
|
||||
| Color | Hex | Meaning |
|
||||
|-------|-----|---------|
|
||||
| Blue | #4A90D9 | Plugins |
|
||||
| Green | #7CB342 | MCP Servers (bundled in plugins) |
|
||||
| Gray | #9E9E9E | External Systems |
|
||||
| Orange | #FF9800 | Configuration |
|
||||
|
||||
---
|
||||
|
||||
## ARCHITECTURE NOTES
|
||||
|
||||
- MCP servers are **bundled inside plugins** (not shared at root)
|
||||
- Gitea provides both issue tracking AND wiki (lessons learned)
|
||||
- No separate Wiki.js - all wiki functionality uses Gitea Wiki
|
||||
- Each plugin is self-contained for Claude Code caching
|
||||
@@ -98,10 +98,10 @@ If unset, all modules are enabled (backward compatible).
|
||||
|
||||
| Module | Tool Count | Description | cmdb-assistant Commands |
|
||||
|--------|------------|-------------|------------------------|
|
||||
| `dcim` | ~60 | Sites, devices, racks, interfaces, cables | `/cmdb-device`, `/cmdb-site`, `/cmdb-search`, `/cmdb-topology` |
|
||||
| `ipam` | ~40 | IP addresses, prefixes, VLANs, VRFs | `/cmdb-ip`, `/ip-conflicts`, `/cmdb-search` |
|
||||
| `virtualization` | ~20 | Clusters, VMs, VM interfaces | `/cmdb-search`, `/cmdb-audit`, `/cmdb-register` |
|
||||
| `extras` | ~12 | Tags, journal entries, audit log | `/change-audit`, `/cmdb-register` |
|
||||
| `dcim` | ~60 | Sites, devices, racks, interfaces, cables | `/cmdb device`, `/cmdb site`, `/cmdb search`, `/cmdb topology` |
|
||||
| `ipam` | ~40 | IP addresses, prefixes, VLANs, VRFs | `/cmdb ip`, `/cmdb ip-conflicts`, `/cmdb search` |
|
||||
| `virtualization` | ~20 | Clusters, VMs, VM interfaces | `/cmdb search`, `/cmdb audit`, `/cmdb register` |
|
||||
| `extras` | ~12 | Tags, journal entries, audit log | `/cmdb change-audit`, `/cmdb register` |
|
||||
| `circuits` | ~15 | Providers, circuits, terminations | — |
|
||||
| `tenancy` | ~12 | Tenants, contacts | — |
|
||||
| `vpn` | ~15 | Tunnels, IKE/IPSec policies, L2VPN | — |
|
||||
|
||||
3
plugins/clarity-assist/.claude-plugin/metadata.json
Normal file
3
plugins/clarity-assist/.claude-plugin/metadata.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"domain": "core"
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "clarity-assist",
|
||||
"version": "1.2.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Prompt optimization and requirement clarification with ND-friendly accommodations",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
@@ -18,6 +18,5 @@
|
||||
],
|
||||
"commands": [
|
||||
"./commands/"
|
||||
],
|
||||
"domain": "core"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -119,7 +119,7 @@ Track gathered information in a mental model:
|
||||
|
||||
### After Clarification
|
||||
|
||||
Produce a clear specification (see /clarify command for format).
|
||||
Produce a clear specification (see /clarity clarify command for format).
|
||||
|
||||
## Example Session
|
||||
|
||||
|
||||
@@ -18,8 +18,8 @@ This project uses the clarity-assist plugin for requirement gathering.
|
||||
|
||||
| Command | Use Case |
|
||||
|---------|----------|
|
||||
| `/clarify` | Full 4-D methodology for complex requests |
|
||||
| `/quick-clarify` | Rapid mode for simple disambiguation |
|
||||
| `/clarity clarify` | Full 4-D methodology for complex requests |
|
||||
| `/clarity quick-clarify` | Rapid mode for simple disambiguation |
|
||||
|
||||
### Communication Style
|
||||
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
# /clarify - Full Prompt Optimization
|
||||
---
|
||||
name: clarity clarify
|
||||
---
|
||||
|
||||
# /clarity clarify - Full Prompt Optimization
|
||||
|
||||
## Visual Output
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
# /quick-clarify - Rapid Clarification Mode
|
||||
---
|
||||
name: clarity quick-clarify
|
||||
---
|
||||
|
||||
# /clarity quick-clarify - Rapid Clarification Mode
|
||||
|
||||
## Visual Output
|
||||
|
||||
@@ -23,7 +27,7 @@ Single-pass clarification for requests that are mostly clear but need minor disa
|
||||
|
||||
- `skills/nd-accommodations.md` - ND-friendly question patterns
|
||||
- `skills/clarification-techniques.md` - Echo and micro-summary techniques
|
||||
- `skills/escalation-patterns.md` - When to escalate to full /clarify
|
||||
- `skills/escalation-patterns.md` - When to escalate to full `/clarity clarify`
|
||||
|
||||
## Workflow
|
||||
|
||||
@@ -37,7 +41,7 @@ No formal specification document needed. Proceed after brief confirmation, docum
|
||||
|
||||
## Escalation
|
||||
|
||||
If complexity emerges, offer to switch to full `/clarify`:
|
||||
If complexity emerges, offer to switch to full `/clarity clarify`:
|
||||
|
||||
```
|
||||
"This is more involved than it first appeared. Want me to switch
|
||||
14
plugins/clarity-assist/commands/clarity.md
Normal file
14
plugins/clarity-assist/commands/clarity.md
Normal file
@@ -0,0 +1,14 @@
|
||||
---
|
||||
description: Prompt optimization and requirement clarification
|
||||
---
|
||||
|
||||
# /clarity
|
||||
|
||||
Prompt optimization and requirement clarification with ND-friendly accommodations.
|
||||
|
||||
## Sub-commands
|
||||
|
||||
| Sub-command | Description |
|
||||
|-------------|-------------|
|
||||
| `/clarity clarify` | Full 4-D methodology for complex requests |
|
||||
| `/clarity quick-clarify` | Rapid mode for simple disambiguation |
|
||||
@@ -58,8 +58,8 @@ Our design philosophy centers on three principles:
|
||||
### 3. Customizable Verbosity
|
||||
|
||||
**Detail Levels**
|
||||
- `/clarify` - Full methodology for complex requests (more thorough, more questions)
|
||||
- `/quick-clarify` - Rapid mode for simple disambiguation (fewer questions, faster)
|
||||
- `/clarity clarify` - Full methodology for complex requests (more thorough, more questions)
|
||||
- `/clarity quick-clarify` - Rapid mode for simple disambiguation (fewer questions, faster)
|
||||
|
||||
**User Control**
|
||||
- Users can always say "that's enough detail" to end questioning early
|
||||
@@ -68,7 +68,7 @@ Our design philosophy centers on three principles:
|
||||
|
||||
### 4. Vagueness Detection
|
||||
|
||||
The `UserPromptSubmit` hook automatically detects prompts that might benefit from clarification and gently suggests using `/clarify`.
|
||||
The `UserPromptSubmit` hook automatically detects prompts that might benefit from clarification and gently suggests using `/clarity clarify`.
|
||||
|
||||
**Detection Signals**
|
||||
- Short prompts (< 10 words) without specific technical terms
|
||||
@@ -156,10 +156,10 @@ This triggers vagueness detection because:
|
||||
- No specific technical context
|
||||
- No measurable outcome
|
||||
|
||||
### After: Clarified with /clarify
|
||||
### After: Clarified with /clarity clarify
|
||||
|
||||
```
|
||||
User: /clarify Make the app faster
|
||||
User: /clarity clarify Make the app faster
|
||||
|
||||
Claude: Let me help clarify what kind of performance improvements you're looking for.
|
||||
|
||||
@@ -235,7 +235,7 @@ Optimize initial page load time to under 2 seconds by addressing bundle size and
|
||||
For simpler requests that just need minor disambiguation:
|
||||
|
||||
```
|
||||
User: /quick-clarify Add a delete button to the user list
|
||||
User: /clarity quick-clarify Add a delete button to the user list
|
||||
|
||||
Claude: I'll add a delete button to each row in the user list.
|
||||
|
||||
@@ -286,14 +286,14 @@ export CLARITY_ASSIST_VAGUENESS_THRESHOLD=0.8
|
||||
|
||||
### If You're Feeling Overwhelmed
|
||||
|
||||
- Use `/quick-clarify` instead of `/clarify` for faster interactions
|
||||
- Use `/clarity quick-clarify` instead of `/clarity clarify` for faster interactions
|
||||
- Say "let's focus on just one thing" to narrow scope
|
||||
- Ask to "pause and summarize" at any point
|
||||
- It's OK to say "I don't know" - the plugin will offer concrete alternatives
|
||||
|
||||
### If You Have Executive Function Challenges
|
||||
|
||||
- Start with `/clarify` even for tasks you think are simple - it helps with planning
|
||||
- Start with `/clarity clarify` even for tasks you think are simple - it helps with planning
|
||||
- The structured specification can serve as a checklist
|
||||
- Use the scope boundaries to prevent scope creep
|
||||
|
||||
|
||||
@@ -240,7 +240,7 @@ if (( $(echo "$SCORE >= $THRESHOLD" | bc -l) )); then
|
||||
|
||||
# Gentle, non-blocking suggestion
|
||||
echo "$PREFIX Your prompt could benefit from more clarity."
|
||||
echo "$PREFIX Consider running /clarify to refine your request."
|
||||
echo "$PREFIX Consider running /clarity clarify to refine your request."
|
||||
echo "$PREFIX (Vagueness score: ${SCORE_PCT}% - this is a suggestion, not a block)"
|
||||
|
||||
# Additional RFC suggestion if feature request detected
|
||||
|
||||
@@ -40,7 +40,7 @@ add the other parts. Sound good?"
|
||||
|
||||
## Choosing Initial Mode
|
||||
|
||||
### Use /quick-clarify When
|
||||
### Use /clarity quick-clarify When
|
||||
|
||||
- Request is fairly clear, just one or two ambiguities
|
||||
- User is in a hurry
|
||||
@@ -48,7 +48,7 @@ add the other parts. Sound good?"
|
||||
- Simple feature additions or bug fixes
|
||||
- Confidence is high (>90%)
|
||||
|
||||
### Use /clarify When
|
||||
### Use /clarity clarify When
|
||||
|
||||
- Complex multi-step requests
|
||||
- Requirements with multiple possible interpretations
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"domain": "core"
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "claude-config-maintainer",
|
||||
"version": "1.2.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Maintains and optimizes CLAUDE.md and settings.local.json configuration files for Claude Code projects",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
@@ -20,6 +20,5 @@
|
||||
],
|
||||
"commands": [
|
||||
"./commands/"
|
||||
],
|
||||
"domain": "core"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -96,13 +96,13 @@ Use this mapping to identify active plugins:
|
||||
| `gitea` | projman |
|
||||
| `netbox` | cmdb-assistant |
|
||||
|
||||
Also check for hook-based plugins (project-hygiene uses `PostToolUse` hooks).
|
||||
Also check for hook-based plugins (code-sentinel, git-flow, cmdb-assistant use `PreToolUse` safety hooks; clarity-assist uses `UserPromptSubmit` quality hook).
|
||||
|
||||
**Step 2: Check CLAUDE.md for Plugin References**
|
||||
|
||||
For each detected plugin, search CLAUDE.md for:
|
||||
- Plugin name mention (e.g., "projman", "cmdb-assistant")
|
||||
- Command references (e.g., `/sprint-plan`, `/cmdb-search`)
|
||||
- Command references (e.g., `/sprint plan`, `/cmdb search`)
|
||||
- MCP tool mentions (e.g., `list_issues`, `dcim_list_devices`)
|
||||
|
||||
**Step 3: Load Integration Snippets**
|
||||
@@ -151,7 +151,7 @@ Evaluate using `skills/settings-optimization.md`:
|
||||
Before recommending auto-allow patterns, verify active review layers:
|
||||
|
||||
1. Read `plugins/*/hooks/hooks.json` for each installed plugin
|
||||
2. Map hook types (PreToolUse, PostToolUse) to tool matchers (Write, Edit, Bash)
|
||||
2. Map hook types (PreToolUse, UserPromptSubmit) to tool matchers (Write, Edit, MultiEdit, Bash, MCP patterns)
|
||||
3. Confirm plugins are listed in `.claude-plugin/marketplace.json`
|
||||
4. Only recommend auto-allow for scopes covered by ≥2 verified review layers
|
||||
|
||||
|
||||
@@ -6,14 +6,14 @@ This project uses the **claude-config-maintainer** plugin to analyze and optimiz
|
||||
|
||||
| Command | Description |
|
||||
|---------|-------------|
|
||||
| `/config-analyze` | Analyze CLAUDE.md for optimization opportunities with 100-point scoring |
|
||||
| `/config-optimize` | Automatically optimize CLAUDE.md structure and content |
|
||||
| `/config-init` | Initialize a new CLAUDE.md file for a project |
|
||||
| `/config-diff` | Track CLAUDE.md changes over time with behavioral impact analysis |
|
||||
| `/config-lint` | Lint CLAUDE.md for anti-patterns and best practices (31 rules) |
|
||||
| `/config-audit-settings` | Audit settings.local.json permissions with 100-point scoring |
|
||||
| `/config-optimize-settings` | Optimize permission patterns and apply named profiles |
|
||||
| `/config-permissions-map` | Visual map of review layers and permission coverage |
|
||||
| `/claude-config analyze` | Analyze CLAUDE.md for optimization opportunities with 100-point scoring |
|
||||
| `/claude-config optimize` | Automatically optimize CLAUDE.md structure and content |
|
||||
| `/claude-config init` | Initialize a new CLAUDE.md file for a project |
|
||||
| `/claude-config diff` | Track CLAUDE.md changes over time with behavioral impact analysis |
|
||||
| `/claude-config lint` | Lint CLAUDE.md for anti-patterns and best practices (31 rules) |
|
||||
| `/claude-config audit-settings` | Audit settings.local.json permissions with 100-point scoring |
|
||||
| `/claude-config optimize-settings` | Optimize permission patterns and apply named profiles |
|
||||
| `/claude-config permissions-map` | Visual map of review layers and permission coverage |
|
||||
|
||||
### CLAUDE.md Scoring System
|
||||
|
||||
@@ -47,10 +47,10 @@ The settings audit uses a 100-point scoring system across four categories:
|
||||
|
||||
### Usage Guidelines
|
||||
|
||||
- Run `/config-analyze` periodically to assess CLAUDE.md quality
|
||||
- Run `/config-audit-settings` to check permission efficiency
|
||||
- Run `/claude-config analyze` periodically to assess CLAUDE.md quality
|
||||
- Run `/claude-config audit-settings` to check permission efficiency
|
||||
- Target a score of **70+/100** for effective Claude Code operation
|
||||
- Address HIGH priority issues first when optimizing
|
||||
- Use `/config-init` when setting up new projects to start with best practices
|
||||
- Use `/config-permissions-map` to visualize review layer coverage
|
||||
- Use `/claude-config init` when setting up new projects to start with best practices
|
||||
- Use `/claude-config permissions-map` to visualize review layer coverage
|
||||
- Re-analyze after making changes to verify improvements
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: claude-config analyze
|
||||
description: Analyze CLAUDE.md for optimization opportunities and plugin integration
|
||||
---
|
||||
|
||||
# Analyze CLAUDE.md
|
||||
# /claude-config analyze
|
||||
|
||||
Analyze your CLAUDE.md and provide a scored report with recommendations.
|
||||
|
||||
@@ -20,7 +21,7 @@ Display: `CONFIG-MAINTAINER - CLAUDE.md Analysis`
|
||||
## Usage
|
||||
|
||||
```
|
||||
/config-analyze
|
||||
/claude-config analyze
|
||||
```
|
||||
|
||||
## Workflow
|
||||
@@ -1,9 +1,9 @@
|
||||
---
|
||||
name: config-audit-settings
|
||||
name: claude-config audit-settings
|
||||
description: Audit settings.local.json for permission optimization opportunities
|
||||
---
|
||||
|
||||
# /config-audit-settings
|
||||
# /claude-config audit-settings
|
||||
|
||||
Audit Claude Code `settings.local.json` permissions with 100-point scoring across redundancy, coverage, safety alignment, and profile fit.
|
||||
|
||||
@@ -24,8 +24,8 @@ Before executing, load:
|
||||
## Usage
|
||||
|
||||
```
|
||||
/config-audit-settings # Full audit with recommendations
|
||||
/config-audit-settings --diagram # Include Mermaid diagram of review layer coverage
|
||||
/claude-config audit-settings # Full audit with recommendations
|
||||
/claude-config audit-settings --diagram # Include Mermaid diagram of review layer coverage
|
||||
```
|
||||
|
||||
## Workflow
|
||||
@@ -62,21 +62,20 @@ Using `settings-optimization.md` Section 3, detect:
|
||||
|
||||
### Step 4: Detect Active Marketplace Hooks
|
||||
|
||||
Read `plugins/*/hooks/hooks.json` files:
|
||||
Read `plugins/*/hooks/hooks.json` files (post-Decision #29 — only PreToolUse safety hooks and UserPromptSubmit quality hooks exist):
|
||||
|
||||
```bash
|
||||
# Check each plugin's hooks
|
||||
plugins/code-sentinel/hooks/hooks.json # PreToolUse security
|
||||
plugins/doc-guardian/hooks/hooks.json # PostToolUse drift detection
|
||||
plugins/project-hygiene/hooks/hooks.json # PostToolUse cleanup
|
||||
plugins/data-platform/hooks/hooks.json # PostToolUse schema diff
|
||||
plugins/contract-validator/hooks/hooks.json # Plugin validation
|
||||
# Check each plugin's hooks (exhaustive post-v8.1.0 inventory)
|
||||
plugins/code-sentinel/hooks/hooks.json # PreToolUse: Write|Edit|MultiEdit → security-check.sh
|
||||
plugins/git-flow/hooks/hooks.json # PreToolUse: Bash → branch-check.sh, commit-msg-check.sh
|
||||
plugins/cmdb-assistant/hooks/hooks.json # PreToolUse: MCP create/update → validate-input.sh
|
||||
plugins/clarity-assist/hooks/hooks.json # UserPromptSubmit → vagueness-check.sh
|
||||
```
|
||||
|
||||
Parse each to identify:
|
||||
- Hook event type (PreToolUse, PostToolUse)
|
||||
- Tool matchers (Write, Edit, MultiEdit, Bash)
|
||||
- Whether hook is command type (reliable) or prompt type (unreliable)
|
||||
- Hook event type (PreToolUse or UserPromptSubmit only — no other types should exist)
|
||||
- Tool matchers (Write, Edit, MultiEdit, Bash, MCP patterns)
|
||||
- Whether hook is command type (must be — prompt type is forbidden)
|
||||
|
||||
### Step 5: Map Review Layers to Directory Scopes
|
||||
|
||||
@@ -118,9 +117,9 @@ Issues Found:
|
||||
|
||||
Active Review Layers Detected:
|
||||
✓ code-sentinel (PreToolUse: Write|Edit|MultiEdit)
|
||||
✓ doc-guardian (PostToolUse: Write|Edit|MultiEdit)
|
||||
✓ project-hygiene (PostToolUse: Write|Edit)
|
||||
✗ data-platform schema-diff (not detected)
|
||||
✓ git-flow (PreToolUse: Bash — branch naming + commit format)
|
||||
✓ cmdb-assistant (PreToolUse: MCP create/update)
|
||||
✓ clarity-assist (UserPromptSubmit: vagueness detection)
|
||||
|
||||
Recommendations:
|
||||
1. [specific action with pattern]
|
||||
@@ -128,9 +127,9 @@ Recommendations:
|
||||
...
|
||||
|
||||
Follow-Up Actions:
|
||||
1. Run /config-optimize-settings to apply recommendations
|
||||
2. Run /config-optimize-settings --dry-run to preview first
|
||||
3. Run /config-optimize-settings --profile=reviewed to apply profile
|
||||
1. Run /claude-config optimize-settings to apply recommendations
|
||||
2. Run /claude-config optimize-settings --dry-run to preview first
|
||||
3. Run /claude-config optimize-settings --profile=reviewed to apply profile
|
||||
```
|
||||
|
||||
## Diagram Output (--diagram flag)
|
||||
@@ -146,7 +145,7 @@ When `--diagram` is specified, generate a Mermaid flowchart showing:
|
||||
|
||||
**Color coding:**
|
||||
- PreToolUse hooks: Blue
|
||||
- PostToolUse hooks: Green
|
||||
- UserPromptSubmit hooks: Green
|
||||
- Sprint Approval: Amber
|
||||
- PR Review: Purple
|
||||
|
||||
@@ -161,7 +160,7 @@ flowchart LR
|
||||
|
||||
subgraph Review Layers
|
||||
CS[code-sentinel]
|
||||
DG[doc-guardian]
|
||||
GF[git-flow]
|
||||
PR[pr-review]
|
||||
end
|
||||
|
||||
@@ -172,18 +171,17 @@ flowchart LR
|
||||
end
|
||||
|
||||
W --> CS
|
||||
W --> DG
|
||||
E --> CS
|
||||
E --> DG
|
||||
B --> GF
|
||||
CS --> A
|
||||
DG --> A
|
||||
GF --> A
|
||||
B --> P
|
||||
|
||||
classDef preHook fill:#e3f2fd
|
||||
classDef postHook fill:#e8f5e9
|
||||
classDef userPrompt fill:#e8f5e9
|
||||
classDef prReview fill:#f3e5f5
|
||||
class CS preHook
|
||||
class DG postHook
|
||||
class GF preHook
|
||||
class PR prReview
|
||||
```
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: claude-config diff
|
||||
description: Show diff between current CLAUDE.md and last commit
|
||||
---
|
||||
|
||||
# Compare CLAUDE.md Changes
|
||||
# /claude-config diff
|
||||
|
||||
Show differences between CLAUDE.md versions to track configuration drift.
|
||||
|
||||
@@ -18,10 +19,10 @@ Display: `CONFIG-MAINTAINER - CLAUDE.md Diff`
|
||||
## Usage
|
||||
|
||||
```
|
||||
/config-diff # Working vs last commit
|
||||
/config-diff --commit=abc1234 # Working vs specific commit
|
||||
/config-diff --from=v1.0 --to=v2.0 # Compare two commits
|
||||
/config-diff --section="Critical Rules" # Specific section only
|
||||
/claude-config diff # Working vs last commit
|
||||
/claude-config diff --commit=abc1234 # Working vs specific commit
|
||||
/claude-config diff --from=v1.0 --to=v2.0 # Compare two commits
|
||||
/claude-config diff --section="Critical Rules" # Specific section only
|
||||
```
|
||||
|
||||
## Workflow
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: claude-config init
|
||||
description: Initialize a new CLAUDE.md file for a project
|
||||
---
|
||||
|
||||
# Initialize CLAUDE.md
|
||||
# /claude-config init
|
||||
|
||||
Create a new CLAUDE.md file tailored to your project.
|
||||
|
||||
@@ -19,9 +20,9 @@ Display: `CONFIG-MAINTAINER - CLAUDE.md Initialization`
|
||||
## Usage
|
||||
|
||||
```
|
||||
/config-init # Interactive
|
||||
/config-init --minimal # Minimal version
|
||||
/config-init --comprehensive # Detailed version
|
||||
/claude-config init # Interactive
|
||||
/claude-config init --minimal # Minimal version
|
||||
/claude-config init --comprehensive # Detailed version
|
||||
```
|
||||
|
||||
## Workflow
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: claude-config lint
|
||||
description: Lint CLAUDE.md for common anti-patterns and best practices
|
||||
---
|
||||
|
||||
# Lint CLAUDE.md
|
||||
# /claude-config lint
|
||||
|
||||
Check CLAUDE.md against best practices and detect common anti-patterns.
|
||||
|
||||
@@ -18,9 +19,9 @@ Display: `CONFIG-MAINTAINER - CLAUDE.md Lint`
|
||||
## Usage
|
||||
|
||||
```
|
||||
/config-lint # Full lint
|
||||
/config-lint --fix # Auto-fix issues
|
||||
/config-lint --rules=security # Check specific category
|
||||
/claude-config lint # Full lint
|
||||
/claude-config lint --fix # Auto-fix issues
|
||||
/claude-config lint --rules=security # Check specific category
|
||||
```
|
||||
|
||||
## Workflow
|
||||
@@ -1,9 +1,9 @@
|
||||
---
|
||||
name: config-optimize-settings
|
||||
name: claude-config optimize-settings
|
||||
description: Optimize settings.local.json permissions based on audit recommendations
|
||||
---
|
||||
|
||||
# /config-optimize-settings
|
||||
# /claude-config optimize-settings
|
||||
|
||||
Optimize Claude Code `settings.local.json` permission patterns and apply named profiles.
|
||||
|
||||
@@ -25,10 +25,10 @@ Before executing, load:
|
||||
## Usage
|
||||
|
||||
```
|
||||
/config-optimize-settings # Apply audit recommendations
|
||||
/config-optimize-settings --dry-run # Preview only, no changes
|
||||
/config-optimize-settings --profile=reviewed # Apply named profile
|
||||
/config-optimize-settings --consolidate-only # Only merge/dedupe, no new rules
|
||||
/claude-config optimize-settings # Apply audit recommendations
|
||||
/claude-config optimize-settings --dry-run # Preview only, no changes
|
||||
/claude-config optimize-settings --profile=reviewed # Apply named profile
|
||||
/claude-config optimize-settings --consolidate-only # Only merge/dedupe, no new rules
|
||||
```
|
||||
|
||||
## Options
|
||||
@@ -44,7 +44,7 @@ Before executing, load:
|
||||
|
||||
### Step 1: Run Audit Analysis
|
||||
|
||||
Execute the same analysis as `/config-audit-settings`:
|
||||
Execute the same analysis as `/claude-config audit-settings`:
|
||||
1. Locate settings file
|
||||
2. Parse permission arrays
|
||||
3. Detect issues (duplicates, subsets, merge candidates, etc.)
|
||||
@@ -171,7 +171,7 @@ Switching to reviewed profile...
|
||||
|
||||
Prerequisites verified:
|
||||
✓ code-sentinel hook active (PreToolUse)
|
||||
✓ doc-guardian hook active (PostToolUse)
|
||||
✓ git-flow hook active (PreToolUse)
|
||||
✓ 2+ review layers detected
|
||||
|
||||
This profile:
|
||||
@@ -214,7 +214,7 @@ DRY RUN - No changes will be made
|
||||
[... preview content ...]
|
||||
|
||||
To apply these changes, run:
|
||||
/config-optimize-settings
|
||||
/claude-config optimize-settings
|
||||
```
|
||||
|
||||
### Applied Output
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: claude-config optimize
|
||||
description: Optimize CLAUDE.md structure and content
|
||||
---
|
||||
|
||||
# Optimize CLAUDE.md
|
||||
# /claude-config optimize
|
||||
|
||||
Automatically optimize CLAUDE.md based on best practices.
|
||||
|
||||
@@ -20,9 +21,9 @@ Display: `CONFIG-MAINTAINER - CLAUDE.md Optimization`
|
||||
## Usage
|
||||
|
||||
```
|
||||
/config-optimize # Full optimization
|
||||
/config-optimize --condense # Reduce verbosity
|
||||
/config-optimize --dry-run # Preview only
|
||||
/claude-config optimize # Full optimization
|
||||
/claude-config optimize --condense # Reduce verbosity
|
||||
/claude-config optimize --dry-run # Preview only
|
||||
```
|
||||
|
||||
## Workflow
|
||||
@@ -1,9 +1,9 @@
|
||||
---
|
||||
name: config-permissions-map
|
||||
name: claude-config permissions-map
|
||||
description: Generate visual map of review layers and permission coverage
|
||||
---
|
||||
|
||||
# /config-permissions-map
|
||||
# /claude-config permissions-map
|
||||
|
||||
Generate a Mermaid diagram showing the relationship between file operations, review layers, and permission status.
|
||||
|
||||
@@ -26,8 +26,8 @@ Also read: `/mnt/skills/user/mermaid-diagrams/SKILL.md` (for diagram requirement
|
||||
## Usage
|
||||
|
||||
```
|
||||
/config-permissions-map # Generate and display diagram
|
||||
/config-permissions-map --save # Save diagram to .mermaid file
|
||||
/claude-config permissions-map # Generate and display diagram
|
||||
/claude-config permissions-map --save # Save diagram to .mermaid file
|
||||
```
|
||||
|
||||
## Workflow
|
||||
@@ -38,15 +38,13 @@ Read all plugin hooks from the marketplace:
|
||||
|
||||
```
|
||||
plugins/code-sentinel/hooks/hooks.json
|
||||
plugins/doc-guardian/hooks/hooks.json
|
||||
plugins/project-hygiene/hooks/hooks.json
|
||||
plugins/data-platform/hooks/hooks.json
|
||||
plugins/contract-validator/hooks/hooks.json
|
||||
plugins/git-flow/hooks/hooks.json
|
||||
plugins/cmdb-assistant/hooks/hooks.json
|
||||
plugins/clarity-assist/hooks/hooks.json
|
||||
```
|
||||
|
||||
For each hook, extract:
|
||||
- Event type (PreToolUse, PostToolUse, SessionStart, etc.)
|
||||
- Event type (PreToolUse, UserPromptSubmit)
|
||||
- Tool matchers (Write, Edit, MultiEdit, Bash patterns)
|
||||
- Hook command/script
|
||||
|
||||
@@ -54,12 +52,13 @@ For each hook, extract:
|
||||
|
||||
Create a mapping of which review layers cover which operations:
|
||||
|
||||
| Operation | PreToolUse Hooks | PostToolUse Hooks | Other Gates |
|
||||
|-----------|------------------|-------------------|-------------|
|
||||
| Write | code-sentinel | doc-guardian, project-hygiene | PR review |
|
||||
| Edit | code-sentinel | doc-guardian, project-hygiene | PR review |
|
||||
| MultiEdit | code-sentinel | doc-guardian | PR review |
|
||||
| Bash(git *) | git-flow | — | — |
|
||||
| Operation | PreToolUse Hooks | Other Gates |
|
||||
|-----------|------------------|-------------|
|
||||
| Write | code-sentinel | PR review |
|
||||
| Edit | code-sentinel | PR review |
|
||||
| MultiEdit | code-sentinel | PR review |
|
||||
| Bash(git *) | git-flow | — |
|
||||
| MCP(netbox create/update) | cmdb-assistant | — |
|
||||
|
||||
### Step 3: Read Current Permissions
|
||||
|
||||
@@ -94,13 +93,7 @@ flowchart LR
|
||||
direction TB
|
||||
CS[code-sentinel<br/>Security Scan]
|
||||
GF[git-flow<br/>Branch Check]
|
||||
end
|
||||
|
||||
subgraph post[PostToolUse Hooks]
|
||||
direction TB
|
||||
DG[doc-guardian<br/>Drift Detection]
|
||||
PH[project-hygiene<br/>Cleanup]
|
||||
DP[data-platform<br/>Schema Diff]
|
||||
CA[clarity-assist<br/>Prompt Quality]
|
||||
end
|
||||
|
||||
subgraph perm[Permission Status]
|
||||
@@ -111,26 +104,22 @@ flowchart LR
|
||||
end
|
||||
|
||||
W -->|intercepted| CS
|
||||
W -->|tracked| DG
|
||||
E -->|intercepted| CS
|
||||
E -->|tracked| DG
|
||||
BG -->|checked| GF
|
||||
|
||||
CS -->|passed| AA
|
||||
DG -->|logged| AA
|
||||
GF -->|valid| AA
|
||||
BO -->|no hook| PR
|
||||
|
||||
classDef preHook fill:#e3f2fd,stroke:#1976d2
|
||||
classDef postHook fill:#e8f5e9,stroke:#388e3c
|
||||
classDef sprint fill:#fff3e0,stroke:#f57c00
|
||||
classDef quality fill:#fff3e0,stroke:#f57c00
|
||||
classDef prReview fill:#f3e5f5,stroke:#7b1fa2
|
||||
classDef allowed fill:#c8e6c9,stroke:#2e7d32
|
||||
classDef prompted fill:#fff9c4,stroke:#f9a825
|
||||
classDef denied fill:#ffcdd2,stroke:#c62828
|
||||
|
||||
class CS,GF preHook
|
||||
class DG,PH,DP postHook
|
||||
class CA quality
|
||||
class AA allowed
|
||||
class PR prompted
|
||||
class DN denied
|
||||
@@ -195,11 +184,10 @@ Review Layer Status
|
||||
PreToolUse Hooks (intercept before operation):
|
||||
✓ code-sentinel — Write, Edit, MultiEdit
|
||||
✓ git-flow — Bash(git checkout *), Bash(git commit *)
|
||||
✓ cmdb-assistant — MCP(netbox create/update)
|
||||
|
||||
PostToolUse Hooks (track after operation):
|
||||
✓ doc-guardian — Write, Edit, MultiEdit
|
||||
✓ project-hygiene — Write, Edit
|
||||
✗ data-platform — not detected
|
||||
UserPromptSubmit Hooks (check prompt quality):
|
||||
✓ clarity-assist — vagueness detection
|
||||
|
||||
Other Review Gates:
|
||||
✓ Sprint Approval (projman milestone workflow)
|
||||
@@ -241,7 +229,6 @@ To view:
|
||||
| Element | Color | Hex |
|
||||
|---------|-------|-----|
|
||||
| PreToolUse hooks | Blue | #e3f2fd |
|
||||
| PostToolUse hooks | Green | #e8f5e9 |
|
||||
| Sprint/Planning gates | Amber | #fff3e0 |
|
||||
| PR Review | Purple | #f3e5f5 |
|
||||
| Auto-allowed | Light green | #c8e6c9 |
|
||||
20
plugins/claude-config-maintainer/commands/claude-config.md
Normal file
20
plugins/claude-config-maintainer/commands/claude-config.md
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
description: CLAUDE.md and settings optimization
|
||||
---
|
||||
|
||||
# /claude-config
|
||||
|
||||
CLAUDE.md and settings.local.json optimization for Claude Code projects.
|
||||
|
||||
## Sub-commands
|
||||
|
||||
| Sub-command | Description |
|
||||
|-------------|-------------|
|
||||
| `/claude-config analyze` | Analyze CLAUDE.md for optimization opportunities |
|
||||
| `/claude-config optimize` | Optimize CLAUDE.md structure with preview/backup |
|
||||
| `/claude-config init` | Initialize new CLAUDE.md for a project |
|
||||
| `/claude-config diff` | Track CLAUDE.md changes over time with behavioral impact |
|
||||
| `/claude-config lint` | Lint CLAUDE.md for anti-patterns and best practices |
|
||||
| `/claude-config audit-settings` | Audit settings.local.json permissions (100-point score) |
|
||||
| `/claude-config optimize-settings` | Optimize permissions (profiles, consolidation, dry-run) |
|
||||
| `/claude-config permissions-map` | Visual review layer + permission coverage map |
|
||||
@@ -1,68 +0,0 @@
|
||||
#!/bin/bash
|
||||
# claude-config-maintainer: enforce mandatory behavior rules
|
||||
# Checks if CLAUDE.md has the rules, adds them if missing
|
||||
|
||||
PREFIX="[claude-config-maintainer]"
|
||||
|
||||
# Find CLAUDE.md in current directory or parent
|
||||
CLAUDE_MD=""
|
||||
if [ -f "./CLAUDE.md" ]; then
|
||||
CLAUDE_MD="./CLAUDE.md"
|
||||
elif [ -f "../CLAUDE.md" ]; then
|
||||
CLAUDE_MD="../CLAUDE.md"
|
||||
fi
|
||||
|
||||
# If no CLAUDE.md found, exit silently
|
||||
if [ -z "$CLAUDE_MD" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Check if mandatory rules exist
|
||||
if grep -q "MANDATORY BEHAVIOR RULES" "$CLAUDE_MD" 2>/dev/null; then
|
||||
# Rules exist, all good
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Rules missing - add them
|
||||
RULES='## ⛔ MANDATORY BEHAVIOR RULES - READ FIRST
|
||||
|
||||
**These rules are NON-NEGOTIABLE. Violating them wastes the user'\''s time and money.**
|
||||
|
||||
### 1. WHEN USER ASKS YOU TO CHECK SOMETHING - CHECK EVERYTHING
|
||||
- Search ALL locations, not just where you think it is
|
||||
- Check cache directories: `~/.claude/plugins/cache/`
|
||||
- Check installed: `~/.claude/plugins/marketplaces/`
|
||||
- Check source directories
|
||||
- **NEVER say "no" or "that'\''s not the issue" without exhaustive verification**
|
||||
|
||||
### 2. WHEN USER SAYS SOMETHING IS WRONG - BELIEVE THEM
|
||||
- The user knows their system better than you
|
||||
- Investigate thoroughly before disagreeing
|
||||
- **Your confidence is often wrong. User'\''s instincts are often right.**
|
||||
|
||||
### 3. NEVER SAY "DONE" WITHOUT VERIFICATION
|
||||
- Run the actual command/script to verify
|
||||
- Show the output to the user
|
||||
- **"Done" means VERIFIED WORKING, not "I made changes"**
|
||||
|
||||
### 4. SHOW EXACTLY WHAT USER ASKS FOR
|
||||
- If user asks for messages, show the MESSAGES
|
||||
- If user asks for code, show the CODE
|
||||
- **Do not interpret or summarize unless asked**
|
||||
|
||||
**FAILURE TO FOLLOW THESE RULES = WASTED USER TIME = UNACCEPTABLE**
|
||||
|
||||
---
|
||||
|
||||
'
|
||||
|
||||
# Create temp file with rules + existing content
|
||||
{
|
||||
head -1 "$CLAUDE_MD"
|
||||
echo ""
|
||||
echo "$RULES"
|
||||
tail -n +2 "$CLAUDE_MD"
|
||||
} > "${CLAUDE_MD}.tmp"
|
||||
|
||||
mv "${CLAUDE_MD}.tmp" "$CLAUDE_MD"
|
||||
echo "$PREFIX Added mandatory behavior rules to CLAUDE.md"
|
||||
@@ -1,15 +0,0 @@
|
||||
{
|
||||
"hooks": {
|
||||
"SessionStart": [
|
||||
{
|
||||
"matcher": "",
|
||||
"hooks": [
|
||||
{
|
||||
"type": "command",
|
||||
"command": "${CLAUDE_PLUGIN_ROOT}/hooks/enforce-rules.sh"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -6,7 +6,7 @@ This skill defines how to analyze and present CLAUDE.md differences.
|
||||
|
||||
| Mode | Command | Description |
|
||||
|------|---------|-------------|
|
||||
| Working vs HEAD | `/config-diff` | Uncommitted changes |
|
||||
| Working vs HEAD | `/claude-config diff` | Uncommitted changes |
|
||||
| Working vs Commit | `--commit=REF` | Changes since specific point |
|
||||
| Commit to Commit | `--from=X --to=Y` | Historical comparison |
|
||||
| Branch Comparison | `--branch=NAME` | Cross-branch differences |
|
||||
|
||||
@@ -119,14 +119,14 @@ This is the key section. Map upstream review processes to directory scopes:
|
||||
|
||||
| Directory Scope | Active Review Layers | Auto-Allow Recommendation |
|
||||
|----------------|---------------------|---------------------------|
|
||||
| `plugins/*/commands/*.md` | Sprint approval, PR review, doc-guardian PostToolUse | `Write(plugins/*/commands/**)` — 3 layers cover this |
|
||||
| `plugins/*/commands/*.md` | Sprint approval, PR review | `Write(plugins/*/commands/**)` — 2 layers cover this |
|
||||
| `plugins/*/skills/*.md` | Sprint approval, PR review | `Write(plugins/*/skills/**)` — 2 layers |
|
||||
| `plugins/*/agents/*.md` | Sprint approval, PR review, contract-validator | `Write(plugins/*/agents/**)` — 3 layers |
|
||||
| `plugins/*/agents/*.md` | Sprint approval, PR review | `Write(plugins/*/agents/**)` — 2 layers |
|
||||
| `mcp-servers/*/mcp_server/*.py` | Code-sentinel PreToolUse, sprint approval, PR review | `Write(mcp-servers/**)` + `Edit(mcp-servers/**)` — sentinel catches secrets |
|
||||
| `docs/*.md` | Doc-guardian PostToolUse, PR review | `Write(docs/**)` + `Edit(docs/**)` |
|
||||
| `docs/*.md` | PR review | `Write(docs/**)` + `Edit(docs/**)` — with caution flag |
|
||||
| `.claude-plugin/*.json` | validate-marketplace.sh, PR review | `Write(.claude-plugin/**)` |
|
||||
| `scripts/*.sh` | Code-sentinel, PR review | `Write(scripts/**)` — with caution flag |
|
||||
| `CLAUDE.md`, `CHANGELOG.md`, `README.md` | Doc-guardian, PR review | `Write(CLAUDE.md)`, `Write(CHANGELOG.md)`, `Write(README.md)` |
|
||||
| `CLAUDE.md`, `CHANGELOG.md`, `README.md` | PR review | `Write(CLAUDE.md)`, `Write(CHANGELOG.md)`, `Write(README.md)` |
|
||||
|
||||
### Critical Rule: Hook Verification
|
||||
|
||||
@@ -134,10 +134,11 @@ This is the key section. Map upstream review processes to directory scopes:
|
||||
|
||||
Read the relevant `plugins/*/hooks/hooks.json` file:
|
||||
- If code-sentinel's hook is missing or disabled, do NOT recommend auto-allowing `mcp-servers/**` writes
|
||||
- If doc-guardian's hook is missing, do NOT recommend auto-allowing `docs/**` without caution
|
||||
- If git-flow's hook is missing, do NOT recommend auto-allowing `Bash(git *)` operations
|
||||
- If cmdb-assistant's hook is missing, do NOT recommend auto-allowing MCP netbox create/update operations
|
||||
- Count the number of verified review layers before making recommendations
|
||||
|
||||
**Minimum threshold:** Recommend auto-allow only for scopes covered by ≥2 verified review layers.
|
||||
**Minimum threshold:** Only recommend auto-allow for scopes with ≥2 verified review layers.
|
||||
|
||||
---
|
||||
|
||||
@@ -333,10 +334,9 @@ To verify which review layers are active, read these files:
|
||||
| File | Hook Type | Tool Matcher | Purpose |
|
||||
|------|-----------|--------------|---------|
|
||||
| `plugins/code-sentinel/hooks/hooks.json` | PreToolUse | Write\|Edit\|MultiEdit | Blocks hardcoded secrets |
|
||||
| `plugins/doc-guardian/hooks/hooks.json` | PostToolUse | Write\|Edit\|MultiEdit | Tracks documentation drift |
|
||||
| `plugins/project-hygiene/hooks/hooks.json` | PostToolUse | Write\|Edit | Cleanup tracking |
|
||||
| `plugins/data-platform/hooks/hooks.json` | PostToolUse | Edit\|Write | Schema diff detection |
|
||||
| `plugins/cmdb-assistant/hooks/hooks.json` | PreToolUse | (if exists) | Input validation |
|
||||
| `plugins/git-flow/hooks/hooks.json` | PreToolUse | Bash | Branch naming + commit format |
|
||||
| `plugins/cmdb-assistant/hooks/hooks.json` | PreToolUse | MCP create/update | NetBox input validation |
|
||||
| `plugins/clarity-assist/hooks/hooks.json` | UserPromptSubmit | (all prompts) | Vagueness detection |
|
||||
|
||||
### Verification Process
|
||||
|
||||
@@ -351,14 +351,19 @@ To verify which review layers are active, read these files:
|
||||
|
||||
```json
|
||||
{
|
||||
"hooks": [
|
||||
{
|
||||
"event": "PreToolUse",
|
||||
"type": "command",
|
||||
"command": "./hooks/security-check.sh",
|
||||
"tools": ["Write", "Edit", "MultiEdit"]
|
||||
}
|
||||
]
|
||||
"hooks": {
|
||||
"PreToolUse": [
|
||||
{
|
||||
"matcher": "Write|Edit|MultiEdit",
|
||||
"hooks": [
|
||||
{
|
||||
"type": "command",
|
||||
"command": "./hooks/security-check.sh"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
@@ -370,8 +375,8 @@ Count verified review layers for each scope:
|
||||
|-------|-------------|
|
||||
| Sprint approval | Check if projman plugin is installed (milestone workflow) |
|
||||
| PR review | Check if pr-review plugin is installed |
|
||||
| code-sentinel PreToolUse | hooks.json exists with PreToolUse on Write/Edit |
|
||||
| doc-guardian PostToolUse | hooks.json exists with PostToolUse on Write/Edit |
|
||||
| contract-validator | Plugin installed + hooks present |
|
||||
| code-sentinel PreToolUse | hooks.json exists with PreToolUse on Write/Edit/MultiEdit |
|
||||
| git-flow PreToolUse | hooks.json exists with PreToolUse on Bash |
|
||||
| cmdb-assistant PreToolUse | hooks.json exists with PreToolUse on MCP create/update |
|
||||
|
||||
**Recommendation threshold:** Only recommend auto-allow for scopes with ≥2 verified layers.
|
||||
|
||||
@@ -12,56 +12,56 @@ This skill defines the standard visual header for claude-config-maintainer comma
|
||||
|
||||
## Command-Specific Headers
|
||||
|
||||
### /config-analyze
|
||||
### /claude-config analyze
|
||||
```
|
||||
+-----------------------------------------------------------------+
|
||||
| CONFIG-MAINTAINER - CLAUDE.md Analysis |
|
||||
+-----------------------------------------------------------------+
|
||||
```
|
||||
|
||||
### /config-optimize
|
||||
### /claude-config optimize
|
||||
```
|
||||
+-----------------------------------------------------------------+
|
||||
| CONFIG-MAINTAINER - CLAUDE.md Optimization |
|
||||
+-----------------------------------------------------------------+
|
||||
```
|
||||
|
||||
### /config-lint
|
||||
### /claude-config lint
|
||||
```
|
||||
+-----------------------------------------------------------------+
|
||||
| CONFIG-MAINTAINER - CLAUDE.md Lint |
|
||||
+-----------------------------------------------------------------+
|
||||
```
|
||||
|
||||
### /config-diff
|
||||
### /claude-config diff
|
||||
```
|
||||
+-----------------------------------------------------------------+
|
||||
| CONFIG-MAINTAINER - CLAUDE.md Diff |
|
||||
+-----------------------------------------------------------------+
|
||||
```
|
||||
|
||||
### /config-init
|
||||
### /claude-config init
|
||||
```
|
||||
+-----------------------------------------------------------------+
|
||||
| CONFIG-MAINTAINER - CLAUDE.md Initialization |
|
||||
+-----------------------------------------------------------------+
|
||||
```
|
||||
|
||||
### /config-audit-settings
|
||||
### /claude-config audit-settings
|
||||
```
|
||||
+-----------------------------------------------------------------+
|
||||
| CONFIG-MAINTAINER - Settings Audit |
|
||||
+-----------------------------------------------------------------+
|
||||
```
|
||||
|
||||
### /config-optimize-settings
|
||||
### /claude-config optimize-settings
|
||||
```
|
||||
+-----------------------------------------------------------------+
|
||||
| CONFIG-MAINTAINER - Settings Optimization |
|
||||
+-----------------------------------------------------------------+
|
||||
```
|
||||
|
||||
### /config-permissions-map
|
||||
### /claude-config permissions-map
|
||||
```
|
||||
+-----------------------------------------------------------------+
|
||||
| CONFIG-MAINTAINER - Permissions Map |
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
{"mcp_servers": ["netbox"]}
|
||||
{
|
||||
"mcp_servers": [
|
||||
"netbox"
|
||||
],
|
||||
"domain": "ops"
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "cmdb-assistant",
|
||||
"version": "1.2.0",
|
||||
"version": "9.0.1",
|
||||
"description": "NetBox CMDB integration with data quality validation - query, create, update, and manage network devices, IP addresses, sites, and more with best practices enforcement",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
@@ -21,6 +21,5 @@
|
||||
],
|
||||
"commands": [
|
||||
"./commands/"
|
||||
],
|
||||
"domain": "ops"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -97,13 +97,13 @@ ipam_list_prefixes prefix=<proposed-prefix>
|
||||
|
||||
| Command | Purpose |
|
||||
|---------|---------|
|
||||
| `/cmdb-search <query>` | Search across all CMDB objects |
|
||||
| `/cmdb-device <action>` | Device CRUD operations |
|
||||
| `/cmdb-ip <action>` | IP address and prefix management |
|
||||
| `/cmdb-site <action>` | Site and location management |
|
||||
| `/cmdb-audit [scope]` | Data quality analysis |
|
||||
| `/cmdb-register` | Register current machine |
|
||||
| `/cmdb-sync` | Sync machine state with NetBox |
|
||||
| `/cmdb-topology <view>` | Generate infrastructure diagrams |
|
||||
| `/change-audit [filters]` | Audit NetBox changes |
|
||||
| `/ip-conflicts [scope]` | Detect IP conflicts |
|
||||
| `/cmdb search <query>` | Search across all CMDB objects |
|
||||
| `/cmdb device <action>` | Device CRUD operations |
|
||||
| `/cmdb ip <action>` | IP address and prefix management |
|
||||
| `/cmdb site <action>` | Site and location management |
|
||||
| `/cmdb audit [scope]` | Data quality analysis |
|
||||
| `/cmdb register` | Register current machine |
|
||||
| `/cmdb sync` | Sync machine state with NetBox |
|
||||
| `/cmdb topology <view>` | Generate infrastructure diagrams |
|
||||
| `/cmdb change-audit [filters]` | Audit NetBox changes |
|
||||
| `/cmdb ip-conflicts [scope]` | Detect IP conflicts |
|
||||
|
||||
@@ -6,10 +6,10 @@ This project uses the **cmdb-assistant** plugin for NetBox CMDB integration to m
|
||||
|
||||
| Command | Description |
|
||||
|---------|-------------|
|
||||
| `/cmdb-search` | Search across all NetBox objects |
|
||||
| `/cmdb-device` | Manage devices (create, update, list) |
|
||||
| `/cmdb-ip` | Manage IP addresses and prefixes |
|
||||
| `/cmdb-site` | Manage sites and locations |
|
||||
| `/cmdb search` | Search across all NetBox objects |
|
||||
| `/cmdb device` | Manage devices (create, update, list) |
|
||||
| `/cmdb ip` | Manage IP addresses and prefixes |
|
||||
| `/cmdb site` | Manage sites and locations |
|
||||
|
||||
### MCP Tools Available
|
||||
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: cmdb audit
|
||||
description: Audit NetBox data quality and identify consistency issues
|
||||
---
|
||||
|
||||
# CMDB Data Quality Audit
|
||||
# /cmdb audit
|
||||
|
||||
Analyze NetBox data for quality issues and best practice violations.
|
||||
|
||||
@@ -16,7 +17,7 @@ Analyze NetBox data for quality issues and best practice violations.
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-audit [scope]
|
||||
/cmdb audit [scope]
|
||||
```
|
||||
|
||||
**Scopes:**
|
||||
@@ -49,9 +50,9 @@ Execute `skills/audit-workflow.md` which covers:
|
||||
|
||||
## Examples
|
||||
|
||||
- `/cmdb-audit` - Full audit
|
||||
- `/cmdb-audit vms` - VM-specific checks
|
||||
- `/cmdb-audit naming` - Naming conventions
|
||||
- `/cmdb audit` - Full audit
|
||||
- `/cmdb audit vms` - VM-specific checks
|
||||
- `/cmdb audit naming` - Naming conventions
|
||||
|
||||
## User Request
|
||||
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: cmdb change-audit
|
||||
description: Audit NetBox changes with filtering by date, user, or object type
|
||||
---
|
||||
|
||||
# CMDB Change Audit
|
||||
# /cmdb change-audit
|
||||
|
||||
Query and analyze the NetBox audit log for change tracking and compliance.
|
||||
|
||||
@@ -15,7 +16,7 @@ Query and analyze the NetBox audit log for change tracking and compliance.
|
||||
## Usage
|
||||
|
||||
```
|
||||
/change-audit [filters]
|
||||
/cmdb change-audit [filters]
|
||||
```
|
||||
|
||||
**Filters:**
|
||||
@@ -46,11 +47,11 @@ If user asks for "security audit" or "compliance report":
|
||||
|
||||
## Examples
|
||||
|
||||
- `/change-audit` - Recent changes (last 24 hours)
|
||||
- `/change-audit last 7 days` - Past week
|
||||
- `/change-audit by admin` - All changes by admin
|
||||
- `/change-audit type dcim.device` - Device changes only
|
||||
- `/change-audit action delete` - All deletions
|
||||
- `/cmdb change-audit` - Recent changes (last 24 hours)
|
||||
- `/cmdb change-audit last 7 days` - Past week
|
||||
- `/cmdb change-audit by admin` - All changes by admin
|
||||
- `/cmdb change-audit type dcim.device` - Device changes only
|
||||
- `/cmdb change-audit action delete` - All deletions
|
||||
|
||||
## User Request
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
# CMDB Device Management
|
||||
---
|
||||
name: cmdb device
|
||||
---
|
||||
|
||||
# /cmdb device
|
||||
|
||||
Manage network devices in NetBox.
|
||||
|
||||
@@ -10,7 +14,7 @@ Manage network devices in NetBox.
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-device <action> [options]
|
||||
/cmdb device <action> [options]
|
||||
```
|
||||
|
||||
## Instructions
|
||||
@@ -45,10 +49,10 @@ After creating a device, offer to:
|
||||
|
||||
## Examples
|
||||
|
||||
- `/cmdb-device list`
|
||||
- `/cmdb-device show core-router-01`
|
||||
- `/cmdb-device create web-server-03`
|
||||
- `/cmdb-device at headquarters`
|
||||
- `/cmdb device list`
|
||||
- `/cmdb device show core-router-01`
|
||||
- `/cmdb device create web-server-03`
|
||||
- `/cmdb device at headquarters`
|
||||
|
||||
## User Request
|
||||
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: cmdb ip-conflicts
|
||||
description: Detect IP address conflicts and overlapping prefixes in NetBox
|
||||
---
|
||||
|
||||
# CMDB IP Conflict Detection
|
||||
# /cmdb ip-conflicts
|
||||
|
||||
Scan NetBox IPAM data to identify IP address conflicts and overlapping prefixes.
|
||||
|
||||
@@ -15,7 +16,7 @@ Scan NetBox IPAM data to identify IP address conflicts and overlapping prefixes.
|
||||
## Usage
|
||||
|
||||
```
|
||||
/ip-conflicts [scope]
|
||||
/cmdb ip-conflicts [scope]
|
||||
```
|
||||
|
||||
**Scopes:**
|
||||
@@ -49,9 +50,9 @@ Execute conflict detection from `skills/ip-management.md`:
|
||||
|
||||
## Examples
|
||||
|
||||
- `/ip-conflicts` - Full scan
|
||||
- `/ip-conflicts addresses` - Duplicate IPs only
|
||||
- `/ip-conflicts vrf Production` - Scan specific VRF
|
||||
- `/cmdb ip-conflicts` - Full scan
|
||||
- `/cmdb ip-conflicts addresses` - Duplicate IPs only
|
||||
- `/cmdb ip-conflicts vrf Production` - Scan specific VRF
|
||||
|
||||
## User Request
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
# CMDB IP Management
|
||||
---
|
||||
name: cmdb ip
|
||||
---
|
||||
|
||||
# /cmdb ip
|
||||
|
||||
Manage IP addresses and prefixes in NetBox.
|
||||
|
||||
@@ -11,7 +15,7 @@ Manage IP addresses and prefixes in NetBox.
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-ip <action> [options]
|
||||
/cmdb ip <action> [options]
|
||||
```
|
||||
|
||||
## Instructions
|
||||
@@ -42,10 +46,10 @@ Execute operations from `skills/ip-management.md`.
|
||||
|
||||
## Examples
|
||||
|
||||
- `/cmdb-ip prefixes`
|
||||
- `/cmdb-ip available in 10.0.1.0/24`
|
||||
- `/cmdb-ip allocate from 10.0.1.0/24`
|
||||
- `/cmdb-ip assign 10.0.1.50/24 to web-server-01 eth0`
|
||||
- `/cmdb ip prefixes`
|
||||
- `/cmdb ip available in 10.0.1.0/24`
|
||||
- `/cmdb ip allocate from 10.0.1.0/24`
|
||||
- `/cmdb ip assign 10.0.1.50/24 to web-server-01 eth0`
|
||||
|
||||
## User Request
|
||||
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: cmdb register
|
||||
description: Register the current machine into NetBox with all running applications
|
||||
---
|
||||
|
||||
# CMDB Machine Registration
|
||||
# /cmdb register
|
||||
|
||||
Register the current machine into NetBox, including hardware info, network interfaces, and running applications.
|
||||
|
||||
@@ -17,7 +18,7 @@ Register the current machine into NetBox, including hardware info, network inter
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-register [--site <site-name>] [--tenant <tenant-name>] [--role <role-name>]
|
||||
/cmdb register [--site <site-name>] [--tenant <tenant-name>] [--role <role-name>]
|
||||
```
|
||||
|
||||
**Options:**
|
||||
@@ -41,7 +42,7 @@ Execute `skills/device-registration.md` which covers:
|
||||
|
||||
| Error | Action |
|
||||
|-------|--------|
|
||||
| Device already exists | Suggest `/cmdb-sync` or ask to proceed |
|
||||
| Device already exists | Suggest `/cmdb sync` or ask to proceed |
|
||||
| Site not found | List available sites, offer to create new |
|
||||
| Docker not available | Skip container registration, note in summary |
|
||||
| Permission denied | Note which operations failed, suggest fixes |
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
# CMDB Search
|
||||
---
|
||||
name: cmdb search
|
||||
---
|
||||
|
||||
# /cmdb search
|
||||
|
||||
## Visual Output
|
||||
|
||||
@@ -17,7 +21,7 @@ Search NetBox for devices, IPs, sites, or any CMDB object.
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-search <query>
|
||||
/cmdb search <query>
|
||||
```
|
||||
|
||||
## Instructions
|
||||
@@ -37,9 +41,9 @@ For broad searches, query multiple endpoints and consolidate results.
|
||||
|
||||
## Examples
|
||||
|
||||
- `/cmdb-search router` - Find all devices with "router" in the name
|
||||
- `/cmdb-search 10.0.1.0/24` - Find prefix and IPs within it
|
||||
- `/cmdb-search datacenter` - Find sites matching "datacenter"
|
||||
- `/cmdb search router` - Find all devices with "router" in the name
|
||||
- `/cmdb search 10.0.1.0/24` - Find prefix and IPs within it
|
||||
- `/cmdb search datacenter` - Find sites matching "datacenter"
|
||||
|
||||
## User Query
|
||||
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: cmdb setup
|
||||
description: Interactive setup wizard for cmdb-assistant plugin
|
||||
---
|
||||
|
||||
# CMDB Assistant Setup Wizard
|
||||
# /cmdb setup
|
||||
|
||||
Configure the cmdb-assistant plugin with NetBox integration.
|
||||
|
||||
@@ -18,7 +19,7 @@ Configure the cmdb-assistant plugin with NetBox integration.
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-setup
|
||||
/cmdb setup
|
||||
```
|
||||
|
||||
## Instructions
|
||||
@@ -63,10 +64,10 @@ System Config: ~/.config/claude/netbox.env
|
||||
Restart your Claude Code session for MCP tools.
|
||||
|
||||
After restart, try:
|
||||
- /cmdb-device <hostname>
|
||||
- /cmdb-ip <address>
|
||||
- /cmdb-site <name>
|
||||
- /cmdb-search <query>
|
||||
- /cmdb device <hostname>
|
||||
- /cmdb ip <address>
|
||||
- /cmdb site <name>
|
||||
- /cmdb search <query>
|
||||
```
|
||||
|
||||
## User Request
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
# CMDB Site Management
|
||||
---
|
||||
name: cmdb site
|
||||
---
|
||||
|
||||
# /cmdb site
|
||||
|
||||
Manage sites and locations in NetBox.
|
||||
|
||||
@@ -10,7 +14,7 @@ Manage sites and locations in NetBox.
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-site <action> [options]
|
||||
/cmdb site <action> [options]
|
||||
```
|
||||
|
||||
## Instructions
|
||||
@@ -40,10 +44,10 @@ Execute `skills/visual-header.md` with context "Site Management".
|
||||
|
||||
## Examples
|
||||
|
||||
- `/cmdb-site list`
|
||||
- `/cmdb-site show headquarters`
|
||||
- `/cmdb-site create branch-office-nyc`
|
||||
- `/cmdb-site racks at headquarters`
|
||||
- `/cmdb site list`
|
||||
- `/cmdb site show headquarters`
|
||||
- `/cmdb site create branch-office-nyc`
|
||||
- `/cmdb site racks at headquarters`
|
||||
|
||||
## User Request
|
||||
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: cmdb sync
|
||||
description: Synchronize current machine state with existing NetBox record
|
||||
---
|
||||
|
||||
# CMDB Machine Sync
|
||||
# /cmdb sync
|
||||
|
||||
Update an existing NetBox device record with the current machine state.
|
||||
|
||||
@@ -16,7 +17,7 @@ Update an existing NetBox device record with the current machine state.
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-sync [--full] [--dry-run]
|
||||
/cmdb sync [--full] [--dry-run]
|
||||
```
|
||||
|
||||
**Options:**
|
||||
@@ -48,7 +49,7 @@ Execute `skills/sync-workflow.md` which covers:
|
||||
|
||||
| Error | Action |
|
||||
|-------|--------|
|
||||
| Device not found | Suggest `/cmdb-register` |
|
||||
| Device not found | Suggest `/cmdb register` |
|
||||
| Permission denied | Note which failed, continue others |
|
||||
| Cluster not found | Offer to create or skip container sync |
|
||||
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: cmdb topology
|
||||
description: Generate infrastructure topology diagrams from NetBox data
|
||||
---
|
||||
|
||||
# CMDB Topology Visualization
|
||||
# /cmdb topology
|
||||
|
||||
Generate Mermaid diagrams showing infrastructure topology from NetBox.
|
||||
|
||||
@@ -15,7 +16,7 @@ Generate Mermaid diagrams showing infrastructure topology from NetBox.
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-topology <view> [scope]
|
||||
/cmdb topology <view> [scope]
|
||||
```
|
||||
|
||||
**Views:**
|
||||
@@ -43,11 +44,11 @@ Always provide:
|
||||
|
||||
## Examples
|
||||
|
||||
- `/cmdb-topology rack server-rack-01` - Rack elevation
|
||||
- `/cmdb-topology network` - All network connections
|
||||
- `/cmdb-topology network Home` - Network for Home site
|
||||
- `/cmdb-topology site Headquarters` - Site overview
|
||||
- `/cmdb-topology full` - Full infrastructure
|
||||
- `/cmdb topology rack server-rack-01` - Rack elevation
|
||||
- `/cmdb topology network` - All network connections
|
||||
- `/cmdb topology network Home` - Network for Home site
|
||||
- `/cmdb topology site Headquarters` - Site overview
|
||||
- `/cmdb topology full` - Full infrastructure
|
||||
|
||||
## User Request
|
||||
|
||||
|
||||
23
plugins/cmdb-assistant/commands/cmdb.md
Normal file
23
plugins/cmdb-assistant/commands/cmdb.md
Normal file
@@ -0,0 +1,23 @@
|
||||
---
|
||||
description: NetBox CMDB infrastructure management
|
||||
---
|
||||
|
||||
# /cmdb
|
||||
|
||||
NetBox CMDB integration for infrastructure management.
|
||||
|
||||
## Sub-commands
|
||||
|
||||
| Sub-command | Description |
|
||||
|-------------|-------------|
|
||||
| `/cmdb search` | Search NetBox for devices, IPs, sites |
|
||||
| `/cmdb device` | Manage network devices (create, view, update, delete) |
|
||||
| `/cmdb ip` | Manage IP addresses and prefixes |
|
||||
| `/cmdb site` | Manage sites, locations, racks, and regions |
|
||||
| `/cmdb audit` | Data quality analysis (VMs, devices, naming, roles) |
|
||||
| `/cmdb register` | Register current machine into NetBox |
|
||||
| `/cmdb sync` | Sync machine state with NetBox (detect drift) |
|
||||
| `/cmdb topology` | Infrastructure topology diagrams |
|
||||
| `/cmdb change-audit` | NetBox audit trail queries with filtering |
|
||||
| `/cmdb ip-conflicts` | Detect IP conflicts and overlapping prefixes |
|
||||
| `/cmdb setup` | Setup wizard for NetBox MCP server |
|
||||
@@ -1,16 +1,5 @@
|
||||
{
|
||||
"hooks": {
|
||||
"SessionStart": [
|
||||
{
|
||||
"matcher": "",
|
||||
"hooks": [
|
||||
{
|
||||
"type": "command",
|
||||
"command": "${CLAUDE_PLUGIN_ROOT}/hooks/startup-check.sh"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"PreToolUse": [
|
||||
{
|
||||
"matcher": "mcp__plugin_cmdb-assistant_netbox__virt_create|mcp__plugin_cmdb-assistant_netbox__virt_update|mcp__plugin_cmdb-assistant_netbox__dcim_create|mcp__plugin_cmdb-assistant_netbox__dcim_update",
|
||||
|
||||
@@ -1,83 +0,0 @@
|
||||
#!/bin/bash
|
||||
# cmdb-assistant SessionStart hook
|
||||
# Tests NetBox API connectivity and checks for data quality issues
|
||||
# All output MUST have [cmdb-assistant] prefix
|
||||
# Non-blocking: always exits 0
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
PREFIX="[cmdb-assistant]"
|
||||
|
||||
# Load NetBox configuration
|
||||
NETBOX_CONFIG="$HOME/.config/claude/netbox.env"
|
||||
|
||||
if [[ ! -f "$NETBOX_CONFIG" ]]; then
|
||||
echo "$PREFIX NetBox not configured - run /cmdb-assistant:initial-setup"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Source config
|
||||
source "$NETBOX_CONFIG"
|
||||
|
||||
# Validate required variables
|
||||
if [[ -z "${NETBOX_API_URL:-}" ]] || [[ -z "${NETBOX_API_TOKEN:-}" ]]; then
|
||||
echo "$PREFIX Missing NETBOX_API_URL or NETBOX_API_TOKEN in config"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Helper function to make authenticated API calls
|
||||
# Token passed via curl config to avoid exposure in process listings
|
||||
netbox_curl() {
|
||||
local url="$1"
|
||||
curl -s -K - <<EOF 2>/dev/null
|
||||
-H "Authorization: Token ${NETBOX_API_TOKEN}"
|
||||
-H "Accept: application/json"
|
||||
url = "${url}"
|
||||
EOF
|
||||
}
|
||||
|
||||
# Quick API connectivity test (5s timeout)
|
||||
HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" -m 5 -K - <<EOF 2>/dev/null || echo "000"
|
||||
-H "Authorization: Token ${NETBOX_API_TOKEN}"
|
||||
-H "Accept: application/json"
|
||||
url = "${NETBOX_API_URL}/"
|
||||
EOF
|
||||
)
|
||||
|
||||
if [[ "$HTTP_CODE" == "000" ]]; then
|
||||
echo "$PREFIX NetBox API unreachable (timeout/connection error)"
|
||||
exit 0
|
||||
elif [[ "$HTTP_CODE" != "200" ]]; then
|
||||
echo "$PREFIX NetBox API returned HTTP $HTTP_CODE - check credentials"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Check for VMs without site assignment (data quality)
|
||||
VMS_RESPONSE=$(curl -s -m 5 -K - <<EOF 2>/dev/null || echo '{"count":0}'
|
||||
-H "Authorization: Token ${NETBOX_API_TOKEN}"
|
||||
-H "Accept: application/json"
|
||||
url = "${NETBOX_API_URL}/virtualization/virtual-machines/?site__isnull=true&limit=1"
|
||||
EOF
|
||||
)
|
||||
|
||||
VMS_NO_SITE=$(echo "$VMS_RESPONSE" | grep -o '"count":[0-9]*' | cut -d: -f2 || echo "0")
|
||||
|
||||
if [[ "$VMS_NO_SITE" -gt 0 ]]; then
|
||||
echo "$PREFIX $VMS_NO_SITE VMs without site assignment - run /cmdb-audit for details"
|
||||
fi
|
||||
|
||||
# Check for devices without platform
|
||||
DEVICES_RESPONSE=$(curl -s -m 5 -K - <<EOF 2>/dev/null || echo '{"count":0}'
|
||||
-H "Authorization: Token ${NETBOX_API_TOKEN}"
|
||||
-H "Accept: application/json"
|
||||
url = "${NETBOX_API_URL}/dcim/devices/?platform__isnull=true&limit=1"
|
||||
EOF
|
||||
)
|
||||
|
||||
DEVICES_NO_PLATFORM=$(echo "$DEVICES_RESPONSE" | grep -o '"count":[0-9]*' | cut -d: -f2 || echo "0")
|
||||
|
||||
if [[ "$DEVICES_NO_PLATFORM" -gt 0 ]]; then
|
||||
echo "$PREFIX $DEVICES_NO_PLATFORM devices without platform - consider updating"
|
||||
fi
|
||||
|
||||
exit 0
|
||||
@@ -147,8 +147,8 @@ dcim_update_device id=X platform=Y
|
||||
|
||||
### Next Steps
|
||||
|
||||
- Run `/cmdb-register` to properly register new machines
|
||||
- Use `/cmdb-sync` to update existing registrations
|
||||
- Run `/cmdb register` to properly register new machines
|
||||
- Use `/cmdb sync` to update existing registrations
|
||||
- Consider bulk updates via NetBox web UI for >10 items
|
||||
```
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ Use commands from `system-discovery` skill to gather:
|
||||
```
|
||||
dcim_list_devices name=<hostname>
|
||||
```
|
||||
If exists, suggest `/cmdb-sync` instead.
|
||||
If exists, suggest `/cmdb sync` instead.
|
||||
|
||||
2. **Verify/Create site:**
|
||||
```
|
||||
@@ -131,7 +131,7 @@ Add journal entry:
|
||||
extras_create_journal_entry
|
||||
assigned_object_type="dcim.device"
|
||||
assigned_object_id=<device_id>
|
||||
comments="Device registered via /cmdb-register command\n\nDiscovered:\n- X network interfaces\n- Y IP addresses\n- Z Docker containers"
|
||||
comments="Device registered via /cmdb register command\n\nDiscovered:\n- X network interfaces\n- Y IP addresses\n- Z Docker containers"
|
||||
```
|
||||
|
||||
## Summary Report Template
|
||||
@@ -162,8 +162,8 @@ extras_create_journal_entry
|
||||
| media_jellyfin | Media Server | 2.0 | 2048MB | Active |
|
||||
|
||||
### Next Steps
|
||||
- Run `/cmdb-sync` periodically to keep data current
|
||||
- Run `/cmdb-audit` to check data quality
|
||||
- Run `/cmdb sync` periodically to keep data current
|
||||
- Run `/cmdb audit` to check data quality
|
||||
- Add tags for classification
|
||||
```
|
||||
|
||||
@@ -171,7 +171,7 @@ extras_create_journal_entry
|
||||
|
||||
| Error | Action |
|
||||
|-------|--------|
|
||||
| Device already exists | Suggest `/cmdb-sync` or ask to proceed |
|
||||
| Device already exists | Suggest `/cmdb sync` or ask to proceed |
|
||||
| Site not found | List available sites, offer to create new |
|
||||
| Docker not available | Skip container registration, note in summary |
|
||||
| Permission denied | Note which operations failed, suggest fixes |
|
||||
|
||||
@@ -16,7 +16,7 @@ Load these skills:
|
||||
dcim_list_devices name=<hostname>
|
||||
```
|
||||
|
||||
If not found, suggest `/cmdb-register` first.
|
||||
If not found, suggest `/cmdb register` first.
|
||||
|
||||
If found:
|
||||
- Store device ID and current field values
|
||||
@@ -167,7 +167,7 @@ virt_update_vm id=<id> status="offline"
|
||||
extras_create_journal_entry
|
||||
assigned_object_type="dcim.device"
|
||||
assigned_object_id=<device_id>
|
||||
comments="Device synced via /cmdb-sync command\n\nChanges applied:\n- <list>"
|
||||
comments="Device synced via /cmdb sync command\n\nChanges applied:\n- <list>"
|
||||
```
|
||||
|
||||
## Sync Modes
|
||||
@@ -185,7 +185,7 @@ extras_create_journal_entry
|
||||
|
||||
| Error | Action |
|
||||
|-------|--------|
|
||||
| Device not found | Suggest `/cmdb-register` |
|
||||
| Device not found | Suggest `/cmdb register` |
|
||||
| Permission denied | Note which failed, continue others |
|
||||
| Cluster not found | Offer to create or skip container sync |
|
||||
| API errors | Log error, continue with remaining |
|
||||
|
||||
@@ -14,17 +14,17 @@ Standard visual header for cmdb-assistant commands.
|
||||
|
||||
| Command | Context |
|
||||
|---------|---------|
|
||||
| `/cmdb-search` | Search |
|
||||
| `/cmdb-device` | Device Management |
|
||||
| `/cmdb-ip` | IP Management |
|
||||
| `/cmdb-site` | Site Management |
|
||||
| `/cmdb-audit` | Data Quality Audit |
|
||||
| `/cmdb-register` | Machine Registration |
|
||||
| `/cmdb-sync` | Machine Sync |
|
||||
| `/cmdb-topology` | Topology |
|
||||
| `/change-audit` | Change Audit |
|
||||
| `/ip-conflicts` | IP Conflict Detection |
|
||||
| `/cmdb-setup` | Setup Wizard |
|
||||
| `/cmdb search` | Search |
|
||||
| `/cmdb device` | Device Management |
|
||||
| `/cmdb ip` | IP Management |
|
||||
| `/cmdb site` | Site Management |
|
||||
| `/cmdb audit` | Data Quality Audit |
|
||||
| `/cmdb register` | Machine Registration |
|
||||
| `/cmdb sync` | Machine Sync |
|
||||
| `/cmdb topology` | Topology |
|
||||
| `/cmdb change-audit` | Change Audit |
|
||||
| `/cmdb ip-conflicts` | IP Conflict Detection |
|
||||
| `/cmdb setup` | Setup Wizard |
|
||||
| Agent mode | Infrastructure Management |
|
||||
|
||||
## Usage
|
||||
|
||||
3
plugins/code-sentinel/.claude-plugin/metadata.json
Normal file
3
plugins/code-sentinel/.claude-plugin/metadata.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"domain": "core"
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "code-sentinel",
|
||||
"description": "Security scanning and code refactoring tools",
|
||||
"version": "1.0.1",
|
||||
"version": "9.0.1",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
"email": "leobmiranda@gmail.com"
|
||||
@@ -18,6 +18,5 @@
|
||||
],
|
||||
"commands": [
|
||||
"./commands/"
|
||||
],
|
||||
"domain": "core"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -16,11 +16,11 @@ PreToolUse hooks scan all code changes for:
|
||||
Critical issues are blocked. Warnings are noted but allowed.
|
||||
|
||||
### Commands
|
||||
- `/security-scan` - Full project security audit
|
||||
- `/refactor <target>` - Apply refactoring pattern
|
||||
- `/refactor-dry <target>` - Preview refactoring opportunities
|
||||
- `/sentinel scan` - Full project security audit
|
||||
- `/sentinel refactor <target>` - Apply refactoring pattern
|
||||
- `/sentinel refactor-dry <target>` - Preview refactoring opportunities
|
||||
|
||||
### Severity Levels
|
||||
- 🔴 Critical: Must fix immediately
|
||||
- 🟠 High: Fix before release
|
||||
- 🟡 Medium: Improve when possible
|
||||
- Critical: Must fix immediately
|
||||
- High: Fix before release
|
||||
- Medium: Improve when possible
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: sentinel refactor-dry
|
||||
description: Preview refactoring changes without applying them
|
||||
---
|
||||
|
||||
# Refactor Dry Run
|
||||
# /sentinel refactor-dry
|
||||
|
||||
Analyze and preview refactoring opportunities without making changes.
|
||||
|
||||
@@ -16,7 +17,7 @@ Analyze and preview refactoring opportunities without making changes.
|
||||
|
||||
## Usage
|
||||
```
|
||||
/refactor-dry <target> [--all]
|
||||
/sentinel refactor-dry <target> [--all]
|
||||
```
|
||||
|
||||
**Target:** File path, function name, or "." for current file
|
||||
@@ -41,7 +42,7 @@ Analyze and preview refactoring opportunities without making changes.
|
||||
### Recommended (High Impact, Low Risk)
|
||||
1. **pattern** at lines X-Y
|
||||
- Impact: High | Risk: Low
|
||||
- Run: `/refactor <target> --pattern=<pattern>`
|
||||
- Run: `/sentinel refactor <target> --pattern=<pattern>`
|
||||
|
||||
### Optional
|
||||
- Lower priority items
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: sentinel refactor
|
||||
description: Apply refactoring patterns to improve code structure and maintainability
|
||||
---
|
||||
|
||||
# Refactor
|
||||
# /sentinel refactor
|
||||
|
||||
Apply refactoring transformations to specified code.
|
||||
|
||||
@@ -16,7 +17,7 @@ Apply refactoring transformations to specified code.
|
||||
|
||||
## Usage
|
||||
```
|
||||
/refactor <target> [--pattern=<pattern>]
|
||||
/sentinel refactor <target> [--pattern=<pattern>]
|
||||
```
|
||||
|
||||
**Target:** File path, function name, or "." for current context
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: sentinel scan
|
||||
description: Full security audit of codebase - scans all files for vulnerability patterns
|
||||
---
|
||||
|
||||
# Security Scan
|
||||
# /sentinel scan
|
||||
|
||||
Comprehensive security audit of the project.
|
||||
|
||||
15
plugins/code-sentinel/commands/sentinel.md
Normal file
15
plugins/code-sentinel/commands/sentinel.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
description: Security scanning and code refactoring
|
||||
---
|
||||
|
||||
# /sentinel
|
||||
|
||||
Security scanning and safe code refactoring tools.
|
||||
|
||||
## Sub-commands
|
||||
|
||||
| Sub-command | Description |
|
||||
|-------------|-------------|
|
||||
| `/sentinel scan` | Full security audit (SQL injection, XSS, secrets, etc.) |
|
||||
| `/sentinel refactor` | Apply refactoring patterns to improve code |
|
||||
| `/sentinel refactor-dry` | Preview refactoring without applying changes |
|
||||
@@ -60,7 +60,7 @@ High impact, low risk opportunities:
|
||||
- Description of the change
|
||||
- Impact: High/Medium/Low (specific metric improvement)
|
||||
- Risk: Low/Medium/High (why)
|
||||
- Run: `/refactor <target> --pattern=<pattern>`
|
||||
- Run: `/sentinel refactor <target> --pattern=<pattern>`
|
||||
```
|
||||
|
||||
### Optional Section
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
{"mcp_servers": ["contract-validator"]}
|
||||
{
|
||||
"mcp_servers": [
|
||||
"contract-validator"
|
||||
],
|
||||
"domain": "core"
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "contract-validator",
|
||||
"version": "1.2.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Cross-plugin compatibility validation and Claude.md agent verification",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
@@ -19,6 +19,5 @@
|
||||
],
|
||||
"commands": [
|
||||
"./commands/"
|
||||
],
|
||||
"domain": "core"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -91,7 +91,7 @@ You are an agent definition validator. Your role is to verify that a specific ag
|
||||
|
||||
## Example Interaction
|
||||
|
||||
**User**: /check-agent Orchestrator
|
||||
**User**: /cv check-agent Orchestrator
|
||||
|
||||
**Agent**:
|
||||
1. Parses CLAUDE.md, finds Orchestrator agent
|
||||
@@ -101,7 +101,7 @@ You are an agent definition validator. Your role is to verify that a specific ag
|
||||
5. Validates data flow: no data producers/consumers used
|
||||
6. Reports: "Agent Orchestrator: VALID - all 3 tool references found"
|
||||
|
||||
**User**: /check-agent InvalidAgent
|
||||
**User**: /cv check-agent InvalidAgent
|
||||
|
||||
**Agent**:
|
||||
1. Parses CLAUDE.md, agent not found
|
||||
|
||||
@@ -93,7 +93,7 @@ You are a contract validation specialist. Your role is to perform comprehensive
|
||||
|
||||
## Example Interaction
|
||||
|
||||
**User**: /validate-contracts ~/claude-plugins-work
|
||||
**User**: /cv validate ~/claude-plugins-work
|
||||
|
||||
**Agent**:
|
||||
1. Discovers 12 plugins in marketplace
|
||||
|
||||
@@ -13,15 +13,15 @@ This marketplace uses the contract-validator plugin for cross-plugin compatibili
|
||||
|
||||
| Command | Purpose |
|
||||
|---------|---------|
|
||||
| `/validate-contracts` | Full marketplace compatibility validation |
|
||||
| `/check-agent` | Validate single agent definition |
|
||||
| `/list-interfaces` | Show all plugin interfaces |
|
||||
| `/cv validate` | Full marketplace compatibility validation |
|
||||
| `/cv check-agent` | Validate single agent definition |
|
||||
| `/cv list-interfaces` | Show all plugin interfaces |
|
||||
|
||||
### Validation Workflow
|
||||
|
||||
Run before merging plugin changes:
|
||||
|
||||
1. `/validate-contracts` - Check for conflicts
|
||||
1. `/cv validate` - Check for conflicts
|
||||
2. Review errors (must fix) and warnings (should review)
|
||||
3. Fix issues before merging
|
||||
|
||||
@@ -91,7 +91,7 @@ Avoid generic names that may conflict:
|
||||
| `/setup` | Setup wizard |
|
||||
|
||||
# GOOD - Plugin-specific prefix
|
||||
| `/data-setup` | Data platform setup wizard |
|
||||
| `/data setup` | Data platform setup wizard |
|
||||
```
|
||||
|
||||
### Document All Tools
|
||||
@@ -125,20 +125,20 @@ This agent uses tools from:
|
||||
|
||||
```
|
||||
# Before merging new plugin
|
||||
/validate-contracts
|
||||
/cv validate
|
||||
|
||||
# Check specific agent after changes
|
||||
/check-agent Orchestrator
|
||||
/cv check-agent Orchestrator
|
||||
```
|
||||
|
||||
### Plugin Development
|
||||
|
||||
```
|
||||
# See what interfaces exist
|
||||
/list-interfaces
|
||||
/cv list-interfaces
|
||||
|
||||
# After adding new command, verify no conflicts
|
||||
/validate-contracts
|
||||
/cv validate
|
||||
```
|
||||
|
||||
### CI/CD Integration
|
||||
@@ -148,5 +148,5 @@ Add to your pipeline:
|
||||
```yaml
|
||||
- name: Validate Plugin Contracts
|
||||
run: |
|
||||
claude --skill contract-validator:validate-contracts --args "${{ github.workspace }}"
|
||||
claude --skill contract-validator:cv-validate --args "${{ github.workspace }}"
|
||||
```
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
# /check-agent - Validate Agent Definition
|
||||
---
|
||||
name: cv check-agent
|
||||
---
|
||||
|
||||
# /cv check-agent
|
||||
|
||||
## Skills to Load
|
||||
- skills/visual-output.md
|
||||
@@ -9,7 +13,7 @@
|
||||
## Usage
|
||||
|
||||
```
|
||||
/check-agent <agent_name> [claude_md_path]
|
||||
/cv check-agent <agent_name> [claude_md_path]
|
||||
```
|
||||
|
||||
## Parameters
|
||||
@@ -38,7 +42,7 @@
|
||||
## Examples
|
||||
|
||||
```
|
||||
/check-agent Planner
|
||||
/check-agent Orchestrator ./CLAUDE.md
|
||||
/check-agent data-analysis ~/project/CLAUDE.md
|
||||
/cv check-agent Planner
|
||||
/cv check-agent Orchestrator ./CLAUDE.md
|
||||
/cv check-agent data-analysis ~/project/CLAUDE.md
|
||||
```
|
||||
@@ -1,4 +1,8 @@
|
||||
# /dependency-graph - Generate Dependency Visualization
|
||||
---
|
||||
name: cv dependency-graph
|
||||
---
|
||||
|
||||
# /cv dependency-graph
|
||||
|
||||
## Skills to Load
|
||||
- skills/visual-output.md
|
||||
@@ -10,7 +14,7 @@
|
||||
## Usage
|
||||
|
||||
```
|
||||
/dependency-graph [marketplace_path] [--format <mermaid|text>] [--show-tools]
|
||||
/cv dependency-graph [marketplace_path] [--format <mermaid|text>] [--show-tools]
|
||||
```
|
||||
|
||||
## Parameters
|
||||
@@ -41,15 +45,15 @@
|
||||
## Examples
|
||||
|
||||
```
|
||||
/dependency-graph
|
||||
/dependency-graph --show-tools
|
||||
/dependency-graph --format text
|
||||
/dependency-graph ~/claude-plugins-work
|
||||
/cv dependency-graph
|
||||
/cv dependency-graph --show-tools
|
||||
/cv dependency-graph --format text
|
||||
/cv dependency-graph ~/claude-plugins-work
|
||||
```
|
||||
|
||||
## Integration
|
||||
|
||||
Use with `/validate-contracts`:
|
||||
1. Run `/dependency-graph` to visualize
|
||||
2. Run `/validate-contracts` to find issues
|
||||
Use with `/cv validate`:
|
||||
1. Run `/cv dependency-graph` to visualize
|
||||
2. Run `/cv validate` to find issues
|
||||
3. Fix and regenerate
|
||||
@@ -1,4 +1,8 @@
|
||||
# /list-interfaces - Show Plugin Interfaces
|
||||
---
|
||||
name: cv list-interfaces
|
||||
---
|
||||
|
||||
# /cv list-interfaces
|
||||
|
||||
## Skills to Load
|
||||
- skills/visual-output.md
|
||||
@@ -9,7 +13,7 @@
|
||||
## Usage
|
||||
|
||||
```
|
||||
/list-interfaces [marketplace_path]
|
||||
/cv list-interfaces [marketplace_path]
|
||||
```
|
||||
|
||||
## Parameters
|
||||
@@ -41,6 +45,6 @@
|
||||
## Examples
|
||||
|
||||
```
|
||||
/list-interfaces
|
||||
/list-interfaces ~/claude-plugins-work
|
||||
/cv list-interfaces
|
||||
/cv list-interfaces ~/claude-plugins-work
|
||||
```
|
||||
@@ -1,8 +1,9 @@
|
||||
---
|
||||
name: cv setup
|
||||
description: Interactive setup wizard for contract-validator plugin
|
||||
---
|
||||
|
||||
# /cv-setup - Contract Validator Setup Wizard
|
||||
# /cv setup
|
||||
|
||||
## Skills to Load
|
||||
- skills/visual-output.md
|
||||
@@ -40,9 +41,9 @@ description: Interactive setup wizard for contract-validator plugin
|
||||
|
||||
## Post-Setup Commands
|
||||
|
||||
- `/validate-contracts` - Full marketplace validation
|
||||
- `/check-agent` - Validate single agent
|
||||
- `/list-interfaces` - Show all plugin interfaces
|
||||
- `/cv validate` - Full marketplace validation
|
||||
- `/cv check-agent` - Validate single agent
|
||||
- `/cv list-interfaces` - Show all plugin interfaces
|
||||
|
||||
## No Configuration Required
|
||||
|
||||
|
||||
48
plugins/contract-validator/commands/cv-status.md
Normal file
48
plugins/contract-validator/commands/cv-status.md
Normal file
@@ -0,0 +1,48 @@
|
||||
---
|
||||
name: cv status
|
||||
description: Marketplace-wide health check across all installed plugins
|
||||
---
|
||||
|
||||
# /cv status
|
||||
|
||||
## Purpose
|
||||
|
||||
Quick health check showing installed plugin status. For each marketplace plugin, reports installation state, MCP connectivity, and configuration status.
|
||||
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cv status # Full status table
|
||||
/cv status --plugin projman # Single plugin check
|
||||
```
|
||||
|
||||
## Workflow
|
||||
|
||||
### Step 1: Enumerate Plugins
|
||||
Read `.claude-plugin/marketplace.json` to get the full plugin list.
|
||||
|
||||
### Step 2: Check Each Plugin
|
||||
For each plugin, verify:
|
||||
- **Installed:** `plugin.json` exists and is valid JSON
|
||||
- **MCP Connected:** If plugin has MCP servers (check `metadata.json`), verify server is responding
|
||||
- **Configured:** Required config files present
|
||||
- **Version:** Read from `plugin.json`
|
||||
- **Domain:** Read from `plugin.json`
|
||||
|
||||
### Step 3: Display Results
|
||||
|
||||
```
|
||||
| Plugin | Domain | Version | Installed | MCP | Configured |
|
||||
|--------------------------|--------|---------|-----------|-----|------------|
|
||||
| projman | core | 3.4.0 | Y | Y | Y |
|
||||
| git-flow | core | 1.2.0 | Y | - | Y |
|
||||
| cmdb-assistant | ops | 1.2.0 | Y | N | N |
|
||||
|
||||
Summary: 12/12 installed, 4/5 MCP connected, 11/12 configured
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- MCP column shows `-` for plugins without MCP servers
|
||||
- `N` in MCP means the server is defined but not responding
|
||||
- `N` in Configured means the setup check found issues
|
||||
@@ -1,4 +1,8 @@
|
||||
# /validate-contracts - Full Contract Validation
|
||||
---
|
||||
name: cv validate
|
||||
---
|
||||
|
||||
# /cv validate
|
||||
|
||||
## Skills to Load
|
||||
- skills/visual-output.md
|
||||
@@ -10,7 +14,7 @@
|
||||
## Usage
|
||||
|
||||
```
|
||||
/validate-contracts [marketplace_path]
|
||||
/cv validate [marketplace_path]
|
||||
```
|
||||
|
||||
## Parameters
|
||||
@@ -40,6 +44,6 @@
|
||||
## Examples
|
||||
|
||||
```
|
||||
/validate-contracts
|
||||
/validate-contracts ~/claude-plugins-work
|
||||
/cv validate
|
||||
/cv validate ~/claude-plugins-work
|
||||
```
|
||||
18
plugins/contract-validator/commands/cv.md
Normal file
18
plugins/contract-validator/commands/cv.md
Normal file
@@ -0,0 +1,18 @@
|
||||
---
|
||||
description: Cross-plugin compatibility validation
|
||||
---
|
||||
|
||||
# /cv
|
||||
|
||||
Cross-plugin compatibility validation and agent verification.
|
||||
|
||||
## Sub-commands
|
||||
|
||||
| Sub-command | Description |
|
||||
|-------------|-------------|
|
||||
| `/cv validate` | Full marketplace compatibility validation |
|
||||
| `/cv check-agent` | Validate single agent definition |
|
||||
| `/cv list-interfaces` | Show all plugin interfaces |
|
||||
| `/cv dependency-graph` | Mermaid visualization of plugin dependencies |
|
||||
| `/cv setup` | Setup wizard for contract-validator MCP |
|
||||
| `/cv status` | Marketplace-wide health check |
|
||||
@@ -1,195 +0,0 @@
|
||||
#!/bin/bash
|
||||
# contract-validator SessionStart auto-validate hook
|
||||
# Validates plugin contracts only when plugin files have changed since last check
|
||||
# All output MUST have [contract-validator] prefix
|
||||
|
||||
PREFIX="[contract-validator]"
|
||||
|
||||
# ============================================================================
|
||||
# Configuration
|
||||
# ============================================================================
|
||||
|
||||
# Enable/disable auto-check (default: true)
|
||||
AUTO_CHECK="${CONTRACT_VALIDATOR_AUTO_CHECK:-true}"
|
||||
|
||||
# Cache location for storing last check hash
|
||||
CACHE_DIR="$HOME/.cache/claude-plugins/contract-validator"
|
||||
HASH_FILE="$CACHE_DIR/last-check.hash"
|
||||
|
||||
# Marketplace location (installed plugins)
|
||||
MARKETPLACE_PATH="$HOME/.claude/plugins/marketplaces/leo-claude-mktplace"
|
||||
|
||||
# ============================================================================
|
||||
# Early exit if disabled
|
||||
# ============================================================================
|
||||
|
||||
if [[ "$AUTO_CHECK" != "true" ]]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# ============================================================================
|
||||
# Smart mode: Check if plugin files have changed
|
||||
# ============================================================================
|
||||
|
||||
# Function to compute hash of all plugin manifest files
|
||||
compute_plugin_hash() {
|
||||
local hash_input=""
|
||||
|
||||
if [[ -d "$MARKETPLACE_PATH/plugins" ]]; then
|
||||
# Hash all plugin.json, hooks.json, and agent files
|
||||
while IFS= read -r -d '' file; do
|
||||
if [[ -f "$file" ]]; then
|
||||
hash_input+="$(md5sum "$file" 2>/dev/null | cut -d' ' -f1)"
|
||||
fi
|
||||
done < <(find "$MARKETPLACE_PATH/plugins" \
|
||||
\( -name "plugin.json" -o -name "hooks.json" -o -name "*.md" -path "*/agents/*" \) \
|
||||
-print0 2>/dev/null | sort -z)
|
||||
fi
|
||||
|
||||
# Also include marketplace.json
|
||||
if [[ -f "$MARKETPLACE_PATH/.claude-plugin/marketplace.json" ]]; then
|
||||
hash_input+="$(md5sum "$MARKETPLACE_PATH/.claude-plugin/marketplace.json" 2>/dev/null | cut -d' ' -f1)"
|
||||
fi
|
||||
|
||||
# Compute final hash
|
||||
echo "$hash_input" | md5sum | cut -d' ' -f1
|
||||
}
|
||||
|
||||
# Ensure cache directory exists
|
||||
mkdir -p "$CACHE_DIR" 2>/dev/null
|
||||
|
||||
# Compute current hash
|
||||
CURRENT_HASH=$(compute_plugin_hash)
|
||||
|
||||
# Check if we have a previous hash
|
||||
if [[ -f "$HASH_FILE" ]]; then
|
||||
PREVIOUS_HASH=$(cat "$HASH_FILE" 2>/dev/null)
|
||||
|
||||
# If hashes match, no changes - skip validation
|
||||
if [[ "$CURRENT_HASH" == "$PREVIOUS_HASH" ]]; then
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
|
||||
# ============================================================================
|
||||
# Run validation (hashes differ or no cache)
|
||||
# ============================================================================
|
||||
|
||||
ISSUES_FOUND=0
|
||||
WARNINGS=""
|
||||
|
||||
# Function to add warning
|
||||
add_warning() {
|
||||
WARNINGS+=" - $1"$'\n'
|
||||
((ISSUES_FOUND++))
|
||||
}
|
||||
|
||||
# 1. Check all installed plugins have valid plugin.json
|
||||
if [[ -d "$MARKETPLACE_PATH/plugins" ]]; then
|
||||
for plugin_dir in "$MARKETPLACE_PATH/plugins"/*/; do
|
||||
if [[ -d "$plugin_dir" ]]; then
|
||||
plugin_name=$(basename "$plugin_dir")
|
||||
plugin_json="$plugin_dir/.claude-plugin/plugin.json"
|
||||
|
||||
if [[ ! -f "$plugin_json" ]]; then
|
||||
add_warning "$plugin_name: missing .claude-plugin/plugin.json"
|
||||
continue
|
||||
fi
|
||||
|
||||
# Basic JSON validation
|
||||
if ! python3 -c "import json; json.load(open('$plugin_json'))" 2>/dev/null; then
|
||||
add_warning "$plugin_name: invalid JSON in plugin.json"
|
||||
continue
|
||||
fi
|
||||
|
||||
# Check required fields
|
||||
if ! python3 -c "
|
||||
import json
|
||||
with open('$plugin_json') as f:
|
||||
data = json.load(f)
|
||||
required = ['name', 'version', 'description']
|
||||
missing = [r for r in required if r not in data]
|
||||
if missing:
|
||||
exit(1)
|
||||
" 2>/dev/null; then
|
||||
add_warning "$plugin_name: plugin.json missing required fields"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# 2. Check hooks.json files are properly formatted
|
||||
if [[ -d "$MARKETPLACE_PATH/plugins" ]]; then
|
||||
while IFS= read -r -d '' hooks_file; do
|
||||
plugin_name=$(basename "$(dirname "$(dirname "$hooks_file")")")
|
||||
|
||||
# Validate JSON
|
||||
if ! python3 -c "import json; json.load(open('$hooks_file'))" 2>/dev/null; then
|
||||
add_warning "$plugin_name: invalid JSON in hooks/hooks.json"
|
||||
continue
|
||||
fi
|
||||
|
||||
# Validate hook structure
|
||||
if ! python3 -c "
|
||||
import json
|
||||
with open('$hooks_file') as f:
|
||||
data = json.load(f)
|
||||
if 'hooks' not in data:
|
||||
exit(1)
|
||||
valid_events = ['PreToolUse', 'PostToolUse', 'UserPromptSubmit', 'SessionStart', 'SessionEnd', 'Notification', 'Stop', 'SubagentStop', 'PreCompact']
|
||||
for event in data['hooks']:
|
||||
if event not in valid_events:
|
||||
exit(1)
|
||||
for hook in data['hooks'][event]:
|
||||
# Support both flat structure (type at top) and nested structure (matcher + hooks array)
|
||||
if 'type' in hook:
|
||||
# Flat structure: {type: 'command', command: '...'}
|
||||
pass
|
||||
elif 'matcher' in hook and 'hooks' in hook:
|
||||
# Nested structure: {matcher: '...', hooks: [{type: 'command', ...}]}
|
||||
for nested_hook in hook['hooks']:
|
||||
if 'type' not in nested_hook:
|
||||
exit(1)
|
||||
else:
|
||||
exit(1)
|
||||
" 2>/dev/null; then
|
||||
add_warning "$plugin_name: hooks.json has invalid structure or events"
|
||||
fi
|
||||
done < <(find "$MARKETPLACE_PATH/plugins" -path "*/hooks/hooks.json" -print0 2>/dev/null)
|
||||
fi
|
||||
|
||||
# 3. Check agent references are valid (agent files exist and are markdown)
|
||||
if [[ -d "$MARKETPLACE_PATH/plugins" ]]; then
|
||||
while IFS= read -r -d '' agent_file; do
|
||||
plugin_name=$(basename "$(dirname "$(dirname "$agent_file")")")
|
||||
agent_name=$(basename "$agent_file")
|
||||
|
||||
# Check file is not empty
|
||||
if [[ ! -s "$agent_file" ]]; then
|
||||
add_warning "$plugin_name: empty agent file $agent_name"
|
||||
continue
|
||||
fi
|
||||
|
||||
# Check file has markdown content (at least a header)
|
||||
if ! grep -q '^#' "$agent_file" 2>/dev/null; then
|
||||
add_warning "$plugin_name: agent $agent_name missing markdown header"
|
||||
fi
|
||||
done < <(find "$MARKETPLACE_PATH/plugins" -path "*/agents/*.md" -print0 2>/dev/null)
|
||||
fi
|
||||
|
||||
# ============================================================================
|
||||
# Store new hash and report results
|
||||
# ============================================================================
|
||||
|
||||
# Always store the new hash (even if issues found - we don't want to recheck)
|
||||
echo "$CURRENT_HASH" > "$HASH_FILE"
|
||||
|
||||
# Report any issues found (non-blocking warning)
|
||||
if [[ $ISSUES_FOUND -gt 0 ]]; then
|
||||
echo "$PREFIX Plugin contract validation found $ISSUES_FOUND issue(s):"
|
||||
echo "$WARNINGS"
|
||||
echo "$PREFIX Run /validate-contracts for full details"
|
||||
fi
|
||||
|
||||
# Always exit 0 (non-blocking)
|
||||
exit 0
|
||||
@@ -1,174 +0,0 @@
|
||||
#!/bin/bash
|
||||
# contract-validator breaking change detection hook
|
||||
# Warns when plugin interface changes might break consumers
|
||||
# This is a PostToolUse hook - non-blocking, warnings only
|
||||
|
||||
PREFIX="[contract-validator]"
|
||||
|
||||
# Check if warnings are enabled (default: true)
|
||||
if [[ "${CONTRACT_VALIDATOR_BREAKING_WARN:-true}" != "true" ]]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Read tool input from stdin
|
||||
INPUT=$(cat)
|
||||
|
||||
# Extract file_path from JSON input
|
||||
FILE_PATH=$(echo "$INPUT" | grep -o '"file_path"[[:space:]]*:[[:space:]]*"[^"]*"' | head -1 | sed 's/.*"file_path"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/')
|
||||
|
||||
# If no file_path found, exit silently
|
||||
if [ -z "$FILE_PATH" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Check if file is a plugin interface file
|
||||
is_interface_file() {
|
||||
local file="$1"
|
||||
|
||||
case "$file" in
|
||||
*/plugin.json) return 0 ;;
|
||||
*/.claude-plugin/plugin.json) return 0 ;;
|
||||
*/hooks.json) return 0 ;;
|
||||
*/hooks/hooks.json) return 0 ;;
|
||||
*/.mcp.json) return 0 ;;
|
||||
*/agents/*.md) return 0 ;;
|
||||
*/commands/*.md) return 0 ;;
|
||||
*/skills/*.md) return 0 ;;
|
||||
esac
|
||||
|
||||
return 1
|
||||
}
|
||||
|
||||
# Exit if not an interface file
|
||||
if ! is_interface_file "$FILE_PATH"; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Check if file exists and is in a git repo
|
||||
if [[ ! -f "$FILE_PATH" ]]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Get the directory containing the file
|
||||
FILE_DIR=$(dirname "$FILE_PATH")
|
||||
FILE_NAME=$(basename "$FILE_PATH")
|
||||
|
||||
# Try to get the previous version from git
|
||||
cd "$FILE_DIR" 2>/dev/null || exit 0
|
||||
|
||||
# Check if we're in a git repo
|
||||
if ! git rev-parse --git-dir > /dev/null 2>&1; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Get previous version (HEAD version before current changes)
|
||||
PREV_CONTENT=$(git show HEAD:"$FILE_PATH" 2>/dev/null || echo "")
|
||||
|
||||
# If no previous version, this is a new file - no breaking changes possible
|
||||
if [ -z "$PREV_CONTENT" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Read current content
|
||||
CURR_CONTENT=$(cat "$FILE_PATH" 2>/dev/null || echo "")
|
||||
|
||||
if [ -z "$CURR_CONTENT" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
BREAKING_CHANGES=()
|
||||
|
||||
# Detect breaking changes based on file type
|
||||
case "$FILE_PATH" in
|
||||
*/plugin.json|*/.claude-plugin/plugin.json)
|
||||
# Check for removed or renamed fields in plugin.json
|
||||
|
||||
# Check if name changed
|
||||
PREV_NAME=$(echo "$PREV_CONTENT" | grep -o '"name"[[:space:]]*:[[:space:]]*"[^"]*"' | head -1)
|
||||
CURR_NAME=$(echo "$CURR_CONTENT" | grep -o '"name"[[:space:]]*:[[:space:]]*"[^"]*"' | head -1)
|
||||
if [ -n "$PREV_NAME" ] && [ "$PREV_NAME" != "$CURR_NAME" ]; then
|
||||
BREAKING_CHANGES+=("Plugin name changed - consumers may need updates")
|
||||
fi
|
||||
|
||||
# Check if version had major bump (semantic versioning)
|
||||
PREV_VER=$(echo "$PREV_CONTENT" | grep -o '"version"[[:space:]]*:[[:space:]]*"[^"]*"' | sed 's/.*"\([0-9]*\)\..*/\1/')
|
||||
CURR_VER=$(echo "$CURR_CONTENT" | grep -o '"version"[[:space:]]*:[[:space:]]*"[^"]*"' | sed 's/.*"\([0-9]*\)\..*/\1/')
|
||||
if [ -n "$PREV_VER" ] && [ -n "$CURR_VER" ] && [ "$CURR_VER" -gt "$PREV_VER" ] 2>/dev/null; then
|
||||
BREAKING_CHANGES+=("Major version bump detected - verify breaking changes documented")
|
||||
fi
|
||||
;;
|
||||
|
||||
*/hooks.json|*/hooks/hooks.json)
|
||||
# Check for removed hook events
|
||||
PREV_EVENTS=$(echo "$PREV_CONTENT" | grep -oE '"(PreToolUse|PostToolUse|UserPromptSubmit|SessionStart|SessionEnd|Notification|Stop|SubagentStop|PreCompact)"' | sort -u)
|
||||
CURR_EVENTS=$(echo "$CURR_CONTENT" | grep -oE '"(PreToolUse|PostToolUse|UserPromptSubmit|SessionStart|SessionEnd|Notification|Stop|SubagentStop|PreCompact)"' | sort -u)
|
||||
|
||||
# Find removed events
|
||||
REMOVED_EVENTS=$(comm -23 <(echo "$PREV_EVENTS") <(echo "$CURR_EVENTS") 2>/dev/null)
|
||||
if [ -n "$REMOVED_EVENTS" ]; then
|
||||
BREAKING_CHANGES+=("Hook events removed: $(echo $REMOVED_EVENTS | tr '\n' ' ')")
|
||||
fi
|
||||
|
||||
# Check for changed matchers
|
||||
PREV_MATCHERS=$(echo "$PREV_CONTENT" | grep -o '"matcher"[[:space:]]*:[[:space:]]*"[^"]*"' | sort -u)
|
||||
CURR_MATCHERS=$(echo "$CURR_CONTENT" | grep -o '"matcher"[[:space:]]*:[[:space:]]*"[^"]*"' | sort -u)
|
||||
if [ "$PREV_MATCHERS" != "$CURR_MATCHERS" ]; then
|
||||
BREAKING_CHANGES+=("Hook matchers changed - verify tool coverage")
|
||||
fi
|
||||
;;
|
||||
|
||||
*/.mcp.json)
|
||||
# Check for removed MCP servers
|
||||
PREV_SERVERS=$(echo "$PREV_CONTENT" | grep -o '"[^"]*"[[:space:]]*:' | grep -v "mcpServers" | sort -u)
|
||||
CURR_SERVERS=$(echo "$CURR_CONTENT" | grep -o '"[^"]*"[[:space:]]*:' | grep -v "mcpServers" | sort -u)
|
||||
|
||||
REMOVED_SERVERS=$(comm -23 <(echo "$PREV_SERVERS") <(echo "$CURR_SERVERS") 2>/dev/null)
|
||||
if [ -n "$REMOVED_SERVERS" ]; then
|
||||
BREAKING_CHANGES+=("MCP servers removed - tools may be unavailable")
|
||||
fi
|
||||
;;
|
||||
|
||||
*/agents/*.md)
|
||||
# Check if agent file was significantly reduced (might indicate removal of capabilities)
|
||||
PREV_LINES=$(echo "$PREV_CONTENT" | wc -l)
|
||||
CURR_LINES=$(echo "$CURR_CONTENT" | wc -l)
|
||||
|
||||
# If more than 50% reduction, warn
|
||||
if [ "$PREV_LINES" -gt 10 ] && [ "$CURR_LINES" -lt $((PREV_LINES / 2)) ]; then
|
||||
BREAKING_CHANGES+=("Agent definition significantly reduced - capabilities may be removed")
|
||||
fi
|
||||
|
||||
# Check if agent name/description changed in frontmatter
|
||||
PREV_DESC=$(echo "$PREV_CONTENT" | head -20 | grep -i "description" | head -1)
|
||||
CURR_DESC=$(echo "$CURR_CONTENT" | head -20 | grep -i "description" | head -1)
|
||||
if [ -n "$PREV_DESC" ] && [ "$PREV_DESC" != "$CURR_DESC" ]; then
|
||||
BREAKING_CHANGES+=("Agent description changed - verify consumer expectations")
|
||||
fi
|
||||
;;
|
||||
|
||||
*/commands/*.md|*/skills/*.md)
|
||||
# Check if command/skill was significantly changed
|
||||
PREV_LINES=$(echo "$PREV_CONTENT" | wc -l)
|
||||
CURR_LINES=$(echo "$CURR_CONTENT" | wc -l)
|
||||
|
||||
if [ "$PREV_LINES" -gt 10 ] && [ "$CURR_LINES" -lt $((PREV_LINES / 2)) ]; then
|
||||
BREAKING_CHANGES+=("Command/skill significantly reduced - behavior may change")
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
# Output warnings if any breaking changes detected
|
||||
if [[ ${#BREAKING_CHANGES[@]} -gt 0 ]]; then
|
||||
echo ""
|
||||
echo "$PREFIX WARNING: Potential breaking changes in $(basename "$FILE_PATH")"
|
||||
echo "$PREFIX ============================================"
|
||||
for change in "${BREAKING_CHANGES[@]}"; do
|
||||
echo "$PREFIX - $change"
|
||||
done
|
||||
echo "$PREFIX ============================================"
|
||||
echo "$PREFIX Consider updating CHANGELOG and notifying consumers"
|
||||
echo ""
|
||||
fi
|
||||
|
||||
# Always exit 0 - non-blocking
|
||||
exit 0
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"hooks": {
|
||||
"SessionStart": [
|
||||
{
|
||||
"matcher": "",
|
||||
"hooks": [
|
||||
{
|
||||
"type": "command",
|
||||
"command": "${CLAUDE_PLUGIN_ROOT}/hooks/auto-validate.sh"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"PostToolUse": [
|
||||
{
|
||||
"matcher": "Edit|Write",
|
||||
"hooks": [
|
||||
{
|
||||
"type": "command",
|
||||
"command": "${CLAUDE_PLUGIN_ROOT}/hooks/breaking-change-check.sh"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -65,6 +65,6 @@ Available MCP tools for contract-validator operations.
|
||||
## Error Handling
|
||||
|
||||
If MCP tools fail:
|
||||
1. Check if `/cv-setup` has been run
|
||||
1. Check if `/cv setup` has been run
|
||||
2. Verify session was restarted after setup
|
||||
3. Check MCP server venv exists and is valid
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
{"mcp_servers": ["data-platform"]}
|
||||
{
|
||||
"mcp_servers": [
|
||||
"data-platform"
|
||||
],
|
||||
"domain": "data"
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "data-platform",
|
||||
"version": "1.3.0",
|
||||
"version": "9.0.1",
|
||||
"description": "Data engineering tools with pandas, PostgreSQL/PostGIS, and dbt integration",
|
||||
"author": {
|
||||
"name": "Leo Miranda",
|
||||
@@ -20,6 +20,5 @@
|
||||
],
|
||||
"commands": [
|
||||
"./commands/"
|
||||
],
|
||||
"domain": "data"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -23,8 +23,8 @@ You are a strict data integrity auditor. Your role is to review code for proper
|
||||
## Trigger Conditions
|
||||
|
||||
Activate this agent when:
|
||||
- User runs `/data-review <path>`
|
||||
- User runs `/data-gate <path>`
|
||||
- User runs `/data review <path>`
|
||||
- User runs `/data gate <path>`
|
||||
- Projman orchestrator requests data domain gate check
|
||||
- Code review includes database operations, dbt models, or data pipelines
|
||||
|
||||
@@ -78,7 +78,7 @@ Activate this agent when:
|
||||
|
||||
### Review Mode (default)
|
||||
|
||||
Triggered by `/data-review <path>`
|
||||
Triggered by `/data review <path>`
|
||||
|
||||
**Characteristics:**
|
||||
- Produces detailed report with all findings
|
||||
@@ -89,7 +89,7 @@ Triggered by `/data-review <path>`
|
||||
|
||||
### Gate Mode
|
||||
|
||||
Triggered by `/data-gate <path>` or projman orchestrator domain gate
|
||||
Triggered by `/data gate <path>` or projman orchestrator domain gate
|
||||
|
||||
**Characteristics:**
|
||||
- Binary PASS/FAIL output
|
||||
@@ -203,7 +203,7 @@ Blocking Issues (2):
|
||||
2. portfolio_app/toronto/loaders/census.py:67 - References table 'census_raw' which does not exist
|
||||
Fix: Table was renamed to 'census_demographics' in migration 003.
|
||||
|
||||
Run /data-review for full audit report.
|
||||
Run /data review for full audit report.
|
||||
```
|
||||
|
||||
### Review Mode Output
|
||||
@@ -292,7 +292,7 @@ When called as a domain gate by projman orchestrator:
|
||||
|
||||
## Example Interactions
|
||||
|
||||
**User**: `/data-review dbt/models/staging/`
|
||||
**User**: `/data review dbt/models/staging/`
|
||||
**Agent**:
|
||||
1. Scans all .sql files in staging/
|
||||
2. Runs dbt_parse to validate project
|
||||
@@ -301,7 +301,7 @@ When called as a domain gate by projman orchestrator:
|
||||
5. Cross-references test coverage
|
||||
6. Returns detailed report
|
||||
|
||||
**User**: `/data-gate portfolio_app/toronto/`
|
||||
**User**: `/data gate portfolio_app/toronto/`
|
||||
**Agent**:
|
||||
1. Scans for Python files with pg_query/pg_execute
|
||||
2. Checks if referenced tables exist
|
||||
|
||||
@@ -18,12 +18,12 @@ This project uses the data-platform plugin for data engineering workflows.
|
||||
|
||||
| Command | Purpose |
|
||||
|---------|---------|
|
||||
| `/data-ingest` | Load data from files or database |
|
||||
| `/data-profile` | Generate statistical profile |
|
||||
| `/data-schema` | Show schema information |
|
||||
| `/data-explain` | Explain dbt model |
|
||||
| `/data-lineage` | Show data lineage |
|
||||
| `/data-run` | Execute dbt models |
|
||||
| `/data ingest` | Load data from files or database |
|
||||
| `/data profile` | Generate statistical profile |
|
||||
| `/data schema` | Show schema information |
|
||||
| `/data explain` | Explain dbt model |
|
||||
| `/data lineage` | Show data lineage |
|
||||
| `/data run` | Execute dbt models |
|
||||
|
||||
### data_ref Convention
|
||||
|
||||
@@ -36,9 +36,9 @@ DataFrames are stored with references. Use meaningful names:
|
||||
|
||||
### dbt Workflow
|
||||
|
||||
1. Always validate before running: `/data-run` includes automatic `dbt_parse`
|
||||
1. Always validate before running: `/data run` includes automatic `dbt_parse`
|
||||
2. For dbt 1.9+, check for deprecated syntax before commits
|
||||
3. Use `/data-lineage` to understand impact of changes
|
||||
3. Use `/data lineage` to understand impact of changes
|
||||
|
||||
### Database Access
|
||||
|
||||
@@ -69,22 +69,22 @@ DATA_PLATFORM_MAX_ROWS=100000
|
||||
|
||||
### Data Exploration
|
||||
```
|
||||
/data-ingest data/raw_customers.csv
|
||||
/data-profile raw_customers
|
||||
/data-schema
|
||||
/data ingest data/raw_customers.csv
|
||||
/data profile raw_customers
|
||||
/data schema
|
||||
```
|
||||
|
||||
### ETL Development
|
||||
```
|
||||
/data-schema orders # Understand source
|
||||
/data-explain stg_orders # Understand transformation
|
||||
/data-run stg_orders # Test the model
|
||||
/data-lineage fct_orders # Check downstream impact
|
||||
/data schema orders # Understand source
|
||||
/data explain stg_orders # Understand transformation
|
||||
/data run stg_orders # Test the model
|
||||
/data lineage fct_orders # Check downstream impact
|
||||
```
|
||||
|
||||
### Database Analysis
|
||||
```
|
||||
/data-schema # List all tables
|
||||
/data schema # List all tables
|
||||
pg_columns orders # Detailed schema
|
||||
st_tables # Find spatial data
|
||||
```
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
# /dbt-test - Run dbt Tests
|
||||
---
|
||||
name: data dbt-test
|
||||
---
|
||||
|
||||
# /data dbt-test - Run dbt Tests
|
||||
|
||||
## Skills to Load
|
||||
- skills/dbt-workflow.md
|
||||
@@ -12,7 +16,7 @@ Display header: `DATA-PLATFORM - dbt Tests`
|
||||
## Usage
|
||||
|
||||
```
|
||||
/dbt-test [selection] [--warn-only]
|
||||
/data dbt-test [selection] [--warn-only]
|
||||
```
|
||||
|
||||
## Workflow
|
||||
@@ -32,9 +36,9 @@ Execute `skills/dbt-workflow.md` test workflow:
|
||||
## Examples
|
||||
|
||||
```
|
||||
/dbt-test # Run all tests
|
||||
/dbt-test dim_customers # Tests for specific model
|
||||
/dbt-test tag:critical # Run critical tests only
|
||||
/data dbt-test # Run all tests
|
||||
/data dbt-test dim_customers # Tests for specific model
|
||||
/data dbt-test tag:critical # Run critical tests only
|
||||
```
|
||||
|
||||
## Required MCP Tools
|
||||
@@ -1,4 +1,8 @@
|
||||
# /data-explain - dbt Model Explanation
|
||||
---
|
||||
name: data explain
|
||||
---
|
||||
|
||||
# /data explain - dbt Model Explanation
|
||||
|
||||
## Skills to Load
|
||||
- skills/dbt-workflow.md
|
||||
@@ -13,7 +17,7 @@ Display header: `DATA-PLATFORM - Model Explanation`
|
||||
## Usage
|
||||
|
||||
```
|
||||
/data-explain <model_name>
|
||||
/data explain <model_name>
|
||||
```
|
||||
|
||||
## Workflow
|
||||
@@ -26,8 +30,8 @@ Display header: `DATA-PLATFORM - Model Explanation`
|
||||
## Examples
|
||||
|
||||
```
|
||||
/data-explain dim_customers
|
||||
/data-explain fct_orders
|
||||
/data explain dim_customers
|
||||
/data explain fct_orders
|
||||
```
|
||||
|
||||
## Required MCP Tools
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
name: data gate
|
||||
description: Data integrity compliance gate (pass/fail) for sprint execution
|
||||
gate_contract: v1
|
||||
arguments:
|
||||
@@ -7,21 +8,21 @@ arguments:
|
||||
required: true
|
||||
---
|
||||
|
||||
# /data-gate
|
||||
# /data gate
|
||||
|
||||
Binary pass/fail validation for data integrity compliance. Used by projman orchestrator during sprint execution to gate issue completion.
|
||||
|
||||
## Usage
|
||||
|
||||
```
|
||||
/data-gate <path>
|
||||
/data gate <path>
|
||||
```
|
||||
|
||||
**Examples:**
|
||||
```
|
||||
/data-gate ./dbt/models/staging/
|
||||
/data-gate ./portfolio_app/toronto/parsers/
|
||||
/data-gate ./dbt/
|
||||
/data gate ./dbt/models/staging/
|
||||
/data gate ./portfolio_app/toronto/parsers/
|
||||
/data gate ./dbt/
|
||||
```
|
||||
|
||||
## What It Does
|
||||
@@ -63,7 +64,7 @@ Blocking Issues (2):
|
||||
2. portfolio_app/toronto/loaders/census.py:67 - References table 'census_raw' which does not exist
|
||||
Fix: Table was renamed to 'census_demographics' in migration 003.
|
||||
|
||||
Run /data-review for full audit report.
|
||||
Run /data review for full audit report.
|
||||
```
|
||||
|
||||
## Integration with projman
|
||||
@@ -78,9 +79,9 @@ This command is automatically invoked by the projman orchestrator when:
|
||||
- PASS: Issue can be marked complete
|
||||
- FAIL: Issue stays open, blocker comment added with failure details
|
||||
|
||||
## Differences from /data-review
|
||||
## Differences from /data review
|
||||
|
||||
| Aspect | /data-gate | /data-review |
|
||||
| Aspect | /data gate | /data review |
|
||||
|--------|------------|--------------|
|
||||
| Output | Binary PASS/FAIL | Detailed report with all severities |
|
||||
| Severity | FAIL only | FAIL + WARN + INFO |
|
||||
@@ -95,7 +96,7 @@ This command is automatically invoked by the projman orchestrator when:
|
||||
- **Quick validation**: Fast pass/fail without full report
|
||||
- **Pre-merge checks**: Verify data changes before integration
|
||||
|
||||
For detailed findings including warnings and suggestions, use `/data-review` instead.
|
||||
For detailed findings including warnings and suggestions, use `/data review` instead.
|
||||
|
||||
## Requirements
|
||||
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
# /data-ingest - Data Ingestion
|
||||
---
|
||||
name: data ingest
|
||||
---
|
||||
|
||||
# /data ingest - Data Ingestion
|
||||
|
||||
## Skills to Load
|
||||
- skills/mcp-tools-reference.md
|
||||
@@ -11,7 +15,7 @@ Display header: `DATA-PLATFORM - Ingest`
|
||||
## Usage
|
||||
|
||||
```
|
||||
/data-ingest [source]
|
||||
/data ingest [source]
|
||||
```
|
||||
|
||||
## Workflow
|
||||
@@ -31,9 +35,9 @@ Display header: `DATA-PLATFORM - Ingest`
|
||||
## Examples
|
||||
|
||||
```
|
||||
/data-ingest data/sales.csv
|
||||
/data-ingest data/customers.parquet
|
||||
/data-ingest "SELECT * FROM orders WHERE created_at > '2024-01-01'"
|
||||
/data ingest data/sales.csv
|
||||
/data ingest data/customers.parquet
|
||||
/data ingest "SELECT * FROM orders WHERE created_at > '2024-01-01'"
|
||||
```
|
||||
|
||||
## Required MCP Tools
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
# /lineage-viz - Mermaid Lineage Visualization
|
||||
---
|
||||
name: data lineage-viz
|
||||
---
|
||||
|
||||
# /data lineage-viz - Mermaid Lineage Visualization
|
||||
|
||||
## Skills to Load
|
||||
- skills/lineage-analysis.md
|
||||
@@ -12,7 +16,7 @@ Display header: `DATA-PLATFORM - Lineage Visualization`
|
||||
## Usage
|
||||
|
||||
```
|
||||
/lineage-viz <model_name> [--direction TB|LR] [--depth N]
|
||||
/data lineage-viz <model_name> [--direction TB|LR] [--depth N]
|
||||
```
|
||||
|
||||
## Workflow
|
||||
@@ -31,9 +35,9 @@ Display header: `DATA-PLATFORM - Lineage Visualization`
|
||||
## Examples
|
||||
|
||||
```
|
||||
/lineage-viz dim_customers
|
||||
/lineage-viz fct_orders --direction TB
|
||||
/lineage-viz rpt_revenue --depth 2
|
||||
/data lineage-viz dim_customers
|
||||
/data lineage-viz fct_orders --direction TB
|
||||
/data lineage-viz rpt_revenue --depth 2
|
||||
```
|
||||
|
||||
## Required MCP Tools
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user