- New section §3.3 Terminal Personalization Settings (ultimate-guide.md:4978) spinnerVerbs (mode replace/add) + spinnerTipsOverride (excludeDefault) - New examples/config/settings-personalization.json — 19 verbs, 113+ tips, 13 categories - reference.yaml: new spinner_personalization entry + line number fix - CHANGELOG updated Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
183 lines
12 KiB
JSON
183 lines
12 KiB
JSON
{
|
||
"spinnerVerbs": {
|
||
"mode": "replace",
|
||
"verbs": [
|
||
"Analyzing…",
|
||
"Thinking…",
|
||
"Hacking…",
|
||
"Spellcasting…",
|
||
"Overthinking…",
|
||
"Caffeinating…",
|
||
"Rubber ducking…",
|
||
"Hallucinating responsibly…",
|
||
"Reading the docs…",
|
||
"Pretending to know…",
|
||
"Indexing…",
|
||
"Refactoring…",
|
||
"Debugging…",
|
||
"Git blaming…",
|
||
"Stack overflowing…",
|
||
"Consulting the oracle…",
|
||
"Writing tests nobody will read…",
|
||
"Ignoring the linter…",
|
||
"Compiling excuses…"
|
||
]
|
||
},
|
||
"spinnerTipsOverride": {
|
||
"excludeDefault": true,
|
||
"tips": [
|
||
"── CONTEXT MANAGEMENT ──────────────────────────────",
|
||
"Context >70%? Run /compact now — don't wait for slowdowns",
|
||
"Context >90%? /clear for a fresh start — context is not precious",
|
||
"Watch Ctx(u): in statusline — it's your most important metric",
|
||
"/status shows context usage + session cost at any time",
|
||
"/compact summarizes the conversation and keeps key decisions",
|
||
"After /compact, re-state your current task so Claude stays aligned",
|
||
"Ctrl+L clears the screen but keeps the full context intact",
|
||
|
||
"── KEYBOARD SHORTCUTS ──────────────────────────────",
|
||
"Shift+Tab cycles permission modes: Default → AcceptEdits → Plan → back",
|
||
"Shift+Tab × 2 enters Plan Mode — no files touched until you approve",
|
||
"Esc × 2 rewinds the last action — your undo button",
|
||
"Alt+T toggles thinking on/off mid-session — disable for simple tasks",
|
||
"Ctrl+R searches your command history interactively",
|
||
"Shift+Enter adds a new line without submitting the prompt",
|
||
"Ctrl+B opens background tasks panel",
|
||
"Ctrl+C interrupts Claude mid-response — use before it writes the wrong file",
|
||
|
||
"── PROMPTING FORMULA ───────────────────────────────",
|
||
"Formula: WHAT (deliverable) / WHERE (file paths) / HOW (constraints) / VERIFY (success criteria)",
|
||
"Bad: 'fix the bug'. Good: 'Fix null check in src/auth.ts:142, HOW: add early return, VERIFY: test passes'",
|
||
"Use @file.ts to reference a specific file in your prompt",
|
||
"Use @agent-name to call a custom agent directly",
|
||
"Use !command to run a shell command inline and include its output",
|
||
"Negative constraints alone don't work — always give an alternative",
|
||
"Vague prompts = vague output. One concrete deliverable per prompt.",
|
||
|
||
"── MODEL SELECTION ─────────────────────────────────",
|
||
"Haiku: boilerplate, renames, simple fixes — fast & cheap",
|
||
"Sonnet: feature dev, debugging, refactoring — your daily driver",
|
||
"Opus: architecture decisions, security audits, complex reasoning",
|
||
"OpusPlan: /model opusplan — Opus plans, Sonnet executes (best cost/quality ratio)",
|
||
"Opus thinking is ON by default at max budget — 'think hard' is cosmetic",
|
||
"Alt+T disables thinking → faster responses on simple tasks, real savings",
|
||
"Swap models on task boundaries, not mid-implementation (context loss)",
|
||
"/model haiku for lint/typo tasks, Opus only when depth truly matters",
|
||
|
||
"── PLAN MODE & THINKING ────────────────────────────",
|
||
"Plan Mode = read-only exploration. Nothing written until you approve.",
|
||
"Use Plan Mode before any task touching >3 files or production systems",
|
||
"Shift+Tab × 2 → state the task → review plan → Shift+Tab to execute",
|
||
"/plan enters Plan Mode, /execute exits it",
|
||
"In Plan Mode, Claude can read, search, analyze — but not write or edit",
|
||
"OpusPlan workflow: plan with Opus (deep reasoning) → execute with Sonnet (speed)",
|
||
|
||
"── FILE REFERENCES & MEMORY ────────────────────────",
|
||
"CLAUDE.md at project root = team memory. Commit it. Keep it short.",
|
||
"~/.claude/CLAUDE.md = your personal global instructions across all projects",
|
||
"settings.json (committed) = team hooks. settings.local.json (gitignored) = your permissions.",
|
||
".claude/agents/ — define reusable AI personas for specialized tasks",
|
||
".claude/commands/ — build slash commands for repetitive workflows",
|
||
".claude/skills/ — preloaded knowledge modules injected into agent context",
|
||
".claude/hooks/ — shell scripts that run on tool events (PreToolUse, PostToolUse…)",
|
||
|
||
"── GOLDEN RULES ────────────────────────────────────",
|
||
"Golden Rule #1: Always read the diff before accepting any change",
|
||
"Golden Rule #2: /compact before context hits 70% — not after",
|
||
"Golden Rule #3: Be specific — WHAT, WHERE, HOW, VERIFY every time",
|
||
"Golden Rule #4: Plan Mode first for complex or risky tasks",
|
||
"Golden Rule #5: Create CLAUDE.md for every project you care about",
|
||
"Golden Rule #6: Commit frequently — after each completed task, not at end of day",
|
||
"Golden Rule #7: Know what's sent to Anthropic — prompts, files, MCP results",
|
||
|
||
"── MCP SERVERS ─────────────────────────────────────",
|
||
"Context7 MCP: official library docs on demand — no more hallucinated APIs",
|
||
"Sequential MCP: structured multi-step reasoning for complex debugging",
|
||
"Serena MCP: semantic code indexing + persistent memory across sessions",
|
||
"grepai MCP: semantic search by intent — 'payment flow' finds it without grep",
|
||
"Playwright MCP: browser automation built into Claude's tool chain",
|
||
"/mcp shows the status of all connected MCP servers",
|
||
|
||
"── TASK MANAGEMENT ─────────────────────────────────",
|
||
"Tasks API (v2.1.16+): persistent task lists with dependencies across sessions",
|
||
"export CLAUDE_CODE_TASK_LIST_ID=project-name → tasks survive /compact and /clear",
|
||
"TaskCreate → TaskUpdate(in_progress) → TaskUpdate(completed) — the lifecycle",
|
||
"TaskGet(id) for full description — TaskList shows summary only",
|
||
"Store key context in task subject — it's visible in TaskList without fetching",
|
||
"Agent Teams (v2.1.32+): spawn parallel sub-agents with TeamCreate/SendMessage",
|
||
|
||
"── CI/CD & AUTOMATION ──────────────────────────────",
|
||
"claude -p 'query' for non-interactive mode — perfect for CI pipelines",
|
||
"claude -p --output-format json for structured output in scripts",
|
||
"claude -p --model haiku --dangerously-skip-permissions for automated fixes",
|
||
"--max-budget-usd 5.00 caps spending in print mode — use in CI",
|
||
"Hooks run as shell scripts — exit 0 to continue, exit 2 to block the action",
|
||
|
||
"── COST OPTIMIZATION ───────────────────────────────",
|
||
"Most tasks: Sonnet. Architecture: Opus. Boilerplate: Haiku. Don't overpay.",
|
||
"OpusPlan pays Opus only for planning (~10-20% of tokens) — Sonnet does the rest",
|
||
"Thinking disabled = faster + cheaper. Enable only when depth matters.",
|
||
"/insights shows your usage analytics and cost breakdown by session",
|
||
"RTK (Rust Token Killer): 60-90% token reduction on CLI operations — brew install rtk-ai/tap/rtk",
|
||
|
||
"── DEBUGGING & HEALTH ──────────────────────────────",
|
||
"claude doctor — built-in diagnostic for common setup issues",
|
||
"claude --debug — verbose mode showing all tool calls and API requests",
|
||
"claude --mcp-debug — debug MCP server connections specifically",
|
||
"/debug inside Claude triggers a systematic troubleshooting checklist",
|
||
"Hook blocking? Check exit code: 0=continue, 2=block, anything else=continue",
|
||
"MCP not working? claude mcp list to verify server registration",
|
||
|
||
"── REMOTE & MOBILE ─────────────────────────────────",
|
||
"Remote Control (v2.1.51+, Pro/Max): /rc or claude remote-control → QR code",
|
||
"Press spacebar after /rc to show the QR code for phone scanning",
|
||
"/mobile shows App Store + Play Store links for the Claude mobile app",
|
||
"tmux + multiple panes = multiple independent Claude sessions in parallel",
|
||
"Remote Control limitation: slash commands (/compact) must run from local terminal",
|
||
|
||
"── GIT WORKTREES ───────────────────────────────────",
|
||
"git worktree add ../project-feat feat — isolated branch, no stashing needed",
|
||
"Multiple Claude instances on different worktrees = true parallel feature dev",
|
||
"Rule: one worktree per task — never mix features in the main workspace",
|
||
"Worktrees don't share stash or index — commit before switching back to main",
|
||
"Clean up after merge: git worktree remove ../project-feat (then git branch -d feat)",
|
||
"using-git-worktree skill automates setup + safety checks — /using-git-worktree",
|
||
|
||
"── SECURITY & PERMISSIONS ──────────────────────────",
|
||
"Default mode: every tool requires approval. AcceptEdits: file edits auto-approved.",
|
||
"--dangerously-skip-permissions skips ALL confirmations — CI/CD only, never interactive",
|
||
"settings.json (committed) = team-wide permissions. settings.local.json (gitignored) = yours.",
|
||
"Review .claude/ before trusting a project — hooks run as shell scripts on your machine",
|
||
"Claude can read your .env — check what's in context before sharing or logging sessions",
|
||
"Scope your CLAUDE.md with explicit constraints to limit what Claude does autonomously",
|
||
|
||
"── HOOKS (ADVANCED) ────────────────────────────────",
|
||
"PreToolUse: intercept before execution — block dangerous commands, validate inputs",
|
||
"PostToolUse: react after execution — auto-format, notify, log tool usage",
|
||
"exit 2 from a hook = blocked with message shown to Claude. exit 0 = continue.",
|
||
"Hook env vars: CLAUDE_TOOL_NAME and CLAUDE_TOOL_INPUT available in every hook script",
|
||
"Cost guard pattern: PreToolUse on Read checks file size, warns before loading large files",
|
||
"Chain hooks: block rm -rf on Bash (PreToolUse) + run linter on Write (PostToolUse)",
|
||
|
||
"── CUSTOM AGENTS ───────────────────────────────────",
|
||
".claude/agents/agent-name.md — persona + tools injected when @agent-name is called",
|
||
"Agent frontmatter: name, description, tools (whitelist), system prompt — that's it",
|
||
"Specialized agents outperform generalist Claude on focused tasks (security, docs, tests)",
|
||
"Limit tools per agent: a doc-writer agent doesn't need Bash, a reviewer doesn't need Write",
|
||
"Security reviewer pattern: read-only tools (Read, Grep, Glob) + security-focused prompt",
|
||
"subagent_type in Agent tool call selects which agent handles a delegated subtask",
|
||
|
||
"── RESOURCES & TOOLS ───────────────────────────────",
|
||
"Full guide (20K lines): cc.bruniaux.com/guide — search before asking Claude",
|
||
"Whitepapers FR+EN (9 PDFs): florian.bruniaux.com/guides — focused deep dives",
|
||
"RTK — 60-90% token reduction on CLI ops: rtk-ai.app — brew install rtk-ai/tap/rtk",
|
||
"ccusage — daily cost tracking & reports: bunx ccusage daily",
|
||
"ccstatusline — enriched statusline with context%/cost: npx -y ccstatusline@latest",
|
||
"ccboard — TUI/Web dashboard for session economics: /ccboard skill inside Claude",
|
||
"claude-code-viewer — browse session history: npx @kimuson/claude-code-viewer",
|
||
"CHANGELOG.md on GitHub — read it weekly, every feature is documented there",
|
||
"claude doctor — run this first when something breaks, before debugging manually",
|
||
"DeepWiki — AI-indexed version of this guide: deepwiki.com/FlorianBruniaux/claude-code-ultimate-guide"
|
||
]
|
||
}
|
||
}
|