Guide · Dev Box
One way to prompt every project
The AI in your Dev Box starts every conversation knowing nothing about your project. If you explain the project in every prompt, every project ends up with its own prompt. Do it in two layers instead: the project rules go in one file, once. Each task then fits the same short template.
Last updated
The two layers
- Project file (once per project):
AGENTS.mdin the project folder holds what never changes: what the project is, how to run, test and deploy it, and what the AI must not touch. Claude Code, Codex and Gemini read it by themselves. - Task prompt (every time): only what you want now, always in the same 4 parts: goal, where, rules, done when.
Step 1 — Let the AI write AGENTS.md
Open the project (Telegram: /project name; terminal: cd ~/workspace/name) and send this. It works the same for every project:
Read this project (README, package.json or other config, folder layout, scripts).
Write an AGENTS.md in the project root, max 60 lines, with:
- What the project is, in 2 sentences
- Stack and important folders
- Commands to install, run, test, build and deploy (only ones that really work)
- Code rules you can see in the code (style, naming, language of UI texts)
- What must not be changed without asking (production config, secrets, database data)
Then create CLAUDE.md and GEMINI.md that each contain only the line: @AGENTS.md
Don't change any other file.Read AGENTS.md once and fix what is wrong — the AI follows it from now on. When the project changes (new deploy command, new rule), send: “Update AGENTS.md: …”.
What a good AGENTS.md looks like
# Shop website
Online shop for handmade bags. Astro 5 + Tailwind, content in src/content/.
## Commands
- npm install / npm run dev (port 4321) / npm run build
- Deploy: npx wrangler deploy (Cloudflare account in wrangler.jsonc)
## Rules
- UI texts in Indonesian, code and comments in English
- Small commits, message style: fix(cart): ...
- Run npm run build before saying you're done
## Don't touch without asking
- wrangler.jsonc routes, .env, the products databaseStep 2 — The task template (the same for every project)
Fill in the 4 parts. Leave one out only when it's obvious.
Goal: <what should exist or work afterwards>
Where: <page, file, function, or "you find it">
Rules: <what not to change, libraries to use or avoid>
Done when: <how you check it: build passes, test, page shows X>Example:
Goal: a "Sort by price" dropdown on the products page
Where: src/pages/products.astro
Rules: no new libraries, keep the current design
Done when: npm run build passes and sorting works low→high and high→lowReady-made prompts
New project from zero
Goal: <what the app does, for whom>
Stack: <e.g. Astro + Tailwind on Cloudflare Workers> — or pick a simple one and tell me why
Rules: keep it minimal, no paid services, no login yet
Done when: it runs with npm run dev, and AGENTS.md (+ CLAUDE.md and GEMINI.md with @AGENTS.md) describes how to run and deploy it
Start with a short plan and wait for my OK before writing code.Fix a bug
Bug: <what happens> — expected: <what should happen>
Steps: <1. open … 2. click … 3. see error>
Error (copied as is):
<paste the error or log>
Find the cause first and tell me in 2-3 sentences, then fix it with the smallest change. Done when: <the steps work again / test passes>Add a feature
Goal: <feature, from the user's point of view>
Where: <page or file, or "you find it">
Rules: follow the existing code style, no new dependencies unless you ask first
Done when: build passes and <how I can see it working>Change how a page looks
On the full Dev Box the AI can open the page in its own browser and screenshot it (Telegram: /shot <url>).
Goal: <what should look different>
Where: <page URL or file>
Rules: mobile first, keep the colours and fonts we use
Done when: you checked it in the browser at phone and desktop width and sent me a screenshotDeploy to Cloudflare
Connect Cloudflare in the dashboard first; wrangler then works without wrangler login. With several accounts, the account_id in the project's wrangler config picks which one.
Deploy this project to Cloudflare with wrangler.
Check first: which account_id is in the wrangler config, and that the build passes.
Show me the command before you run it. Don't create or delete anything else in the account.Understand code you didn't write
Explain <file or feature> to me: what it does, how the data flows, and where I would change <X>.
Don't change any files.Bigger change, step by step
Goal: <bigger change>
Make a plan of small steps first (max 6) and wait for my OK.
After my OK do one step at a time; after each step run the build and tell me what changed.On Telegram
/project namefirst — the AI works in the active project and reads its AGENTS.md./newwhen you start a different task: the AI forgets the conversation so far (only in this project) and starts fresh. Your files, changes and active project stay.- One task per message. Five wishes in one message give five half-done results.
- Check with
/diff, then/pushand tap Confirm. Nothing is pushed without you. - Worked on your laptop too? Push there, then send
/pullto bring it into the box. If it says package-lock.json changed, ask the AI to runnpm cibefore building. - Deploys and restarts (
wrangler deploy,npm run deploy,docker restart, …) never run on their own: you get the exact command with a Run / Cancel button. - Bigger task on the full Dev Box:
/team <task>— one AI builds, another reviews, then it fixes. /stopif it goes the wrong way: it only cancels the task that's running. You stay in the same project, edits made so far stay (check/diff), and the AI still remembers the conversation, so just say what to do differently. Want a clean start? Send/new.
Your own rules for all projects
Things that are true for you everywhere (your language, commit style, “never run wrangler login”) go in one personal file instead of every project. Ask the AI:
Create ~/.claude/CLAUDE.md, ~/.codex/AGENTS.md and ~/.gemini/GEMINI.md with these rules for all my projects:
- Answer me in English, short and direct
- Never run git push; I push myself
- Never run wrangler login; the Cloudflare token is already set
- Ask before deleting files or changing production configCommon mistakes
- Too vague: “fix my website” → say what is wrong and how you see it.
- No way to check: without “done when”, the AI decides itself when it's done.
- Wrong project: check
/projectbefore a task on Telegram. - Secrets in the prompt: don't paste passwords or API keys into a chat; use the dashboard connections or a .env file.
- Correcting forever: after 2-3 failed tries, send
/newand write the task again, clearer.