iTranslated by AI

The content below is an AI-generated translation. This is an experimental feature, and may contain errors. View original article
🔐

[Confidential Level] 10 Internal Practices Revealed by Claude Code Developers - The Real Usage 99% of Users Don't Know

に公開

Who Should Read This Article

Are you using Claude Code "normally"?

Opening the terminal, typing a prompt, and waiting for a response. Repeating that over and over.

If so, you are not even drawing out 10% of Claude Code's true power.

In January 2026, Boris Cherny (Anthropic Staff Engineer), the creator of Claude Code, shared 10 internal practices on X that were previously only shared within the internal team.

https://x.com/bcherny/status/2017742741636321619

This thread sent shockwaves through the developer community within just a few hours of its release. This is because what was written there were battle-hardened techniques "not found in the documentation."

In this article, we will thoroughly deconstruct that thread and provide a complete explanation in Japanese.


1. Parallel Processing via Git Worktree - "One Session, One Task" is Outdated

This is the practice that Boris asserts has the "highest impact."

Most users run a single Claude session in a single terminal. Boris's team does things differently.

# Run 3-5 worktrees simultaneously
git worktree add ../project-a feature-a
git worktree add ../project-b feature-b
git worktree add ../project-c bugfix-c

Start an independent Claude session in each worktree.

In other words, while you are waiting for one task to finish, other Claudes are making progress on different tasks.

Practical Technique

The internal team at Anthropic sets up shell aliases:

# Add to ~/.zshrc
alias za='cd ~/worktrees/project-a && claude'
alias zb='cd ~/worktrees/project-b && claude'
alias zc='cd ~/worktrees/project-c && claude'

Just by typing za, you navigate to worktree A and launch Claude.

Furthermore, they maintain an "analysis-only worktree." This is a dedicated space for things like log analysis or running queries, ensuring the main development flow isn't interrupted.


2. The Real Way to Use Plan Mode - Techniques to Nail Implementation in One Go

"For complex tasks, invest in Plan Mode first."

This is Boris's teaching.

Many users use Plan Mode "casually." However, within Anthropic, there is a clear strategy.

Two-Stage Review System

1. Claude A: Create the plan
2. Claude B: Review that plan as a Staff Engineer

That's right—you have Claude review its own plan.

You are a Staff Engineer. Please review the following implementation plan.
Point out issues from the perspectives of security, performance, and maintainability.

[Paste plan here]

What if a problem is found? Reset to Plan Mode immediately.

The moment you think "this might be wrong" during implementation, press Shift+Tab twice to return to Plan Mode. Refining the plan is significantly faster than continuing to write half-baked code.


3. Evolutionary Operation of CLAUDE.md - "Teaching" the AI

This might be the most important practice that many people overlook.

Boris's team gives this instruction when Claude makes a mistake:

"Update CLAUDE.md to ensure you don't repeat the same mistake."

That's it. However, this single sentence makes a decisive difference.

Actual Operational Flow

# CLAUDE.md

## Past Mistakes and Measures

### 2026-01-15: Missing Type Definitions for API Responses
- Problem: Forgot type definitions when adding a new endpoint
- Measure: Always check for updates in the types/ directory when adding API endpoints

### 2026-01-20: Insufficient Test Mocking
- Problem: Forgot to mock external API calls, causing CI failure
- Measure: Always create mocks when there are external dependencies

Iteratively improve this document until the error rate drops to a measurable level.

As a more advanced technique, create a project-specific notes directory and have CLAUDE.md reference it:

# CLAUDE.md

Refer to the ./notes/ directory for project-specific precautions.
Specifically, be sure to check the following files:
- notes/architecture-decisions.md
- notes/common-pitfalls.md
- notes/coding-standards.md

4. Building Reusable Skills - Automating "Same Old Tasks"

Are you typing the same prompts every day?

Boris's team converts all repetitive tasks into Skills or Slash Commands.

Example: /techdebt Command

# .claude/commands/techdebt.md
---
description: Discover and analyze technical debt
---

Please analyze the codebase from the following perspectives and identify technical debt:

1. Detection of duplicate code
2. Identification of functions with too much complexity
3. Locations using old patterns or deprecated APIs
4. Areas with insufficient test coverage

Please list the results in order of priority and attach estimated effort to each item.

Just by typing /techdebt, a complete technical debt report is generated.

More Advanced Example: Integrated Context Dump

Anthropic's internal team has Skills that aggregate information from multiple services:

  • Related Slack threads
  • Google Drive documents
  • Asana tasks
  • GitHub Issues/PRs

They integrate these with a single command and pass them to Claude.


5. Automated Bug Fixing Workflow - The World of "Paste and 'fix'"

You might be surprised to hear this.

When a bug report arrives, Boris's team pastes the Slack thread as is and simply says "fix."

Setup

  1. Enable Slack MCP integration
  2. Pass the bug thread URL to Claude
  3. Type fix

That's it.

Claude automatically executes the following:

  1. Analyzes the content of the Slack thread
  2. Identifies the relevant code
  3. Infers the cause of the bug
  4. Implements the fix
  5. Adds tests

For troubleshooting distributed systems, they point Docker logs directly at Claude:

