Communitygithub.com

hamza-ali-shahjahan/hamzaish

進入 Builder Mode——一個 AI 原生新創工廠與作業系統,可指向 Claude Code(或 Cursor/Codex/Windsurf)使用。

hamzaish 是什麼?

這是一個專為 AI 代理工具(如 Claude Code、Cursor、Codex 與 Windsurf)設計的技能,名為「/tidy——清除階段」。其主要功能是掃描並清除程式碼倉庫中積累的「腐化物」,包括指向已移動或被 gitignore 檔案的連結、意外提交的機密金鑰、未被任何資源引用的靜態資產,以及無法從 npm 解析的依賴項。此技能採用「先報告、後建議、再詢問、最後修復」的流程:執行後會先呈現每個類別的數量摘要,然後建議哪些項目需要處理,接著讓操作者選擇要清理的內容,最後在確認後才進行修復。它支援對單一或多個倉庫(透過 `--all` 旗標)進行批次掃描,並提供 `--fix` 與 `--apply` 選項讓使用者預覽變更再套用。自動修復僅限於處理無效的文字連結;機密金鑰、依賴項、圖片/HTML 連結與檔案刪除均需人工審核與處理,以確保判斷而非機械式的行編輯。該技能可在任何包含 `scripts/tidy.ts` 的倉庫路徑上執行,適合大規模清理任務。

相容平台✓Claude Code✓Codex CLI✓Cursor✓Windsurf
npx skills add hamza-ali-shahjahan/hamzaish

在你喜歡的 AI 中提問

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

說明文件

/tidy——清除階段

每個倉庫都會積累腐化物:指向已移動或被 gitignore 檔案的連結、意外提交的金鑰、沒有被任何資源引用的資產、安裝時 404 的依賴項。這些問題在日常中並不顯眼,卻總在最糟的時刻浮現(讀者看到 404、CI 失敗、金鑰外洩)。/tidy 是讓你有意識地發現並清除這些問題的階段。

這是一個階段,而非關卡。快速防護措施(check-changelog、check-assets)會在每次推送時阻擋;/tidy 則是當你準備清理時,所進行的廣泛、先報告再處理的掃描。

如何執行

bun run tidy                      # 當前倉庫 → 摘要 + 建議後續步驟
bun run tidy <path>               # 指定倉庫
bun run tidy --all ~/Claude       # 指定資料夾下的每個 git 倉庫 → 一個彙總表格
bun run tidy --links              # 深入一個類別(--secrets --files --deps)

它掃描四種腐化物,並先顯示範圍(每個類別的數量),讓你永遠不會被大量輸出淹沒:

所捕捉的內容
🔗 連結指向缺少檔案或僅解析到 gitignored 目標的 markdown/HTML 連結(在作者的硬碟上可以運作,但對其他人則是 404)
🔑 機密高可信度的已提交金鑰模式(AWS、Stripe、GitHub、Google、Slack、私鑰區塊)——標記為需審查,而非自動判定
🗑 死檔已提交的圖片/資產,但沒有任何資源引用——可以安全刪除
📦 依賴項package.json 中無法在 npm 上解析的依賴項(dead-@inngest/sdk 類)

流程(報告 → 建議 → 詢問 → 修復)

  1. 執行。 呈現摘要表格——每個類別、每個倉庫的範圍。
  2. 建議。 指出哪些類別重要及其原因(損壞的連結是讀者的 404;標記的機密需要輪替;無法解析的依賴項破壞每次安裝)。
  3. 詢問。 讓操作者選擇要清理的內容。永遠不要假設。
  4. 在確認後修復——先規劃,再套用。 bun run tidy --fix <repo> 會先印出精確的變更計劃(哪些損壞的連結會被解除連結)而不寫入任何內容;重新加上 --apply 來套用這些編輯。這樣你永遠先看到每個變更。自動修復的範圍刻意狹窄:它只會解除連結損壞或被 gitignore 的文字連結([text](bad) → text)。機密、依賴項、圖片/HTML 連結以及檔案刪除永遠不會自動套用——它們會作為手動項目列出,並附上指引(輪替金鑰、選擇正確的套件),因為它們的修復涉及判斷,而非行編輯。使用 --all 廣泛調查,然後一次 --fix 一個倉庫。

紀律

  • 始終先報告。 價值在於看到腐化物,然後才動手。
  • 不要將其設為關卡。 /tidy 執行較慢(網路依賴項檢查)且範圍廣泛——將其保持為一個階段,而非推送阻擋器。狹窄的防護措施仍是關卡。
  • 機密需經過審查。 模式匹配只是提示你去查看,而非最終判定——如果屬實,修復方式是輪替金鑰,而不僅僅是刪除那行程式碼。
  • 跳過已凍結的目錄(_archive/、node_modules/)——它們不屬於你的清理範圍。
  • 引擎可攜帶。 scripts/tidy.ts 可以針對任何倉庫路徑執行——這正是讓掃描超過 100 個倉庫只需單一命令的原因。

相關技能