Skip to content

Getting Started

Claude Code is a CLI tool that puts an AI coding assistant directly in your terminal. You type messages, Claude reads your files, runs commands, and edits code — all with your approval. It’s configurable at every level: you can write custom skills (like slash commands), set rules for what Claude can and can’t touch, and automate actions with hooks.

If you’re coming from a web-based AI chat tool, the big difference is that Claude Code lives in your project. It reads your codebase, respects your .gitignore, and saves memory across sessions.

Already know what you’re looking for? Browse the reference hubs in the sidebar — every env var, flag, setting, and command is cross-referenced there.


Not sure where to start? Pick the path that matches what you want to do:

You want to control Claude’s model, API key, verbosity, or session behavior.

  1. CLI flags — flags you pass when starting Claude (--model, --verbose, --print)
  2. Settings — persistent config in .claude/settings.json
  3. Environment variables — env vars that override settings (start with the top-5 list at the top of that page)

Path B — Extend Claude with custom skills

Section titled “Path B — Extend Claude with custom skills”

You want to add slash commands, automate workflows, or control what Claude is allowed to do.

  1. Your first skill — create a /slash-command in 5 minutes
  2. Your first permission rule — stop Claude from asking you every time it edits a file
  3. Your first hook — run a script automatically before or after Claude uses a tool
  4. Plugins — package skills, hooks, and MCP servers together for sharing

Path C — Understand what Claude can do in a session

Section titled “Path C — Understand what Claude can do in a session”

You want to know what slash commands exist, what tools Claude can call, or how memory works.

  1. Slash commands — all built-in /commands
  2. Built-in tools — filesystem, shell, web, and orchestration tools Claude can call
  3. Memory — how Claude remembers things across sessions

Work through these in order to get oriented:

  • Install: npm install -g @anthropic/claude-code (or follow the official install guide)
  • Set your API key: export ANTHROPIC_API_KEY=sk-ant-...
  • Start a session: claude in any project directory
  • Type a message — try “what files are in this project?”
  • Try /help to see all available commands
  • Try /config to see your current settings
  • Create a CLAUDE.md in your project root — Claude reads it automatically as project context
  • Try /memory to see what Claude remembers about your project

Before diving into the reference docs, these 5 concepts cover 90% of day-to-day use:

ConceptWhat it isWhere to learn more
CLAUDE.mdA markdown file Claude reads as project context. Put architecture notes, conventions, and “don’ts” here.Memory overview
SkillsCustom slash commands you write as markdown files. Put them in .claude/skills/.First skill
PermissionsRules that control which files, commands, and tools Claude can use without asking.First permission rule
HooksShell scripts or webhooks that run automatically at lifecycle events (before/after tool use, etc.).First hook
Settings.claude/settings.json — your project’s config file. Checked into git; shared with your team.Settings overview