Fundamentals: getting started with Claude Code
Before diving into advanced tips, you need to lay the groundwork. These first tips cover the initial setup - simple things that save a lot of frustration later on.
Launch Claude Code from the project root
Always launch claude from your project's root directory. Claude Code will "zip up" the context of that directory into the first token - that's why you see tokens being used even before you've typed anything. If you have rule files (CLAUDE.md), that's where they'll be read from.
Run /init immediately
The /init command analyzes your codebase and creates an initial CLAUDE.md file in the .claude/ directory. Claude identifies the architecture (Next.js 15, Swift UI, etc.), the patterns, and the dependencies. This is essential for new projects.
Understand the rule file hierarchy
There are two levels of CLAUDE.md:
- Project - in
.claude/CLAUDE.mdof the current directory (project-specific rules) - Global - in
~/.claude/CLAUDE.md(rules that apply to all your projects)
The /memory command lets you see which rules are active.
The CLAUDE.md file: your secret weapon
For 80% of users, a good CLAUDE.md is enough to get excellent results without touching any advanced features. It's the most powerful lever you have.
Keep the file compact
Aim for around 300 lines. The bigger the file, the more tokens it consumes, and the more likely the AI is to ignore some instructions. A concise, precise file beats an exhaustive, verbose one.
What to put in it
- Technical architecture - stack, framework, file structure
- Domain context - Swift UI, Next.js, etc.
- Design patterns - project-specific conventions
- Build/validation loop - how to compile, test, verify
The validation loop is crucial
This is probably the most important tip in the whole video. Having build and validation commands in the CLAUDE.md lets Claude self-correct in a loop. If you've ever wondered why the AI doesn't produce working code on the first try, it's often because this feedback loop is missing.
# Exemple de section validation dans CLAUDE.md
## Build & Validation
1. xcodebuild -scheme MonApp -destination 'platform=iOS Simulator'
2. Verifier que le build compile sans erreur
3. Si erreur, corriger et reprendre a l'etape 1
Top-to-bottom priority
The CLAUDE.md is read top to bottom, with decreasing priority. Put the most important rules first. Use strong phrasing: "NEVER do X" and "ALWAYS do Y".
Add code examples
If your project uses homegrown patterns (a DSL, internal conventions), add concrete snippets. The AI is trained on public code - it doesn't know your specific conventions. Every time it makes the same mistake, update the CLAUDE.md so it doesn't happen again.
Have Claude update the rules itself
Never edit the CLAUDE.md by hand. Ask Claude: "Update the rules so we don't make this mistake again." It's faster and keeps the file consistent.
Compound engineering: commit the CLAUDE.md
Once your CLAUDE.md matures, commit it to the repo so your teammates benefit from it. Careful: strip out absolute paths and personal information, and keep the file compact - every teammate will load this context in every session.
Essential keyboard shortcuts
If you spend hours in Claude Code, these shortcuts become reflexes.
Shift+Tab: toggle between plan and edit
Shift+Tab toggles between plan mode (read-only, no file modifications) and edit mode (accepts modifications). The author uses plan mode almost exclusively at the start of every feature.
Escape: interrupt Claude
If Claude heads in the wrong direction, press Escape to interrupt it. Don't be afraid to do it - Claude Code handles resuming well. You can press Up to re-edit your last prompt, or just give a new instruction.
Double Escape: clear or rewind
- With text in the input - double Escape clears the entire content
- Empty input - double Escape lets you rewind to an earlier point in the conversation and restore that context
Screenshots: drag and drop
Take a screenshot and drag it straight into the Claude Code terminal. Essential for UI/UX work. Combine it with a Figma MCP for visual validation loops.
Essential slash commands
/clear - start from scratch
Clears the current context. Useful when you're switching features and the old context risks polluting the new one. Equivalent to opening a new Claude instance.
/context - audit your context
Shows a visual representation of the current context. If Claude Code's quality drops or your costs spike, check which elements are consuming the most tokens. MCPs are often the biggest consumers.
/compact - compress the context
Compacts (summarizes) your current conversation. Claude Code does this automatically during long sessions. The author rarely uses it, except to save a state into his "second brain" (see below).
/models - switch models
Lets you switch between Opus, Sonnet, and Haiku. The author recommends Opus whenever possible - the reasoning quality more than makes up for the extra latency.
/resume - recover a lost session
If you accidentally close an instance, /resume restores the previous session's context. A safety net so you don't lose a context that took a while to build.
/mcp - manage MCPs
Lists installed MCPs. The author is minimalist with MCPs: he only installs the ones strictly necessary for the current project, since they bloat the context window. For some projects (Xcode, Next.js), they're unavoidable.
Git as a safety net
Use git skills so Claude handles your commits, summaries, and test plans. Claude Code's rewind is a last resort - git remains more reliable for checkpoints.
Workflows: how to work efficiently
Always start in plan mode
The author never starts a feature in edit mode. He always starts in plan mode, iterates with Claude, argues, and challenges its proposals. Generating code is the easy part - building the right context is the real work.
Fresh context beats stuck context
"Context is best served fresh and condensed." Avoid sessions where you chain "try this," "no, try that," "go back." The context gets polluted and the AI loses its way. It's better to invest time in initial planning and execute cleanly.
Persisting context: the "second brain" concept
The idea: save the state of your work into a local file (for example the project's .claude/CLAUDE.md) at the end of a session. At the start of the next session, load that context on demand (lazy loading). This lets you switch between projects without losing your train of thought.
# Fin de session
"Sauvegarde le travail qu'on vient de faire dans mon CLAUDE.md local"
# Debut de session suivante
"Charge mon contexte depuis mon repertoire local"
Tracking your todos in Claude Code
Rather than using an external tool (Asana, Jira), the author keeps his to-dos directly in his local context file, lazy-loaded. This works for personal projects; for team work, use an MCP connected to your project management tool.
The build loop: think validation
Beyond a simple build, think about advanced validation loops:
- Debugging - ask Claude to add logs, run the app, read the logs, debug
- Performance - hook up a Perfetto MCP, do a run, read the traces
- Web - use Puppeteer or
/chrometo navigate and validate visually - Tests - end-to-end integration, automated unit tests
Use Opus whenever possible
Opus is slower, but the reasoning quality is superior. Since the author works with several instances in parallel, latency isn't an issue - while one instance is thinking, he's working in another.
Interrupt bad assumptions
Watch for keywords in Claude's "thinking": "I'm not sure", "I'm assuming that". If you spot incorrect assumptions or cascading errors, interrupt immediately with Escape and correct course.
Composability: skills, MCPs, and sub-agents
Claude Code is built on four composable primitives. Understanding how they fit together is the key to becoming a power user.
Skills: recurring workflows
A skill is a .md file that defines a reusable workflow. To create one, do the workflow manually once, then tell Claude: "Save what we just did into a new skill called X."
Behind the scenes, it's a Markdown file with a system prompt. Claude detects it automatically thanks to the skills directories and descriptions. Since a recent Anthropic change, skills and slash commands are now interchangeable - a created skill is also accessible via /skill-name.
Never create skills manually
Get into the habit of asking Claude to create and update skills. For example: "Extend the fetch-hackernews skill to also search Twitter and Apple News." Claude updates the skill's .md file.
MCPs: use sparingly
Tip: you don't need to search the web for an MCP. Tell Claude "Find me a good Figma MCP" - and ask it to install it too. But be careful: MCPs bloat your context. Only install the ones essential for the current project.
Sub-agents: for atomic work
Sub-agents run tasks in parallel and protect your context window. But the author warns: a lot of people use them wrong.
A sub-agent only brings back its output, not the path it took to get there. If a task needs full context (tests that must know the code, debugging that requires history), keep it in the main session.
Good use cases for sub-agents:
- Atomic, isolated tasks
- Side effects that don't need the main context
- Parallel investigations
Bad use cases: "CEO agent," "product agent," "design agent" - these multi-agent roles scatter the context instead of concentrating it.
The principle: bring the work to the context
Rather than spreading the context across several agents, bring the work back to a condensed, fresh context window. That's the guiding principle.
Advanced workflows: developing in parallel
Several simultaneous Claude Code instances
This is the game changer, according to the author. With iTerm2, he opens several panes (Cmd+D) and juggles between instances:
- Instance 1: develops a feature in plan mode
- Instance 2: does an architecture investigation
- Instance 3: works on another project
Quick navigation between panes with Cmd+[ and Cmd+]. Between tabs with Cmd+Shift+[/]. He compares it to playing Starcraft: give an order to a unit, move on to the next, come back to check.
Sound notifications
Enable a notification sound when Claude finishes a run. This lets you know when to switch back to a tab. The author even tried text-to-speech to summarize the result, but it was too intrusive.
Git worktrees for parallel code
If you run several instances on the same project, they'll conflict over files. The solution: git worktrees, which let you clone several working copies of the same repo with separate branches.
/chrome: browsing the web from Claude Code
/chrome opens a browser Claude can control - taking screenshots, clicking, typing text, navigating. Ideal when you don't have an API but can access the service through the web. And it's composable: a skill can launch Chrome, scrape data, and come back with the results.
Hooks: automating pre/post execution actions
Like git hooks (pre-commit, post-commit), Claude Code lets you define actions before and after each run. Typical use cases:
- Post-execution - automatic linting, code formatting
- Pre-execution - blocking destructive commands (
rm -rf, database deletions)
Ask Claude to set them up for you - don't maintain them by hand.
Dangerously-skip-permissions mode
claude --dangerously-skip-permissions disables confirmations. Handy for disposable environments, but risky: the author has had to reflash Linux machines after commands that got too aggressive. Use /permissions to keep guardrails on destructive operations.
Plugins: composability at its best
A plugin is a combination of skills, MCPs, sub-agents, and bash scripts. Anthropic offers a downloadable plugin ecosystem, and the community shares its own. Explore what already exists before reinventing it.
Context is king
The central message of this video comes down to one sentence: give Claude the context it needs, and nothing more.
- Keep context fresh - start in plan mode, validate, then execute
- Keep context condensed - avoid unnecessary MCPs, compact it, use /clear
- Keep context relevant - lazy loading, second brain, targeted skills
Claude Code is a context engineering tool with a coding agent wrapped around it. All the slash commands, the skills, the sub-agents - it's all there to manage that context window. Master that, and you'll unlock Claude Code's full potential.