Files
leo-claude-mktplace/plugins/claude-config-maintainer/commands/init.md
lmiranda 9550a85f4d fix(hooks): remove all venv auto-repair code that deleted .venv directories
BREAKING: Removes automatic venv management that was causing session failures

Changes:
- Delete scripts/venv-repair.sh (was deleting and recreating venvs)
- Remove auto-repair code from projman/hooks/startup-check.sh
- Remove venv-repair call from scripts/post-update.sh
- Remove rm -rf .venv instructions from docs/UPDATING.md and CONFIGURATION.md
- Update docs/CANONICAL-PATHS.md to remove venv-repair.sh reference

Additionally:
- Add Pre-Change Protocol to CLAUDE.md (mandatory dependency check before edits)
- Add Pre-Change Protocol enforcement to claude-config-maintainer plugin
- Add Development Context section to CLAUDE.md clarifying which plugins are
  used in this project vs only being developed
- Reorganize commands table to separate relevant vs non-relevant commands

The venv auto-repair was the root cause of repeated MCP server failures,
requiring manual setup.sh runs after every session start.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 11:33:25 -05:00

6.5 KiB

description
description
Initialize a new CLAUDE.md file for a project

Initialize CLAUDE.md

This command creates a new CLAUDE.md file tailored to your project, gathering context and generating appropriate content.

Visual Output

When executing this command, display the plugin header:

┌──────────────────────────────────────────────────────────────────┐
│  ⚙️ CONFIG-MAINTAINER · CLAUDE.md Initialization                 │
└──────────────────────────────────────────────────────────────────┘

Then proceed with the initialization.

What This Command Does

  1. Gather Context - Analyzes project structure and asks clarifying questions
  2. Detect Stack - Identifies technologies, frameworks, and tools
  3. Generate Content - Creates tailored CLAUDE.md sections
  4. Review & Refine - Allows customization before saving
  5. Save File - Creates the CLAUDE.md in project root

Usage

/config-init

Or with options:

/config-init --template=api        # Use API project template
/config-init --minimal             # Create minimal version
/config-init --comprehensive       # Create detailed version

Initialization Workflow

CLAUDE.md Initialization
========================

Step 1: Project Analysis
------------------------
Scanning project structure...

Detected:
- Language: Python 3.11
- Framework: FastAPI
- Package Manager: pip (requirements.txt found)
- Testing: pytest
- Docker: Yes (Dockerfile found)
- Git: Yes (.git directory)

Step 2: Clarifying Questions
----------------------------

1. Project Description:
   What does this project do? (1-2 sentences)
   > [User provides description]

2. Build/Run Commands:
   Detected commands - are these correct?
   - Install: pip install -r requirements.txt
   - Test: pytest
   - Run: uvicorn main:app --reload
   [Y/n/edit]

3. Critical Rules:
   Any rules Claude MUST follow?
   Examples: "Never modify migrations", "Always use type hints"
   > [User provides rules]

4. Sensitive Areas:
   Any files/directories Claude should be careful with?
   > [User provides or skips]

Step 3: Generate CLAUDE.md
--------------------------

Generating content based on:
- Project type: FastAPI web API
- Detected technologies
- Your provided context

Preview:

---
# CLAUDE.md

## Project Overview
[Generated description]

## Quick Start

```bash
pip install -r requirements.txt  # Install dependencies
pytest                           # Run tests
uvicorn main:app --reload        # Start dev server

Architecture

[Generated based on structure]

Critical Rules

[Your provided rules]

File Structure

[Generated from analysis]

Save this CLAUDE.md? [Y/n/edit]

Step 4: Complete

CLAUDE.md created successfully!

Location: /path/to/project/CLAUDE.md Lines: 87 Score: 85/100 (following best practices)

Recommendations:

  • Run /config-analyze periodically to maintain quality
  • Update when adding major features
  • Add troubleshooting section as issues are discovered

## Templates

### Minimal Template
For small projects or when starting fresh:
- Project Overview (required)
- Quick Start (required)
- Critical Rules (required)
- **Pre-Change Protocol (required)**

### Standard Template (default)
For typical projects:
- Project Overview
- Quick Start
- Architecture
- Critical Rules
- **Pre-Change Protocol**
- Common Operations
- File Structure

### Comprehensive Template
For large or complex projects:
- All standard sections plus:
- Detailed Architecture
- **Pre-Change Protocol**
- Troubleshooting
- Integration Points
- Development Workflow
- Deployment Notes

### Pre-Change Protocol Section (MANDATORY in ALL templates)

**This section MUST be included in every generated CLAUDE.md:**

```markdown
## ⛔ MANDATORY: Before Any Code Change

**Claude MUST show this checklist BEFORE editing any file:**

### 1. Impact Search Results
Run and show output of:
\`\`\`bash
grep -rn "PATTERN" --include="*.sh" --include="*.md" --include="*.json" --include="*.py" | grep -v ".git"
\`\`\`

### 2. Files That Will Be Affected
Numbered list of every file to be modified, with the specific change for each.

### 3. Files Searched But Not Changed (and why)
Proof that related files were checked and determined unchanged.

### 4. Documentation That References This
List of docs that mention this feature/script/function.

**User verifies this list before Claude proceeds. If Claude skips this, stop immediately.**

### After Changes
Run the same grep and show results proving no references remain unaddressed.

Rationale: This protocol prevents incomplete changes where Claude modifies some files but misses others that reference the same code, causing cascading bugs.

Auto-Detection

The command automatically detects:

What How
Language File extensions, config files
Framework package.json, requirements.txt, etc.
Build system Makefile, package.json scripts, etc.
Testing pytest.ini, jest.config, etc.
Docker Dockerfile, docker-compose.yml
Database Connection strings, ORM configs

Customization

After generation, you can:

  • Edit any section before saving
  • Add additional sections
  • Remove unnecessary sections
  • Adjust detail level
  • Add project-specific content

When to Use

Run /config-init when:

  • Starting a new project
  • Project lacks CLAUDE.md
  • Existing CLAUDE.md is outdated/poor quality
  • Taking over an unfamiliar project

Tips

  1. Provide accurate description - This shapes the whole file
  2. Include critical rules - What must Claude never do?
  3. Review generated content - Auto-detection isn't perfect
  4. Start minimal, grow as needed - Add sections when required
  5. Keep it current - Update when project changes significantly

Examples

For a CLI Tool

/config-init

> Description: CLI tool for managing cloud infrastructure
> Critical rules: Never delete resources without confirmation, always show dry-run first

For a Web App

/config-init

> Description: E-commerce platform with React frontend and Node.js backend
> Critical rules: Never expose API keys, always validate user input, follow the existing component patterns

For a Library

/config-init --template=minimal

> Description: Python library for parsing log files
> Critical rules: Maintain backward compatibility, all public functions need docstrings