I asked Claude to go through the history of our collaboration: over 150 sessions across 41 projects in the past year. I wanted to know what actually works in how I use AI, and what's worth passing on. The result is this guide: 7 habits that show how to work with AI in practice. They apply to programmers and to people who have never seen a line of code.
Key takeaways:
- Paste errors and tasks into AI in raw form. The original contains details you'd lose when retelling
- Show an example of what you want instead of explaining at length
- For bigger tasks, ask for a plan first and let AI work only after you approve it
- Turn every correction into a permanent rule so AI never repeats the mistake
- Always verify output in real use. AI can pass every check and still be wrong
How this article came to be
Before writing, I opened Claude Code and gave it a single task: go through the history of our collaboration and tell me how I actually work with you. It went through 41 projects, roughly 150 sessions, and 378 of my prompts. One number made me laugh: 42% of my prompts are under 30 characters. My most frequent instructions are "push it" and "fix phpstan". And yet this style ships production features for ten e-commerce stores, mobile apps, and entire websites.
The 7 habits below aren't conference theory. They're what actually fell out of that history.
1. Paste errors and tasks in raw form
The most common pattern in my entire history: something breaks, I copy the full error message and paste it into AI without a single extra word. The full error printout (the stack trace), a server log, a monitoring alert. AI extracts more from that than from my retelling, because raw data carries details I would leave out when describing the problem.
The same works outside programming. When a client messages me on Slack that something stopped working, I don't rephrase it. I paste the message as it arrived and let AI figure out what happened. If you're dealing with a complaint, a contract, or a broken spreadsheet, give AI the original email or file rather than your summary.
2. Show an example instead of explaining
We run more than ten e-commerce stores built on the same platform. When we build a new feature on one of them, say gift voucher sales, I don't tell AI how to write it on the next one. I say: "The neighboring project already has this. Do proper research and implement it the same way here." AI studies the finished solution and carries it over, including details I would never have remembered to specify.
The general version of this advice: if you have a sample of the result you want, attach it. A document, a spreadsheet, an email that worked last time. "Make it like this" is the most reliable prompt I know.
3. For bigger tasks, ask for a plan first
Small things I fire off directly. For anything bigger, my prompt is "Make a plan for this, ask if anything's unclear." AI lays out the approach, I review it, cut what I don't want, and only then let it work. Nine of my sessions literally start with "Implement the following plan": I approve the plan in one conversation and run the execution in a fresh one.
The reason is simple: a mistake in a plan takes a minute to fix, a mistake in finished work takes an hour. And reading the plan tells you immediately whether AI understood your task at all.
4. Never correct the same mistake twice
Once, AI pushed code to my repository without being asked. It annoyed me, but instead of complaining I had it write a rule into the project's permanent memory: code gets pushed only when I explicitly say so. It hasn't happened since.
I have dozens of rules like that, and AI loads them at the start of every conversation: what my tech stack looks like, which checks must pass before committing code, which writing patterns are banned in my copy. 65 of my 119 projects have their own instruction file. I write each rule once and it holds forever.
In ChatGPT or Claude on the web, the equivalent is custom instructions and projects. A plain document with your rules, attached to the task, does the same job.
I never fix the same mistake twice. When AI gets something wrong, we turn it into a rule and that's the end of it for me.
5. Automate what you keep asking for
My ten most frequent tasks have their own commands. /push commits changes with a meaningful message and pushes them. /phpstan runs static code analysis and fixes errors until it comes back clean. /sentry-fix goes through production errors and fixes them. /blog holds the entire article pipeline for this site, including this very text.
You don't need to be a programmer. Practically every AI tool today supports saved prompts or templates, and the same principle works for weekly reports, unpaid invoice reminders, or answers to frequent customer questions. I described what a saved routine looks like outside of code in my article on the morning briefing. When you catch yourself writing the same request in different words for the third day in a row, save it.
6. Stay the tester
My favorite story: a template change passed static analysis, style checks, and my own review of the diff. I deployed it and PDF generation crashed in production, even though every check had come back green.
Since then my rule is: done means tried. I deploy, click through the result, and when something is off, I paste AI exactly what I see: "It says the notification was sent, but it never popped up and I can't find it in the log." I often flip the roles too and have AI test its own work: I let it loose on the test version of the app and say "test it yourself, I don't think it works yet."
7. Write short, don't fear typos
Back to those 42% of prompts under 30 characters. I write with typos ("commit and puysh") and never fix them; AI understands. I mix Czech and English depending on what comes to hand. Form doesn't matter, clarity of intent does. The time people spend polishing prompts is usually better invested in checking the result.
The second half of this advice: don't be afraid to push back. When AI proposes a solution I don't like, I say so directly and counter with another one: "Wouldn't it be better to create the record but not display it?" AI isn't an oracle. It's a colleague you argue with about solutions, and the arguing pays off.
What these 7 habits got me
One example that sums it up: a client asked me to quote an API extension based on a thirteen-page spec. I had AI estimate it the traditional way and it came out at 10 to 14 hours. Then I flipped the prompt: "Lower those estimates, since you'll be the one doing it." I ended up lowering the client's price. Work that used to take two days is done in an afternoon with AI.
I wrote about what AI did to my time and focus in AI Saved Me Time and Gave Me Back Flow. This guide is the other side of the same coin: AI only saves you time if you know how to work with it. The seven habits above are a good place to start.