// maina cloud · private beta · no credit card, no sales call until you ask for one
That's how most teams govern AI coding today. One rule file per dev, drifting every week. No audit trail of what the AI changed, or why it was approved. Maina Cloud is the coordination layer: one versioned constitution synced to every machine, a permalinkable proof for every diff your team's AI touches, and team-level prompt evolution that actually learns. Built on top of the open-source Maina CLI your devs already run.
$ maina login┌ maina login│ opening browser · github device flow│ https://github.com/login/device · code: B8HF-2K3Q│ ✓ authorized as @alex · member of mainahq/team-core│ ✓ token written to ~/.maina/auth.json└ Logged in.$ maina sync pull┌ maina sync · team-core│ constitution.md v23 → v24 (hash a1f2…e7)│ prompts/verify.md v12 → v13│ prompts/plan.md v8 → v8 (unchanged)│ prompts/review.md v17 → v18│ prompts/commit.md v6 → v7│ ✓ 5 files updated · 0 conflicts└ Team settings applied.$ maina verify┌ maina verify · 12 staged files│ syntax guard ✓ biome 0.31s│ ✓ semgrep 7.1s│ ✓ trivy 2.8s│ ✓ secretlint 0.4s│ ✓ sonar 4.2s│ ✓ slop detector 0.2s│ ✓ stryker 6.7s│ ✓ typecheck 3.1s│ ✓ tests 2.4s│ ✓ review stage 1 · spec compliance (team prompt v13)│ ✓ review stage 2 · code quality└ 13 tools · 0 findings · 12.1s$ maina commit│ ✓ verified · 13 tools · 0 findings│ ✓ proof attached: sha256:a1f2…e7c9│ report: https://app.mainahq.com/r/5c0f3d1│ [master 5c0f3d1] feat(core): team-synced└ Committed. Reviewer sees the proof URL in the PR.
// every Monday
Your senior eng resolves the same AI-coding policy debate in Slack for the fourth week running, because the rules live in 47 different .cursorrules files.
// post-mortem, page 3
"Why did the AI merge that?" — no one can answer, because there's no record of the prompt, the context, or the review.
// SOC 2 audit, week of
"Show me the evidence your AI-generated changes were reviewed." You have commit messages and a shrug.
Maina Cloud is the layer that makes all three answerable.
Your team's AI-coding rules live in one file, in one repo, with a git history. Maina syncs it to every machine on every pull. No more .cursorrules drift. No more "which version did you approve?"
Proof: ADR-0012 .
Every verification run your team executes — local, CI, or ad-hoc — is stored with its context, its findings, and its result. Paste the URL into the PR description. Paste it into Slack. Paste it into the audit binder.
Proof: ADR-0013 .
maina login opens a browser, your dev approves it with their GitHub account, and a scoped token lands in ~/.maina/auth.json. No API keys copy-pasted into terminals. No shared secrets in CI.
Proof: ADR-0012 .
Every accept/reject your team makes feeds a shared RL loop. Prompts improve at team speed, not individual speed. A/B candidates are proposed, reviewed, promoted. You see the diff before anything changes.
Telemetry is on by default for support triage, off with one env var. Errors are stack-trace-scrubbed of your code. Data sits in PostHog EU. Your CISO gets a one-page vendor profile.
Proof: ADR-0016 .
Maina Cloud stores verification reports, team prompts, and metadata. It does not store your source code. The CLI runs locally. The AI calls your own keys. We see outcomes, not implementations.
Proof: threat model .
Drop mainahq/verify-action into your workflow and every PR gets the same 19-tool pipeline your devs run locally — diff-only findings, a sticky comment with the permalinkable proof URL, an exit code your branch protection can gate on. The Action reads the team constitution from your Cloud org, so CI and laptop speak the same rules.
Proof: mainahq/verify-action , ADR-0008 .
| Maina OSS (free) | Maina Cloud | |
|---|---|---|
| Context engine | ✅ | ✅ |
| 19-tool verify pipeline | ✅ | ✅ |
| Local cache | ✅ | ✅ |
| Prompt versioning | Local only | Team-synced, hashed, history |
| Constitution | One file on your machine | One file, synced to every machine |
| Verification reports | Local stdout + file | Permalinkable URL per run |
| Auth | None needed | GitHub OAuth device flow |
| Prompt A/B testing | Disabled | Enabled at team level |
| Run history / audit | None | Queryable, retainable per policy |
| Support | GitHub issues | Private beta Slack, then email |
| Cost | $0 forever | Pricing by team size, shared on the demo call |
If you're a solo dev, stop here and run the OSS. If you're a team, the coordination and receipts are the point.
We're onboarding ~15 teams to the first cohort. We'll get back within 48 hours. No credit card, no demo required, no sales call until you ask for one.
Request received. Check your inbox within 48 hours.
20 minutes, your repo on screen, no slides. We'll install Maina on a clone of your monorepo, run the 19-tool verify on a real diff, and show you what a permalinkable proof looks like. If it's not worth the 20 minutes, we'll owe you coffee.
Pick a time →No. It stores verification reports, team prompts, and run metadata. The CLI runs locally. The AI calls your own keys.
No. We don't have models to train. The AI steps in Verify use your keys against your chosen provider. We see the outcomes of those calls, not the inputs.
Not in the private beta. The Enterprise / self-hosted tier lands after v2.0 per the public roadmap.
Pricing scales with team size. We share it on the demo call, because the right tier depends on how you'll use it. No surprises, no per-seat traps.
Your team's constitution and prompts are already in your repo. Export run history with one command. We delete everything within 30 days on request.
They review after the fact. Maina fixes the context the AI sees before the fact, runs the review locally so findings are diff-only and under your keys, and stores the proof so you have an audit trail. Different layer of the stack.
Forever. Apache 2.0. Cloud is additive, not a replacement.