Skip to content
Y CombinatorY Combinator

Boris Cherny: How Tool Use Turned a CLI Into Claude Code

By betting on bash tools and a minimal terminal loop; CLAUDE.md emerged from organic user demand, and subagents now parallelize repo exploration.

Boris ChernyguestGarry TanhostJared Friedmanhost
Feb 17, 202650mWatch on YouTube ↗

CHAPTERS

  1. Claude Code’s breakout moment and a surprising end state: the terminal

    Boris recalls the early months of Claude Code and the “no sleep” intensity of prototyping it in late 2024. The biggest surprise wasn’t just adoption—it was that the CLI remained the primary interface far longer than expected, and that model improvements eventually made the bet pay off.

  2. Origin story: a minimal CLI to learn the API became a product

    Claude Code began as a simple terminal chat app because it was the fastest way to test the Anthropic API without building UI. Tool use experimentation (starting with bash) revealed a powerful direction: the model strongly “wanted” to act in the world via tools.

  3. Why terminals work: elegant constraints and accidental product-market pull

    The CLI’s simplicity turned out to be a feature: low friction, fast interaction loops, and a strong constraint that kept the experience focused. Internal dogfooding spread immediately, surprising leadership with a near-vertical usage chart.

  4. Early use cases before full codegen: Git automation, ops, and tests

    When coding quality was still weak, users found value in operational workflows—running bash commands, automating Git, and managing infrastructure. Unit tests became a safer early coding use case because they’re lower-risk and easier to validate.

  5. CLAUDE.md emerges from latent demand—and why Boris keeps his tiny

    Users organically began writing markdown instructions for the model, which evolved into CLAUDE.md. Boris argues most people over-engineer these files; his personal one is only two lines, while the team maintains a shared repo CLAUDE.md that evolves through repeated mistakes.

  6. Terminal verbosity wars: what to show, what to summarize, and why it keeps changing

    Deciding how much detail to display is an ongoing product battle because different workflows require different transparency. Experiments to hide or summarize outputs triggered strong reactions, leading to configurable verbosity and rapid iteration based on real feedback.

  7. Beginner’s mindset as models improve: relearning what’s possible every month

    Boris emphasizes that engineers’ hardened opinions can quickly become outdated as LLM capabilities advance. He shares examples where teammates used Claude Code in ways that outperformed his older mental model, reinforcing the need for humility and first-principles thinking.

  8. Hyper-specialists vs hyper-generalists—and the new “weird” engineering advantage

    The most effective engineers appear bimodal: deep specialists and broad generalists who cross product/infra/design/research. Boris values unconventional builders who use the agent itself to create tooling and automation rather than implementing everything manually.

  9. Claude Teams, agent topologies, and swarms that ship features

    Boris describes Teams as collaboration plus an exploration of multi-agent topologies, including “uncorrelated context windows.” A key example is a plugins feature built largely by a swarm over a weekend: one agent set direction, spawned subagents, and coordinated work via an Asana board.

  10. Plan mode: born from user behavior, likely to fade as models self-trigger it

    Plan mode exists because users repeatedly asked Claude to plan without coding—so the team productized a common phrase into a feature in ~30 minutes. As models get better, Claude can enter plan mode on its own, and Boris expects explicit plan mode to have a limited lifespan.

  11. Building principles for an LLM future: latent demand, don’t bet against the model, build ahead

    Boris’s core advice: anchor on latent demand (make existing workflows easier), design for what models will do soon, and treat extra scaffolding as potential tech debt that will be wiped out by the next model. This mindset explains frequent rewrites and aggressive experimentation in Claude Code.

  12. Terminal UI craftsmanship: reinventing UX under harsh constraints

    Designing a delightful terminal app required discovering new UX patterns without much prior art. Boris explains limitations (no DOM, limited colors, fixed layout) and why some features (like mouse interactions) were rejected due to painful trade-offs such as virtualized scrolling.

  13. Productivity per engineer and why Boris joined Anthropic (mission + proximity to the model)

    Boris shares internal metrics suggesting large productivity gains correlated with Claude Code adoption, while noting crude measurement via PR volume and cross-checks. He explains joining Anthropic due to the research-lab orientation (model-first) and an intense AI safety mission mindset.

  14. How coding will change: IDE-less workflows, universal “builders,” and safety ceilings

    Boris predicts coding becomes broadly “solved,” shifting roles from pure coding to broader building (specs, user research, product decisions). He also outlines the upper-bound risk scenario: recursive self-improvement and catastrophic misuse, motivating Anthropic’s safety level gating and safeguards.

Get more out of YouTube videos.

High quality summaries for YouTube videos. Accurate transcripts to search & find moments. Powered by ChatGPT & Claude AI.

Add to Chrome