Skip to main content

Install

Evaluate immediately — no API key

Evaluate against any public ruleset. No login is required for public ruleset discovery, field inspection, explanations, or decisions.
Login is required for tenant projects, private rulesets, composed rulebooks, and authoring commands. The Free School Meals rulesets from the worked example are live:

Author your own rules

Authoring is invite-only private beta (request access). Set ANTHROPIC_API_KEY in your environment before aethis generate — the key is sent with that request only and never stored.
No separate sign-in step. aethis init runs the browser OAuth flow for you the first time, then scaffolds. Alternatively, run aethis login explicitly first — same result. As of v0.6.0, any authoring command (aethis generate, aethis publish, …) also prompts you to sign in inline if no key is cached, so the order doesn’t matter.For CI / scripted use, set an AETHIS_API_KEY env var or pass --no-prompt (combined with a missing key, this fails fast instead of hanging on a browser prompt).
A login key can’t author rulebooks yet. aethis login mints ruleset-authoring scopes but not rulebooks:write, so the first aethis rulebooks create / activate returns 403 denied_missing_permission. Run aethis whoami to see your scopes, then mint a rulebook-capable key with the full scope set. Full details — the scope model, whoami, rotation, profiles, CI — on the Authentication & API keys page.
Scaffolding a rulebook. aethis init my-rulebook --kind rulebook scaffolds a rulebook (shared fields/ + guidance/, no sources/ of its own — those belong to its member rulesets). --kind ruleset (the default) scaffolds a single rule set.

Publish with citations

aethis publish --source-targets <file> resolves the ruleset’s citation keys to the documents they cite, so every criterion ships bound to the verbatim text it rests on. Available in aethis-cli v0.31.0+. The targets file is YAML or JSON, keyed by citation key. Each entry names exactly one of url (a public HTTPS document) or file (a local file, uploaded to the project and cited as a retained artefact), plus title, authority, licence and the verbatim quote.exact:
The file is validated locally — before any credential, config or HTTP — so a typo costs no round trip. The engine then verifies every quote against the source bytes at publish time and refuses the whole publish if any citation fails. A file entry becomes an authenticated artefact reference, never an anonymously readable link, and the CLI labels the two kinds distinctly so you cannot mistake one for the other. Full semantics — reference schemas, the public-visibility rule, failure reason codes — are on Provenance and citations.

Review a project (Authoring Coach)

aethis review scores the current project — or a named one — against the Authoring Coach rubric: grounded rationales, discovery, sources, test coverage, iteration, and version discipline. It’s advisory only — it never blocks publishing — and the deterministic score needs no LLM key. Available in aethis-cli v0.27.0+.
Each check links to the Review checks reference, which documents every check, its weight, and its pass/warn/fail thresholds. --coach adds an opt-in mentoring narrative synthesised with your own Anthropic key; the deterministic layer ignores the key entirely.

Project structure

aethis.yaml

guidance/hints.yaml

process_type is either rule_generation (affects how rules are generated) or field_extraction (affects how fields are identified from source text).

tests/scenarios.yaml

Test coverage strategy: test boundaries (values just below, at, and above thresholds), every enum value, and any combination of fields that exercises a different code path. Five tests minimum — more is better.

Error scenarios

Generation fails immediately: Check that AETHIS_API_KEY is set and valid. Run aethis account keys to verify. Generation times out: Don’t re-trigger — the server keeps running after your client disconnects. See Handling generation timeouts. Tests fail on publish: aethis publish refuses if tests are failing. Fix with aethis generate (after adding guidance) or pass --force to override (not recommended for production). Date field listed in field_errors: The value parsed as neither an ISO "YYYY-MM-DD" string nor an integer ordinal (e.g. an ISO datetime, or an invalid calendar date). See Date field values.

Commands

Decision (no API key)

Authoring

Guidance (project-level)

Project guidance is authored in guidance/hints.yaml and uploaded by aethis generate. These commands manage hints server-side after upload.

Fields — inspect & manage the vocabulary

aethis fields (no subcommand) inspects a ruleset’s fields. The subcommands manage the local fields/fields.yaml vocabulary during authoring.

Projects & tenant rulesets (login required)

Rulebooks (the converged 2-term model, login required for authoring)

A Rulebook is the whole form — the unit /decide evaluates against. It owns a locked field vocabulary, an outcome_logic composition expression, rulebook-level test cases, and an integer version history. Rulesets are named, versioned members of a Rulebook. See Nomenclature for the full model. Commands shipped in CLI v0.14.0+ (rulebooks group) and v0.15.0+ (rulesets lifecycle).

Account & identity

See Authentication & API keys for the scope model and the rulebook-authoring key recipe.

Profiles (switch between identities)

Store multiple credential profiles (e.g. admin vs dev) instead of swapping env vars. Override for a single command with aethis --profile <name> … (or --profile anonymous to force unsigned mode).

MCP server

Wire up the Aethis MCP server in Claude Code, Cursor, Claude Desktop, or Windsurf without hand-editing JSON.

Environment variables

Shell completions

Worked example

See UK Free School Meals — full three-section example with source documents, guidance hints, and test cases ready to run.
Help improve this pageIf something here is unclear or missing an example, use the feedback button at the bottom of the page.Found a bug? Open a GitHub issue. Evaluating Aethis for a regulated workflow? Contact us directly.