Embrace & Extend

To Walled Gardens

It is hard to imagine now, given the walled gardens we spend so much of our time in, but way back at the beginning of the web, people really cared about open standards. You could almost implement a new browser that would work on current and future websites, as long as you and the site both supported the HTTP and HTML standards of the day. [8][9] However, any self-respecting commercial software company treated open standards cynically. Microsoft and Apple paid lip service to standards, but would actually go to great efforts to embrace and extend. Implement the standard, yes, but then encourage developers to use proprietary extensions, libraries, and functionality to force lock-in and increase switching costs. Netscape extended HTML. [12] Microsoft shipped a Windows-only Java runtime [10] and a Kerberos with proprietary fields. [13] Sun kept control of Java while calling it open. [14] AOL and CompuServe ran closed networks. Microsoft’s Halloween documents stated the goal directly: turn open protocols back into proprietary ones. [4]

It’s just good business. Today’s walled gardens epitomize this approach: no one even pretends to have a standard API, data exchange, or RPC format between, say, Instagram and Snapchat. Add app stores on mobile and the lock-in is all the more extreme. TCP/IP, HTTP, HTML, SMTP, and TLS stayed open, but when vendors could no longer extend the higher-level protocols, they built closed systems on top: app stores, messaging networks, social feeds, ad platforms. A walled garden is the fallback for a company that failed to capture the standard underneath. Lock-in became entrenched, and nothing was going to change it. Until it did.

STDOUT and STDIN

The most important technology of the last ten years is stunningly, shockingly, anti-marketingly open. I’m not sure there’s an ANSI committee sitting anywhere deliberating, but de facto standards have always been as important. The closest thing we have ever had to AGI is most useful via a well-known, pseudo-standardized interface: Chat, duh. [11] To get the most work done with ChatGPT, Claude, or Gemini, you fire up a REPL that accepts text and attachments. The server side does its computation and tool calls, and responds similarly with text and attachments. It’s like System V, baby.

Coding agents are the most important new developer interface in years, built by companies worth hundreds of billions of dollars. A coding agent is a language model in a loop with tools: it reads files, runs shell commands, edits code, reads the output, and repeats. Claude Code, Codex CLI, Gemini CLI, and independent agents like Goose all work the same way. Switching between them means changing a command name and possibly renaming an instruction file. [1][2][5] The models behind them differ in accuracy, speed, and price. The interface, the de facto standard, does not. By the measure of the 1990s, coding agents should already be fragmented into proprietary, mutually incompatible walled gardens. But they’re not.

  • The loop and tool set are the same across vendors: read, search, edit, write, run a shell command, fetch a URL, and ask permission.
  • OpenAI and Google release their CLIs under Apache 2.0. [1][2]
  • Repository instructions converged on AGENTS.md. Tool integration converged on MCP. OpenAI and Anthropic donated both to the Linux Foundation’s Agentic AI Foundation in December 2025. [3][6][7]
  • Third-party agents call the same model APIs as the first-party ones.

No vendor has shipped an incompatible tool schema, an instruction format only its own agent reads, or a plugin system that only works in its own CLI.

I cannot give frontier AI lab leadership much credit here. There has never been any earnest hacker or interoperability ethos demonstrated in the upper echelons of VC-backed Shiny Ball LLCs. Maybe it was a happy accident? And if so, how have the sorta-geniuses let this go on so long?

Next

We are supposed to believe the vendors sell tokens, not interfaces, not harnesses. They subsidize our Max subscriptions, nudge the API plans upward in price, and eventually expect to own the whole space. (Insert here the obviously-bullshit, talking-your-book marketing argument about the forthcoming singularity, 2026 style.)

Soon the walls are going up around the interface, the chat, as the 90s pattern predicts: OpenAI or Anthropic release a higher-level tool like a coworker that — importantly — is the only way to get at the AGI-grasping model du jour. Like if Fable were only usable via Anthropic’s heavy iOS client, and only via Dots or something. We will move toward closed services around one lab’s server side as soon as someone wises up. Or as soon as we get a little blip in the AI stock bubble.

References

  1. OpenAI, Codex CLI source and license: github.com/openai/codex
  2. Google, Gemini CLI source and license: github.com/google-gemini/gemini-cli
  3. Linux Foundation, Formation of the Agentic AI Foundation, December 9, 2025
  4. Eric S. Raymond, The Halloween Documents
  5. Block, Goose source: github.com/block/goose
  6. OpenAI, OpenAI co-founds Agentic AI Foundation, donates AGENTS.md, December 9, 2025
  7. Anthropic, Donating MCP to the Agentic AI Foundation, December 9, 2025
  8. T. Berners-Lee and D. Connolly, RFC 1866: Hypertext Markup Language 2.0, November 1995
  9. T. Berners-Lee, R. Fielding, and H. Frystyk, RFC 1945: Hypertext Transfer Protocol, HTTP/1.0, May 1996
  10. U.S. District Court for D.C., U.S. v. Microsoft: Court’s Findings of Fact, November 1999, Section VI (Java)
  11. Google, Gemini API: OpenAI compatibility
  12. Dave Raggett, My involvement with the early days of the Web, W3C, December 2004
  13. Network World via Computerworld, Interoperability issues bite Win 2000 Kerberos scheme
  14. InfoWorld, Sun to retain grip on Java, December 8, 1999

Leave a Reply

Your email address will not be published. Required fields are marked *