index

Why Didn’t GitHub Copilot Win?

GitHub Copilot came first. Not just a little bit before Claude Code, but years before it. Copilot was publicly announced in 2021, before ChatGPT even existed. It was built by GitHub and OpenAI, backed by Microsoft, integrated directly into VS Code, and eventually became one of the most widely used AI developer tools in the world. By June 2023, GitHub said Copilot had been activated by more than one million developers, adopted by more than 20,000 organizations, and had generated more than three billion accepted lines of code.

On paper, this should have been GitHub’s category to own. Instead, a few years later, developers talk about Claude Code in a way that feels completely different. Anthropic launched Claude Code as a limited research preview in February 2025, and by 2026 it was reporting more than $2.5 billion in annualized run-rate revenue, weekly active users that had doubled since the beginning of the year, and an estimated 4% of all public GitHub commits coming from Claude Code. Those numbers come from Anthropic and should be treated as company-reported rather than independently verified, but even with that caveat, the trajectory is remarkable.

So what happened? I don’t think the answer is simply that Claude is a better coding model. That is part of it, but it misses the more interesting story. GitHub was early enough to define AI coding but it defined the category around the wrong unit. Copilot was built around writing code with AI. Claude Code was built around giving AI a job. That distinction ended up being enormous.

Copilot was ridiculously early

When GitHub introduced Copilot in 2021, the idea was almost futuristic. The product could look at what you were typing and suggest the next few lines of code. It was powered by OpenAI’s Codex, a model specifically trained to work with code. And honestly, that was probably the right product for 2021. The models weren’t reliable enough to let an AI loose inside an entire repository. Long context wasn’t nearly as useful as it is now. Agents barely existed as a consumer concept. If Copilot generated something stupid, you could just press escape and move on.

That made autocomplete a really good interface for early AI. The human was still completely in control: you wrote the architecture, decided what you wanted to build, and told Copilot what to do. Copilot just filled in the blanks. GitHub’s early research showed why this worked. In one controlled study, developers using Copilot completed a coding task 55.8% faster than developers without it.

But there was a problem hidden inside that success. Copilot taught everyone to think of AI coding as autocomplete. That became the product’s identity at almost exactly the moment when the underlying models were about to make autocomplete a much smaller part of the problem.

Then ChatGPT changed the rules

The launch of ChatGPT in November 2022 changed what people expected from AI almost overnight. Before ChatGPT, it was impressive if an AI could complete a function. After ChatGPT, people expected an AI to explain an entire codebase, write a project from scratch, debug an error, reason through a complicated problem, and keep a conversation going.

GitHub obviously noticed. In 2023, it introduced Copilot X, expanding Copilot beyond autocomplete into chat, the command line, code review, and other parts of the development process. This was an important change, but there was a deeper problem: GitHub was taking a product originally designed around autocomplete and gradually adding more capabilities to it.

Anthropic eventually took the opposite approach. Instead of starting with autocomplete and asking how much more AI could be added to it, Anthropic started with the question: what would software development look like if the AI could actually operate the computer? That is a much bigger question, and it changes what the product is supposed to do.

The biggest difference is the unit of work

This is probably the most important distinction between Copilot and Claude Code. Copilot’s basic unit is the suggestion. You type something, Copilot gives you something, and you decide whether to accept it. Claude Code’s basic unit is the task. You give it something you want done, and it figures out how to accomplish it.

Imagine asking Copilot to add authentication to an application. Copilot can help you write the routes, database code, middleware, frontend, and tests, but you are still coordinating all of those pieces. With an agent, you can say, “Add authentication to this application,” and the AI can inspect the repository, figure out how the existing code works, edit multiple files, install dependencies, run tests, see what failed, fix the problem, and try again.

Anthropic introduced Claude Code on February 24, 2025 alongside Claude 3.7 Sonnet, describing it as a command-line tool that allowed developers to delegate substantial engineering tasks directly to Claude. The word delegate is important. It captures the fundamental product shift better than “AI coding assistant” does.

The terminal was actually a genius interface

One of the things I find most interesting about Claude Code is that Anthropic didn’t try to make it look futuristic. It went to the terminal. That sounds almost counterintuitive because the terminal is one of the least friendly parts of programming for a beginner, but for an AI agent it is basically perfect. The terminal already gives Claude access to the things a developer uses every day: files, Git, package managers, compilers, tests, scripts, and the operating system. Claude doesn’t need a special AI coding environment when it can use the environment that already exists.

