Skip to content

How to Chat with Claude Code Effectively

Claude Code conversations are different from web chat. Here’s how to get the best results:

Good: “Create a responsive dashboard with a sidebar and cards for displaying metrics”

Better: “Create a responsive admin dashboard. Sidebar on the left with nav links. Main area has 4 metric cards (users, revenue, orders, traffic). Use Tailwind for styling. Should work on mobile.”

Why: More detail = fewer back-and-forth corrections. Claude makes better initial decisions when it knows your vision.

You don’t need to describe everything upfront. Build in layers:

You: "Create a todo app"
Claude: *creates basic app*
You: "Add due dates to tasks"
Claude: *adds date picker*
You: "Color code tasks - red if overdue, yellow if due today"
Claude: *adds color logic*
You: "Add localStorage so tasks persist"
Claude: *adds persistence*

Pattern: Start simple → Add features one at a time → Refine details last

Vague (slower):

  • “Make it better”

  • “Fix the bug”

  • “Update the styling”

Specific (faster):

  • “Make the buttons 20% larger and use rounded corners”

  • “The timer stops when I switch tabs - keep it running in the background”

  • “Change the color scheme to dark mode - dark gray background with white text”

With code references:

  • “In the calculateTotal function, it’s not including tax. Add 8% sales tax”

  • “The header component is too tall on mobile - make it 60px instead of 100px”

Bug fixing:

You: "When I click delete, nothing happens"
Claude: *reads code, identifies issue*
"Found it - event listener wasn't attached. Fixed."

Refactoring:

You: "This code is repetitive - can you make it cleaner?"
Claude: *extracts reusable functions, consolidates logic*

Learning mode:

You: "How does the dark mode toggle work? Explain the code"
Claude: *walks through the logic with annotations*

Adding features:

You: "Add a search bar that filters the list"
Claude: *adds input field, implements filter logic*

Claude knows about:

  • All files in your current folder

  • Your folder structure

  • Recently run commands (from the session)

  • Error messages (if you show them)

Claude doesn’t know:

  • What’s in other folders (unless you cd there)

  • What happened in previous sessions (unless you remind it)

  • What your browser shows (unless you describe it)

Pro tip: If Claude seems confused, give more context:

  • “I’m in the my-project folder which has index.html and app.js”

  • “When I open index.html, the buttons don’t respond to clicks”

  • “The console shows: TypeError: Cannot read property ‘addEventListener’ of null”

Starting fresh:

Terminal window
# Each time you run `claude`, it's a new session
claude

Claude remembers within a session:

  • Files it created/edited

  • Your requests during this conversation

  • The context of the current project

Claude forgets between sessions:

  • What you discussed yesterday

  • Why you made certain choices

  • The overall project goals

Solution: Recap when you return:

You: "I'm back working on the todo app. Last time we added dark mode.
Today I want to add categories for grouping tasks."

If Claude’s code doesn’t work:

1. **Describe what happened:**
- "The timer starts but doesn't stop"
- "I see a blank page"
- "Console error: X is not defined"
2. **Claude will diagnose and fix:**
- Reads the code
- Identifies the issue
- Proposes a fix
- Updates the files
3. **Test and iterate:**
- Try the fix
- Report if it works or what's still wrong
- Claude adjusts

Don’t be afraid to say “That didn’t work” - it’s part of the process!

You can ask Claude to do several things at once:

You: "Create a weather app that:
1. Has an input for city name
2. Fetches data from OpenWeatherMap API
3. Displays current temp, conditions, and 5-day forecast
4. Uses nice icons for weather conditions
5. Stores last searched city in localStorage"

Claude will: Break this down, tackle each piece, integrate them, and deliver a working app.

Do:

  • ✅ Give context upfront

  • ✅ Be specific about what you want changed

  • ✅ Build iteratively (simple → complex)

  • ✅ Describe errors or unexpected behavior

  • ✅ Ask for explanations when learning

Don’t:

  • ❌ Expect perfection on first try (iteration is normal!)

  • ❌ Assume Claude remembers previous sessions

  • ❌ Say “it doesn’t work” without describing what happened

  • ❌ Ask for everything at once if you’re just starting

Remember: Claude Code is collaborative. You’re the director, Claude is the executor. Good communication = better results.