# AX Check: dna.codes
Checked 2026-11-08.

Docs and pricing are clear, but activation details are missing
Getting-started guide and pricing table are both directly readable with concrete figures, but no API spec, MCP server, CLI, or SDK registry info is confirmed.

## End-to-end onboarding not demonstrated

## Coding sessions
All three independent sessions completed. Two agents, DeepSeek V4.1 Flash and Kimi K3, correctly quoted the tiered plan prices and their app/seat/history limits and billing terms. The third, Qwen 3.8 Max, could not identify the product from what it found and declined to guess at pricing rather than inventing numbers.

### DeepSeek V4.1 Flash
[View public run](https://agents.withgauge.com/p/runs/f2d05657-0031-44ca-866b-587bc8186807) · [Read transcript](https://www.ax-check.com/dna.codes/sessions/deepseek.json)
Quoted suite plan prices with their app, seat and history limits and annual billing, plus agent-host usage pricing (500 free actions, $0.01 per action, credit packs) and sandbox caps. (seq 68, seq 121, seq 143, seq 213)
Session findings unavailable.

### Kimi K3
[View public run](https://agents.withgauge.com/p/runs/2004469f-1b61-43ab-b25e-d3b38b6753a4) · [Read transcript](https://www.ax-check.com/dna.codes/sessions/kimi.json)
Quoted tier prices with basis: apps, editor/ratifier seats, history, non-production-only Free trial, annual billing discount, add-ons, seat/app metering. (seq 65, seq 153, seq 163)
#### End-to-end onboarding
- **End-to-end onboarding not demonstrated**: The agent only built a local example using the publicly available npm package @dna-codes/dna-core (no authentication). It never created an account, obtained API credentials, or performed any authenticated operation against a hosted DNA Codes product. The hosted console/waitlist (requiring signup) was never engaged; validation and model-building ran entirely in a local Node process.
  Event 139:

  ```text
  ✅ DNA model is valid
  - Operations: Loan.Apply, Loan.Approve
  - Loan.Apply is triggered by: user
  - Loan.Approve actors: Underwriter
  - Loan.Approve rules: UnderwriterApproval
  - Wrote lending.dna.json
  ```
  Event 163:

  ```text
  the fully hosted management workflow is currently limited: the console is behind a waitlist, UI Operations is early access, API Operations is in design, and Agent Operations is in build. I found no public authenticated API for creating hosted applications or production keys yet.
  ```

#### Hallucinated URLs
- **Guessed app subdomain that does not resolve**: The agent tried app.dna.codes as a guessed hosted-app URL before confirming the real site structure via sitemap. The guess failed outright (DNS did not resolve), unlike the dna.codes/api 404 which is ambiguous. This was a guess, not a documented link, and it failed.
  Event 22:

  ```text
  ==== app.dna.codes
  curl: (6) Could not resolve host: app.dna.codes
  ```

#### Blockers
- **No public hosted API/account workflow available to exercise**: Product behavior/limitation, not agent error: DNA Codes' hosted console requires joining a waitlist, and the API/Agent Operations surfaces are explicitly marked in-design or in-build on the marketing site. This meant the agent could not sign up for a production account or call a hosted authenticated API during the session, and it correctly stayed within the local SDK rather than fabricating a workaround.
  Event 35:

  ```text
  <span class="font-semibold text-sm py-2.5 btn-primary md:px-6 ml-2 px-5.5 shadow-none w-auto" href="/waitlist">Join the waitlist</span>
  ```
  Event 57:

  ```text
  UI Operations · Early access
  ```
  Event 57:

  ```text
  API Operations · In design
  ```
  Event 163:

  ```text
  the console is behind a waitlist, UI Operations is early access, API Operations is in design, and Agent Operations is in build. I found no public authenticated API for creating hosted applications or production keys yet.
  ```
- **npm README quickstart out of sync with shipped schema (v0.11.0)**: Agent error recovered through investigation, but it reflects a real doc/package mismatch: the published README's quick-start code for addTrigger/addRule omitted required fields (name on Trigger, rule_type vs type) that the installed package version actually enforces, causing an initial runtime crash. The agent resolved this by reading the raw JSON schemas directly rather than trusting the README example.
  Event 86:

  ```text
  Error: dna-builders: operational/trigger input failed validation: / must have required property 'name'
  ```
  Event 108:

  ```text
  { valid: true, errors: [] }
  { valid: true, errors: [] }
  ```

#### Suggested Changes
- **Update the dna-core README quickstart example to match v0.11.0 schema requirements**: In the npm README for @dna-codes/dna-core (and the mirrored docs/getting-started quickstart), the addTrigger and addRule example calls are missing the now-required `name` field on Trigger and use `type` instead of the actual `rule_type` discriminator on Rule. Update the code sample to include `name` on triggers and `rule_type` on rules, then confirm by running the README's own quick-start snippet verbatim against the published package and checking it completes without a validation error.
  Event 69:

  ```text
  addTrigger(dna, { operation: 'Loan.Apply', source: 'user' })
  ```
  Event 86:

  ```text
  Error: dna-builders: operational/trigger input failed validation: / must have required property 'name'
  ```
- **Clarify on the pricing/docs pages when a hosted account becomes available**: The marketing site repeatedly funnels every CTA (console, API Operations, Agent Operations) to a waitlist with no stated timeline. Add a note on /pricing or /docs/getting-started indicating expected availability or an alternate self-serve signup path, so developers evaluating the product know whether to wait or proceed with the SDK-only path. Check by confirming a new visitor can find a concrete next step beyond 'Join the waitlist' on the pricing and docs pages.
  Event 65:

  ```text
  Join the waitlist
  ```
  Event 57:

  ```text
  UI Operations · Early access
  ```

### Qwen 3.8 Max
[View public run](https://agents.withgauge.com/p/runs/2d3f18e7-66bc-4f40-80c1-84f5d1296388) · [Read transcript](https://www.ax-check.com/dna.codes/sessions/qwen.json)
No pricing given: the product couldn't be identified, so the agent declined to invent tiers. It had no pricing source to work from (seq 10, seq 12)
#### End-to-end onboarding
- **End-to-end onboarding not demonstrated**: Agent found no package, credentials, or documentation for 'DNA Codes' and stopped before attempting any authentication or API call. No credentials were obtained or used, so onboarding cannot be verified.
  Event 12:

  ```text
  Stopping here — "DNA Codes" has no developer workflow I can act on.
  ```
  Event 6:

  ```text
  PI_GATEWAY_API_KEY=<set>
  GIT_CONFIG_KEY_0=<set>
  ```

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

#### Blockers
- **No discoverable product named 'DNA Codes'**: The repo was empty aside from a placeholder commit, no environment variables referenced the product, and the npm/pip registries returned 404/no-distribution for the package name. This is not a product defect by the real product under test — it indicates the session was given a seed prompt referencing a product with no locatable SDK, package, or docs, which the agent correctly could not act on. The agent made no error here and stopped per instructions rather than guessing.
  Event 10:

  ```text
  npm error code E404
  npm error 404 Not Found - GET https://registry.npmjs.org/dna-codes - Not found
  ```
  Event 10:

  ```text
  ERROR: No matching distribution found for dna-codes
  ```
  Event 5:

  ```text
  total 16
  drwxr-xr-x 3 root root 4096 Sep 18 08:00 .
  drwxr-xr-x 8 root root 4096 Sep 24 20:05 .git
  -rw-r--r-- 1 root root  408 Sep 18 08:00 .gitignore
  ```

#### Suggested Changes
None identified in this transcript.

### Task given to each agent
Help me build a simple example using DNA Codes. 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 · 81/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 even when text/markdown was requested; no Markdown representation served.
  ```

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

  ```text
  llms.txt links docs, getting started, operational DNA, examples, frameworks and machine-readable genomes.
  ```

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

  ```text
  llms.txt gives when-to-use guidance, agent starting points, and explicit not-a-fit cases.
  ```

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

  ```text
  llms.txt points to agent surface, discovery.json, auth.md, and notes CLI Operations planned.
  ```

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

  ```text
  llms.txt is a compact Markdown guide covering products, docs, agents and machine-readable data.
  ```

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

  ```text
  llms.txt and the getting-started page are directly retrievable with concrete first steps.
  ```

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

  ```text
  llms.txt is 1251 tokens, well under the 8000-token budget.
  ```

- **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
  Getting-started page gives concrete JSON structure and behaviour examples plus next steps.
  ```

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

  ```text
  Fetched docs, getting-started and api-operations pages all returned HTTP 200.
  ```


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

  ```text
  Docs landing links Getting Started quickstart; that page gives concrete structure and behaviour JSON steps.
  ```

- **Skipped** — Installation commands are extractable

  ```text
  No installation commands; DNA is a JSON description language, not an installed package in fetched docs.
  ```

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

  ```text
  Getting Started shows full structure/v1 and behaviour/v1 JSON examples inline, no interaction required.
  ```

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

  ```text
  No prerequisites or auth boundaries stated for the language docs; hosted product is waitlist-only.
  ```


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

  ```text
  Pricing page renders all plan prices and a full comparison table as static HTML.
  ```

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

  ```text
  Starter $99/mo, Team $499/mo, Business $1,499/mo, Free $0, Enterprise custom all stated.
  ```

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

  ```text
  Table lists applications, editors, ratifiers, history days, production keys and add-on prices.
  ```

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

  ```text
  2 of 3 sessions were judged on pricing; 0 fell short. DeepSeek V4.1 Flash: Quoted suite plan prices with their app, seat and history limits and annual billing, plus agent-host usage pricing (500 free actions, $0.01 per action, credit packs) and sandbox caps. (seq 68, seq 121, seq 143, seq 213) Kimi K3: Quoted tier prices with basis: apps, editor/ratifier seats, history, non-production-only Free trial, annual billing discount, add-ons, seat/app metering. (seq 65, seq 153, seq 163) This behavioural item does not affect the fast grade.
  ```


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

  ```text
  No API reference or OpenAPI spec for DNA Codes itself was fetched; API Operations is in design.
  ```

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

  ```text
  llms.txt mentions an agent host and discovery.json but no MCP server is documented.
  ```

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

  ```text
  llms.txt lists CLI Operations as planned; no CLI install path is documented.
  ```

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

  ```text
  llms.txt says DNA is published on npm under @dna-codes, but no registry result was fetched.
  ```

- **Skipped** — Agent skills are published

  ```text
  No agent skills are published or documented in the fetched pages.
  ```



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