Claude Code as a Daily Driver: Claude.md, Skills, Subagents, Plugins, and MCPs

arps181 pts0 comments

Beyond the Prompt: Claude Code | Arpan PatelBeyond the Prompt: Claude Code<br>May 26, 2026 · 23 min · Arpan Patel<br>Table of Contents1. Claude Code Beyond the Basics<br>2. The .claude Directory, Properly Understood<br>3. CLAUDE.md, The Way Boris Writes It3.1 The Real CLAUDE.md From the Claude Code Team<br>3.2 Popular CLAUDE.md Files Worth Studying

4. CLAUDE.local.md as a Daily Driver<br>5. Skills, In Depth5.1 What Skills Actually Are<br>5.2 Writing a Real Skill: Go API Conventions<br>5.3 Popular Skills Worth Installing

6. Building Custom Subagents6.1 Walking Through a /pr-review Agent<br>6.2 Popular Subagents Worth Stealing

7. Plugins and the Marketplace<br>8. Underused Claude Code Commands8.1 /goal, the Ralph Loop Built In

9. MCPs as Power Tools9.1 A Real Obsidian Workflow

10. Optimizing Your Daily Workflow<br>11. s From the Anthropic Team<br>12. Resources<br>Closing Notes

Claude Code is one of those tools where the difference between a casual user and someone who has internalized it is enormous. The casual user types prompts, accepts suggestions, and treats it like a fancier autocomplete. The daily driver uses it like a programmable agent with memory, custom commands, parallel sessions, and a project setup that compounds over time. This guide is for the second kind of person, assuming you already know what claude does when you type it in a terminal.<br>1. Claude Code Beyond the Basics#<br>Once you stop thinking of Claude Code as a prompt-and-wait chatbot and start treating it as an autonomous agent that needs guardrails, your workflow shifts. The single most important principle from Boris Cherny and the Anthropic team: give Claude a way to verify its own work . Without that, you are the only feedback loop. With it, Claude iterates until things actually work, and Boris says this alone gives a 2-3x quality improvement.<br>A few patterns that change how you operate day to day:<br>Explore, then plan, then code. Plan mode (Shift+Tab twice) puts Claude into read-only exploration. Read files, trace flows, understand the data model. Then get a plan. Then execute. Skip planning for small fixes; use it for anything touching more than one file.<br>Use plan mode like a design document. Have one Claude write the plan, then spin up a second Claude in a fresh session to review it as a staff engineer, with no context bias, so it actually catches gaps. If implementation goes sideways, go back to plan mode and re-plan with verification steps included.<br>Reference, do not describe. Instead of &ldquo;look at the auth module&rdquo;, type @src/auth/login.py. Instead of pasting an error, pipe it: cat error.log | claude. Exact context beats approximate description every time.<br>Delegate, do not pair-program. Cat Wu (Claude Code team): &ldquo;The model performs best if you treat it like an engineer you&rsquo;re delegating to, not a pair programmer you&rsquo;re guiding line by line.&rdquo; Write a crisp brief upfront, then let it run.<br>: Press Ctrl+G to open Claude&rsquo;s plan in your editor and tweak it before Claude proceeds. The plan is just text, so shape it before it becomes code.

: When Claude makes a mistake, end your prompt with &ldquo;Update CLAUDE.md so you do not repeat this.&rdquo; Boris calls Claude &ldquo;eerily good at writing rules for itself&rdquo; from its own failures. This habit compounds more than any other in this guide.

2. The .claude Directory, Properly Understood#<br>Most people open .claude/ once, see CLAUDE.md, and never look further. It is actually a layered configuration system.<br>Two scopes: Project scope lives in .claude/ inside your repo, committed to git so your team shares it. Global scope lives in ~/.claude/ and applies across every project on your machine.<br>Mental model: project files describe the project, global files describe you.<br>FileScopeCommitWhat it doesCLAUDE.mdProject and globalYesInstructions loaded every sessionCLAUDE.local.mdProject onlyNo, gitignore itYour private project notessettings.jsonProject and globalYesPermissions, hooks, env vars, model defaultssettings.local.jsonProject onlyNoPersonal overrides, auto-gitignored.mcp.jsonProject onlyYesTeam-shared MCP serversskills//SKILL.mdProject and globalYesReusable prompts invoked with /namecommands/*.mdProject and globalYesSingle-file slash commandsagents/*.mdProject and globalYesSubagent definitionsrules/*.mdProject and globalYesTopic-scoped instructions, optionally path-gatedA typical layout:<br>10<br>11<br>12<br>13<br>14<br>my-repo/<br>├── .claude/<br>│ ├── settings.json<br>│ ├── agents/<br>│ │ ├── pr-review.md<br>│ │ └── test-writer.md<br>│ ├── skills/<br>│ │ └── api-conventions/SKILL.md<br>│ └── rules/<br>│ ├── frontend.md # path-gated to src/frontend/<br>│ └── migrations.md # path-gated to db/migrations/<br>├── CLAUDE.md # checked in, team-shared<br>├── CLAUDE.local.md # gitignored, personal<br>└── .mcp.json # team-shared MCP servers

A few things easy to miss:<br>CLAUDE.md files cascade. In a monorepo, both root/CLAUDE.md and root/services/billing/CLAUDE.md load when you work in the billing service. Powerful for codebases with different...

claude code plan team project mdproject

Related Articles