GitHub - ykdojo/claude-code-tips: 45+ tips for getting the most out of Claude Code, from basics to advanced - includes a custom status line script and Claude Code running itself in a container. Also includes the dx plugin: skills for everyday dev workflows.
Pangram verdict · v3.3
We believe this text is mainly human-written, with some AI content.
AI likelihood · overall
HumanArticle text · 1,692 words · 1 segments analyzed
Here are my tips for getting the most out of Claude Code, including a custom status line script and Claude Code running itself in a container. Also includes the dx plugin: skills for everyday dev workflows. 📺 Quick demo - See some of these tips in action with a multi-Claude workflow and voice input: Table of Contents Tip 0: Customize your status line Tip 1: Learn a few essential slash commands Tip 2: Talk to Claude Code with your voice Tip 3: Break down large problems into smaller ones Tip 4: Using Git and GitHub CLI like a pro Tip 5: AI context is like milk; it's best served fresh and condensed! Tip 6: Getting output out of your terminal Tip 7: Set up terminal aliases for quick access Tip 8: Proactively compact your context Tip 9: Complete the write-test cycle for autonomous tasks Tip 10: Cmd+A and Ctrl+A are your friends Tip 11: Invest in your own workflow Tip 12: Search through your conversation history Tip 13: Multitasking with terminal tabs Tip 14: Git worktrees for parallel branch work Tip 15: Manual exponential backoff for long-running jobs Tip 16: Claude Code as a writing assistant Tip 17: Markdown is the s**t Tip 18: Preserve links when pasting Tip 19: Isolated environments for long-running risky tasks Tip 20: The best way to get better at using Claude Code is by using it Tip 21: Fork and half-clone conversations Tip 22: Use realpath to get absolute paths Tip 23: Understanding CLAUDE.md vs Skills vs Slash Commands vs Plugins Tip 24: Interactive PR reviews Tip 25: Claude Code as a research tool Tip 26: Mastering different ways of verifying its output Tip 27: Claude Code as a DevOps engineer Tip 28: Keep CLAUDE.md simple and review it periodically Tip 29: Claude Code as the universal interface Tip 30: It's all about choosing the right level of abstraction Tip 31: Use auto mode Tip 32: Control Claude Code from your phone Tip 33: Learn to use artifacts Tip 34: Write lots of tests (and use TDD) Tip 35: Be braver in the unknown; iterative problem solving Tip 36: Running bash commands and subagents in the background Tip 37: The era of personalized software is here Tip 38: Navigating and editing your input box Tip 39: Spend some time planning, but also prototype quickly Tip 40: Simplify overcomplicated code Tip 41: Automation of automation Tip 42: Share your knowledge and contribute where you can Tip 43: Keep learning! Tip 44: Install the dx plugin Tip 45: Quick setup script Tip 46: Switch between multiple Claude accounts Tip 47: Use GitHub as your knowledge base Tip 48: Learn to review code through a TESTING.md document Tip 0: Customize your status line You can customize the status line at the bottom of Claude Code to show useful info. I set mine up to show the model, current directory, git branch (if any), uncommitted file count, sync status with origin, and a visual progress bar for token usage. It also shows a second line with my last message so I can see what the conversation was about: Opus 4.5 | 📁claude-code-tips | 🔀main (scripts/context-bar.sh uncommitted, synced 12m ago) | ██░░░░░░░░ 18% of 200k tokens 💬 This is good. I don't think we need to change the documentation as long as we don't say that the default color is orange el... This is especially helpful for keeping an eye on your context usage and remembering what you were working on. The script also supports 10 color themes (orange, blue, teal, green, lavender, rose, gold, slate, cyan, or gray). To set this up, you can use this sample script and check the setup instructions. Tip 1: Learn a few essential slash commands There are a bunch of built-in slash commands (type / to see them all). Here are a few worth knowing: /usage Check your rate limits: Current session █████████▌ 19% used Resets 12:59am (America/Vancouver) Current week (all models) █████████████████████▌ 43% used Resets Feb 3 at 1:59pm (America/Vancouver) Current week (Sonnet only) ███████████████████▌ 39% used Resets 8:59am (America/Vancouver) If you want to watch your usage closely, keep it open in a tab and use Tab then Shift+Tab or ← then → to refresh. /chrome Toggle Claude's native browser integration: > /chrome Chrome integration enabled /mcp Manage MCP (Model Context Protocol) servers: Manage MCP servers 1 server ❯ 1. playwright ✔ connected · Enter to view details MCP Config locations (by scope): • User config (available in all your projects): • /Users/yk/.claude.json /stats View your usage statistics with a GitHub-style activity graph: Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Jan ··········································▒█░▓░█░▓▒▒ Mon ·········································▒▒██▓░█▓█░█ ·········································░▒█▒▓░█▒█▒█ Wed ········································░▓▒█▓▓░▒▓▒██ ········································░▓░█▓▓▓▓█░▒█ Fri ········································▒░░▓▒▒█▓▓▓█ ········································▒▒░▓░░▓▒▒░░ Less ░ ▒ ▓ █ More Favorite model: Opus 4.5 Total tokens: 17.6m Sessions: 4.1k Longest session: 20h 40m 45s Active days: 79/80 Longest streak: 75 days Most active day: Jan 26 Current streak: 74 days You've used ~24x more tokens than War and Peace /clear Clear the conversation and start fresh. Tip 2: Talk to Claude Code with your voice I found that you can communicate much faster with your voice than typing with your hands. Using a voice transcription system on your local machine is really helpful for this. On my Mac, I've tried a few different options: superwhisper MacWhisper Super Voice Assistant (open source, supports Parakeet v2/v3) You can get more accuracy by using a hosted service, but I found that a local model is strong enough for this purpose. Even when there are mistakes or typos in the transcription, Claude is smart enough to understand what you're trying to say. Sometimes you need to say certain things extra clearly, but overall local models work well enough. For example, in this screenshot you can see that Claude was able to interpret mistranscribed words like "ExcelElanishMark" and "advast" correctly as "exclamation mark" and "Advanced": I think the best way to think about this is like you're trying to communicate with your friend. Of course, you can communicate through texts. That might be easier for some people, or emails, right? That's totally fine. That's what most people seem to do with Claude Code. But if you want to communicate faster, why wouldn't you get on a quick phone call? You can just send voice messages. You don't need to literally have a phone call with Claude Code. Just send a bunch of voice messages. It's faster, at least for me, as someone who's practiced the art of speaking a lot over the past number of years. But I think for a majority of people, it's going to be faster too. A common objection is "what if you're in a room with other people?" I just whisper using earphones - I personally like Apple EarPods (not AirPods). They're affordable, high quality enough, and you just whisper into them quietly. I've done it in front of other people and it works well. In offices, people talk anyway - instead of talking to coworkers, you're talking quietly to your voice transcription system. I don't think there's any problem with that. This method works so well that it even works on a plane. It's loud enough that other people won't hear you, but if you speak close enough to the mic, your local model can still understand what you're saying. (In fact, I'm writing this very paragraph using that method on a flight.) Update: Claude Code now has a built-in voice mode. I tested it and it works well, but I still personally use a local model because I find it faster. Tip 3: Break down large problems into smaller ones This is one of the most important concepts to master. It's exactly the same as traditional software engineering - the best software engineers already know how to do this, and it applies to Claude Code too. If you find that Claude Code isn't able to one-shot a difficult problem or coding task, ask it to break it down into multiple smaller issues. See if it can solve an individual part of that problem. If it's still too hard, see if it can solve an even smaller sub-problem. Keep going until everything is solvable. Essentially, instead of going from A to B: You can go from A to A1 to A2 to A3, then to B: A good example of this is when I was building my own voice transcription system. I needed to build a system that could let the user select and download a model, take keyboard shortcuts, start transcribing, put the transcribed text at the user's cursor, and wrap all of this in a nice UI. That's a lot. So I broke it down into smaller tasks. First, I created an executable that would just download a model, nothing else. Then I created another one that would just record voice, nothing else. Then another one that would just transcribe pre-recorded audio. I completed them one by one like that before combining them at the end. Highly related to this: your problem-solving skills and software engineering skills are still highly relevant in the world of agentic coding and Claude Code. It's able to solve a lot of problems on its own, but when you apply your general problem-solving and software engineering skills to it, it becomes a lot more powerful. Tip 4: Using Git and GitHub CLI like a pro Just ask Claude to handle your Git and GitHub CLI tasks. This includes committing (so you don't have to write commit messages manually), branching, pulling, and pushing. I personally allow pull automatically but not push, because push is riskier - it doesn't contaminate the origin if something goes wrong with a pull. For GitHub CLI (gh), there's a lot you can do. One thing I started doing more after using Claude Code is creating draft PRs. This lets Claude Code handle the PR creation process with low risk - you can review everything before marking it ready for review. And it turns out, gh is pretty powerful. You can even send arbitrary GraphQL queries through it. For example, you can even find the exact times at which GitHub PR