What Saer checks
Every capability, with its real state. Nothing on this site describes a capability any other way.
In the beta
In the private beta download, delivered through the account-based installer for macOS on Apple Silicon.
Colour
In the betaTokens across themes and modes, exact drift, near-matches, dead and conflicting declarations.
- Reads Tailwind v3 configs, Tailwind v4 @theme blocks and CSS custom properties, including dark mode and other theme contexts.
- Follows every var() chain to a real value in every context.
- Exact drift: a raw value identical to a declared token. Deterministic.
- Near-matches: raw values perceptually close to a token, with the distance, always kept apart from exact drift.
- Dead declarations and conflicting definitions.
Typography
In the betaFamilies, sizes, weights, line heights and tracking: the type scale you really use, and what sits off it.
- Declared scales from Tailwind v3 and v4, utility classes and CSS custom properties.
- Usage from classes, CSS, inline styles and CSS-in-JS.
- Exact drift, dead tokens and, labelled experimental, off-scale values with the nearest step.
Foundations
In the betaSpacing, sizing, radius, shadows, z-index, breakpoints, borders, opacity and motion.
- The scales hiding in your styles, declared or in use.
- Exact drift and, labelled experimental, off-scale values, with the nearest step only where the distance means something.
Components
In the betaInventory, use sites, duplicates, variant sprawl, one-off overrides and unused components.
- Every React component and every JSX use resolved to its definition through imports, aliases, barrels and workspace packages.
- The same component name defined in more than one file, with the evidence.
- Variant values passed but not declared, or declared and never used.
- Use sites that override styling the component already sets.
Accessibility checks
In the betaStatic checks: contrast per light and dark context, focus styles, tap targets and reduced motion.
- Contrast of the text and background pairs written together in the source, judged in every colour context.
- Focusable elements that remove the outline and show nothing else.
- Pointer targets written below 24 by 24 px.
- Animations with no reduced-motion fallback.
- Static checks only: not a statement of WCAG conformance.
Website audit
In the betaPoint Saer at a URL for a read of a live site's compiled CSS. Polite: robots.txt respected.
- Reads public HTML and stylesheets, no JavaScript, no login, one request per second.
- Findings describe the compiled CSS that ships, which may differ from the source.
Agent integration
In the beta`saer mcp`, a local MCP server for Claude Code, Cursor and Codex: your tokens, components and hooks, quality warnings, a recommendation for a task, and a self-check of the agent's own changes.
- Gives a coding agent the system Saer reconstructed, so it can reuse a token, component or hook instead of inventing one.
- `saer_check_changes` checks only the lines the agent wrote, against the same rules as a scan.
- Local and read-only, like the CLI. No model at answer time: recommendations are deterministic and cite their evidence.
Interactive workspace
In the betaExplore a project in the terminal: tokens, component usage, task recommendations and change checks, with source evidence.
- Run saer, then use /scan, /overview, /tokens, /components, /recommend and /changes.
- Your project stays local. Recommendations are leads to inspect, not automatic code changes.
Reviewed cloud history
In the betaConnect once for automatic full-scan and CI summary history, changes between scans and revocable scoped keys.
- Source code, paths, token values and full reports stay local. Extra summary fields are refused.
- Upload keys are hashed, project-scoped and expiring; they cannot download the engine or manage an account.
- CI runner keys have a separate scope for protected headless analysis. Managed scheduling and team governance remain planned.
Local CI checks
In the betaCompare changed lines with an explicit base commit and produce a machine-readable CI result.
- Runs on Apple Silicon Macs, with an interactive sign-in or an expiring headless runner key.
- Exit 1 for deterministic drift; incomplete checks exit 2. Review findings are advisory unless --strict is selected.
- CI runner keys permit analysis and project uploads, with expiry and revocation. Managed team policies and workload-bound identities remain planned.
Next actions and local proposals
In the betaEvidence-led next actions in your scan, terminal and coding-agent overview, with review-only foundation starters where no declarations were established.
- Existing systems receive an adoption plan. Incomplete coverage and unresolved evidence stay explicit; no organisational maturity score is invented.
- Starter colours, scales and optional React primitives are proposed choices. Observed colour candidates retain their source classification; semantic roles are not inferred.
- Review the local preview and approve chosen changes in your normal agent workflow. Saer never applies the proposal or uploads it, and generated suggestions are excluded from future analysis.
Generated documentation
In the betaA local design-system reference generated from the same evidence as your scan: tokens, components and contracts, with unknowns kept explicit.
- Premium scans refresh .saer/reference.md. It is a bounded snapshot; cloud documentation and a shared registry remain planned.
Built, in testing
Built and validated on real repositories, not yet in the beta download.
In development
Being built now. Not available.
Agent benchmark
In developmentA measured comparison of coding-agent output with and without Saer, on real codebases.
- Three rounds have run; the latest (Codex on three real codebases, 48 paired tasks, blind-judged) is written up. Results are published with their full method, including where Saer did not help, once reviewed.
Planned
On the roadmap. Not started.
Scored audit and prioritised fixes
PlannedOne report across every area, with scores you can trace and the top fixes.
Hosted team Guard
PlannedManaged pull-request policies, shared CI identities and continuous team drift monitoring.
Team registry
PlannedA shared, versioned record of a team's system.
SwiftUI and other platforms
PlannedAdapters beyond the web.
Figma
PlannedCompare the system in code with the system in design files.
How it runs, today
- Scans run on your machine. Code, reports and paths stay local. Optional cloud history stores only the project label and summaries you review.
- Free scans need no account or API key. Premium access uses Saer sign-in and an online permission check.
- No AI model at scan time. The same code gives the same findings.
- The same code gives the same report on every run and every supported machine.
- A Mac with Apple Silicon and Node 18 or newer. No Python needed: the engine ships compiled. Intel Macs, Linux and Windows are not in the beta yet.
- Read-only. It writes its report into a .saer folder in the project you scanned and changes nothing else.
The capability matrix
| Area | DiscoverFind the system that already exists in the code. | EvaluateMeasure how consistently it is used, with evidence. | DocumentRecord what exists, for people and machines. | GuideGive it to the agents writing your interface. |
|---|---|---|---|---|
| Colour | In the beta | In the beta | In the beta | In the beta |
| Typography | In the beta | In the beta | In the beta | In the beta |
| Foundations | In the beta | In the beta | In the beta | In the beta |
| Components | In the beta | In the beta | In the beta | In the beta |
| Accessibility | Not applicable | In the beta | In the beta | In the beta |
| Live websites | In the beta | In the beta | In the beta | Not applicable |
- In the betaIn the private beta download, delivered through the account-based installer for macOS on Apple Silicon.
- Built, in testingBuilt and validated on real repositories, not yet in the beta download.
- In developmentBeing built now. Not available.
- PlannedOn the roadmap. Not started.
Document includes local reports, system.json and the generated reference.md snapshot. Optional cloud history stores reviewed numerical summaries, not source documentation or a shared registry.