Community程式設計與開發github.com

Borcioo/claude-skills

在一次呼叫中,按目錄分組列出專案中指定類型的檔案,可選擇性地顯示每個檔案的類別、函式或匯出項目。適合在需要某類型所有檔案(例如所有 .php 控制器、所有 .css/.scss 來源)或了解目錄定義內容時使用。若已知檔案名稱或單一 glob 模式,請改用 Glob。

claude-skills 是什麼?

codemap 是一個專為 AI 助手設計的 CLI 工具,能快速掃描專案目錄,根據副檔名分組列出檔案,並選擇性地提取檔案中的類別、函式或匯出符號。這對需要一次掌握某種類型所有檔案位置與定義的場景非常實用,例如在建構程式碼庫全景或子代理開始新任務時,能大幅減少盲目讀取檔案的次數,提高效率。支援多種語言(PHP、JS/TS、Python、Go、CSS/SCSS/Less),並能自動忽略 .gitignore 規則與 `node_modules` 等常見排除目錄。輸出結果以目錄層級分組呈現,並可透過 `--dir`、`--ext`、`--exclude` 與 `--max` 參數精確控制範圍。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Borcioo/claude-skills/tree/HEAD/experiments/codemap/skills/codemap

Installed? Explore more 程式設計與開發 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

codemap

執行捆綁的腳本。每次呼叫時都會重新讀取工作樹,並印出緊湊、排序的映射;它從不寫入任何內容。

${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

選項:--ext(以逗號分隔,無需點號)、--dir、--symbols、--max(輸出行數上限,預設 300)、--exclude REGEX(可重複)。

輸出範例:

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

何時使用

  • 你需要一個或多個類型的所有檔案,但不知道它們的位置。
  • 你準備讀取多個檔案,只為了了解它們的定義:先使用 --symbols 執行,然後只讀取需要的檔案。
  • 子代理開始處理不熟悉的區域:將該目錄的 codemap 傳遞給它,而不是讓它從頭搜尋。

何時不使用

  • 你知道檔案名稱或精確的模式:請使用 Glob。
  • 你需要檔案內的文字:請使用 Grep。
  • 你需要某個符號的定義或引用,且已啟用 LSP 外掛:請使用 LSP 工具。

注意事項

  • 當 ripgrep 或 git 可用時,會遵循 .gitignore;vendor/、node_modules/、建置輸出、最小化檔案與來源映射一律跳過。
  • 符號是基於行模式而非解析器取得:頂層 PHP 類別/函式、JS/TS 的 export、Python 頂層的 class/def、Go 的 type/func、CSS 自訂屬性(以計數方式呈現)以及 SCSS/Less mixin。請將其視為目錄,然後再讀取檔案。
  • 當輸出結尾出現 # ... truncated 時,請使用 --dir、--ext 或 --exclude 縮小範圍,而不是大幅提高 --max。

相關技能