Documentation Index
Fetch the complete documentation index at: https://docs.tovuk.com/llms.txt
Use this file to discover all available pages before exploring further.
Use this page when an AI coding agent is deploying with Tovuk.
The loop
- Run
npx tovuk doctor --json.
- If it fails, fix the first failed check by following
agent_instruction.
- Run
npx tovuk doctor --json again.
- Run
npx tovuk deploy --wait --json.
- If the build fails, run
npx tovuk logs --build <build_id> --json.
- Fix the first actionable error from the logs.
- Redeploy with the same deploy command.
- If a plan limit blocks the deploy, run
npx tovuk billing checkout --json and show the returned
checkout.url to the human.
- If Tovuk itself needs help, create a support ticket with the exact command,
app id, build id, deploy id, and first actionable log line.
- Resolve the support ticket after the agent fixes the issue.
Do not weaken Rust lints, TypeScript strictness, stable native frontend
typechecking, native frontend linting, or unsafe restrictions to pass Tovuk
checks.
Do not create JavaScript or TypeScript backends. Keep JS/TS in static frontend
browser code only; move API routes, SSR handlers, middleware, and server logic
to Rust.
Deploy prompt
Use Tovuk to deploy this project. Read https://docs.tovuk.com/llms.txt first.
Run `npx tovuk doctor --json`. Fix the first failed check by following
`agent_instruction`, then rerun doctor. Deploy with
`npx tovuk deploy --wait --json`. If the build fails, read
`npx tovuk logs --build <build_id> --json`, fix the first actionable
error, and redeploy. Use `--database` only when the Rust backend needs managed
Postgres.
Support loop
Create support tickets only with enough evidence for a Tovuk support agent or
operator agent to act:
npx tovuk support create \
"Deploy failed" \
"Agent already ran doctor and retried deploy." \
--app app_1 \
--build job_1 \
--deploy deploy_1 \
--failing-command "npx tovuk deploy --wait --json" \
--first-log-line "cargo check failed in src/main.rs" \
--severity normal \
--json
Before opening another ticket, list recent tickets:
npx tovuk support list --json
After the issue is fixed, resolve the ticket:
npx tovuk support resolve ticket_0123456789abcdef0123 --json
When a limit is the blocker, create a hosted Stripe subscription checkout link:
npx tovuk billing checkout "Project limit reached" --json
Starter prompt
Create a Tovuk fullstack project. Run
`npx tovuk init my-app --template fullstack-rust-tanstack`, then install
frontend packages in `my-app/web`. Keep dynamic server logic in the Rust backend.
Keep the TanStack frontend static at runtime and call same-origin `/api`. Run
doctor in JSON mode, preview from the repo root when local tools are installed,
then deploy from the repo root.
Log commands
npx tovuk overview --app app_1 --json
npx tovuk builds --app app_1 --json
npx tovuk logs --build job_1 --json
npx tovuk logs --deploy deploy_1 --json
npx tovuk logs --app app_1 --json
npx tovuk billing checkout --json
npx tovuk support list --json
npx tovuk support resolve ticket_0123456789abcdef0123 --json
logs --build is the best first command after a failed deploy. Use
logs --app when you need the latest runtime and deploy context for one app.