“what did it just change?”
swaey walks through the change in plain words with a diagram: what each part does now, and anything you still have to do, like a migration to run or a new key to set.
“what did it just change?”works with lovable, bolt, v0, replit, cursor, windsurf and claude code. free to start: 10 tries, no card.
you talk the way you think. swaey keeps every detail and every “don’t touch the payments code” word for word, fixes what it misheard (“super base” is supabase), and shapes it for the tool: lovable gets its supabase setup, replit keeps keys in secrets. then it adds what beginners don’t know to ask for: loading, empty and error states, each user seeing only their own data, payments confirmed by stripe’s webhook. too vague to build? it asks one question first.
## What I'm building Build a personal habit tracker where I can add habits, mark them complete each day, and see my streaks. It is for my own use; nobody else signs in. ## Who it's for Just me. ## Pages and features - Let me add habits and see my habit list. - Let me mark each habit complete for the day. - Show my current streak for each habit. - Include dark mode. - Make the app work well on my phone. ## Data Save my habits, daily completions, and streak information so they persist between visits. Use Supabase for login and data (I'll connect it). Keep the app private to my account. ## Look and feel Include a dark mode. ## Build first Start with adding habits, daily check-offs, streaks, and dark mode in a mobile-friendly experience. ## Quality bar - Include loading, empty, and error states for habit data. - Make the app work on mobile (375 px) and desktop. - Provide clear feedback if saving a habit or completion fails. - Make labels, keyboard focus, and contrast accessible. ## Security - Set up Supabase row-level security so only my account can see and change my habits and completions. - Check access to my data on the server, not only by hiding interface elements. Ask me if anything important is unclear.
“it’s still broken” is the most expensive prompt there is. say “fix this” and swaey finds the error that counts (the latest one, not the noise above it), quotes it exactly, and types a fix prompt into your agent’s chat that tells it to find the root cause, make the smallest change, and re-run to prove it’s gone. not to hide it behind a try/catch or by deleting the test.
fix this
why is this failing?
what does this error mean?
Sorry, your app hit an error.
TypeError: Cannot read properties of undefined (reading 'map')
at HabitList (HabitList.tsx:42)
when an ai agent gets stuck, it takes shortcuts: it changes a test until it passes, skips it, hides the error in an empty catch, or fills the screen with made-up data. ask “can i trust what claude just did?” and swaey reads the change itself, points at the file and line of each shortcut, and offers to run your tests to prove it. want a second pair of eyes? a different ai reviews it too. and when your agent finishes while you’re away, swaey offers to check it before you look.
can i trust what it just did?
check claude’s work
get a second opinion
you said yes to the tests: 1 failing. the streak got 3 instead of the expected 4, so the bug is still there.
claude code and codex stop to ask you things, and you only find out when you come back. swaey says it out loud, in plain words: a plan becomes a few short sentences and the one risk to watch, a choice comes with its options, and a command that can’t be undone gets a warning first. answer from wherever you are. swaey presses it in the right window and puts you back where you were. it never answers for you.
approve
skip step 3
the dark one
no
tell it to add a reset button
free on every plan. set it up once by saying “connect to my agents”.
say “give this project memory.” swaey writes a project file your ai tools read every session (claude code, cursor, windsurf and anything that reads AGENTS.md) and sets them up to keep it current. switch chats, tools or accounts, and your app is still understood.
then say “make skills for my project.” swaey reads your code, what broke before and what you had to correct in past chats with claude, and writes skills only for what applies here: how to check a change, how to add a feature, your stack’s gotchas. a mistakes log catches repeats, and a repeat becomes a rule. it can even block a risky command every time, like wiping the database.
give this project memory
make skills for my project
check my claude setup
# habit tracker: project context the one place that says what this app is and what’s next. ## what it is a phone-first habit tracker with streaks. ## decisions - supabase for auth and data, row-level security on - no paid apis ## built - today screen, streak calendar, dark mode ## next - reminders at 8 pm
habit-tracker-verify pnpm test, then a phone check habit-tracker-add-feature new screens go in app/(tabs) habit-tracker-db-changes migration files only, rls on habit-tracker-stack-gotchas dates are local, not utc docs/MISTAKES.md 1 repeat, now a rule
ask “is my site ready to launch?” and swaey checks the live site the way an attacker and a search engine would: keys in your javascript, a database strangers can read (it asks first, then checks logged out and read-only), a public .env, a robots.txt still blocking google from development. it tells you what to fix first, then writes one prompt that fixes the lot.
is my site ready to launch?
can anyone read my users’ data?
fix first: the stripe secret key is in main.js. anyone can read it. move it to the server and roll the key.
if rsi, an injury or a disability makes the keyboard hard, you can still build. say the idea and swaey writes the prompt and types it into lovable, bolt, cursor or claude code. say “fix this” when it breaks, “what did it just change?” when you’re not sure, and dictate into any app. hearing and speaking run on your mac.
for lovable, a habit tracker with streaks | a full prompt, typed into lovable’s chat |
|---|---|
fix this | the real error, quoted in a fix prompt |
what did it just change? | a plain-words walk through, with a diagram |
commit it | a save point you can go back to |
is my site ready to launch? | what to fix first, out loud |
swaey walks through the change in plain words with a diagram: what each part does now, and anything you still have to do, like a migration to run or a new key to set.
“what did it just change?”swaey names the giveaways (purple gradients, emoji as icons, glass on everything, a centred hero over three identical cards), rings each one on your screen, gives real values like 24 px between the cards, and writes the fixes as one prompt.
“why does my app look generic?”say “commit it” after every step that works. swaey writes a clear message and saves it in git, and refuses if a .env file or a key is in it. next time the ai wrecks something, there’s a good version to go back to.
“commit it”when your agent finishes and you’re not at the terminal, swaey says so and offers to check its work before you look. if it made the same mistake again, swaey offers to add it to the project’s skills.
“yes, check it”go and do something else. swaey watches the terminal and tells you when it finishes and whether it worked, in one plain sentence.
“tell me when the install is done”name the agent and the job. claude code or codex works on it in the background, and swaey tells you when it’s done.
“tell claude code to add a login page”no. you describe what you want out loud. swaey turns it into a prompt your builder understands, and explains errors and changes in plain words.
yes: into lovable, bolt or v0’s chat, cursor or windsurf’s ai chat, or claude code. it checks it’s in the right box first. if it can’t find one, it copies the prompt so you can paste it.
no. prompts never include secrets, and the launch check finds keys that have already leaked into your site.
lovable, bolt, v0, replit, cursor, windsurf, claude code and vs code. it shapes each prompt for the tool it’s going into.
your first 10 tries are free, with no card, and alerts from claude code (its question read aloud, answered yes, always or no) are free forever. pro is $15 a month or $120 a year (your local price at checkout). cancel anytime.
your next app starts with a sentence. swaey handles the prompt.
macOS 15 or later on apple silicon. prices shown in your currency at checkout.