All Articles
Untangling Claude Code's 'Authorization Failed' Error — OAuth, MCP, and Dynamic Client Registration
Why Claude Code suddenly throws 'authorization failed' or 'incompatible auth server: does not support dynamic client registration', and what to actually do about it. A practical walkthrough of OAuth, MCP server requirements, and the real fixes that work in production.
Test-Driven Development with Claude Code — A TDD Workflow for the Agent Era
Adding the constraint of 'write tests first' to Claude Code stops the agent's drift and dramatically changes the quality of generated code. Here's the TDD workflow I arrived at after six months of trial and error.
Designing Pricing for Indie Projects with Claude Code — Shorten the Lead Time to Your First Revenue
When indie projects fail to earn, the gap is rarely technical — it's pricing design and lead time. Here's a practical mindset for using Claude Code to ship the smallest revenue-ready MVP and reach your first paying customer faster.
Letting Claude Code Handle Dependency Upgrades — A Verification Loop That Catches Breaking Changes
Once a solo project carries 30+ dependencies, the monthly upgrade run becomes a dreaded ritual. This article maps out where Claude Code can take the wheel, where humans must keep judgment, and the verification loop I use to keep breaking changes out of production.
Sharing Claude Code's .claude/ directory across a team — what to commit and what to keep personal
When you start sharing Claude Code's .claude/ directory across a team, which files belong in Git and which stay local? Here are the boundaries I've drawn after running it on four projects, plus a working .gitignore template.
Secret Management and Trust Boundaries for Claude Code — A Production Guide for the Agent Era
A field-tested approach to secrets in a Claude Code workflow: trust-boundary modeling, three injection patterns, leak-prevention hooks, and rotation runbooks — with working code for .env, MCP, and OS Keychain integrations.
When Claude Code Hooks Loop Forever — Stopping Self-Triggering PostToolUse Hooks
You wired up Claude Code hooks and now your terminal is a waterfall of tool calls that won't stop. Here's why PostToolUse hooks loop on themselves, and the patterns I use in real projects to make sure they never do again.
Claude Code for Unity Game Development: Practical
Hands-on guide to using Claude Code on real Unity projects: writing CLAUDE.md for Unity, the Unity MCP server, scene-aware C# generation, PlayMode tests, and build verification.
Automating CI/CD Pipelines with Claude Code's --print and --output-format json
A practical guide to using Claude Code's --print flag and --output-format json in CI/CD pipelines. Covers automated code review in GitHub Actions, PR comment generation, and test failure analysis — with working code throughout.
Claude Code × uv: Blazing-Fast Python Environment Setup — 10x Faster Than pip in Practice
Learn how to combine uv — Astral's Rust-powered Python package manager — with Claude Code for dramatically faster environment setup. Covers project initialization, dependency management automation, CI integration, and migrating from pip.
When Claude Code Hits `index.lock` in VMs and CI: Three Workarounds That Actually Stick
When Claude Code freezes on `fatal: Unable to create '.git/index.lock'` inside a VM, container, or CI sandbox, here are three battle-tested workarounds — pick the one that matches the layer of failure you're actually hitting.
Editing Multiple Repositories at Once With Claude Code --add-dir
How to use Claude Code's --add-dir flag to edit multiple repositories in a single session. Practical patterns for cross-repo API changes, shared utility refactoring, and keeping docs in sync with code.