Agentic — not rule-coded

We didn't hand-code a thousand rules.
W

Compliance that reads. Audits that cite.

14-day trial · no card·SOC 2 on the roadmap·AWS-only depth
Live demo · loading
DISCOVER
REASON
VERIFY
SCORE
REPORT
Trust by construction

Most cloud audits are a black box.
Ours shows its work.

Click Run. Watch the agent think. Within thirty seconds you see what we found, what we don't know, and why.

What we discover (real numbers)
1,151
resources, accounted for
186
services · 18 regions · one pass
83%
coverage, with the math to prove it
289
gaps we’ll tell you about
The reasoning checklist tools miss

> Role has AdministratorAccess attached — but the OU's SCP denies iam:Create*, iam:Attach*, and changes to CloudTrail. Privilege escalation paths blocked. HIGH → MEDIUM.

> S3 bucket grants cross-account read. The principal is 222...:root — same AWS Organization. Not a finding.

> SG opens 22 to 0.0.0.0/0 — but the only attached ENI is on a private subnet with no IGW route. Reachability: zero. CRITICAL → LOW.

  • Every finding cites its evidence.
    AWS API call + framework paragraph, on every claim.
  • Every claim resolves to a real response.
    Click any evidence pill to see the underlying API output.
  • Every score is reproducible.
    Run it twice. Get the same answer. Cryptographically verifiable.
  • The moatEvery verdict, read twice.
    Two independent reads on every severity. We only emit the finding when both agree. Disagreement becomes an open question, not a guess.
No personas. No prompt theater. No hallucinated “best practices.”
The wedge

Compliance shouldn't ship in YAML.
Ours ships in reasoning.

The hand-coded approach
A rule library, maintained by humans
# rules/aws/iam_root_mfa.yaml
id: aws.iam.root_mfa_enabled
framework: SOC2-CC6.1
severity: critical
check: |
  AwsAccount.summary.AccountMFAEnabled == 1
remediation: |
  Enable MFA on the root account in IAM.

# rules/aws/iam_root_mfa_v2.yaml   ← NEW SOC2 release
# rules/aws/iam_root_mfa_v3.yaml   ← yet another revision
# … 1,247 rule files later …
  • ✗ Engineers maintain every rule by hand
  • ✗ New framework version = weeks of work
  • ✗ Custom corpora? Engage professional services.
  • ✗ Findings are templates, not reasoning
  • ✗ "Why did it fire?" opens a Jira to support
CME Cloud Maturity
One agent. Every standard.
Cited evidence.
# corpus/                         (read at audit time)
nist.sp.800-53r5.pdf       ✓ ingested  398 controls
soc2.tsc-2017-r2022.pdf    ✓ ingested  201 criteria
iso.iec.27001.2022.pdf     ✓ ingested  93 controls
hipaa.security-rule.html   ✓ ingested  18 sections
your-trust-page.html       ✓ ingested  14 claims

# audits/{id}/agent.loop.py        (only file we ship)
agent.read(corpus).observe(env).cite(evidence).reason()
  • ✓ Re-ingest a doc to update a framework
  • ✓ Multi-framework on day 1, not day 730
  • ✓ Custom corpora at no extra cost
  • ✓ Findings cite the exact corpus chunk
  • ✓ Every step of the agent loop is observable
We don't maintain a rule library. We maintain a corpus and a loop. The corpus updates when standards update. The loop already knows how to read it.
The brain

Six phases. One loop. Every step shown.

No hidden rules. No black-box scoring. The agent works in front of you, with a hard cost cap and a stop button you control.

01
Discover
Find every resource. Trust nothing. Six independent strategies cross-check each other so a service doesn't slip past one of them.
02
Read your claims
Your Trust page, security FAQ, DPA — turned into hypotheses the agent verifies against your live config.
03
Reason
One loop, every pillar, observable end-to-end. Stops on the cost cap or when the work is done. Every step persisted.
04
Cite
If we said it, we can prove it. Every finding carries the framework paragraph + AWS API call that produced it.
05
Remediate
Findings that compile. One-click CloudFormation / Terraform / CDK / AWS CLI fixes — landing-zone-aware out of the box.
06
Track
Audit once. Re-run forever. Findings persist with status, owner, evidence — exportable for any auditor on day one.
On the record

Your data does not train anyone's model.

Vendor-risk teams ask us this first. Here's the long answer — exactly what happens to your prompts, your responses, and the AWS metadata the agent sees.

Your data does not train any AI model
Customer prompts and responses are contractually excluded from any model-training pipeline — ours, our infrastructure provider's, or a third party's. We carry that guarantee in writing under our DPA.
Every model call passes a CME guardrail
A managed PII + topic guardrail wraps every inference call. Customer emails, IPs, PAN, and credential patterns are filtered before they reach the model. Off-task prompts halt the audit cleanly with a customer-visible error — no partial / silent runs.
Prompt + response retention OFF by default
Inference traffic is processed in flight and discarded at request end. Nothing is retained server-side beyond the request lifetime unless your tenant explicitly opts in for corpus improvement (off by default).
No fine-tuning on tenant data
No per-tenant fine-tunes. No path for one tenant's data to influence another tenant's audit. Region pinning to your jurisdiction available on Enterprise (EU residency on request).

Full data-handling controls on the security page. Vendor-risk teams: we ship a counter-signed DPA with EU SCCs in place.

Coverage

Every framework worth citing. Cited in one audit.

Multi-framework on day one. Not month seven. The agent picks the relevant controls per finding — no per-framework SKUs, no add-on packs.

AWS Well-Architected
6 pillars · 3,600+ criteria
AWS Foundational Security
370+ controls
NIST SP 800-171 Rev. 3
430+ controls
NIST SP 800-53 Rev. 5
Core controls ingested
NIST CSF 2.0
Six functions · 110+ subcategories
HIPAA Security Rule
164.308–164.316
GDPR
Articles 5, 25, 32, 33
Custom (Enterprise)
Bring your own corpus
Where findings show up

Findings don't live in a tab. They live in your workflow.

Critical findings open Jira tickets. Audit completion posts to Slack or Microsoft Teams. The dedup is automatic — re-running an audit comments on existing tickets instead of duplicating them. Connect via webhook URL or API token; no OAuth flow, no app review.

Slack
Block Kit cards on critical findings + audit summaries
  • ›Severity-threshold per channel
  • ›Deep-links back to the audit detail page
  • ›Audit-success summary opt-in
Microsoft Teams
Adaptive cards with severity-themed accents
  • ›Same threshold + opt-in semantics as Slack
  • ›Connector webhook — no Bot Framework setup
  • ›Themed border by severity (critical → red)
Jira
One ticket per finding. Re-emission becomes a comment.
  • ›Severity → priority mapping you can override
  • ›ADF descriptions with remediation + deep-link
  • ›Custom project key + issue type per integration
Delivery audit log per integration. Every send is recorded — delivered, failed, skipped (and why) — so “why didn't I get a Slack message?” is answerable from the settings page, not a support ticket.
Side-by-side

How we stack up.

14 days.
One audit.
Decide afterwards.

No card. Connect one AWS account. Read the cited findings. Then decide.

Start free trial →