Use your own coding agent
Edit your AI website builder site locally with Claude Code, Codex, Cursor, or any coding agent, then submit, preview, and publish it with the Cavuno CLI.
A
JCheck out your site's source as a local Git repository, edit it with any coding agent, and submit the result back to Cavuno. Every version you submit is built and checked. You preview it, then publish when you are ready.
It works like Git. Submitting adds a new version to your draft; it never overwrites newer work or publishes on its own. If the draft has moved on, you pull, merge, and submit again.
Using your own coding agent is in early access. Contact support to turn it on for your board.
Before you begin
You need:
- A board with the AI website builder that has published at least once.
- A paid plan with API access (Starter or above). A trial does not count.
- Node.js 18.18 or later and Git.
- A coding agent, such as Claude Code, Codex, or Cursor.
Create an API key
- In your Cavuno dashboard, open Settings → Developer → API keys.
- Create a key with the Builder permission you need. Each level includes the ones before it:
- Builder: read checks out an existing draft and reads its status and previews.
- Builder: manage also creates drafts and submits changes.
- Builder: publish also publishes versions.
- Copy the key and export it in your terminal. Keep it out of prompts and repositories.
A key belongs to one board, so the CLI always knows which site to work on. See API keys for how permissions work.
Check out your site
This creates a new draft from your live site and writes it to a local Git repository. The draft also appears as a task in Website builder. The command prints the new draftId; to continue an existing draft later, pass --draft <draft-id>.
Edit with your agent
Open the folder in your coding agent and describe the change, just as you would in the builder. The checkout includes the site's AGENTS.md, which most agents read automatically.
For example:
Add an employer FAQ section to the homepage, below the job search. Keep the existing styles. Run the build before you finish.
Commit as you go if you like. submit sends the files Git sees, including uncommitted edits. Anything matched by .gitignore, such as node_modules, build output, and local dev server state, stays on your machine.
A few rules apply to every submission:
- Use pnpm, and update
pnpm-lock.yamlwith any change topackage.json. - Leave
AGENTS.md,wrangler.jsonc, andpnpm-workspace.yamlas they are. Cavuno manages them. - Keep secrets in
.envor.dev.varsfiles. The CLI never uploads them.
Submit a version
The CLI prints the new versionId. The version shows up in the draft's history in Website builder as Local agent update.
If the draft changed since your checkout, for example because someone used the builder chat or published from another task, submit stops and asks you to pull:
pull merges the draft's latest version into your committed work, like git pull. If there are conflicts, the CLI lists the files. Resolve them yourself or ask your agent to, commit, then submit again.
Check the version
Cavuno builds every submitted version and runs four checks:
| Check | What it confirms |
|---|---|
| Build | The site builds cleanly on Cavuno. |
| Dependencies | Packages install exactly from pnpm-lock.yaml, and none were published in the last day. |
| Cookies | The site does not set cookies that reach beyond its own domain. |
| Public files | Files served to visitors contain no executables or malware. |
Wait for the result with:
It exits with 0 when the version is ready to publish. If a check fails or flags the version, it exits with a non-zero code and says why. Run builder status without --wait for the full details, including how many agent builds and screenshots remain today.
Preview and publish
Get a private preview link for the version you submitted:
Each link opens once and expires after 60 seconds, so run the command again for each visit.
When you are happy with the preview, publish:
Publishing runs the same Go Live checks as the Publish button in the builder. Run status again to follow it until publish.status is succeeded. You can also review and publish the version from Website builder.
To undo a change, restore an earlier version from version history and publish it.
Pricing and limits
Your agent brings its own model, so working this way does not use AI website builder credits. Builds, previews, and screenshots your agent requests are free.
Each board can submit up to 100 agent builds and take 30 screenshots per UTC day. A submission with no changes does not count. status shows what is left and when it resets.
Connect over MCP
Agents that support remote MCP servers can also connect to https://mcp.cavuno.com/builder, sending the same API key as a bearer token. It adds tools for status, checks, previews, and screenshots of a submitted version. Use the CLI to check out and submit source.
Troubleshooting
| What you see | What to do |
|---|---|
stale_base | The draft changed. Commit, run builder pull, resolve any conflicts, commit, and submit again. |
busy | Cavuno is publishing or processing another submission for this board. Wait a moment, then submit again. |
refused | The source broke one of the rules above, such as a changed AGENTS.md or a package.json that does not match pnpm-lock.yaml. The message names the reason and the file. |
daily_build_limit | The board reached 100 agent builds today. Try again after the reset time in the message. |
| A check is flagged | Fix the cause and submit a new version. |
401 | CAVUNO_API_KEY is missing, revoked, or mistyped. Set it again. |
permission_required | The key lacks the Builder permission the command needs. The message names it. |
board_not_found | You passed a board ID the key does not belong to. Run builder checkout without one. |
local_agent_not_enabled | Your board is not in the early access yet. Contact support. |
plan_upgrade_required | Submitting and publishing need a paid plan. Trials do not count. |
The full command reference is in the CLI documentation.