2025-08-21 19:03:25 +02:00
# SuperClaude Diagnostic Reference Guide
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
## Overview
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
This guide provides procedures for diagnosing issues with SuperClaude context files and configurations. Since SuperClaude is a collection of text files (not running software), diagnostics focus on file verification and configuration checking.
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
**Important**: There are no processes to monitor, no performance metrics to measure, and no system resources to analyze. SuperClaude is purely configuration files that Claude Code reads.
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
## Quick Diagnostics
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
### One-Line Health Check
2025-08-18 11:58:55 +02:00
```bash
2025-08-21 19:03:25 +02:00
# Quick status check
ls ~/.claude/CLAUDE.md & & echo "✅ SuperClaude installed" || echo "❌ Not installed"
2025-08-18 11:58:55 +02:00
```
2025-08-21 19:03:25 +02:00
### Basic Diagnostic Commands
2025-08-18 11:58:55 +02:00
```bash
2025-08-21 19:03:25 +02:00
# Check if SuperClaude is installed
python3 -m SuperClaude --version
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
# Count context files
find ~/.claude -name "*.md" -type f | wc -l
# Expected: 40+ files
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
# Check file sizes (context files should have content)
find ~/.claude -name "*.md" -type f -size 0
# Expected: No output (no empty files)
# Verify directory structure
tree -L 2 ~/.claude/
# Or without tree command:
ls -la ~/.claude/
2025-08-18 11:58:55 +02:00
```
2025-08-21 19:03:25 +02:00
## File System Diagnostics
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
### Context File Verification
2025-08-18 11:58:55 +02:00
```bash
2025-08-21 19:03:25 +02:00
#!/bin/bash
# Comprehensive context file check
echo "=== SuperClaude Context File Diagnostic ==="
# Define expected counts
2025-08-22 20:39:46 +02:00
EXPECTED_AGENTS=14
2025-08-21 19:03:25 +02:00
EXPECTED_COMMANDS=21
EXPECTED_MODES=6
# Count actual files
ACTUAL_AGENTS=$(ls ~/.claude/agents/*.md 2>/dev/null | wc -l)
ACTUAL_COMMANDS=$(ls ~/.claude/commands/*.md 2>/dev/null | wc -l)
ACTUAL_MODES=$(ls ~/.claude/modes/*.md 2>/dev/null | wc -l)
# Report findings
echo "Agents: $ACTUAL_AGENTS/$EXPECTED_AGENTS $([ $ACTUAL_AGENTS -ge $EXPECTED_AGENTS ] & & echo ✅ || echo ⚠️)"
echo "Commands: $ACTUAL_COMMANDS/$EXPECTED_COMMANDS $([ $ACTUAL_COMMANDS -ge $EXPECTED_COMMANDS ] & & echo ✅ || echo ⚠️)"
echo "Modes: $ACTUAL_MODES/$EXPECTED_MODES $([ $ACTUAL_MODES -ge $EXPECTED_MODES ] & & echo ✅ || echo ⚠️)"
# Check core files
for file in CLAUDE.md FLAGS.md RULES.md PRINCIPLES.md; do
if [ -f ~/.claude/$file ]; then
SIZE=$(wc -c < ~/.claude/$file)
echo "$file: $SIZE bytes ✅"
2025-08-18 11:58:55 +02:00
else
2025-08-21 19:03:25 +02:00
echo "$file: MISSING ❌"
2025-08-18 11:58:55 +02:00
fi
done
```
2025-08-21 19:03:25 +02:00
### Import System Check
2025-08-18 11:58:55 +02:00
```bash
2025-08-21 19:03:25 +02:00
# Verify import statements in CLAUDE.md
echo "=== Import System Check ==="
if [ -f ~/.claude/CLAUDE.md ]; then
echo "Imports found in CLAUDE.md:"
grep "^@import " ~/.claude/CLAUDE.md
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
# Count import statements
IMPORT_COUNT=$(grep -c "^@import " ~/.claude/CLAUDE.md)
echo "Total imports: $IMPORT_COUNT"
if [ $IMPORT_COUNT -ge 5 ]; then
echo "✅ Import system configured correctly"
else
echo "⚠️ Some imports may be missing"
fi
else
echo "❌ CLAUDE.md not found"
2025-08-18 11:58:55 +02:00
fi
```
2025-08-21 19:03:25 +02:00
## Configuration Diagnostics
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
### MCP Server Configuration Check
2025-08-18 11:58:55 +02:00
```bash
2025-08-21 19:03:25 +02:00
# Check MCP configuration
echo "=== MCP Configuration Diagnostic ==="
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
CONFIG_FILE=~/.claude.json
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
if [ -f "$CONFIG_FILE" ]; then
echo "✅ Configuration file exists"
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
# Validate JSON syntax
if python3 -c "import json; json.load(open('$CONFIG_FILE'))" 2>/dev/null; then
echo "✅ Valid JSON syntax"
# List configured servers
echo "Configured MCP servers:"
python3 -c "
import json
with open('$HOME/.claude.json') as f:
config = json.load(f)
if 'mcpServers' in config:
for server in config['mcpServers']:
print(f' - {server}')
else:
print(' No servers configured')
"
2025-08-18 11:58:55 +02:00
else
2025-08-21 19:03:25 +02:00
echo "❌ Invalid JSON syntax in $CONFIG_FILE"
2025-08-18 11:58:55 +02:00
fi
else
2025-08-21 19:03:25 +02:00
echo "⚠️ No MCP configuration file found"
echo " This is OK if you don't use MCP servers"
2025-08-18 11:58:55 +02:00
fi
```
2025-08-21 19:03:25 +02:00
### Permission Diagnostics
2025-08-18 11:58:55 +02:00
```bash
2025-08-21 19:03:25 +02:00
# Check file permissions
echo "=== File Permission Check ==="
# Check if files are readable
UNREADABLE_COUNT=0
for file in ~/.claude/**/*.md; do
if [ ! -r "$file" ]; then
echo "❌ Cannot read: $file"
((UNREADABLE_COUNT++))
fi
done
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
if [ $UNREADABLE_COUNT -eq 0 ]; then
echo "✅ All context files are readable"
2025-08-18 11:58:55 +02:00
else
2025-08-21 19:03:25 +02:00
echo "⚠️ Found $UNREADABLE_COUNT unreadable files"
echo "Fix with: chmod 644 ~/.claude/**/*.md"
2025-08-18 11:58:55 +02:00
fi
2025-08-21 19:03:25 +02:00
# Check directory permissions
for dir in ~/.claude ~/.claude/agents ~/.claude/commands ~/.claude/modes; do
if [ -d "$dir" ]; then
if [ -x "$dir" ]; then
echo "✅ $dir is accessible"
else
echo "❌ $dir is not accessible"
fi
else
echo "❌ $dir does not exist"
2025-08-18 11:58:55 +02:00
fi
2025-08-21 19:03:25 +02:00
done
2025-08-18 11:58:55 +02:00
```
2025-08-21 19:03:25 +02:00
## Common Issue Diagnostics
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
### Issue: Commands Not Recognized
2025-08-18 11:58:55 +02:00
```bash
2025-08-21 19:03:25 +02:00
# Diagnose command issues
COMMAND="implement" # Change to test different commands
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
echo "=== Diagnosing command: $COMMAND ==="
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
FILE=~/.claude/commands/$COMMAND.md
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
if [ -f "$FILE" ]; then
echo "✅ Command file exists"
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
# Check file size
SIZE=$(wc -c < "$FILE")
if [ $SIZE -gt 100 ]; then
echo "✅ File has content ($SIZE bytes)"
2025-08-18 11:58:55 +02:00
else
2025-08-21 19:03:25 +02:00
echo "⚠️ File seems too small ($SIZE bytes)"
2025-08-18 11:58:55 +02:00
fi
2025-08-21 19:03:25 +02:00
# Check for metadata
if head -10 "$FILE" | grep -q "^---"; then
echo "✅ Has metadata header"
else
echo "⚠️ Missing metadata header"
fi
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
# Check for command pattern
if grep -q "/sc:$COMMAND" "$FILE"; then
echo "✅ Contains command pattern"
2025-08-18 11:58:55 +02:00
else
2025-08-21 19:03:25 +02:00
echo "⚠️ Missing command pattern"
2025-08-18 11:58:55 +02:00
fi
2025-08-21 19:03:25 +02:00
else
echo "❌ Command file not found: $FILE"
echo "Available commands:"
ls ~/.claude/commands/ | sed 's/.md$//'
fi
2025-08-18 11:58:55 +02:00
```
2025-08-21 19:03:25 +02:00
### Issue: Agent Not Activating
2025-08-18 11:58:55 +02:00
```bash
2025-08-21 19:03:25 +02:00
# Diagnose agent issues
AGENT="python-expert" # Change to test different agents
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
echo "=== Diagnosing agent: $AGENT ==="
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
FILE=~/.claude/agents/$AGENT.md
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
if [ -f "$FILE" ]; then
echo "✅ Agent file exists"
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
# Check for trigger keywords
echo "Trigger keywords found:"
grep -A 5 "## Triggers" "$FILE" | tail -n +2
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
# Check for metadata
if head -10 "$FILE" | grep -q "^name:"; then
echo "✅ Has metadata"
2025-08-18 11:58:55 +02:00
else
2025-08-21 19:03:25 +02:00
echo "⚠️ Missing metadata"
2025-08-18 11:58:55 +02:00
fi
else
2025-08-21 19:03:25 +02:00
echo "❌ Agent file not found: $FILE"
echo "Available agents:"
ls ~/.claude/agents/ | sed 's/.md$//'
2025-08-18 11:58:55 +02:00
fi
```
2025-08-21 19:03:25 +02:00
## Installation Repair
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
### Quick Fix Script
2025-08-18 11:58:55 +02:00
```bash
2025-08-21 19:03:25 +02:00
#!/bin/bash
# SuperClaude Quick Fix Script
echo "=== SuperClaude Quick Fix ==="
# Check for common issues and fix them
ISSUES_FOUND=0
# Fix permissions
echo "Fixing file permissions..."
chmod 644 ~/.claude/*.md 2>/dev/null
chmod 644 ~/.claude/**/*.md 2>/dev/null
chmod 755 ~/.claude ~/.claude/agents ~/.claude/commands ~/.claude/modes 2>/dev/null
# Check for missing directories
for dir in agents commands modes; do
if [ ! -d ~/.claude/$dir ]; then
echo "⚠️ Missing directory: $dir"
echo " Run: SuperClaude install --components $dir"
((ISSUES_FOUND++))
fi
done
# Check for empty files
EMPTY_FILES=$(find ~/.claude -name "*.md" -type f -size 0 2>/dev/null)
if [ -n "$EMPTY_FILES" ]; then
echo "⚠️ Found empty files:"
echo "$EMPTY_FILES"
echo " Run: SuperClaude install --force"
((ISSUES_FOUND++))
2025-08-18 11:58:55 +02:00
fi
2025-08-21 19:03:25 +02:00
if [ $ISSUES_FOUND -eq 0 ]; then
echo "✅ No issues found"
2025-08-18 11:58:55 +02:00
else
2025-08-21 19:03:25 +02:00
echo "Found $ISSUES_FOUND issues - see recommendations above"
2025-08-18 11:58:55 +02:00
fi
2025-08-21 19:03:25 +02:00
```
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
### Complete Reinstallation
```bash
# Complete clean reinstall
echo "=== Clean Reinstall ==="
# Backup current installation
BACKUP_DIR=~/.claude.backup.$(date +%Y%m%d_%H%M%S)
if [ -d ~/.claude ]; then
cp -r ~/.claude "$BACKUP_DIR"
echo "✅ Backed up to $BACKUP_DIR"
2025-08-18 11:58:55 +02:00
fi
2025-08-21 19:03:25 +02:00
# Remove current installation
rm -rf ~/.claude
# Reinstall
SuperClaude install
# Verify installation
if [ -f ~/.claude/CLAUDE.md ]; then
echo "✅ Reinstallation successful"
2025-08-18 11:58:55 +02:00
else
2025-08-21 19:03:25 +02:00
echo "❌ Reinstallation failed"
echo "Restoring backup..."
cp -r "$BACKUP_DIR" ~/.claude
2025-08-18 11:58:55 +02:00
fi
```
2025-08-21 19:03:25 +02:00
## What These Diagnostics DON'T Do
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
### Not Applicable Concepts
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
- **CPU/Memory Monitoring**: No processes to monitor
- **Performance Metrics**: No code execution to measure
- **Network Analysis**: No network operations (except MCP)
- **Process Management**: No running processes
- **Resource Optimization**: No resources consumed
- **Execution Timing**: No code executes
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
### Focus on What Matters
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
- **File Presence**: Are context files installed?
- **File Integrity**: Are files readable and complete?
- **Configuration Validity**: Is JSON syntax correct?
- **Directory Structure**: Is organization correct?
- **Permissions**: Can Claude Code read the files?
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
## Summary
2025-08-18 11:58:55 +02:00
2025-08-21 19:03:25 +02:00
SuperClaude diagnostics are simple: verify files exist, check they're readable, and ensure configurations are valid. Since it's just text files that Claude Code reads, there's no complex system monitoring or performance analysis needed. If files are present and readable, SuperClaude is working.