Scrutari
The Architectural Blueprints for Your Codebase.
3SC Scrutari is a polyglot static analysis tool that scans your source code and generates a comprehensive, machine-readable model of your software architecture. It is the foundational data producer for the 3SC toolchain, creating the scrutari-data.json artifact that powers tools like 3SC Protega (architectural linting) and 3SC Vestigo (risk analysis).
Scrutari gives you a structured, queryable inventory of every component, module, class, and dependency in your system, turning your codebase into a living, explorable dataset.
A Note on the Name
"Scrutari" is derived from the Latin verb scrutor, which means "to examine, search, or investigate thoroughly." This name was chosen because the tool's primary function is to perform a deep, structural examination of a codebase to create a detailed architectural blueprint.
For the Architect & Technical Lead
As a leader responsible for technical vision, you need an accurate, up-to-date understanding of your system's architecture. Manual diagrams become obsolete the moment they are created. Scrutari provides the ground truth.
Scrutari answers your critical questions:
- "What is the actual dependency graph of our system, not the one we drew six months ago?"
- "Which external packages are we using, in which projects, and at what versions?"
- "How complex are the different modules in our codebase?"
- "How can we get a consistent, structured dataset of our architecture to feed into other governance and analysis tools?"
Key Business Values:
- Generate Architectural Ground Truth: Automatically create a detailed, accurate model of your entire codebase, including all internal and external dependencies.
- Enable Automated Governance: The
scrutari-data.jsonartifact is the foundational input for automated policy enforcement with 3SC Protega, allowing you to codify and validate your architectural rules. - Foundation for Deeper Insights: Provides the rich dataset needed for advanced analysis, such as identifying coupling hotspots, calculating risk with 3SC Vestigo, or visualizing your architecture.
- Live, Version-Controlled Blueprints: By committing the generated artifacts to Git, you create an auditable, historical record of your architecture's evolution over time.
For the Engineer
As a developer, you need to understand the structure of the system you're working in. Scrutari's interactive mode provides a powerful way to explore and comprehend the codebase.
Scrutari is your interactive map to the software system.
Key Technical Values:
- Explore the Code Graph: The
interactivemode (The Cockpit) launches a local UI that visualizes thescrutari-data.jsonfile, allowing you to navigate your codebase's components, from solutions and projects down to individual classes and methods. - Understand Dependencies: Visually trace dependencies between components, making it easier to understand the impact of your changes and identify potential architectural violations.
- Polyglot Analysis: Scrutari's pluggable analyzer system supports a wide range of languages, providing a single, consistent architectural model even in complex, multi-language monorepos.
For the Platform Engineer (DevOps, SRE)
As an operator, you need tools that are secure, automatable, and consistent. Scrutari is a containerized, self-hosted application designed for safe and seamless integration into any CI/CD pipeline.
Execution Modes:
executeThe primary CI mode. It clones the target repository, runs a polyglot analysis based on theSCRUTARI_LANGUAGESvariable, generates thescrutari-data.jsonartifact, and commits it back to the repository.interactive: Starts a local web server (The Cockpit) to serve an interactive UI for exploring a previously generatedscrutari-data.jsonfile.serve-docs: Starts a local web server to serve this documentation.
Produced Artifacts
| Artifact | Default Location | Purpose / Value |
|---|---|---|
scrutari-data.json |
scrutari/interactive/ |
The primary, version-controlled architectural model. This GitOps-friendly artifact provides the ground truth for other tools and a historical record of your architecture. |
scrutari-report.json |
{workspace}/output/scrutari/ |
A copy of the model placed in a standard Signet-discoverable location for automated release notes. |
system_overview.puml |
scrutari/puml/ |
A PlantUML source file representing a high-level component diagram, ready for rendering into an image. |