One safe habit
Start Claude Code only from the repo you plan to ship, and know what it can access before you approve anything.
Claude can read files under that folder, see git state, use CLAUDE.md, load memory, and ask to run terminal commands.
Claude Code
Start Claude Code only from the repo you plan to ship, and know what it can access before you approve anything.
Claude can read files under that folder, see git state, use CLAUDE.md, load memory, and ask to run terminal commands.
0 of 7 lessons done · proved by a submitted project with a public repository
Do each one yourself, then tap it to tick it off. The ticks are only a checklist for you: they are not marked or scored.
0 of 4 done
node --version
npm --versionDo each one yourself, then tap it to tick it off. The ticks are only a checklist for you: they are not marked or scored.
0 of 4 done
npm install -g @anthropic-ai/claude-code
claude --version
# Later, when you need to upgrade an npm install:
npm install -g @anthropic-ai/claude-code@latestDo not run sudo npm install -g for Claude Code. Anthropic warns it can cause permission issues and security risks.
Do not use bypass permissions as your normal mode. It skips permission prompts and should be used only in disposable sandboxed containers or VMs.
Do each one yourself, then tap it to tick it off. The ticks are only a checklist for you: they are not marked or scored.
0 of 4 done
cd ~/code/hackindia-upi-splitter
pwd
git status --short
claudeWhen Claude Code runs in a directory, it can access files in that directory and subdirectories. Files elsewhere may be accessed only with permission.
It can see your current branch, uncommitted changes, and recent commit history. It can also use your terminal, read CLAUDE.md, load auto memory, and use configured extensions.
CLAUDE.md is the project context file Claude Code reads. It is written by you. Auto memory is written by Claude and stores learnings per repo.
At session start, auto memory loads the first 200 lines or 25KB of MEMORY.md, whichever comes first. Do not put secrets in memory files. Claude Code reads CLAUDE.md, not AGENTS.md, unless CLAUDE.md imports it with @AGENTS.md.
You are building a public HackIndia repo for a UPI expense splitter. Before asking for code changes, add a tiny CLAUDE.md and keep .env private.
A later lesson will improve project context. For now, this makes the first session less vague.
cd ~/code/hackindia-upi-splitter
pwd
# /Users/you/code/hackindia-upi-splitter
git status --short
# ?? .env
# ?? CLAUDE.md
cat > CLAUDE.md <<'EOF'
Project: HackIndia UPI Splitter
Use this repo as the source of truth.
Do not read or print secrets from .env files.
Before suggesting commands, explain what they will do.
Do not make code changes until I ask for them.
EOF
git add CLAUDE.md
git commit -m "Add initial Claude Code project context"
claudeDo each one yourself, then tap it to tick it off. The ticks are only a checklist for you: they are not marked or scored.
0 of 5 done
Answer the quick check to finish this lesson.