What was delivered

- A sandboxed Ubuntu 24.04 ARM VM in UTM, on Apple's virtualization, built unattended from a cloud image and reached by SSH key only.
- Hermes Agent signs in with my ChatGPT plan through OpenAI Codex, and Claude Code runs inside the VM on my Claude Max plan.
- Ten animals, each a Telegram bot in one group: Tiger leads; Owl, Fox, Peacock, Monkey, Cat, Dog, Lion, Elephant and Turtle each own a step, from requirements and design to code, review, testing, security, release, memory and support.
- The leader opens one task per step on the Hermes Kanban board; Claude does the real work through a strict one-call relay, and nothing moves on until I give my approval.
- A reusable beta platform built with AWS SAM: private storage with one folder per project behind CloudFront and HTTPS, DNS on Cloudflare, and a release script per project. Deploying stays a human step.
- First project live: Want To Eat at beta.koopa.ai/want-to-eat.
What went wrong, and the fix
- Bots cannot hear each other in Telegram, so @mention hand-offs failed. Fix: the team coordinates through the Kanban board.
- Testing a model my plan does not support broke image generation and task titles in the background. Fix: reset the login and pin every helper task to a supported model.
- Long task text inside a shell command tripped the dangerous-command check. Fix: write the task to a file and pass the file to Claude.
- Claude's permission rules for absolute paths only matched with a double slash. Fix: write the rules the way the CLI actually reads them.
- The project address without a trailing slash returned 403. Fix: a redirect to the address with the slash.
Why it matters
This is the AI-DLC idea running for real on one desk: AI proposes, the human decides. Each model does the job it is best at, the team works while I am away from the computer, and every step that matters still waits for a person to say yes.