CLI fails locally
A real failing fixture run exits non-zero and shows the exact check that broke.
Aici is a small CLI and GitHub Action that runs your prompts, JSON contracts, and tool calls against a few test cases, then exits non-zero when anything drifts. No dashboard. No tracing proxy. No sales call. It works the way npm test works.
npx @mgicloud/aici init --config aici.yml
Aici is just a YAML file and a CLI. Try a change below to see the same workflow you would run in .github/workflows/aici.yml, but live on this page.
The launch page now carries concrete product states: local CLI failure, pull-request failure, and the HTML report artifact a developer gets after a run.
A real failing fixture run exits non-zero and shows the exact check that broke.
The GitHub Action turns prompt regressions into normal pull-request evidence.
The same run writes Markdown, JSON, and HTML reports for review and CI artifacts.
Better to know fit before you install. Aici is intentionally a release gate, not a general AI platform.
Most AI quality tools want to sit between you and your model. Aici sits next to your test runner instead.
The CLI, GitHub Action, YAML schema, examples, and templates are in one repo you can inspect and fork.
Your prompts, fixtures, and outputs stay in your repo and CI. Aici has no hosted prompt database in v0.1.
Live checks call OpenAI or Anthropic with your key during a run. Production traffic does not pass through Aici.
The CLI and Action are free. Hosted history may become paid later, but the release gate is not a fake free tier.
There is a README, npm package, GitHub Action, examples, and docs. You can evaluate it without a call.
Catch LLM regressions before deploy. Hosted tracing, annotation, and generation are deliberately out of v1.
Delete aici.yml and the workflow file. No data export or offboarding email.
OpenAI, Anthropic, and OpenAI-compatible endpoints are supported without coupling tests to one vendor.
You can ship Aici in production CI without paying. Future paid surfaces should add hosted memory and team visibility, not take away the local release gate.
Initialize a config, commit the workflow, push a branch. The next time someone changes the prompt, the PR tells them what broke before users do.
npx @mgicloud/aici init && npx @mgicloud/aici run