CommunityCodierung & Entwicklunggithub.com

codemap

Projektdateien bestimmter Typen in einem Aufruf abbilden, gruppiert nach Verzeichnis, wahlweise mit Klassen/Funktionen/Exporten jeder Datei. Nutzen Sie es vor dem Lesen von Dateien, wenn Sie alle Dateien eines Typs benötigen (z. B. alle .PHP-Controller, alle .css/.scss-Quellen) oder eine Übersicht über die Definitionen eines Verzeichnisses wünschen.

Was ist codemap?

codemap ist ein Skill für KI-Agenten wie Claude Code, Cursor oder Codex, der eine kompakte, sortierte Karte der Dateien eines Projekts nach Dateityp und Verzeichnis erstellt. Es wird durch ein CLI-Skript ausgeführt, das den Arbeitsbaum bei jedem Aufruf neu liest und nie schreibt. Der Skill eignet sich besonders, wenn Sie alle Dateien eines oder mehrerer Typen benötigen, ohne deren genauen Speicherort zu kennen, oder wenn Sie einen Überblick über die Definitionen eines Verzeichnisses (Klassen, Funktionen, Exporte) erhalten möchten, bevor Sie Dateien einzeln lesen. Optionen wie `--ext`, `--dir`, `--symbols` und `--max` ermöglichen eine flexible Steuerung; `--exclude` filtert unerwünschte Pfade. Die Ausgabe erfolgt im Markdown-Stil und kann bei Bedarf durch `--max` begrenzt werden. Der Skill respektiert `.gitignore` und überspringt standardmäßig `vendor/`, `node_modules/`, Build-Artefakte, minifizierte Dateien und Source Maps. Symbole werden aus zeilenbasierten Mustern extrahiert (z. B. PHP-Klassen/Funktionen, JS/TS-Exports, Python-Klassen/Funktionen, Go-Typen/Funktionen, CSS-Custom-Properties und SCSS/Less-Mixins).

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Borcioo/claude-skills/tree/HEAD/experiments/codemap/skills/codemap

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht codemap?

Führen Sie das gebündelte Skript aus. Es liest den Arbeitsbaum bei jedem Aufruf frisch ein und gibt eine kompakte, sortierte Karte aus; es schreibt nie etwas.

${CLAUDE_SKILL_DIR}/scripts/codemap --ext php,blade.php --dir app
${CLAUDE_SKILL_DIR}/scripts/codemap --ext css,scss --symbols
${CLAUDE_SKILL_DIR}/scripts/codemap --ext ts,tsx --dir src --symbols --max 150

Optionen: --ext (durch Komma getrennt, keine Punkte nötig), --dir, --symbols, --max (Ausgabezeilen-Limit, Standard 300), --exclude REGEX (wiederholbar).

Die Ausgabe sieht so aus:

# codemap: 12 Dateien in 3 Verzeichnissen (dir: app, ext: php, via rg)
Http/Controllers/
  UserController.php: class UserController, fn index, fn store

Wann es verwendet werden sollte

  • Sie benötigen alle Dateien eines oder mehrerer Typen und wissen nicht, wo sie sich befinden.
  • Sie sind dabei, mehrere Dateien zu lesen, nur um herauszufinden, was sie definieren: führen Sie es zuerst mit --symbols aus und lesen Sie nur die Dateien, die relevant sind.
  • Ein Unteragent beginnt in einem unbekannten Bereich: Übergeben Sie ihm die Codemap dieses Verzeichnisses, anstatt ihn von Grund auf suchen zu lassen.

Wann es nicht verwendet werden sollte

  • Sie kennen den Dateinamen oder ein genaues Muster: Verwenden Sie Glob.
  • Sie benötigen Text innerhalb von Dateien: Verwenden Sie Grep.
  • Sie benötigen Definitionen oder Referenzen eines Symbols und ein LSP-Plugin ist aktiviert: Verwenden Sie das LSP-Tool.

Fallstricke

  • .gitignore wird beachtet, wenn ripgrep oder git verfügbar ist; vendor/, node_modules/, Build-Ausgabe, minifizierte Dateien und Source Maps werden immer übersprungen.
  • Symbole stammen aus zeilenbasierten Mustern, nicht aus einem Parser: PHP-Klassen/Funktionen auf oberster Ebene, JS/TS-exports, Python-class/def auf oberster Ebene, Go-type/func, CSS-Custom-Properties (als Zählung) und SCSS/Less-Mixins. Behandeln Sie sie als Inhaltsverzeichnis und lesen Sie dann die Datei.
  • Wenn die Ausgabe mit # ... truncated endet, schränken Sie mit --dir, --ext oder --exclude ein, anstatt --max weit zu erhöhen.

Verwandte Skills