Skip to content
TopInsight .co
A dark desk with a laptop showing terminal, surrounded by floating annotation labels in warm bokeh — workflow assembly feel.

Building a personal Claude Code workflow: the daily-driver setup

After six months of refinement, here is the exact Claude Code workflow that earns its keep — config, conventions, MCP servers, daily ritual.

C Charles Lin ·

Reviews tell you whether Claude Code is good. Workflows tell you whether it actually pays off in your day. This piece is the latter — the exact setup I’ve converged on over six months of daily use across multiple projects.

It’s not aspirational (“here’s what a perfect setup might look like”). It’s descriptive (“here’s what I actually use; here’s why I use it instead of the obvious alternatives I tried first”).

The daily setup

When I sit down to code:

  1. Terminal split (tmux or kitty splits) — editor on the left, Claude Code on the right
  2. Helix or Cursor on the left depending on the project
  3. Claude Code in the right pane, started with claude in the project root
  4. A second terminal pane for shell commands I want to run myself

That’s the layout. Roughly 40% of my keystrokes happen in the editor, 40% in Claude Code, 20% in the shell pane.

The Claude settings.json

My ~/.claude/settings.json:

{
  "model": "claude-opus-4",
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/charles/projects"]
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_..." }
    },
    "postgres-prod": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://readonly@..."]
    },
    "brave-search": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-brave-search"],
      "env": { "BRAVE_API_KEY": "..." }
    },
    "memory": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"]
    },
    "cloudflare": {
      "command": "npx",
      "args": ["-y", "@cloudflare/mcp-server"]
    }
  }
}

Six MCP servers. Each earns its keep weekly (see our essential MCP servers guide for the analysis of why these specific six).

The per-project setup

Every project has a .claude/CONVENTIONS.md at the root. For TopInsight:

# Project conventions

## Stack
- Astro 5 + Tailwind 4 + MDX
- Cloudflare Workers Static Assets runtime
- TypeScript strict mode

## Style
- Never explain code unless I ask
- Use U+2019 curly apostrophe in prose, not ASCII '
- Single quotes for JS strings, no semicolons except where mandatory

## Conventions
- Components live in src/components/, lowercase kebab-case
- Pages in src/pages/
- Content in src/content/<collection>/*.mdx with frontmatter

## Ask before
- Adding dependencies
- Editing wrangler.jsonc / package.json / tsconfig.json
- Creating new src/ subdirectories

## Hot files / do not touch
- src/content/authors/charles-lin.md (manual edits only)
- docs/backfill-timeline.md (manual edits only)

This file is the single biggest workflow accelerator I’ve found. Twenty minutes to write, saves hours of correction over a project’s lifetime.

The daily ritual

Morning (15-20 min):

  1. Open Claude Code in the project root
  2. /memory to remind it of project-specific knowledge from previous sessions
  3. Tell it what I’m working on in one paragraph
  4. Add the relevant files to context with /add
  5. Start the actual work

During the day:

  • Claude Code handles tasks I describe; I review diffs
  • I use the editor for actual typing-by-hand work
  • The shell pane handles ad-hoc commands

End of day:

  • git status — review what I committed
  • /memory remember <key insight> — if I learned something the agent should know next session

What I learned from r/ClaudeAI

The community thread that most influenced my setup is the 2313-upvote “Claude Code is a Beast — 6 months of tips” thread. The patterns that recur:

  • Heavy MCP investment pays off: power users have 5-10 MCP servers configured, not 1-2
  • .claude/CONVENTIONS.md per project: universally adopted by heavy users
  • /clear between unrelated tasks: saves context budget
  • Pin Opus for hard tasks, Sonnet for routine: model selection matters

The Boris setup thread (2993 ups) from Claude Code’s creator is the canonical reference. Read it.

The Claude Code plugin system thread (452 ups) covers the newer plugin layer — worth knowing about even if you don’t deeply use plugins yet.

What I do NOT do

Anti-patterns I’ve eliminated:

  • Don’t paste files into chat manually/add does it better
  • Don’t describe tasks in 5 paragraphs — one paragraph + add files is faster
  • Don’t leave 20+ files in context — bloat hurts more than it helps
  • Don’t use the same conversation for unrelated work/clear
  • Don’t skip the diff review — even good agents make subtle mistakes

The honest cost / benefit

After six months:

  • Total spend: ~$40-60/month on Claude Pro/Max plus occasional API top-ups
  • Time saved: 2-4 hours per week of grunt work (refactors, exploration, debugging investigation)
  • Quality improvement: hard to quantify, but the “AI catches things I miss in code review” feeling is real

Worth it. The honest test for any tool: would I keep paying for it after 6 months? Yes.

For the deeper coverage, see our Claude Code review, MCP essentials, MCP deep dive, and Claude Code vs Cursor comparison.

Sources

Every reference behind this piece. If we make a claim, it's because at least one of these said so — or we lived it ourselves.

  1. Firsthand Six months iterating on a daily Claude Code workflow across projects
  2. Docs Claude Code documentation — Anthropic
  3. Blog r/ClaudeAI — Claude Code is a Beast: 6 months of tips (2313 ups) — r/ClaudeAI
  4. Blog r/ClaudeAI — Boris (Claude Code creator) setup thread (2993 ups) — r/ClaudeAI
  5. Blog r/ClaudeAI — Claude Code plugin system thread (452 ups) — r/ClaudeAI
  6. YouTube IndyDevDan, AI Jason on Claude Code workflows — IndyDevDan