Skip to content
Development
Command

/diagnose

RTK environment diagnostics - Checks installation, hooks, version, command routing

From plugin
rtk
75k9 skills6 agents9 commands
Install
$ npx -y skills add rtk-ai/rtk --agent claude-code

How it fires

How this command gets triggered: by you, by Claude, or both.

  • Fires itselfClaude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/diagnose

Context preview

What this command does when you run it.

RTK environment diagnostics - Checks installation, hooks, version, command routing

Command definition

diagnose.md
model: haiku
description: RTK environment diagnostics - Checks installation, hooks, version, command routing

/diagnose

Vérifie l'état de l'environnement RTK et suggère des corrections.

Quand utiliser

  • **Automatiquement suggéré** quand Claude détecte ces patterns d'erreur :
  • `rtk: command not found` → RTK non installé ou pas dans PATH
  • Hook errors in Claude Code → Hooks mal configurés ou non exécutables
  • `Unknown command` dans RTK → Version incompatible ou commande non supportée
  • Token savings reports missing → `rtk gain` not working
  • Command routing errors → Hook integration broken
  • **Manuellement** après installation, mise à jour RTK, ou si comportement suspect

Exécution

1. Vérifications parallèles

Lancer ces commandes en parallèle :

# RTK installation check
which rtk && rtk --version || echo "❌ RTK not found in PATH"
# Git status (verify working directory)
git status --short && git branch --show-current
# Hook configuration check
if [ -f ".claude/hooks/rtk-rewrite.sh" ]; then
    echo "✅ OK: rtk-rewrite.sh hook present"
    # Check if hook is executable
    if [ -x ".claude/hooks/rtk-rewrite.sh" ]; then
        echo "✅ OK: hook is executable"
    else
        echo "⚠️ WARNING: hook not executable (chmod +x needed)"
    fi
else
    echo "❌ MISSING: rtk-rewrite.sh hook"
fi
# Hook rtk-suggest.sh check
if [ -f ".claude/hooks/rtk-suggest.sh" ]; then
    echo "✅ OK: rtk-suggest.sh hook present"
    if [ -x ".claude/hooks/rtk-suggest.sh" ]; then
        echo "✅ OK: hook is executable"
    else
        echo "⚠️ WARNING: hook not executable (chmod +x needed)"
    fi
else
    echo "❌ MISSING: rtk-suggest.sh hook"
fi
# Claude Code context check
if [ -n "$CLAUDE_CODE_HOOK_BASH_TEMPLATE" ]; then
    echo "✅ OK: Running in Claude Code context"
    echo "   Hook env var set: CLAUDE_CODE_HOOK_BASH_TEMPLATE"
else
    echo "⚠️ WARNING: Not running in Claude Code (hooks won't activate)"
    echo "   CLAUDE_CODE_HOOK_BASH_TEMPLATE not set"
fi
# Test command routing (dry-run)
if command -v rtk >/dev/null 2>&1; then
    # Test if rtk gain works (validates install)
    if rtk --help | grep -q "gain"; then
        echo "✅ OK: rtk gain available"
    else
        echo "❌ MISSING: rtk gain command (old version or wrong binary)"
    fi
else
    echo "❌ RTK binary not found"
fi

2. Validate token analytics

# Run rtk gain to verify analytics work
if command -v rtk >/dev/null 2>&1; then
    echo ""
    echo "📊 Token Savings (last 5 commands):"
    rtk gain --history 2>&1 | head -8 || echo "⚠️ rtk gain failed"
else
    echo "⚠️ Cannot test rtk gain (binary not installed)"
fi

3. Quality checks (if in RTK repo)

# Only run if we're in RTK repository
if [ -f "Cargo.toml" ] && grep -q 'name = "rtk"' Cargo.toml 2>/dev/null; then
    echo ""
    echo "🦀 RTK Repository Quality Checks:"

    # Check if cargo fmt passes
    if cargo fmt --all --check >/dev/null 2>&1; then
        echo "✅ OK: cargo fmt (code formatted)"
    else
        echo "⚠️ WARNING: cargo fmt needed"
    fi

    # Check if cargo clippy would pass (don't run full check, just verify binary)
    if command -v cargo-clippy >/dev/null 2>&1 || cargo clippy --version >/dev/null 2>&1; then
        echo "✅ OK: cargo clippy available"
    else
        echo "⚠️ WARNING: cargo clippy not installed"
    fi
else
    echo "ℹ️ Not in RTK repository (skipping quality checks)"
fi

Format de sortie

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔍 RTK Environment Diagnostic
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📦 RTK Binary:      ✅ OK (v0.16.0) | ❌ NOT FOUND
🔗 Hooks:           ✅ OK (rtk-rewrite.sh + rtk-suggest.sh executable)
                    ❌ MISSING or ⚠️ WARNING (not executable)
📊 Token Analytics: ✅ OK (rtk gain working)
                    ❌ FAILED (command not available)
🎯 Claude Context:  ✅ OK (hook environment detected)
                    ⚠️ WARNING (not in Claude Code)
🦀 Code Quality:    ✅ OK (fmt + clippy ready) [if in RTK repo]
                    ⚠️ WARNING (needs formatting/clippy)

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Actions suggérées

Utiliser `AskUserQuestion` si problèmes détectés :

question: "Problèmes détectés. Quelles corrections appliquer ?"
header: "Fixes"
multiSelect: true
options:
  - label: "cargo install --path ."
    description: "Installer RTK localement depuis le repo"
  - label: "chmod +x .claude/hooks/bash/*.sh"
    description: "Rendre les hooks exécutables"
  - label: "Tout corriger (recommandé)"
    description: "Install RTK + fix hooks permissions"

**Adaptations selon contexte** :

Si RTK non installé

options:
  - label: "cargo install --path ."
    description: "Installer RTK localement (si dans le repo)"
  - label: "cargo install rtk"
    description: "Installer RTK depuis crates.io (dernière release)"
  - label: "brew install rtk-ai/tap/rtk"
    description: "Installer RTK via Homebrew (macOS/Linux)"

Si hooks manquants/non exécutables

options:
  - label: "chmod +x .claude/hooks/*.sh"
    description: "Rendre tous les hooks exécutables"
  - label: "Copier hooks depuis template"
    description: "Si hooks manquants, copier depuis repository principal"

Si rtk gain échoue

options:
  - label: "Réinstaller RTK"
    description: "cargo install --path . --force (version outdated?)"
  - label: "Vérifier version"
    description: "rtk --version (besoin v0.16.0+ pour rtk gain)"

Exécution des fixes

Fix 1 : Installer RTK localement

# Depuis la racine du repo RTK
cargo install --path .
# Vérifier installation
which rtk && rtk --version

Fix 2 : Rendre hooks exécutables

chmod +x .claude/hooks/*.sh
# Vérifier permissions
ls -la .claude/hooks/*.sh

Fix 3 : Tout corriger (recommandé)

# Install RTK
cargo install --path .

# Fix hooks permissio
Read more
Ships withrtk

CLI proxy that reduces LLM token consumption by 60-90% on common dev commands. Single Rust binary, zero dependencies

Get the whole plugin