CodeGuard reviews your merge requests, holds every change to a quality gate, and finds the code and images your app no longer uses. It runs on your Mac, so your code stays there too.
Every feature free for 14 days, no card needed. macOS 14 or later.
Quality gate passed
2 duplicate images found
4 languagesSwift, Objective-C, Kotlin, Java
2 code hostsGitHub and GitLab review
0 serversEverything runs on your Mac
14 daysEvery feature, free, no card
Works with the tools your team already uses
Swift
Kotlin
Objective-C
Java
GitHub
GitLab
SwiftLint
ktlint
Claude
OpenAI
OpenRouter
Ollama
LM Studio
SARIF
Swift
Kotlin
Objective-C
Java
GitHub
GitLab
SwiftLint
ktlint
Claude
OpenAI
OpenRouter
Ollama
LM Studio
SARIF
One app for the whole review
From the first scan to the merge button, CodeGuard covers the checks your team runs by hand today.
A reviewer on every merge request
Point CodeGuard at a merge request on GitLab or a pull request on GitHub. It checks only what changed, marks the request passed or failed against your quality gate, and comments on the exact lines that need attention. Comments are posted in your name, from your own account.
Finds what your app no longer uses
Unused images and dead code, oversized files, and exact duplicates. Optimise images in place, with a backup of every file it changes.
ComplexityDuplicatesSecurityDead code
One quality gate for the whole team
Rules and accepted findings live in a .codeguard folder in your repository. Commit it once and everyone works from the same rules.
API_KEY = "sk_live_••••••••"password: "••••••"
Security and secret scanning
Catches risky code and leaked keys in source, XML, property lists, and .strings files before they reach a release.
Claude CLIAnthropic APIOpenAIOpenRouterOllamaLM Studio
Bring your own AI
AI fixes and reviews use the provider you already pay for, or a model running on your own Mac. CodeGuard adds nothing on top.
report.htmlfindings.sarifbaseline.json
Export and share
HTML reports for people and SARIF for your other tools. Baselines let you adopt CodeGuard without fixing years of old findings first.
What it checks
CodeGuard recognises an iOS project by its Xcode project or asset catalog, and an Android project by its manifest or Gradle build.
Check
Covers
Quality rules, duplicate and dead code, complexity, hotspots, architecture
Swift, Objective-C, Kotlin, Java
Security and secret scanning
The same four languages, plus XML, property lists, and .strings files
Dependency audit
Podfile, Package.swift, build.gradle
Linters
SwiftLint and ktlint, when installed
Image size, format, and exact duplicates
Any project
AI merge request review
Any language, since it reads the raw diff
Not analysed: JavaScript, TypeScript, Dart, and other stacks. For React Native and Flutter apps, CodeGuard checks the native iOS and Android parts only.
Your code stays on your Mac
There is no CodeGuard server. Scans run locally, and there are no analytics or crash reports. The app connects to the internet only in these cases:
Licence checks send your licence key and your Mac’s name to our payment provider, about every 14 days.
Update checks ask mcmlabs.org for a newer version once a day. You can turn them off.
AI features send the code involved to the AI provider you set up, and to no one else.
GitHub and GitLab receive what you ask CodeGuard to fetch or post there.
Every new install gets 14 days of Max, with no card. After that it continues on Free unless you buy a plan. Prices are in US dollars; tax is added at checkout where it applies. Refunds within 14 days.
Compare every feature
Feature
Free
Pro
Max
Team
Projects
1
Unlimited
Unlimited
Unlimited
Image optimisations
50 a month
Unlimited
Unlimited
Unlimited
Scan, insights, oversized and duplicate images
Yes
Yes
Yes
Yes
Unused image and code detection
Yes
Yes
Yes
Yes
Quality rules and security scan
View only
Yes
Yes
Yes
SwiftLint, ktlint, git client, open in your IDE
No
Yes
Yes
Yes
AI fixes with your own provider
No
Yes
Yes
Yes
HTML and SARIF export, baselines, custom rules
No
Yes
Yes
Yes
GitHub and GitLab review, quality gate, inline comments
No
No
Yes
Yes
Architecture graph, hotspots, trends
No
No
Yes
Yes
Shared team rules and baseline profiles
No
No
No
Yes
Support
Community
Email
Priority
Priority and onboarding
Download MCM CodeGuard
Version 1.0 for macOS 14 Sonoma or later. Signed and notarised by Apple, and it updates itself when you allow it.
The first release is in final testing. Write to support@mcmlabs.org and we’ll email you when it’s out.
For smaller images, install pngquant and webp with Homebrew. CodeGuard uses them when they’re present.
Questions
Does my code leave my Mac?
Only when you use an AI feature, and then only to the AI provider you set up. Use a model running locally through Ollama or LM Studio and it never leaves at all. MCM Labs never receives your code.
Do I need an AI subscription?
No. Scans, rules, and the quality gate work without one. AI fixes, explanations, and AI review use the Claude CLI, an Anthropic API key, or any OpenAI-compatible provider, which you pay directly.
What happens when the trial ends?
CodeGuard carries on as the Free plan. Nothing is charged, because the trial never asked for a card. Your projects, rules, and results stay where they are.
Does it work offline?
Yes. Scans are local. A paid licence is checked about every 14 days, and if CodeGuard can’t reach the licence server it keeps working for 30 more days.
How do Team seats work?
Each seat activates CodeGuard on one Mac, for someone who works for your company. To move a seat, deactivate that Mac in the app and activate another. Team starts at 3 seats.
How do I cancel or get a refund?
Cancel any time from the link in your receipt email; your plan runs until the end of the period you paid for. Ask within 14 days of your first payment, or of a yearly renewal, and we refund it in full. Refund terms.