Step 1: Install Claude Code (2 Minutes)
Claude Code is a CLI tool and IDE extension. Installation: npm install -g @anthropic-ai/claude-code (or use the installer from claude.ai/code). Verify: run claude --version in your terminal. The CLI works standalone (in any terminal) and integrates with VS Code and JetBrains IDEs. System requirements: Node.js 18+ (for the CLI), macOS, Linux, or Windows (WSL recommended for Windows).
Authentication: run claude login in your terminal. This opens a browser for authentication. After login: Claude Code is authenticated and ready to use. For enterprise users: your organization may provide SSO authentication โ check with your IT team. For API key users: set the ANTHROPIC_API_KEY environment variable.
IDE integration: for VS Code, install the Claude Code extension from the marketplace. For JetBrains IDEs (IntelliJ, WebStorm, PyCharm): install from the JetBrains marketplace. The extension adds: an AI chat panel, inline code suggestions, and the ability to reference files in your prompts. AI rule: 'Install both the CLI and the IDE extension. The CLI is for terminal workflows (git operations, file generation, project scaffolding). The IDE extension is for in-editor coding (autocomplete, inline chat, file context).'
Step 2: Create Your CLAUDE.md (5 Minutes)
Create a file named CLAUDE.md in the root of your project (next to package.json, go.mod, etc.). This file tells Claude Code about your project's conventions. Claude reads it automatically every time you start a session in this project. No configuration needed โ just create the file.
Starter template: copy and customize. Start with: project context (what the project is, tech stack, architecture pattern), top 10 coding conventions (naming, error handling, testing, imports), and any project-specific rules (domain terminology, API patterns, database conventions). Refer to the 'How to Write Your First CLAUDE.md in 10 Minutes' article for detailed guidance. AI rule: 'The CLAUDE.md does not need to be perfect on day 1. Start with 10-15 rules. Add more as you discover gaps. The file grows naturally over the first month.'
Verify the rules are loaded: start a Claude Code session in the project directory. Prompt: 'What conventions does this project follow?' Claude should summarize the rules from your CLAUDE.md. If it cannot: verify the file is in the project root and is named correctly (CLAUDE.md, case-sensitive on Linux/macOS). AI rule: 'Always verify after creating CLAUDE.md. A file that is not loaded: provides zero value. The verification prompt takes 10 seconds and catches misconfiguration immediately.'
You created CLAUDE.md. You start coding. The AI generates generic code โ ignoring your rules. Why? The file is named claude.md (lowercase on Linux = different file). Or the file is in src/ instead of the project root. Or the file has a BOM character that prevents parsing. The verification prompt ('What conventions does this project follow?') takes 10 seconds and catches these issues before you waste 30 minutes debugging wrong output.
Step 3: Your First Productive Session (5 Minutes)
Start with a real task, not a test: open Claude Code in your project. Pick a task from your current sprint โ a small feature, a bug fix, or a utility function. Prompt Claude with the task description: 'Create a utility function that validates email addresses and returns a Result type with the validated email or a validation error.' Review the output: does it follow your naming convention? Does it use your error handling pattern? Does it include a test?
Iterate on the output: if the AI's output is 90% correct (conventions followed, logic sound, minor adjustments needed): make the adjustments manually and commit. If the output is 50% correct (conventions wrong, structure off): check your CLAUDE.md โ the rules may be missing or vague for this pattern. Add the missing rules and re-prompt. The feedback loop: prompt โ review โ fix rules โ re-prompt โ better output.
First-session expectations: Claude Code with a good CLAUDE.md generates correctly-patterned code 80-90% of the time for tasks covered by the rules. For tasks not covered: expect 50-60% accuracy (generic patterns instead of project-specific). As you add rules over the first week: accuracy climbs toward 90%+ across all tasks. AI rule: 'The first session is both productive work and calibration. You are simultaneously building a feature and tuning the rules. Both outputs are valuable.'
Your first Claude Code session produces two outputs: the feature you are building AND insights about your rules. The AI generates an endpoint: the naming is correct but the error handling uses try-catch instead of your Result type. That is a calibration insight: the error handling rule is missing or vague. Add the rule. The next endpoint: uses the Result type correctly. By the end of the first session: you have a working feature AND a better CLAUDE.md. Both are valuable.
Step 4: Advanced Features and Workflow
Multi-file operations: Claude Code can create, edit, and refactor multiple files in a single operation. Prompt: 'Create a new user service with: the Drizzle schema definition, the service function with CRUD operations, the tRPC router endpoint, and Vitest tests.' Claude generates all 4 files following your CLAUDE.md conventions. Review all files before accepting.
Git integration: Claude Code can create commits, generate PR descriptions, and review diffs. Workflow: make changes with Claude Code โ review the changes โ ask Claude to commit with a descriptive message โ ask Claude to generate a PR description. The AI follows your commit message conventions (if defined in CLAUDE.md) and generates PR descriptions that explain what changed and why.
Project-level CLAUDE.md vs global: CLAUDE.md in the project root applies to that project. You can also create a global ~/.claude/CLAUDE.md that applies to all projects (personal preferences that apply everywhere โ like your preferred explanation style or output format). Project rules override global rules for conflicts. AI rule: 'Use project CLAUDE.md for team conventions (shared with the team via the repo). Use global CLAUDE.md for personal preferences (not shared โ your individual workflow optimizations).'
Do not put personal preferences in the project CLAUDE.md (your preferred comment style, your IDE-specific shortcuts). Those belong in ~/.claude/CLAUDE.md (your global file, not shared). The project CLAUDE.md: shared with the team via git. Every developer gets the same rules. Your global CLAUDE.md: personal, not committed, only affects your sessions. Mixing personal preferences into team rules: creates debates ('why does the rules file say to use vim keybindings?').
Setup Summary
Complete Claude Code setup checklist.
- Install: npm install -g @anthropic-ai/claude-code. Verify: claude --version
- Authenticate: claude login (browser auth) or ANTHROPIC_API_KEY environment variable
- IDE: VS Code extension or JetBrains plugin from marketplace
- CLAUDE.md: create in project root. Start with 10-15 rules. Verify with 'What conventions?' prompt
- First session: real task from your sprint. Review output. Fix rules for gaps. Re-prompt
- Expectations: 80-90% accuracy with good rules. Improves to 90%+ as you add rules over first week
- Multi-file: Claude Code generates multiple related files in one operation
- Git: commit messages, PR descriptions, diff reviews โ all following your CLAUDE.md conventions