More importantly, the terminal changes the relationship between the developer and the AI. With Copilot, you are driving and the AI is sitting in the passenger seat. With Claude Code, you can tell the AI where you want to go and let it run for a while. That is a much more noticeable change, and noticeable changes are what create new categories.

GitHub had another problem: it didn’t own the model

This is where I think GitHub’s biggest structural disadvantage becomes clear. GitHub owned the platform, but it did not own the intelligence. The original Copilot was powered by OpenAI’s Codex, and as the years went on, Copilot incorporated models from OpenAI, Anthropic, Google, and others. By 2025, GitHub was letting users choose between models including GPT-5 and Claude models inside Copilot.

At first, this looks like a huge advantage. Why bet everything on one model when you can give developers the best model from everyone? But there is a catch: the model is part of the product. Anthropic can improve Claude and immediately improve Claude Code. OpenAI can improve its coding models and immediately improve Codex. GitHub has to integrate those improvements into Copilot.

That makes GitHub incredibly powerful as a platform, but less powerful as a company controlling the direction of the underlying intelligence. There is almost an uncomfortable irony here: GitHub had the developers, while OpenAI and Anthropic had the models. The companies with the models could increasingly build the product around the capabilities of their own models instead of having to build a platform that worked across everyone else’s models.

GitHub’s model-agnostic approach has obvious advantages, and I don’t think it was necessarily the wrong strategic decision. But it made Copilot’s identity more complicated. Copilot became the place where you could use Claude, GPT, Gemini, and other models. Claude Code became Claude doing software engineering. Those are fundamentally different positions in the stack.

Microsoft was both GitHub’s biggest advantage and a constraint

I also don’t think GitHub simply “failed” to build Claude Code first. GitHub is a massive platform company, which gives it an incredible distribution advantage but also means it has a lot more to lose. Anthropic could launch a weird terminal tool and see what happened. GitHub had to think about enterprise security, permissions, billing, existing Copilot customers, Microsoft integrations, GitHub Actions, compliance, and how everything fit together.

You can see this difference in how GitHub eventually built its own coding agent. In September 2025, GitHub made Copilot coding agent generally available. It could take a task, work on it in the background, modify a repository, run tests, and open a pull request for the developer to review. That sounds a lot more like Claude Code, and that’s the point: GitHub eventually moved toward the same product philosophy. It just had to move an enormous existing product in that direction, while Anthropic was building in that direction from the beginning.

Copilot may have been a victim of its own success

This is probably the part I find most interesting. Copilot was successful enough that GitHub had a reason to keep thinking about it as Copilot. It had millions of users, companies were paying for it, developers were used to it, it was integrated into VS Code, and GitHub had built an entire business around the idea. That’s a good problem to have, but in technology a successful product can become a constraint if the technology underneath it changes.

Copilot’s original pitch was essentially, “AI can help you write code faster.” That was revolutionary in 2021. But by 2025, that wasn’t revolutionary anymore. The interesting question had become, “How much of the software development process can I give to AI?” That is a completely different question, and Claude Code was built around it.

There is also a difference between a product being widely used and a product becoming culturally important. Copilot has been used by millions of developers and is probably one of the most successful AI developer products ever created, but it became infrastructure. You don’t necessarily talk about infrastructure. Claude Code became something developers talked about because the product was much easier to demonstrate: give it a task, watch it inspect the repository, modify files, run tests, hit an error, and keep going. Copilot made AI coding useful; Claude Code made AI coding visible.

GitHub didn’t actually lose

I don’t think the story should be simplified into “GitHub lost and Anthropic won.” Copilot is still enormous, and GitHub has advantages that Anthropic would love to have. GitHub controls one of the most important platforms in software development and has direct access to repositories, issues, pull requests, Actions, and the workflows that agents need.

In fact, GitHub is now leaning heavily into exactly that advantage. Its coding agent works directly with GitHub repositories and can create pull requests, while GitHub has also continued adding model choice and more project-specific context. And there is an interesting twist: GitHub can now put Claude inside Copilot. GitHub doesn’t necessarily have to build the best model if it can build the best place to use models.

But that creates a new question: is the platform ultimately more valuable than the model? I don’t think we know yet. If developers eventually use five different models and agents every day, the platform connecting all of them to their repositories could become extremely valuable. But if the models themselves become the products, the platform risks becoming a middleman. That is basically what happened to GitHub’s original advantage: GitHub had the developers, but the intelligence was somewhere else.