/analyze-dependencies
Analyze project dependencies and evaluate architectural health. Trigger with "analyze dependencies", "detect circular dependencies", "architecture issues?", "check module coupling", "find layer violations". Generates dependency matrix, fan-in/fan-out analysis, and prioritized
$ npx -y skills add wasabeef/claude-code-cookbook --skill analyze-dependencies --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/analyze-dependencies
Context preview
The summary Claude sees to decide when to auto-load this skill.
Analyze project dependencies and evaluate architectural health. Trigger with "analyze dependencies", "detect circular dependencies", "architecture issues?", "check module coupling", "find layer violations". Generates dependency matrix, fan-in/fan-out analysis, and prioritized
SKILL.md
analyze-dependencies.SKILL.mddescription: 'Analyze project dependencies and evaluate architectural health. Trigger with "analyze dependencies", "detect circular dependencies", "architecture issues?", "check module coupling", "find layer violations". Generates dependency matrix, fan-in/fan-out analysis, and prioritized improvement suggestions.'
allowed-tools:
- Read
- Grep
- Glob
Analyze project dependencies and evaluate architectural health
Analyzes your project's dependencies and checks architecture health.
Usage
/dependency-analysis [options]
Options
- `--visual`: Visually display dependencies
- `--circular`: Detect only circular dependencies
- `--depth <number>`: Specify analysis depth (default: 3)
- `--focus <path>`: Focus on specific module/directory
Basic Examples
# Analyze dependencies for entire project
/dependency-analysis
# Detect circular dependencies
/dependency-analysis --circular
# Detailed analysis of specific module
/dependency-analysis --focus src/core --depth 5
What Gets Analyzed
1. Dependency Matrix
Shows how modules connect to each other:
- Direct dependencies
- Indirect dependencies
- Dependency depth
- Fan-in/fan-out
2. Architecture Violations
- Layer violations (when lower layers depend on upper ones)
- Circular dependencies
- Excessive coupling (too many connections)
- Orphaned modules
3. Clean Architecture Check
- Is the domain layer independent?
- Is infrastructure properly separated?
- Do use case dependencies flow correctly?
- Are interfaces being used properly?
Output Example
Dependency Analysis Report
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 Metrics Overview
├─ Total modules: 42
├─ Average dependencies: 3.2
├─ Maximum dependency depth: 5
└─ Circular dependencies: 2 detected
⚠️ Architecture Violations
├─ [HIGH] src/domain/user.js → src/infra/database.js
│ └─ Domain layer directly depends on infrastructure layer
├─ [MED] src/api/auth.js ⟲ src/services/user.js
│ └─ Circular dependency detected
└─ [LOW] src/utils/helper.js → 12 modules
└─ Excessive fan-out
✅ Recommended Actions
1. Introduce UserRepository interface
2. Redesign authentication service responsibilities
3. Split helper functions by functionality
📈 Dependency Graph
[Visual dependency diagram displayed in ASCII art]
Advanced Usage Examples
# Automatic CI/CD checks
/dependency-analysis --circular --fail-on-violation
# Check against architecture rules
/dependency-analysis --rules .architecture-rules.yml
# See how dependencies changed
/dependency-analysis --compare HEAD~10
Configuration File Example (.dependency-analysis.yml)
rules:
- name: "Domain Independence"
source: "src/domain/**"
forbidden: ["src/infra/**", "src/api/**"]
- name: "API Layer Dependencies"
source: "src/api/**"
allowed: ["src/domain/**", "src/application/**"]
forbidden: ["src/infra/**"]
thresholds:
max_dependencies: 8
max_depth: 4
coupling_threshold: 0.7
ignore:
- "**/test/**"
- "**/mocks/**"Tools We Use
- `madge`: Shows JavaScript/TypeScript dependencies visually
- `dep-cruiser`: Checks dependency rules
- `nx`: Manages monorepo dependencies
- `plato`: Analyzes complexity and dependencies together
Collaboration with Claude
# Check dependencies with package.json
cat package.json
/analyze-dependencies
"Find dependency issues in this project"
# Deep dive into a specific module
ls -la src/core/
/analyze-dependencies --focus src/core
"Check the core module's dependencies in detail"
# Compare design vs reality
cat docs/architecture.md
/analyze-dependencies --visual
"Does our implementation match the architecture docs?"
Notes
- **Run from**: Project root directory
- **Be patient**: Large projects take time to analyze
- **Act fast**: Fix circular dependencies as soon as you find them
Best Practices
1. **Check weekly**: Keep an eye on dependency health 2. **Write rules down**: Put architecture rules in config files 3. **Small steps**: Fix things gradually, not all at once 4. **Track trends**: Watch how complexity changes over time
Read more
description: 'Analyze project dependencies and evaluate architectural health. Trigger with "analyze dependencies", "detect circular dependencies", "architecture issues?", "check module coupling", "find layer violations". Generates dependency matrix, fan-in/fan-out analysis, and prioritized improvement suggestions.' allowed-tools: - Read - Grep - Glob
Analyze project dependencies and evaluate architectural health
Analyzes your project's dependencies and checks architecture health.
Usage
/dependency-analysis [options]
Options
- `--visual`: Visually display dependencies
- `--circular`: Detect only circular dependencies
- `--depth <number>`: Specify analysis depth (default: 3)
- `--focus <path>`: Focus on specific module/directory
Basic Examples
# Analyze dependencies for entire project /dependency-analysis # Detect circular dependencies /dependency-analysis --circular # Detailed analysis of specific module /dependency-analysis --focus src/core --depth 5
What Gets Analyzed
1. Dependency Matrix
Shows how modules connect to each other:
- Direct dependencies
- Indirect dependencies
- Dependency depth
- Fan-in/fan-out
2. Architecture Violations
- Layer violations (when lower layers depend on upper ones)
- Circular dependencies
- Excessive coupling (too many connections)
- Orphaned modules
3. Clean Architecture Check
- Is the domain layer independent?
- Is infrastructure properly separated?
- Do use case dependencies flow correctly?
- Are interfaces being used properly?
Output Example
Dependency Analysis Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 📊 Metrics Overview ├─ Total modules: 42 ├─ Average dependencies: 3.2 ├─ Maximum dependency depth: 5 └─ Circular dependencies: 2 detected ⚠️ Architecture Violations ├─ [HIGH] src/domain/user.js → src/infra/database.js │ └─ Domain layer directly depends on infrastructure layer ├─ [MED] src/api/auth.js ⟲ src/services/user.js │ └─ Circular dependency detected └─ [LOW] src/utils/helper.js → 12 modules └─ Excessive fan-out ✅ Recommended Actions 1. Introduce UserRepository interface 2. Redesign authentication service responsibilities 3. Split helper functions by functionality 📈 Dependency Graph [Visual dependency diagram displayed in ASCII art]
Advanced Usage Examples
# Automatic CI/CD checks /dependency-analysis --circular --fail-on-violation # Check against architecture rules /dependency-analysis --rules .architecture-rules.yml # See how dependencies changed /dependency-analysis --compare HEAD~10
Configuration File Example (.dependency-analysis.yml)
rules:
- name: "Domain Independence"
source: "src/domain/**"
forbidden: ["src/infra/**", "src/api/**"]
- name: "API Layer Dependencies"
source: "src/api/**"
allowed: ["src/domain/**", "src/application/**"]
forbidden: ["src/infra/**"]
thresholds:
max_dependencies: 8
max_depth: 4
coupling_threshold: 0.7
ignore:
- "**/test/**"
- "**/mocks/**"Tools We Use
- `madge`: Shows JavaScript/TypeScript dependencies visually
- `dep-cruiser`: Checks dependency rules
- `nx`: Manages monorepo dependencies
- `plato`: Analyzes complexity and dependencies together
Collaboration with Claude
# Check dependencies with package.json cat package.json /analyze-dependencies "Find dependency issues in this project" # Deep dive into a specific module ls -la src/core/ /analyze-dependencies --focus src/core "Check the core module's dependencies in detail" # Compare design vs reality cat docs/architecture.md /analyze-dependencies --visual "Does our implementation match the architecture docs?"
Notes
- **Run from**: Project root directory
- **Be patient**: Large projects take time to analyze
- **Act fast**: Fix circular dependencies as soon as you find them
Best Practices
1. **Check weekly**: Keep an eye on dependency health 2. **Write rules down**: Put architecture rules in config files 3. **Small steps**: Fix things gradually, not all at once 4. **Track trends**: Watch how complexity changes over time
A collection of commands, roles, and automation scripts for Claude Code. Automate your workflow without unnecessary confirmations, allowing you to focus on what matters.
Repo: wasabeef/claude-code-cookbook
Other skills on claude-code-cookbook.
- /analyze-performance
Performance analysis based on Core Web Vitals with UX scoring. Trigger with "analyze performance", "improve speed", "check Core Web Vitals", "page speed", "improve LCP", "identify performance issues".
Open skill - /check-fact
Verify information accuracy against codebase and documentation. Trigger with "is this correct?", "fact check", "verify this", "is this accurate?".
Open skill - /check-prompt
Evaluate and improve AI prompt quality. Trigger with "check this prompt", "evaluate prompt quality", "improve this prompt".
Open skill - /commit-message
Generate commit messages from staged changes. Trigger with "suggest commit message", "generate commit message", "what should the commit say?", "write commit message".
Open skill - /context7
Search technical documentation via Context7 MCP. Trigger with "check the docs", "look up documentation", "how to use this library?", "API reference".
Open skill - /design-patterns
Suggest design patterns and evaluate SOLID principles. Trigger with "suggest design patterns", "which patterns apply?", "check SOLID principles", "detect anti-patterns", "evaluate code design".
Open skill

