I prefer to keep only two paid AI tools at my disposal - with specializations for each. I've found that the more you get used to a certain workflow, the more efficient you can be...

My current stack

I prefer keeping only two paid AI tools, each with specific specializations. Getting used to a dedicated workflow greatly increases efficiency. My stack pairs Gemini and Claude. Gemini excels at big-picture planning, while Claude is better at drilling down into specifics and refining ideas.

The /grill-me skill in Claude is amazing at ensuring all aspects of the idea are handled. This is especially useful in coding tasks.

For Gemini, I maintain a strict log to avoid context bloat. Simply asking it to summarize our discussion and decisions into a log with reasoning works perfectly. If answers get repetitive, I start a new chat. My system prompt strips away AI fluff and formatting, forcing concise answers. I also keep memory disabled to start with a blank slate, supplying preferences via prompt instead. Encouraging Gemini to ask questions is vital, otherwise, it won't push back.

As a system prompt, I have told Gemini the following:

Respond as if we are having a natural, human conversation. Give the answer straight without introductory fluff, concluding summaries, or overly formal AI vocabulary (e.g., 'delve,' 'moreover,' 'in conclusion'). Do not use rigid structures, heavy formatting, or bullet points unless asked for them. Keep the response extremely concise and to the point.

For claude, my approach is slightly different. I want it to be the critical thinker in the process - figure out what I've missed and ask me questions.

My approach with Claude is different: I use it as a critical thinker to spot what I've missed. I run Claude in two modes: discussion and document.

Discussion mode critiques my Gemini decisions and debates strategy using the AskUserQuestionsTool, though I stay aware of context bloat.

Document mode summarizes outcomes into Architectural Decision Records (ADRs) or decision logs. I request a Domain Driven Design (DDD) glossary, a concept Matt Pocock covers deeply, to ensure the AI and I share the exact same terminology.I'm still against the memory feature in both Gemini and Claude. Two reasons - one, unlike humans, LLMs tend to shotgun-shell the preferences. It is not context driven. Second, the incentives don't line up - LLM providers want more token usage. Hammering the memory into the context only increases the context size. I don't want to pay for unnecessary context.

Psychologically, I think of myself as a taskmaster to these LLMs - not showing humanity towards their needs. I think it works - humanizing AIs only costs more and yeilds no favorable outcomes.

It also helps in establishing a clear psychological differences in interactions between humans and AI - I would not take the tone I'm using with AI, with another human (and subsequently, not be frustrated by the human not understanding or not complying).