# AX Check: omnistrate.com
Checked 2026-09-19.

Docs and CLI setup are solid, but pricing page has no prices.
Quickstarts, API docs, and MCP setup all check out, but the pricing page itself shows no plans, costs, or usage limits.

## Onboarding needs a login

## Coding sessions
Of three independent sessions, one did not finish. The other two found the pricing page describes a usage-based billing model but one could not find an actual cost figure and was told to contact sales, while the other pieced together a $100/month Starter plan, usage-based Growth tier, custom Enterprise pricing, and a free trial from elsewhere on the site.

### DeepSeek V4 Pro
[View public run](https://agents.withgauge.com/p/runs/2ccc9c33-eacf-4ab4-9764-94ce935d8977) · [Read transcript](https://www.ax-check.com/omnistrate.com/sessions/deepseek.json)

#### End-to-end onboarding
- **End-to-end onboarding not demonstrated**: The agent spent the entire session doing read-only reconnaissance: crawling docs.omnistrate.com, decompiling Next.js pricing bundle chunks, and downloading the public OpenAPI specs. It never attempted omnistrate-ctl login, never called Signup/Signin, never created an API key, and never exercised any authenticated Omnistrate endpoint (only an unauthenticated /health check and an unauthenticated 404 on /fleet/service). No credentials were obtained or used, so self-service onboarding was never exercised.
  Event 169:

  ```text
  404 page not found
  
  HTTP 404
  ```
  Event 172:

  ```text
  {"status":"READY"}
  
  HTTP 200
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **Agent never installed CTL or created an account, so no live build was attempted**: The CTL install link required passing a Cloudflare interstitial challenge, and the agent did not attempt to bypass it or install the CLI another way. Combined with the seed prompt's restriction against starting local service stacks or waiting on long commands, the agent stopped at documentation review rather than running 'omnistrate-ctl login' or 'build'. Mix of test-environment restriction and a product step (signup + CLI install) that requires a human account first.
  Event 233:

  ```text
  <title>Just a moment...</title>
  ```
  Event 232:

  ```text
  To start using CTL, you first need to log in to the Omnistrate platform.
  ```
- **No API key could be created without a human-created account**: Write endpoints (service creation, account-config, api-key creation) require prior signup and an org-scoped API key shown once in the console UI. The sandbox had no such credentials and no path to generate one without a human completing signup, so the agent could not reach an authenticated operation.
  Event 56:

  ```text
  You must have Root or Admin role in your organization
  ```
  Event 7:

  ```text
  PI_GATEWAY_API_KEY=<redacted>
  GIT_CONFIG_KEY_0=<redacted>
  ```

#### Suggested Changes
- **Publish a static, crawlable pricing summary instead of only a JS-rendered calculator**: Plan mechanics (Starter = per-active-deployment, Growth = vCPU-hour, $999/mo minimum support commit) live only inside minified Next.js chunks on www.omnistrate.com/pricing; the agent had to fetch and grep 18 separate _next/static/chunks/*.js files to reconstruct this. Add a plain-HTML plan comparison table to docs.omnistrate.com/cost-benefits/ or the pricing page; verify by curling the page and confirming plan names and billing basis appear without executing JS.
  Event 121:

  ```text
  Starter"})," is billed per active deployment. ",(0,t.jsx)("b",{children:"Growth"})," is billed based on vCPU-hour usage, with volume-based pricing at scale.
  ```
- **Serve the CTL install script without a Cloudflare bot challenge**: ctl.omnistrate.cloud/install returns a Cloudflare 'Just a moment...' interstitial to a plain curl request, blocking scripted installs. Serve a direct install script at a URL exempt from the challenge, or document a curl-friendly install command; verify by curling headlessly and confirming a script/binary is returned instead of the challenge HTML.
  Event 233:

  ```text
  <title>Just a moment...</title>
  ```

### Kimi K3
[View public run](https://agents.withgauge.com/p/runs/e1ba0a51-1726-4392-a3c4-cbcd21d58ac6) · [Read transcript](https://www.ax-check.com/omnistrate.com/sessions/kimi.json)
Pricing section describes the billing model (usage-based, per-plan CPU/memory/storage dimensions) but never states an actual cost figure — it explicitly defers to 'contact for the chart' (final output, seq 147) rather than quoting a number with assumptions.
#### End-to-end onboarding
- **Onboarding needs a login**: The agent installed the real omnistrate-ctl CLI, fetched live docs/schema, and validated a compose spec offline (no auth required for that path). It never obtained real Omnistrate credentials — no signup/API key was generated during the session — so it could not attempt any authenticated operation (build/deploy) against the hosted platform. The build command failed immediately with a login-required error, and no later recovery occurred.
  Event 141:

  ```text
  Error:  not logged in and no TTY available for interactive login; please run 'omnistrate-ctl login' first, set OMNISTRATE_API_KEY, or use --api-key-stdin
  ```
  Event 143:

  ```text
  The wall is confirmed. Let me add a README to the example and wrap up.
  ```
  Event 133:

  ```text
  compose.yaml is valid against the compose schema.
  exit=0
  
  ```

#### Hallucinated URLs
None identified in this transcript.

#### Blockers
- **No self-service signup blocks build/deploy**: Actually building and deploying the example service on Omnistrate requires an authenticated account (email/password, API key, or SSO). The agent had no credentials and no way to create an account itself, so it could not go past spec validation. This is a normal login wall (missing credentials for this test environment), not a product defect — the docs/validate workflow itself worked fine without login.
  Event 64:

  ```text
  # Login with OMNISTRATE_API_KEY environment variable (recommended for CI/CD)
    export OMNISTRATE_API_KEY=om_…
    omnistrate-ctl login
  ```
  Event 141:

  ```text
  Error:  not logged in and no TTY available for interactive login; please run 'omnistrate-ctl login' first, set OMNISTRATE_API_KEY, or use --api-key-stdin
  ```
- **Schema validator silently accepted wrong field shape on first pass, then caught it on structure only**: The agent's first compose spec draft used minReplicas/maxReplicas under limits, which is a structural mismatch the validator did catch (agent error, quickly self-corrected using the live JSON schema). Not a lasting blocker, but shows the initial spec-writing step required a second pass against `omctl docs json-schema compose`.
  Event 121:

  ```text
  compose.yaml has 1 violation(s) of the compose schema:
  
    /services/web/x-omnistrate-api-params/0/limits
        additional properties 'maxReplicas', 'minReplicas' not allowed
  ```

#### Suggested Changes
- **Fix the redirecting docs pricing page**: Hitting https://docs.omnistrate.com/pricing/ returns a client-side 'Redirecting...' page instead of content, forcing a manual follow to /cost-benefits/. Update the docs site so /pricing/ serves content directly (or a proper HTTP redirect) rather than a JS-redirect stub; verify by curling the URL and confirming article text is present in the raw response.
  Event 99:

  ```text
  Redirecting...
  You're being redirected to a
  new destination
  .
  
  ```
- **Document the correct api-params limits schema (min/max, not minReplicas/maxReplicas) in the compose-spec prose**: The `omctl docs compose-spec "x-omnistrate-api-params"` output does not show the actual allowed keys for `limits` (min, max, minLength, maxLength), leading to a first-pass validation failure. Add an explicit limits example to the x-omnistrate-api-params doc section; verify by checking that `omctl docs compose-spec "x-omnistrate-api-params"` output includes a `limits:` example matching the JSON schema (`omctl docs json-schema compose`).
  Event 121:

  ```text
  additional properties 'maxReplicas', 'minReplicas' not allowed
  ```
  Event 85:

  ```text
  - **limits**: Minimum and maximum values for this field
  ```

### Qwen 3.8 Max
[View public run](https://agents.withgauge.com/p/runs/e966b9c3-83c8-4382-9174-42e549aef0dd) · [Read transcript](https://www.ax-check.com/omnistrate.com/sessions/qwen.json)
Final output gives Starter ($100/active deployment/month), Growth (vCPU-hour based), Enterprise (custom), and explicitly notes the 1-month free trial with no credit card and that cloud infra is billed separately — concrete assumptions named alongside the numbers.
#### End-to-end onboarding
- **End-to-end onboarding not demonstrated**: Agent never obtained Omnistrate credentials or performed any authenticated operation. It only probed public docs, pricing pages, npm/PyPI registries, and DNS. It explicitly declined to sign up for an account and stopped before any CLI login or API call requiring auth.
  Event 94:

  ```text
  Nothing in this environment provides an Omnistrate account, and signup is a web flow (email verification / OAuth). I won't create third-party accounts unprompted.
  ```
  Event 92:

  ```text
  For CI or other non-interactive workflows, you can log in by piping the password over stdin: cat ~/omnistrate_pass.txt | omnistrate-ctl login --email [email protected] --password-stdin
  ```

#### Hallucinated URLs
- **Guessed API host api.omnistrate.com failed to resolve**: Agent tried https://api.omnistrate.com/ before confirming the real API host, and DNS resolution failed outright, indicating it was a guess rather than a documented endpoint. It later found the correct host (api.omnistrate.cloud) via other lookups.
  Event 10:

  ```text
  https://api.omnistrate.com/
  ```
  Event 22:

  ```text
  * Could not resolve host: api.omnistrate.com
  * Closing connection
  ```
- **Guessed docs URL for CLI quickstart returned 404**: Agent guessed the path /getting-started/quick-start-with-cli/ for the CLI quickstart doc without confirming it from a sitemap or link first; the request 404'd and the agent had to pull the sitemap afterward to find the real slug (getting-started-with-ctl). This is a plausible but unconfirmed guess whose failure led to a corrective sitemap lookup, so it is flagged as a likely invented path rather than a known broken link.
  Event 73:

  ```text
  https://docs.omnistrate.com/getting-started/quick-start-with-cli/
  ```
  Event 74:

  ```text
   404 - Not found 
  ```

#### Blockers
- **No public SDK/package for Omnistrate on npm or PyPI**: Agent searched npm and PyPI for an Omnistrate SDK/client package across multiple plausible names and found none, confirming there is no lightweight package-based path into the product; this is a product characteristic (SDKs are customer-generated outputs, not a public package) rather than an environment or agent error.
  Event 28:

  ```text
  {"objects":[],"total":0,"time":"2026-09-19T04:26:57.139Z"}
  ```
  Event 35:

  ```text
  omnistrate: 404
  omnistrate-api: 404
  omnistrate-client: 404
  @omnistrate/sdk: 404
  omnistrate-openapi: 404
  ```
- **No credentials available and quickstart requires cloud account onboarding**: Session had no Omnistrate account or cloud provider credentials, and the documented getting-started flow requires connecting a real AWS/GCP/Azure account and running long-lived builds/deployments. This combination of missing credentials and a heavy, non-light quickstart caused the agent to stop per its instructions rather than proceed with a mock or partial workflow.
  Event 94:

  ```text
  Nothing in this environment provides an Omnistrate account, and signup is a web flow (email verification / OAuth). I won't create third-party accounts unprompted.
  ```
  Event 94:

  ```text
  the documented flow (docs.omnistrate.com/getting-started/) requires onboarding a real AWS/GCP/Azure account with your cloud credentials, then omnistrate-ctl build + instance deployment, which provisions real cloud infrastructure and runs for many minutes
  ```

#### Suggested Changes
- **Publish a lightweight SDK or API-only quickstart path**: Docs and package registries show no npm/PyPI SDK, and the only documented path (CLI + cloud account onboarding) requires real cloud credentials and long-running provisioning. Product owner should add a package (npm/PyPI) or a scoped API-key based quickstart that lets a developer make one authenticated read/write call without connecting a full cloud account, then verify by having a fresh developer complete it in under a few minutes without cloud credentials.
  Event 35:

  ```text
  omnistrate: 404
  omnistrate-api: 404
  omnistrate-client: 404
  @omnistrate/sdk: 404
  omnistrate-openapi: 404
  ```
  Event 92:

  ```text
  Install the CLI before you continue by following Installing Omnistrate CTL .
  ```
- **Fix or update the CLI quickstart link referenced by 'Installing CLI' navigation**: The sitemap-listed slug pattern led the agent to guess /getting-started/quick-start-with-cli/, which 404'd; the actual working page is /getting-started/getting-started-with-ctl/. Product owner should check the docs site navigation/sitemap for consistent, discoverable slugs for the CLI quickstart page and confirm the sitemap entry matches the page users would search for.
  Event 74:

  ```text
   404 - Not found 
  ```
  Event 92:

  ```text
   getting-started Quick start with Command Line ¶ What is Omnistrate CTL? ¶
  ```

### Task given to each agent
Help me build a simple example using Omnistrate. Tell me how pricing works, and briefly tell me whether this product will be easy for you to manage. Let me know if you get blocked. If this product has no developer workflow you can act on, say so plainly and stop. Stay light: use the hosted product through its SDK or API. Do not start local service stacks or wait for long-running commands; if the quickstart requires either, say so plainly and stop.

No product credentials were supplied and no purchases were authorized.

## Score: B · 69/100 (provisional)
Grades come from completed site checks. Coding sessions and skipped checks do not affect the score.

### Clarity
- **Failed** — Homepage answers Markdown requests

  ```text
  Homepage returned text/html for a text/markdown request; no Markdown representation offered.
  ```

- **Pass** — llms.txt provides an actionable documentation index

  ```text
  llms.txt links docs home, getting started, architecture, API reference, MCP server and guides.
  ```

- **Pass** — llms.txt provides navigation guidance

  ```text
  llms.txt groups links under Product, Documentation, Case Studies, Blog and Company headings.
  ```

- **Pass** — llms.txt mentions offered API, MCP, and skills

  ```text
  llms.txt lists API reference and MCP server; no skills surface is offered.
  ```

- **Pass** — A compact guide representation exists

  ```text
  llms.txt is a compact Markdown index of product, docs, API, MCP and blog links.
  ```

- **Pass** — A focused guide is directly retrievable

  ```text
  llms.txt is directly retrievable as text/markdown with organized sections and starting guidance.
  ```

- **Pass** — Equivalent instructions fit a token budget

  ```text
  llms.txt measured 11190 tokens but is a link index, not a workflow guide; quickstart pages are compact.
  ```

- **Skipped** — Product-docs links survive format changes

  ```text
  Homepage Markdown is unsupported, so link preservation across formats cannot be measured.
  ```

- **Pass** — The compact guide is independently actionable

  ```text
  CLI quickstart gives concrete steps: install CTL, compose spec, omnistrate-ctl build command.
  ```

- **Pass** — Install and next-step links resolve

  ```text
  Fetched install/next-step docs (installing-ctl, quickstart CLI/UI, API, MCP) all returned 200.
  ```


### Onboarding
- **Pass** — Docs lead to a relevant quickstart

  ```text
  Docs Getting Started offers CLI and UI quickstarts with concrete build steps and Postgres example.
  ```

- **Pass** — Installation commands are extractable

  ```text
  Installing CLI page links omnistrate-ctl install; quickstart shows omnistrate-ctl build and login commands.
  ```

- **Pass** — Code examples are available without interaction

  ```text
  Quickstarts show inline compose YAML and omnistrate-ctl build/login commands without interaction.
  ```

- **Pass** — Prerequisites and auth boundaries are explicit

  ```text
  Installing CLI requires omnistrate-ctl login with email/password or SSO before use.
  ```


### Pricing
- **Failed** — Pricing is readable without interaction

  ```text
  Pricing page fetched but contains no plan or price content, only nav and footer.
  ```

- **Failed** — Prices are stated, not gated

  ```text
  No prices are stated anywhere on the fetched pricing page.
  ```

- **Failed** — Pricing units and limits are explicit

  ```text
  No pricing units, seats, usage limits or billing dimensions are described.
  ```

- **Failed** — Agents identify pricing and its assumptions

  ```text
  2 of 3 sessions were judged on pricing; 1 fell short. Kimi K3: Pricing section describes the billing model (usage-based, per-plan CPU/memory/storage dimensions) but never states an actual cost figure — it explicitly defers to 'contact for the chart' (final output, seq 147) rather than quoting a number with assumptions. Qwen 3.8 Max: Final output gives Starter ($100/active deployment/month), Growth (vCPU-hour based), Enterprise (custom), and explicitly notes the 1-month free trial with no credit card and that cloud infra is billed separately — concrete assumptions named alongside the numbers. This behavioural item does not affect the fast grade.
  ```


### Activation
- **Pass** — An API reference or OpenAPI spec is reachable

  ```text
  API resources page lists Build, Consumption and Fleet REST APIs plus OpenAPI YAML/JSON specs.
  ```

- **Pass** — An MCP server is documented and well-formed

  ```text
  MCP server doc gives install, per-client config, tools, skills and security guidance.
  ```

- **Pass** — A CLI install path is documented

  ```text
  Installing CLI page links omnistrate-ctl install and login; quickstart shows build commands.
  ```

- **Pass** — SDK packages resolve on their registries

  ```text
  Go SDK repo is documented on the API resources page as the Omnistrate API client.
  ```

- **Pass** — Agent skills are published

  ```text
  Agent skills documented: omnistrate-ctl agent init, CLAUDE.md/AGENTS.md and skills/*/SKILL.md.
  ```



[Full report data](https://www.ax-check.com/omnistrate.com/report.json)
