Claude Code: How I Use It
2026-02-28 → 2026-03-23
How I currently use Claude Code. This is a living document that evolves with my workflow.
Environment#
- Terminal: cmux
- Dictation: Wispr Flow for voice input. I have a note about interpreting phonetic typos in
CLAUDE.md. - Config managed via dotfiles repo (
~/.claude/symlinked into~/git/dotfiles/claude/)
I use cmux. I used to use bare Ghostty splits (⌘+D / ⌘+⇧+D), and before that tmux (see tmux + Neovim setup). My ranking: cmux > bare Ghostty > Ghostty + tmux. cmux is built on top of Ghostty, so I still get its speed and native macOS integration. Bare Ghostty also had an annoying tab-naming issue: since each tab is a project, I want stable names, but Ghostty changes the tab title based on whatever is running in the focused split. cmux gives me a sidebar for project-based organization (similar to the Codex app) with stable naming, while keeping things lightweight. Its split and multi-tab logic feels more natural: tabs are created within a split rather than splits being tied to a single tab, which better matches how CC workflows branch out.
My default layout is two panes side by side — Claude Code on the left, Neovim on the right. I split further as needed but try to return to this two-pane setup. Neovim is the right fit here for the same reason as Ghostty: snappy and versatile. You can quickly move around, explore files, and make edits while CC works in the other pane. I sometimes run watch scripts (e.g., auto-compile, file sync) in a tiny extra pane.
Usually I have several tabs open (one for each project) with each tab having 2+ panes.
CLAUDE.md setup#
- Global (
~/.claude/CLAUDE.md): Python/uv preferences, wiki/blog paths, project tracking conventions, academic writing style - Project (
CLAUDE.md): repo-specific instructions, commands, code style
Custom skills#
Most of my research-oriented skills are packaged as Claude Scholar (yy/claude-scholar):
/verify-math— step-by-step verification of mathematical derivations using SymPy/doi-bibtex— grab BibTeX entries from DOIs/arxiv-metadata— fetch structured metadata for arXiv papers/openalex— query 240M+ scholarly works via the OpenAlex API/check-refs— verify every citation in a LaTeX paper against academic databases/latex-cleanup— catch common LaTeX issues: orphan lines, spacing, typography, draft artifacts/presubmit-checks— pre-submission checklist running multiple checks in parallel/arxiv-prep— prepare an arXiv submission package
Other personal skills (not in claude-scholar) include:
garden— Wiki gardening—pick a page and improve itimg2s3— upload an image to S3
Plus the Anthropic document-skills plugin for PDF, PPTX, DOCX, etc.
Custom agents#
file-paper— file an academic paper to my wiki. It fills in metadata and then searches my wiki to identify & link relevant papers and conceptswikify— turn anything into a wiki page. Callsfile-paperwhen necessary, otherwise follows similar steps to create links to relevant pagesupdate-paper-status— update a paper’s publication status in CV bib filecodebase-analyzer,code-smell-refactor,security-auditor— code quality
Custom commands#
sync-repo— add, commit, pull –rebase, pushsync-all— auto-commit and push all git repos before switching computersrelease— bump version, tag, push, create GitHub release, publishuv-init— bootstrap Python/uv/direnv environmentnew-research-project— scaffold from my project templatelaunch-checklist— launch an OmniFocus template from any projectwikify— routes to the right agent (file-paper for papers, wikify for everything else)