Clone yourself with AI: a Claude Code experiment
Building a custom tool with Claude Code: from a vague idea to a working app, and three things I learned along the way.
Last week, I sat down to work on my portfolio for freelance work, got distracted by planning interviews for others, thinking about ideal client profile, and ended up doing none of them.
That’s how my brain works. Fixed time blocks do not work for me — I need flexibility to choose what I work on today, even if it means building a side project when I should be doing client work. It’s the ADHD gift and it’s why I decided on this freelancing journey.
I know I should write my ideas down somewhere. Papers? Notion? Dozens of planners with only January filled? How should I have them organised? As I was trying to fit my workflow to an existing tool, I decided to take up on the advice I’ve seen on the internet, with a twist. Instead of cloning myself, I built a tool that pushes me forward.
The aha moment followed by usage limits
Today’s Claude can follow vague instructions and produce something decent from a simple prompt such as “build me a landing pages that advertises my landscaping business in so-and-so”. The more detailed your prompt, Claude structures its job to do (task list) according to your wishes. Thus we arrive at the never-ending fine tuning step where we start sending things like: “This is great, but can you change the font to xxx? Can you make these into three columns layout instead of one column, etc”.
I fall into this every time: rabbit-hole my chats and got hit by : you’ve hit your limit. Please try again at 6PM (but, mom, one more prompt!).
Step 1: Spark to Clarity (10-30 minutes)
People say you need some guiding documents such as PRD (Product Requirement Document) before you start building with AI. Makes total sense but I didn’t have one nor was I willing to write one. I only had a rough idea (a tool customised to move me along my days towards my goal) and a design preference (still in my neo-brutalism era). No clarity on features.
I started a chat with Claude. I already had a project setup with context about my business plans, so it had something to work with.
💡 Tip: Claude chat uses less of your usage allowance than Claude Code (as of the time this article is written).
Claude started asking multiple choice questions that guided me to lay down the framework. As I provided answers, I started thinking about my current workflow. How do I start my day? What kind of help/ nudge would help me to tackle my blockers? How do I want to interact with this tool?
For example, I know that I would use Claude as an assistant in most day-to-day job, preparing for interviews, discovery calls, researching articles, etc. So I requested a feature to generate a ready-made prompt with the right context and opens Claude for me. No API complexity, just a shortcut.
Once I was happy with the summary & plan, I asked it to generate the PRD and Claude.md file — instructions to feed to Claude Code to start building.
Here's sample of both files if you're keen:
The main output from this stage is not the documents but the clarity that I gained from how this tool could work for me and fit into my workflow. Honestly, the best features come from me laying out the problems instead of rushing to solutions.
Step 2: Start Building (hours to forever)
An artist once told me that he can never view his work as finished. He always feels the itch to “just add this one little thing”. I totally relate to that with Claude Code.
So I created a new folder, started Claude Code pointing to it, pasted in the .md files for tool building and asked if it understood the files or needed to ask me clarifying questions before we proceed to building.
💡 Tip: LLMs are trained to take initiative with minimal supervision. If you want more control over their choices, tell them upfront. We can also set global CLAUDE.md detailing your preferences on how it would behave and interact with you & your requests.
I watched it reading through the requirements, building plans and tasks for itself, even updating the PRD when I deviate from original design. In a few minutes, I had a working dashboard with wrong colours and unbalanced layout but it was something I can click on and play with.
So now I have a local web app customised perfectly to what I need to reach my goals. That being said, I do find it ironic that putting myself back to the centre of system design requires AI help to do it.
What I’ve learned so far
1. It’s not magic. You decide the output.
Coding agents (such as Claude code and many more) are not magic crystal balls. They are tools that move fast (executing its algorithm, reading your inputs) and draw on decades’ worth of knowledge. But you can (and should) define the input, the way it processes its input, and the output. It’s really like how programs work, but with English rather than a programming language. If we don’t want it to produce articles that sound like any other AI-generated content, give it your voice and shape it to your standard.
2. You can build anything but should you?
Claude code is addictive. Seeing your prompt materialise into a product in minutes gives you the illusion of limitless power, so naturally we keep adding. At one point, Claude took more than 10 minutes to plan and implement, and I realised I may have gone too far. If we’re spending more time tinkering than actually using it, take a moment to refocus on what we actually need to do today. For me, it’s writing this article instead of adding more features to the tool (that would help me write future articles).
3. Realise when to stop building and start paying
Some problems are already solved in a way that is better than what you’ll build in an afternoon. I built a personal library RAG overnight, struggling with debugging and missing book information. As I was googling for free book API, I found that there’s already an app that solved my exact problem, and more, and with proper design.
Build custom product when your needs are genuinely unique or if it’s something rather simple. Otherwise, it's probably better to pay for software tackling universal problems, especially involving security, payments, and sensitive (or large amount of) data. A team of engineers maintaining that software will always beat a weekend project.
Still, there’s learning in experimenting.
So, what next ?
I am not sponsored by anyone. Claude happens to be what I use, but there are plenty of coding agents out there. The tool doesn’t matter.
What matters is: I have felt constantly exhausted after spending my days in decision paralysis juggling a full-time job and a freelance business I’m building from scratch. I know the values I want to deliver to my clients and the mounting responsibilities that comes with it. Building this tool forced me to ask — what actually needs to happen today? What are my non-negotiables that does not force me to compromise with my health?
The tool will never be finished but for the first time in a while, I woke up and know exactly how my day would look. And for someone whose brain couldn’t pick between three tasks last week, that’s life-changing.





