code-communities
Detects architectural clusters and coupling boundaries via community detection on the code graph. Use when identifying module groupings or refactori…
它会碰到什么
这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。
技能内容
Code Community Detection
Identify architectural clusters and module boundaries
in the codebase.
When NOT To Use
- One module's imports (use
cartograph:dependency-graph) - Rendering an architecture already decided (use
cartograph:architecture-diagram)
Prerequisites
This skill requires the gauntlet plugin for graph
data. Discover it:
GRAPH_QUERY=$(find ~/.claude/plugins -name "graph_query.py" -path "*/gauntlet/*" 2>/dev/null | head -1)
If gauntlet is not installed: Fall back to directory
structure analysis. Group files by directory and use
import statements to identify module boundaries. Generate
a Mermaid diagram from directory-level relationships.
If installed but no graph.db: Tell the user to run
/gauntlet-graph build.
Steps
- Run community detection (requires gauntlet):
python3 "$GRAPH_QUERY" --action communities
Fallback (no gauntlet): Analyze directory structure
and cross-directory imports:
# Directory-level grouping
find . -name "*.py" -not -path "*/node_modules/*" | \
sed 's|/[^/]*$||' | sort | uniq -c | sort -rn
# Cross-directory imports (rg preferred, grep fallback)
if command -v rg &>/dev/null; then
rg "^from |^import " --type py -l . | \
xargs -I{} rg "^from \w+ import|^import \w+" {} --no-filename
else
grep -rh "^from \|^import " --include="*.py" .
fi | sort | uniq -c | sort -rn | head -20
Group by top-level directories and count cross-directory
imports to estimate coupling.
- Display clusters:
Community | Nodes | Cohesion | Description
auth | 12 | 0.85 | Authentication module
db | 8 | 0.92 | Database access layer
api/handlers | 15 | 0.71 | API request handlers
utils | 6 | 0.45 | Shared utilities
- Show coupling warnings: If communities have
>10 cross-boundary edges, highlight them:
WARNING: High coupling between 'auth' and 'api/handlers'
(23 cross-community edges, severity: high)
- Generate Mermaid diagram:
flowchart TB
subgraph auth[Auth Module - cohesion 0.85]
verify_token
check_permissions
end
subgraph db[DB Layer - cohesion 0.92]
execute_query
connection_pool
end
auth -->|"23 edges"| api
db -->|"5 edges"| api
- Suggest improvements:
- Low cohesion (<0.5): "Consider splitting this
module into more focused components"
- High coupling (>20 edges): "Consider introducing
an interface to reduce direct dependencies"
Algorithm
Uses the Leiden algorithm (when igraph is available)
with edge-type-specific weights. Falls back to
file-based grouping otherwise.
| Edge Type | Weight |
|-----------|--------|
| CALLS | 1.0 |
| INHERITS | 0.8 |
| IMPLEMENTS | 0.7 |
| IMPORTS_FROM | 0.5 |
| TESTED_BY | 0.4 |
| CONTAINS | 0.3 |
Exit Criteria
- [ ] Community table rendered with columns Community, Nodes, Cohesion,
and Description for each detected cluster
- [ ] Coupling warning surfaced for any pair of communities with more
than 10 cross-boundary edges, labelled with severity
- [ ] Mermaid
flowchart TBgenerated with onesubgraphper community
showing cohesion score in the subgraph label
- [ ] Improvement suggestions provided for any community with cohesion
< 0.5 or coupling > 20 cross-community edges
- [ ] If gauntlet is not installed, directory-structure fallback runs and
absence of graph data is stated to the user
想直接用这个技能?
本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。
它属于哪个仓库
plugins/cartograph/skills/code-communities/SKILL.md同一个仓库里的其他技能
- claude-code-plugin-reference
- night-market-architecture-contract
- night-market-build-and-env
- night-market-change-control
- night-market-collective-memory
- night-market-completion-integrity-campaign
- night-market-config-catalog
- night-market-debugging-playbook
- night-market-diagnostics-toolkit
- night-market-docs-and-writing
- night-market-failure-archaeology
- night-market-model-and-harness-updates