MarMoTools surfaces actionable code quality, security, and architecture insights for Java/Spring + Angular projects — directly in your IDE.
Findings, architecture, custom rules, and team imports — all inside IntelliJ, no external tools required.
Findings are grouped by category → rule → file. Click any entry to jump directly to the source line. The detail panel explains why the rule exists, which version range it affects, and exactly what to do about it.
An interactive graph inferred from your build manifests and import patterns — no annotations or config files needed. See how Platform, Frontend, Backend, Data, and Integration modules relate, and where the coupling is growing.
The Rules tab lists every built-in rule with enable/disable toggles. Select any rule to open its JSON definition in the inline editor — format, validate, and test a pattern against your current project in one click.
Point the Import tab at a raw GitHub URL or a local folder and your team's standards are live immediately — no plugin restart, no manual file copying. A single URL is all a developer needs to onboard to your conventions.
MarMoTools integrates quality gates, version tracking, and architecture insights into a single IDE tool window.
Scans your project and infers build system, Java version, Spring Boot release, Angular workspace(s), RxJS, TypeScript, and Node engine range — no manual setup.
Compares detected versions against the latest stable releases — Spring Boot, Angular, RxJS, TypeScript, and Node LTS — fetched with a 24 h cache so checks stay fast.
Deep static analysis for Spring, Hibernate, JPA, Angular, RxJS, Docker, SQL, and CI pipelines. Each finding links to a detailed explanation and suggested fix.
An interactive graph of your module topology — Platform, Frontend, Backend, Data, Integration nodes. Drag, zoom, click to inspect references, and see framework version tables at a glance.
Write team rules in JSON. Drop them in .sentinel/rules/ and they're picked up instantly. Supports LITERAL & REGEX matching, severity levels, path filters, and suppression comments.
Import and normalize findings from Checkstyle, PMD, SpotBugs, and ESLint. Rule IDs are remapped to MarMoTools severity levels — one unified view across all your linters.
One-click export to a structured .json file and a human-readable .md report — ready for code review, architecture reviews, or CI artifacts.
Tree grouped by category → issue type → file. Double-click to jump to source. Suppress false positives with tracked comments, and reactivate them at any time from the tool window.
MarMoTools catches the issues that matter — from Hibernate pitfalls to Angular lifecycle leaks.
@Autowired on fields)Optional.get() without presence guard== instead of .equals()@RequestParam names@RequestBodyThread.sleep in request threadsCascadeType.ALL on @ManyToOneSELECT *, DELETE/UPDATE without WHERE clauseddl-auto, disabled JDBC SSLcurl | shell:latest tag, broad COPY, missing cache flagsrun: blockssubscribe() without teardown / unsubscribe.toPromise(), Observable.create)[innerHTML] binding / sanitizer bypass*ngFor without trackBysetInterval without cleanupinject(), control-flow syntaxany type annotationsconsole.log left in component codeNo configuration files, no external servers. Just open the tool window and scan.
Find MarMoTools in the right sidebar after installation. No project configuration needed.
MarMoTools scans your project, infers your stack, and runs all enabled inspections.
Findings appear in a tree grouped by category. Double-click any leaf to jump directly to source.
Read the detail panel, apply the suggested fix, or suppress with a tracked comment if it's a false positive.
Write rules in JSON, commit them to your repo, and every developer gets the same guardrails automatically.
Each rule targets a language, a path pattern, and a code pattern. Mix LITERAL and REGEX matching to cover exactly what you need — nothing more.
.json file in .sentinel/rules/LLM-friendly format — ask your AI assistant to generate rules from natural-language requirements using the included guide.
{
"name": "Client Java Rules",
"rules": [
{
"id": "client.java.no-system-out",
"title": "Avoid System.out",
"category": "BACKEND",
"severity": "WARNING",
"languages": ["java"],
"pattern": "System.out.println(",
"patternMode": "LITERAL",
"pathsInclude": ["src/main/java/"],
"pathsExclude": ["src/test/"],
"description": "Use structured logging.",
"suggestedFix": "Replace with SLF4J logger.",
"links": ["https://www.slf4j.org"]
}
]
}
id
Stable unique identifier. Recommended format: client.area.rule-name
category
BACKEND · FRONTEND · DRIFT · COMPATIBILITY
severity
INFO · WARNING · ERROR
languages
java, typescript, sql, dockerfile, yaml, xml, html… Omit to match all.
patternMode
LITERAL (default) or REGEX. Invalid regex skips the rule.
pathsInclude
Case-insensitive substring filters. Rule runs only on matching paths.
suggestedFix
Actionable remediation text shown in the detail panel and exports.
enabledByDefault
Set false for opt-in recommendation-style rules.
Import findings from the linters you already use — MarMoTools normalizes them into a single unified view.
Works with IntelliJ IDEA, IntelliJ IDEA Ultimate, and any IntelliJ-based IDE with Java support.
Search for MarMoTools in Settings → Plugins → Marketplace and install with one click.
Coming SoonBuild locally and install directly into your IDE.
./gradlew buildPluginbuild/distributions/MarMoTools runs entirely in your IDE — no telemetry, no external servers, no subscription required.