원클릭으로
inheritance
Navigate type relationships — extends/implements, subclass/implementor trees, and concrete-to-abstract paths.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Navigate type relationships — extends/implements, subclass/implementor trees, and concrete-to-abstract paths.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | inheritance |
| description | Navigate type relationships — extends/implements, subclass/implementor trees, and concrete-to-abstract paths. |
| allowed-tools | ["mcp__mycelium__get_extends","mcp__mycelium__get_extends_tree","mcp__mycelium__get_subclasses_tree","mcp__mycelium__find_extends_path","mcp__mycelium__get_implements","mcp__mycelium__get_implements_tree","mcp__mycelium__get_implementors_tree","mcp__mycelium__find_implements_path"] |
| category | analysis |
| icon | 🌳 |
| marketplace_examples | [{"query":"What classes extend BaseRepository?","tool":"mcp__mycelium__get_subclasses_tree"},{"query":"Show me the full inheritance hierarchy of AuthService","tool":"mcp__mycelium__get_extends_tree"},{"query":"What interfaces does PostgresUserRepo implement?","tool":"mcp__mycelium__get_implements"}] |
inheritance — class/trait/interface relationshipsThis Skill bundles the 8 Extends and Implements edge tools. Reach for it when the question involves type hierarchies — class extension chains, interface implementations, trait dispatch resolution.
Language note: Rust has no class inheritance, but trait impl X for Y produces Implements edges. C++/C#/Java/Python/TypeScript projects exercise both edge kinds heavily.
Use when:
Repository impls exist".Do NOT use when:
Calls (use call-graph) or Imports (use import-graph).reachability).| Developer question | Tool |
|---|---|
| "What classes extend BaseRepository?" | mcp__mycelium__get_subclasses_tree |
| "What are all subclasses of AbstractPaymentProcessor?" | mcp__mycelium__get_subclasses_tree |
| "Show me the full inheritance hierarchy of AuthService" | mcp__mycelium__get_extends_tree |
| "Find the path from OAuth2Session to BaseSession in the class tree" | mcp__mycelium__find_extends_path |
| "What interfaces does PostgresUserRepo implement?" | mcp__mycelium__get_implements |
get_extends — direct parent class(es)mcp__mycelium__get_extends({ "path": "src/auth/oauth.py>OAuth2Session" })
→ { "extends": ["src/auth/base.py>BaseSession"], "count": 1 }
extends_tree — recursive extends chainWalks up: this class → its parent → grandparent → ... up to max_depth.
mcp__mycelium__extends_tree({ "path": "src/auth/oauth.py>OAuth2Session", "max_depth": 5 })
subclasses_tree — recursive subclass treeWalks down: this class → its subclasses → their subclasses. The "who extends this" tree.
mcp__mycelium__subclasses_tree({ "path": "src/auth/base.py>BaseSession", "max_depth": 5 })
find_extends_path — concrete-to-abstract chain"Show me the inheritance chain from OAuth2Session to BaseSession":
mcp__mycelium__find_extends_path({
"from": "src/auth/oauth.py>OAuth2Session",
"to": "src/auth/base.py>BaseSession"
})
→ { "path": ["src/auth/oauth.py>OAuth2Session", "src/auth/jwt.py>JwtSession", "src/auth/base.py>BaseSession"], "length": 3 }
Returns { "path": null } if the symbols are not in the same chain.
get_implements — what interfaces/traits does X implementmcp__mycelium__get_implements({ "path": "src/db/postgres.rs>PostgresUserRepo" })
→ { "implements": ["src/repo.rs>UserRepository", "src/repo.rs>Healthcheckable"], "count": 2 }
implements_tree — recursive implements chainFor interfaces/traits that extend other interfaces/traits — Rust's "supertrait" pattern, Java's interface A extends B.
implementors_tree — recursive "who implements this"The trait/interface analog of subclasses_tree. Returns every concrete type that implements the given trait/interface, walking down through trait inheritance.
find_implements_path — concrete-to-interface chainCounterpart of find_extends_path for the Implements edge.
implementors_tree.subclasses_tree.extends_tree (parents' contracts).find_extends_path / find_implements_path.mycelium subclasses-tree "src/auth/base.py>BaseSession" --max-depth 5 --format=json
mycelium find-implements-path --from "src/db/postgres.rs>PostgresUserRepo" --to "src/repo.rs>UserRepository"
mycelium implementors-tree "src/repo.rs>UserRepository" --max-depth 3
Per RFC-0090. tests/parity.test.json uses a small Python fixture with a 3-class extends chain plus a trait/interface scenario.
call-graph — for method-level dispatch (which impl actually runs).reachability — for cross-edge-kind navigation.basic-queries — to find the class/trait symbol first.Build, reload, and maintain the Mycelium symbol index — the prerequisite for every other Skill.
One-shot architecture tracing — get entry points, call graph neighborhood, and source snippets for any natural-language question about how code works.
Look up symbols, kinds, ancestors, descendants, siblings — the foundation tools any agent reaches for first.
Navigate the call graph — callers, callees, call trees, entry points, dead and isolated symbols.
Navigate the import graph — direct imports, import trees, importers (who pulls this in).
Rank symbols by importance — PageRank, betweenness, fan-in/out, hub detection, top-file diagnostics.