I haven’t programmed professionally in more than twenty years. Even then I am not sure what I did could be considered professional programming. However, I dabble in programming and have written some tools for my own use. One in particular I use everyday. Lately, I have been experimenting with Claude Code. I don’t think I need to impress upon you the value of this coding agent.
I am learning how to use Claude Code effectively and to avoid burning through too many tokens. This post is a collection of my notes from using Claude Code. I expect to revisit and edit this post frequently, as we are in time-warp inducing increase in AI capabilities.
UPDATED: February 22, 2026
RTFM — Read the Friendly Manual
I know many people that just want to get started and play. That’s great. Get your hands dirty and just go. But…
At some point you should check out the docs from Anthropic, you might learn some new things. https://code.claude.com/docs
CLAUDE.md
CLAUDE.md is a Markdown file at the top of your project folder. Think of it as a project-specific system prompt for Claude Code. It helps guide Claude Code. While the /init command will create an initial version of the CLAUDE.md file in your project directory, you can add more content to it or edit what Claude Code inserts there.
The content in CLAUDE.md can help Claude Code as it works on the project. By having important project details in one place, Claude Code doesn’t have to go discover this information each time. You can have a global CLAUDE.md file in your home directory (~/.claude/CLAUDE.md), which tells Claude how to work with you. A project-specific CLAUDE.md file in each project folder can be included in the git repo and shared. You can also have a project-specific file (CLAUDE.local.md) that is local to you and not in the git repo.
Use Plan Mode
Put Claude Code into plan mode any time you need to add create new functionality, add features, refactor code, or fix bugs. Plan mode should be used when you need the existing code analyzed to determine the changes needed. Claude Code will show you the plan before any changes are made. This your opportunity to check that plan for errors or needed additions. Once the plan is ready, Claude Code will start making the modifications.
Put Claude Code into plan mode by using the /plan command or Shift+Tab.
Store Plans in the Project Directory
Whenever plans are created before changes are made, Claude Code will place those plans in the Claude Code home directory (~/.claude/plans/). Ideally, those plans should be stored in the project directory. After the plan is created, tell Claude Code to store the plan in the project directory. I usually create a plans directory and tell Claude Code to put the plan in that directory.
I have added this requirement to my global CLAUDE.md file.
Enable Extended Thinking
Extended Thinking (or “thinking mode”) is helpful for complex tasks. This mode enables the model’s enhanced reasoning step-by-step thought process. Complex tasks could be starting a new project, implementing new features, correcting security issues, etc.
Choosing Models
Claude Code allows you to select models at any point during your work. Each model has different token consumption and speed. For complex planning, you may be better served by a higher end model. For well-defined tasks or simple changes, a faster, less token-hungry model might be fine.
Opus — Best
- Planning
- Coding
- Troubleshooting
Sonnet — Capable
- Coding with a detailed plan
- Security code review
- Basic troubleshooting
Haiku — Fast and Efficient
- Code summary
- Basic code review
- Documentation
There is also the “opusplan” model which uses Opus for any planning and Sonnet for implementation. This is useful so that you don’t have to manually switch between the two.
Switch your model with the /model command.
Effort
The Opus and Sonnet models support an effort setting, which allows you to select the balance between and token efficiency. More effort means more tokens consumed but possibly better results with a given task. There is a balance here that will require more experimentation.
You configure effort when you select the model using the /model command. It applies (for now) to the Opus and the Sonnet 4.6+ models. Use the arrow key on a selected model to set the effort.
More to Come
I realized as I wrote this that there are a lot more notes that I have. Some are very specific and dive deeper. I will save that content for another blog post.