Skip to main content
With the skill installed, Claude Code uses envctl when a task calls for it. Two more things help.

Allow envctl without prompting

Add envctl to the project’s allowed commands in .claude/settings.json, so Claude doesn’t stop to ask before each lease or build:
.claude/settings.json

Run it headless

For a scripted run, a scheduled job or CI, use claude -p and allow only envctl and read-only tools:
In the live demo’s recording, Claude Code did this unaided: it leased a box, built a Go app, read the report it produced and deleted its lease in 94 seconds.

Without the skill

A few lines in CLAUDE.md work too:
CLAUDE.md