analyze-project
SKILL.md
Project Analysis
Overview
Perform comprehensive project analysis across three dimensions: Features, Architecture, and Implementation. Provide actionable insights with specific file paths and line references.
Core principle: Read and understand, never modify. Always provide concrete code references.
Announce at start: "I'm analyzing this project's features, architecture, and implementation."
${languageInstruction}
Critical Constraints
- READ-ONLY - Do not edit or create any files
- NO CODE GENERATION - Only reference existing code
- ALWAYS CITE SOURCES - Include
file:linereferences for all code mentions - SAVE REPORT - Save analysis to
docs/analysis/YYYY-MM-DD-<project-name>.md
Analysis Process
Phase 1: Feature Discovery
Goal: Identify what the project does.
Steps:
- Parse arguments to determine analysis scope:
- No args: Analyze entire project
- Directory path: Focus analysis on that directory
--features/--architecture/--implementation: Run only the specified phase(s)
- Find entry points:
- Check config files for entry hints:
package.json(main/bin/scripts),Cargo.toml([[bin]]),setup.py/pyproject.toml(entry_points/scripts),go.mod,Makefile, etc. - Look for common entry files:
main.*,index.*,app.*,cli.*,server.* - Identify CLI commands, API route definitions, exported modules
- Check config files for entry hints:
- Identify feature modules and their responsibilities
- List public APIs and interfaces
- Document configuration options
Phase 2: Architecture Analysis
Goal: Understand how the project is organized.
Steps:
- Identify tech stack (language, runtime, framework, build tools)
- Analyze key third-party dependencies and their purposes (focus on 5-15 most significant; group by category if many)
- Map source directory structure with file purposes
- Identify core components and their relationships
- Trace data flow (input → processing → output)
- Identify design patterns used and whether they are applied consistently
Phase 3: Implementation Deep Dive
Goal: Understand how key features are implemented.
Steps:
- Trace code paths for core features
- Document key algorithms and logic
- Identify important classes/functions and their roles
- Find extension points and customization options
Output Format
# Project Analysis: [Project Name]
## Overview
[One paragraph describing what the project does]
## Features
| Feature | Description | Entry Point |
|---------|-------------|-------------|
| [name] | [what it does] | [file:line] |
## Architecture
### Tech Stack
| Category | Technology |
|----------|------------|
| Language | [e.g., Python 3.12, Go 1.22, TypeScript 5.x] |
| Runtime | [e.g., Node.js 20, CPython, JVM 21] |
| Framework | [e.g., Express, Django, Gin] |
| Build Tool | [e.g., Vite, setuptools, cargo] |
### Dependencies (Key)
List direct dependencies critical to understanding the project. Group by category if many.
| Package | Version | Purpose |
|---------|---------|---------|
| [name] | [version] | [what it does] |
### Source Structure
<!-- Adapt tree to actual project structure and language -->
project/
├── src/ # Source code
│ ├── core/ # Core business logic
│ ├── utils/ # Utility functions
│ └── main.* # Main entry point
├── tests/ # Test files
└── [config files] # Project configuration
**Key Files:**
| Path | Purpose |
|------|---------|
| [path to main entry] | Main entry, exports public API |
| [path to core module] | Core business logic |
### Core Components
| Component | Location | Responsibility |
|-----------|----------|----------------|
| [name] | [file:line] | [what it does] |
### Data Flow
[Input] → [Processing Stage 1] → [Processing Stage 2] → [Output]
### Design Patterns
| Pattern | Location | Purpose |
|---------|----------|---------|
| [pattern name] | [file:line] | [why it's used] |
## Implementation Details
### [Feature Name]
- **Entry:** `file:line`
- **Code Path:** file1:10 → file2:25 → file3:100
- **Key Logic:** [explanation of algorithm/approach]
- **Extension Points:** [how to customize/extend]
Edge Cases
| Scenario | Action |
|---|---|
| Empty or near-empty project | Note limited scope, analyze what exists |
| Monorepo with multiple packages | Summarize top-level structure, then analyze each package briefly; ask user if they want a deep dive on a specific package |
| Very large project (>100 source files) | Focus on key entry points and core modules; note areas skipped |
| No recognizable entry point | State this explicitly; analyze based on directory structure and config files |
| Multiple languages | Identify all languages; organize analysis by language or component |
| Generated / vendor / build output files | Skip by default; note as skipped |
| Project has existing documentation (README, docs/) | Cross-reference findings against it; note discrepancies |
Usage Examples
| Command | Description |
|---|---|
/analyze-project |
Analyze the current project |
/analyze-project src/ |
Focus analysis on the src directory |
/analyze-project --features |
Only run Feature Discovery phase |
/analyze-project --architecture |
Only run Architecture Analysis phase |
/analyze-project --implementation |
Only run Implementation Deep Dive phase |
Guidelines
- Start with the broadest view, then drill into details — don't get lost in implementation before understanding architecture
- Prioritize accuracy over completeness — say "unclear" rather than guess
- Adapt depth to project size: small projects get full analysis, large projects focus on core modules
- When multiple patterns coexist (e.g., both MVC and event-driven), note the inconsistency
- Identify not just what patterns are used, but whether they're applied correctly
- Don't list every file — focus on architecturally significant files
- If the project has documentation, cross-reference your findings against it
- Use tables for structured data, tree diagrams for directories, flow notation (→) for data flow
Arguments: ${args}
Weekly Installs
8
Repository
nu1nux/open-skillsFirst Seen
Feb 5, 2026
Security Audits
Installed on
opencode8
github-copilot8
gemini-cli7
claude-code7
codex7
amp7