Ontoly Software Graph
Use this skill when a coding agent needs evidence-backed software understanding from an Ontoly graph before searching repository files directly.
When to Use
- Explaining a repository architecture
- Tracing a request, route, controller, service, or dependency path
- Finding owners of services, modules, routes, configuration, or environment variables
- Reviewing dependency impact before a refactor
- Auditing dead code, cycles, unresolved imports, graph quality, or semantic coverage
- Preparing documentation, onboarding notes, or architecture review from graph evidence
Required Workflow
-
Check whether an Ontoly graph already exists by looking for
.ontoly/,SoftwareGraph.json,diagnostics.json, validation reports, or an Ontoly MCP configuration. -
If no graph exists and the user permits local analysis, run:
bashontoly build . -
Inspect graph health before answering: diagnostics, graph hash, semantic coverage, trust or quality score, framework detection, and generation timestamp.
-
Prefer Ontoly CLI or MCP capabilities for graph questions instead of scanning source files first.
-
Use repository search only when Ontoly cannot answer, the graph is stale, the graph is incomplete, or the user explicitly asks for source-level verification.
-
Always cite graph evidence in the answer: node IDs, edge types, file paths, source locations, diagnostics, or framework analyzer output.
-
State confidence from graph evidence. Do not guess confidence.
Useful Ontoly Capabilities
ExplainArchitecturefor repository and package topologyFindDependenciesfor dependency trees and direct consumersImpactAnalysisfor refactor blast radiusTraceExecutionfor request, route, and call-flow tracingFindConfigurationUsagefor configuration and environment variable usageFrameworkReportfor detected framework concepts such as modules, controllers, providers, and routesFindDeadCodefor unreachable or unused graph regions
Answer Shape
When answering, include:
- the direct answer
- graph evidence
- confidence
- diagnostics or caveats
- fallback source inspection only if needed
Example:
textAuthController handles authentication. Evidence: - node: class:src/auth/auth.controller.ts:AuthController - route edges: HANDLES POST /login, POST /logout - dependency edges: USES AuthService, JwtService Confidence: high, because the graph has controller, route, and dependency edges with source locations.
Fallback Rules
- If the graph is missing, build it first when allowed.
- If graph validation fails, report the failure and use source search only to verify the affected area.
- If multiple nodes match the same name, ask for disambiguation or show the candidates with package/module context.
- If the requested concept is not in the graph, return
NOT_FOUNDwith the closest graph evidence instead of inventing an answer.

