Open beta
Code is cheap. Correctness is not.
Agents now write code faster than anyone can read it. zriz proves your product still works, end to end, before your customers find out.
zriz is in open beta. The free tier gives each org one run at a time and 50 runs a day.
AI agent? Read /llms.txt first. It has the answers and the list of pages.
Start in your terminal
curl -fsSL https://zriz.io/install | sh ~/.local/bin/zz login ~/.local/bin/zz init --url http://localhost:3000 ~/.local/bin/zz run hello
Do the commands in the folder of your service.
How it works
- Write a pipeline. A JSON file in your repo. It calls your HTTP API and checks your database.
- Run it.
zz runruns it on your machine, or on a runner inside your network. - Get pass or fail. With the failed step and what it saw. Your agent fixes and runs again.
{
"description": "Sign up: check the status code and the body",
"steps": [
{ "set": { "email": "u-${gen.uuid}@test.com" } },
{
"call": "target/register",
"body": { "email": "${ctx.email}", "password": "secret123", "name": "Ann" },
"expect": [
["status", "==", 201],
["body.email", "==", "${ctx.email}"],
["body.user_id", "not-empty"]
]
}
]
}
pass
{"ok":true,"command":"run",
"data":{"pipeline":"register-reply","status":"pass","duration-ms":412}}
fail
{"ok":false,"command":"run",
"error":{"type":"run-fail",
"message":"check 0 of step 1 (target/register) failed: status is 500 and the pipeline expects 201"},
"hints":[{"command":"zz runs <run id>","doc":"Show the failed step and its values"}]}
The answers are shortened. The full lesson: Test an API status code and response body
One install. One project for each service.
- Install
zzonce for the computer. Log in once. - Each service has its own project: a
.zrizfolder in the service folder.zz initmakes it. - Commit
.zrizwith your code.zzfinds it from any sub-folder, like git finds.git. zz run hellotakes the name of a pipeline, not a path.
Built for AI agents
- Every
zzcommand prints one JSON object and names the next command. zznever asks a question and never waits for input.- One page teaches an agent to write a pipeline:
zz guide. - A test is done only when
zz runanswerspass.
Your secrets stay with you
- Database connection strings, passwords and keys never leave your network.
- The runner only makes outbound connections. Nothing listens.
- Results are cut down to the fields a check needs, and cleaned of secrets, before they leave.
The runner is open source: github.com/ZrizTech/runner.
What you can test
- HTTP APIs.
- Postgres and MySQL. Mark a database
read-onlyand no write gets through. - Flows across both: call the API, then check the row.
- Browser flows and command-line tools, on a deployed runner.
Learn by example
Short lessons solve one test problem each, with one pipeline that you can copy.