My AI developemt workflow

  • Context

    • I’m building a multiplatform time tracking and auto-scheduling app in Kotlin/Compose Multiplatform. So some of the workflow might not work for your usecase.
    • I did extensive ideation with O3 model from OpenAI long back and found O3 to be great at ideation - it able to reason exceptionally well with barely any noticable context rot or loss.
    • Once I had done the scoping, after a few trials with Firebender, Gemini and Jetbrain’s AI agent within Android studio I setlled on Claude Code. Rest of the post is about using Claude Code.

Like many of us tend to work with Claude Code (CC hereafter), I was having long discussions on the feature or fix that I was working on , asking CC to write the plan in a file , spawn a new CC terminal with fresh context and do one or more review iteration and finally hit impliment in a fresh terminal. And I thought I was done, but no. CC kept on pestering me seeking permissions to read files or run commands.

So the first thing I needed to tackle was to not let CC keep stopping execution midway for permissions. After all you are an (autonomous) Agent, be like one! Here comes, packnplay (Read: https://blog.fsck.com/2025/12/10/packnplay/ for more). It runs your local repo in a containerised environment so that you can finally run ‘claude —dangerously-skip-permissions’ with reasonable confidence. It only has access to the repo in which you invoke it and nothing else on your system. There is Leash as well, if you want to monitor and approve individual permissions like access lists - not my usecase.

Next I had to tackle working on each feature, architecture change, refactoring etc piecemeal. And for that I found SDD, short for Spec Driven Development, which helps you write your plans as specs and spec changes. This is useful because now you can develop a plan for a massive refactor (and i mean it) and let CC run without your intervention for hours. You can impliment only a few phases of the plan or all, upto you, but all the thinking is done in one go and now you can let CC do its thing. I have let CC run for 3 hours UI jobs and its worked perfectly fine.

The SDD framework I use is OpenSpec and the reason I settled on it was twofold: a) It’s simple enough and does the job b) it works really well for brownfield (i.e pre-existing codebase) projects. Most of the other highly popular ones are either too complex or geared towards fresh projects (BMAD, SpecKit).

For context management, you can either ask CC to use subagents, so that these long sessions don’t eat up the context of your main thead - its impossible to run this without subagents. You can simply put a line in Claude.md asking it to use subagents.

One of the things I find lacking in CC is handoff. Ampcode apparently is gaining popularity and has this handoff feature where you can handoff the work to another agent, in CC it’s all tied to the main thread. Ampcode also uses most of the frontier models and you can choose them depending upon your use case - for ex for ideation i’ve found CC to be lacking - it just asks me which one I want to pick, OpenAI models on the other hand I’ve found to be great at ideation. I’m too invested in my current workflow to experiment with Ampcode, but if you’ve tried it, do reachout with your experience of using it.