docker logs my-service 2>&1 | claude --stdin "Identify and fix the error from these logs"

There's no need to micromanage the approach. Leave it to Claude.


6. Advanced Prompting Strategies - "Testing" Claude

Boris's team doesn't just say, "Implement this."

They make Claude "prove" its own implementation.

"Prove to me" Technique

Please prove that this change works correctly.
By doing the following:
1. Compare the branches before and after the change
2. List all affected paths
3. Explain the behavior in each path
4. Demonstrate edge case handling

"Grill" Technique

Before approving a change, have Claude criticize its own work:

You are a security auditor.
Thoroughly identify any issues with this change.
Search for vulnerabilities from an attacker's perspective.

Spec-Driven Development

Before handing over the implementation, write detailed specifications. By eliminating ambiguity, Claude's success rate for implementation in a single go improves dramatically.


7. Optimizing the Terminal Environment - Aesthetics and Productivity

Anthropic's internal team has chosen Ghostty as their terminal.

Reasons:

  • Fast rendering
  • Excellent Unicode support
  • Compatibility with Claude Code

Utilizing the Status Line

Customizable with the /statusline command:

  • Current context usage (displayed as %)
  • Current Git branch
  • Number of active subagents

Color-Coding Tabs

Change the tab color for each task. This makes it possible to see at a glance what you are currently working on.

Utilizing Voice Input

This might be surprising, but Boris's team makes extensive use of voice input.

"Voice input is 3x faster. And you can write richer prompts."

Speaking allows for richer instructions in natural language than typing on a keyboard.


8. Scaling with Subagents - Distributing Computing Power

For complex tasks, add "use subagents" to the prompt.

Please refactor this entire codebase.
use subagents

Claude will automatically:

  1. Split the task
  2. Launch multiple subagents
  3. Assign subtasks to each subagent
  4. Integrate the results

Maintaining the Main Agent's Focus

By offloading individual tasks (e.g., file searches, pattern analysis) to subagents, the main agent can focus on the "big picture."

Security Scanning + Auto-Approval

As an advanced setup, Boris's team uses Opus 4.5 hooks to:

  1. Automatically run security scans on changes
  2. Automatically approve changes deemed safe
  3. Escalate only suspicious changes to a human

9. Data Analysis Integration - A World Without Writing SQL

Great news for BigQuery users.

Boris's team commits Skills utilizing the bq CLI to git.

# .claude/commands/metrics.md
---
description: Analyze product metrics
---

Please use BigQuery to retrieve the following metrics:
- DAU trends over the past 7 days
- Usage rates by feature
- Error rate trends

Use the bq command and format the results to be visually easy to understand.

Some engineers on the team "no longer write SQL by hand."

When metrics are needed, just ask Claude. Claude writes the query, executes it, and interprets the results.


10. Setting a Learning Focus - Making Claude a "Teacher"

This is particularly powerful when entering a new codebase or when a new member joins the team.

Explanatory Mode

/config set output_style explanatory

With this setting, Claude begins to explain the reasoning behind every change.

"Why this pattern was used," "Why process in this order"—knowledge accumulates alongside the code.

HTML/Markdown Presentation Generation

When trying to understand a new codebase:

Please generate an HTML presentation to understand the overall structure of this repository.
Explain the responsibilities of each module, data flow, and key patterns.

Utilizing ASCII Diagrams

When understanding protocols or system-to-system integration:

Please explain the authentication flow of this API using an ASCII diagram.
┌──────────┐     ┌──────────┐     ┌──────────┐
│  Client  │────▶│   Auth   │────▶│   API    │
│          │◀────│  Server  │◀────│  Server  │
└──────────┘     └──────────┘     └──────────┘
     │                │                │
     │   1. Login     │                │
     │───────────────▶│                │
     │   2. Token     │                │
     │◀───────────────│                │
     │                │   3. Verify    │
     │                │───────────────▶│
     │                │   4. OK        │
     │                │◀───────────────│

Spaced Repetition Skill

When you feel a knowledge gap, build a learning Skill:

# .claude/commands/learn.md
---
description: Start a learning session on a specific topic
---

Please start a session where I can learn about the following topic step-by-step:
{{topic}}

1. Explanation of basic concepts
2. Usage examples in actual code
3. Common mistakes
4. Confirmation of understanding in quiz format
5. Suggestions for topics to learn next

Conclusion: There is No "Correct Answer," but There is a "Gap"

To quote Boris Cherny's words at the end of his thread:

6 "There is no right way to use Claude Code. I want you to experiment and find what fits your setup."

However, this much can be said.

Whether you know these practices or not makes a multi-fold difference in productivity.

While you are running one Claude in one terminal, Boris's team is running 10-15 Claudes in parallel, fixing bugs with automated workflows, and distributing tasks with subagents.

This gap will only widen over time.


3 Steps to Start Right Now

  1. Today: Set up Git worktrees and try running two Claude sessions in parallel.
  2. This week: Create a CLAUDE.md and start recording Claude's mistakes.
  3. This month: Convert one task you use daily into a Skill.

Knowing is not enough. The difference comes from putting it into practice.



GitHubで編集を提案

Discussion