From claude-impl-tools
Visualizes project dependency graphs across domains, detects circular dependencies, and analyzes cross-domain coupling in Python, JS/TS, and Go codebases. Use before refactoring, architecture reviews, or adding domains.
npx claudepluginhub insightflo/claude-impl-tools --plugin claude-impl-toolsThis skill uses the workspace's default tool permissions.
> **Visualize dependency relationships across the project, detect circular dependencies, and analyze coupling between domains.**
Generates Mermaid flowcharts visualizing import dependencies between modules/packages/plugins. Detects circular dependencies, analyzes coupling, and assesses refactoring impacts.
Runs 7-phase analysis of TypeScript codebases using typegraph-mcp tools like ts_dependency_tree and ts_import_cycles, producing architectural report for onboarding or overviews.
Explores code dependency graphs using CocoSearch to trace file connections, analyze change impacts, identify hub files, and understand relationships.
Share bugs, ideas, or general feedback.
Visualize dependency relationships across the project, detect circular dependencies, and analyze coupling between domains.
/deps — Analyze all domain dependencies/deps <domain> — Dependencies for a specific domain/deps --cycles — Detect circular dependencies only/deps <file> --tree — Dependency tree for a file/deps --matrix — Cross-domain dependency matrixReceive /deps [target] [options]
|
v
[1] Scope Resolution
|
v
[2] Domain Discovery
|
v
[3] Import/Require Parsing (Dependency Extraction)
|
v
[4] Graph Construction
|
v
[5] Cycle Detection
|
v
[6] Cross-Domain Coupling Analysis
|
v
[7] Output results
| Input | Scope |
|---|---|
| (none) | All project domains |
| Domain name | That domain's internal + external dependencies |
File + --tree | File's dependency tree |
Domain identification criteria (in priority order):
domains definition in .claude/project-team.yamldomains/<domain-name>/ directorysrc/<domain-name>/ directoryLayers vs. Domains:
api/, services/, models/, utils/order/, member/, product/, payment/| Language | Pattern |
|---|---|
| Python | from x.y import z, import x.y |
| JS/TS | import ... from '...', require('...') |
| Go | import "..." |
# Python
grep -rn "^from \|^import " --include="*.py" <target-path>
# JS/TS
grep -rn "import.*from\|require(" --include="*.ts" --include="*.js" <target-path>
Node: Domain or module
Edge: Dependency relationship (directed)
- from: the depending side
- to: the depended-on side
- weight: number of imports
| Level | Description | Severity |
|---|---|---|
| Domain level | A -> B -> A | CRITICAL |
| Module level | A -> B -> C -> A | HIGH |
| File level | A <-> B | MEDIUM |
| Metric | Description | Calculation |
|---|---|---|
| Ca (Afferent) | Incoming dependency count | Number of external domains that depend on this domain |
| Ce (Efferent) | Outgoing dependency count | Number of external domains this domain depends on |
| I (Instability) | Instability index | Ce / (Ca + Ce) |
| Grade | Cross-dependencies | Assessment |
|---|---|---|
| Loose | 0–2 | Healthy |
| Moderate | 3–5 | Manageable |
| Tight | 6–10 | Consider refactoring |
| Tangled | 11+ | Refactoring required |
See references/output-formats.md for detailed output format.
Analysis results are saved to .claude/architecture/dependencies/:
domain-graph.mmd — Mermaid diagrammodule-graph.json — Module-level dependenciesapi-graph.json — API call relationships| Aspect | /impact | /deps |
|---|---|---|
| Analysis unit | Single file | Domain / full project |
| Primary output | Impact report | Mermaid diagram |
| Core function | Change impact scope | Circular deps, coupling |
| Purpose | Pre-change analysis | Architecture review |
| Skill | When to Link | Purpose |
|---|---|---|
/impact <file> | When circular dependency is found | Check file-level impact |
/changelog <domain> | When dependency changes occur | Recent change history |
/architecture | After full analysis | Update architecture documents |
references/output-formats.md — Output format detailsreferences/examples.md — Usage examples