npx claudepluginhub cashwu/claude-code-snapshot --plugin snapshot基於 tzangms (海總理) 的 Vibe Coding 方法論
Snapshot Plugin 讓 AI 可以快速產生和維護專案的 snapshot.json「專案地圖」,大幅減少 AI 理解專案結構的時間。
Snapshot 是一個給 AI 看的「專案地圖」檔案,讓 AI 能快速了解專案的結構和功能,而不需要逐一掃描所有檔案。
當專案變大後,與 AI 協作開發會遇到以下問題:
Snapshot 的解決方案:
# 新增 marketplace
/plugin marketplace add cashwu/claude-code-snapshot
# 安裝 plugin
/plugin install snapshot
| 指令 | 說明 |
|---|---|
/snapshot | 掃描專案並產生 .snapshot/snapshot.json |
/snapshot-link | 在 CLAUDE.md 加入 snapshot 參考提示 |
/snapshot-link 說明這個指令會在專案的 CLAUDE.md 檔案中加入 snapshot 參考提示,讓 AI 在每次新對話開始時自動知道去讀取 .snapshot/snapshot.json。
使用情境:
/snapshot 使用,完成完整的設定執行結果:
CLAUDE.md 不存在 → 自動建立並加入提示/snapshot
AI 會自動:
.snapshot/ 目錄.snapshot/snapshot.json根據專案規模和架構,Snapshot 會自動決定輸出模式:
your-project/
├── .snapshot/
│ └── snapshot.json # 專案快照(給 AI 看的)
├── src/
└── ...
your-project/
├── .snapshot/
│ ├── index.json # 主索引
│ └── projects/
│ ├── module-a.json # 子專案 A
│ └── module-b.json # 子專案 B
├── module-a/
├── module-b/
└── ...
your-project/
├── .snapshot/
│ ├── index.json # 主索引
│ └── modules/
│ ├── controllers.json # 控制器模組
│ ├── services.json # 服務模組
│ └── ...
├── src/
└── ...
Snapshot 會根據專案規模和架構自動決定是否分檔:
| 條件 | 輸出模式 | 說明 |
|---|---|---|
| 多專案架構 | projects | 自動偵測 Java multi-module、.NET solution、Monorepo |
| 大型單一專案 | modules | 模組數量超過 50 個時自動分檔 |
| 一般專案 | none | 維持單一 snapshot.json |
settings.gradle 或 settings.gradle.kts 中有 include 語句*.sln 檔案中包含多個 *.csprojpnpm-workspace.yaml、lerna.json、或 package.json 中的 workspaces| 類型 | 偵測方式 | 主要分析項目 |
|---|---|---|
| Java (Spring) | build.gradle, pom.xml | @Controller, @Service, @Repository, @Entity |
| Kotlin (Android) | build.gradle.kts, AndroidManifest.xml | Activity, Fragment, ViewModel, Repository |
| Python | requirements.txt, pyproject.toml | 模組、類別、函數 |
| JavaScript/TypeScript | package.json | components, API routes, hooks |
| C# (.NET) | *.csproj, *.sln | Controllers, Services, Models |
| 其他 | 自動偵測 | 根據檔案結構分析 |
{
"project": "my-app",
"description": "專案描述",
"version": "1.0",
"generated_at": "2025-01-01T00:00:00Z",
"tech_stack": {
"language": "TypeScript",
"framework": "Next.js",
"build_tool": "npm",
"dependencies": ["react", "next", "prisma"]
},
"structure": {
"entry_point": {
"path": "src/app/page.tsx",
"purpose": "首頁入口"
},
"directories": {
"src/app/": "App Router 頁面",
"src/components/": "React 元件",
"src/lib/": "工具函數"
}
},
"modules": {
"components": {
"Header": {
"path": "src/components/Header.tsx",
"purpose": "網站導覽列"
}
},
"services": {
"auth": {
"path": "src/lib/auth.ts",
"purpose": "認證邏輯"
}
}
},
"config_files": {
"next.config.js": "Next.js 設定",
"tailwind.config.js": "Tailwind CSS 設定"
},
"scripts": {
"dev": "npm run dev",
"build": "npm run build"
}
}
/snapshot 產生專案快照/snapshot.snapshot/snapshot.jsonMIT License
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.