analyzing-projects
The analyzing-projects skill systematically examines codebases to identify architecture, technology stack, directory structure, design patterns, and development workflows. Load this skill when onboarding to unfamiliar projects, responding to "how does this work?" questions, or exploring new codebases to quickly understand technical decisions and conventions.
git clone --depth 1 https://github.com/CloudAI-X/claude-workflow-v2 /tmp/analyzing-projects && cp -r /tmp/analyzing-projects/skills/analyzing-projects ~/.claude/skills/analyzing-projectsSKILL.md
# Analyzing Projects ### When to Load - **Trigger**: Onboarding to a new project, "how does this work" questions, codebase exploration, understanding unfamiliar code - **Skip**: Already familiar with the project structure and patterns ## Project Analysis Workflow Copy this checklist and track progress: ``` Project Analysis Progress: - [ ] Step 1: Quick overview (README, root files) - [ ] Step 2: Detect tech stack - [ ] Step 3: Map project structure - [ ] Step 4: Identify key patterns - [ ] Step 5: Find development workflow - [ ] Step 6: Generate summary report ``` ## Step 1: Quick Overview ```bash # Check for common project markers ls -la cat README.md 2>/dev/null | head -50 ``` ## Step 2: Tech Stack Detection ### Package Managers & Dependencies - `package.json` → Node.js/JavaScript/TypeScript - `requirements.txt` / `pyproject.toml` / `setup.py` → Python - `go.mod` → Go - `Cargo.toml` → Rust - `pom.xml` / `build.gradle` → Java - `Gemfile` → Ruby ### Frameworks (from dependencies) - React, Vue, Angular, Next.js, Nuxt - Express, FastAPI, Django, Flask, Rails - Spring Boot, Gin, Echo ### Infrastructure - `Dockerfile`, `docker-compose.yml` → Containerized - `kubernetes/`, `k8s/` → Kubernetes - `terraform/`, `.tf` files → IaC - `serverless.yml` → Serverless Framework - `.github/workflows/` → GitHub Actions ## Step 3: Project Structure Analysis Present as a tree with annotations: ``` project/ ├── src/ # Source code │ ├── components/ # UI components (React/Vue) │ ├── services/ # Business logic │ ├── models/ # Data models │ └── utils/ # Shared utilities ├── tests/ # Test files ├── docs/ # Documentation └── config/ # Configuration ``` ## Step 4: Key Patterns Identification Look for and report: - **Architecture**: Monolith, Microservices, Serverless, Monorepo - **API Style**: REST, GraphQL, gRPC, tRPC - **State Management**: Redux, Zustand, MobX, Context - **Database**: SQL, NoSQL, ORM used - **Authentication**: JWT, OAuth, Sessions - **Testing**: Jest, Pytest, Go test, etc. ## Step 5: Development Workflow Check for: - `.eslintrc`, `.prettierrc` → Linting/Formatting - `.husky/` → Git hooks - `Makefile` → Build commands - `scripts/` in package.json → NPM scripts ## Step 6: Output Format Generate a summary using this template: ```markdown # Project: [Name] ## Overview [1-2 sentence description] ## Tech Stack | Category | Technology | | --------- | ---------- | | Language | TypeScript | | Framework | Next.js 14 | | Database | PostgreSQL | | ... | ... | ## Architecture [Description with simple ASCII diagram if helpful] ## Key Directories - `src/` - [purpose] - `lib/` - [purpose] ## Entry Points - Main: `src/index.ts` - API: `src/api/` - Tests: `npm test` ## Conventions - [Naming conventions] - [File organization patterns] - [Code style preferences] ## Quick Commands | Action | Command | | ------- | --------------- | | Install | `npm install` | | Dev | `npm run dev` | | Test | `npm test` | | Build | `npm run build` | ``` ## Analysis Validation After completing analysis, verify: ``` Analysis Validation: - [ ] All major directories explained - [ ] Tech stack accurately identified - [ ] Entry points documented - [ ] Development commands verified working - [ ] No assumptions made without evidence ``` If any items cannot be verified, note them as "needs clarification" in the report.
Expert code review specialist. Use PROACTIVELY after writing or modifying code, before commits, when asked to review changes, PR review, code quality check, lint, or standards audit. Focuses on quality, security, performance, and maintainability.
Expert debugging specialist for errors, test failures, crashes, segmentation faults, memory leaks, timeouts, race conditions, deadlocks, and unexpected behavior. Use PROACTIVELY when encountering any error, exception, or failing test. Performs systematic root cause analysis.
Technical documentation specialist. Use for creating README files, API documentation, architecture docs, inline comments, user guides, changelogs, migration guides, release notes, FAQs, and troubleshooting docs. MUST BE USED when documentation is needed or when code changes require doc updates.
Master coordinator for complex multi-step tasks. Use PROACTIVELY when a task involves 2+ modules, requires delegation to specialists, needs architectural planning, or involves GitHub PR workflows. MUST BE USED for open-ended requests like "improve", "enhance", "build", "scale", "refactor", "add feature", "system design", "architecture", "complex task", or when implementing features from GitHub issues.
Code refactoring specialist for improving code quality, reducing technical debt, eliminating code smells, reducing complexity, and applying design patterns. Use PROACTIVELY when code needs restructuring, simplification, tech debt reduction, or when applying DRY/SOLID principles.
Security specialist for vulnerability detection, secure coding review, and security hardening. Use PROACTIVELY when handling authentication, authorization, encryption, secrets, credentials, OAuth, JWT, CORS, headers, user input, API keys, or sensitive data. Checks for OWASP Top 10 and common vulnerabilities.
Testing strategy specialist for designing test suites, writing tests, and ensuring comprehensive coverage. Use PROACTIVELY when adding new features, fixing bugs, improving test coverage, creating test plans, mocking strategies, handling flaky tests, or writing integration/E2E tests.
Add tests for recently changed files or specified code