How it works
- Dump everythingPaste notes in any order: half-sentences, bullets, file names, env vars, questions. English or Spanish.
- Pick your AICoding agent for edit-in-place tools, chat for full-file answers. XML tags if you live in Claude.
- Copy and shipPaste the prompt into Cursor, Codex, Claude or ChatGPT. Ten seconds of review beats ten minutes of re-prompting.
Why structured prompts get better code
Language models are excellent at following instructions and mediocre at guessing which of your instructions matter. When you paste a stream of consciousness, the model has to decide on its own what is a requirement, what is background, and what was a passing thought. That is exactly where invented functions, renamed variables and unrequested "improvements" come from.
This converter does the triage for you. Each line of your braindump is classified as context, requirement, constraint or open question. Technical tokens are pulled out separately: frameworks and libraries become a stack list, camelCase and snake_case names become a "keep these exact names" list, SCREAMING_CASE names are flagged as environment variables, and paths like src/lib/auth.ts become the files in scope. Packages from npm install lines are added as dependencies.
On top of that, every prompt ends with a short set of rules that experienced developers keep retyping: don't invent APIs, don't hardcode secrets, handle errors explicitly, ask before assuming. The output-format section changes with the target: coding agents get "minimal diffs, don't touch unrelated files"; chat assistants get "complete runnable files, no placeholders".
Example
need withdraw btn → withdraw(uint256) on StakingVault.sol dont add backend RPC from NEXT_PUBLIC_RPC_URL should we use multicall?
## Requirements 1. Need withdraw btn → withdraw(uint256) on StakingVault.sol ## Identifiers referenced (keep these exact names) - `StakingVault` - `withdraw(uint256)` ## Environment variables - `NEXT_PUBLIC_RPC_URL` ## Files in scope - `StakingVault.sol` ## Constraints - Dont add backend ## Open questions - Should we use multicall?
Markdown or XML tags?
Both work everywhere. Markdown headings are readable and universal. XML-style tags such as <requirements> and <constraints> give the model hard boundaries between sections, which Anthropic recommends for Claude and which also helps other models when prompts get long.
FAQ
Is my text sent to an AI or a server?
No. The converter is a set of rules written in JavaScript that runs inside your browser. Your notes never leave your device, and nothing is stored.
Which AI tools does the prompt work with?
Any of them. Pick Coding agent for Cursor, Codex, Claude Code or Windsurf (edit-in-place instructions), or Chat for ChatGPT, Claude or Gemini (full-file answers). Use XML tags if you mainly use Claude.
Does it understand Spanish notes?
Yes. It detects English and Spanish and writes the section headings in the language you choose.
Why not just paste my notes straight into the AI?
Models follow explicit structure far more reliably. Separating requirements, constraints, identifiers and open questions reduces invented APIs, renamed variables and features you never asked for.
Is it perfect?
No. It uses heuristics, not a language model, so a line can land in the wrong section. The output is plain text: review it for ten seconds and fix anything before sending.