Claude Code and OpenAI Codex: now available in Tidewave

When we launched Tidewave, the reception was very positive. We were hoping to get our first hundred users to validate the product until the end of the year, and we reached that milestone before the end of the first week.

At the same time, there was one question we were asked every day: “does Tidewave support Claude Code?”

Now we can emphatically say: YES!

What’s in the box?

Tidewave is the coding agent for full-stack web development. And now you can run Claude Code and OpenAI Codex (as well as any other coding agent that implements the Agent Client Protocol) alongside your web application in the browser, to enhance it with point-and-click prompting, contextual browser testing, and more.

Claude Code and Codex also leverage our deep web framework integration, giving them access to documentation, logs, database, and runtime introspection capabilities. In a nutshell: connect your favorite coding agents to Tidewave and give them access to all layers of your web application, from UI to database.

Supporting Claude Code and Codex further helped us deliver many features we had in our backlog, such as “Planning mode”, slash commands, custom MCPs, and other goodies. We can now confidently say that Tidewave delivers the most complete full-stack agentic coding experience, and we’re just getting started.

Learn more about Tidewave, its features, and all support frameworks in our landing page. Our Pro plan offers a trial of 20 user messages.

Behind the scenes

Our integration with Claude Code, OpenAI Codex, and other coding agents is possible thanks to the Agent Client Protocol (ACP), a new standard for agent interoperability from the Zed team, already adopted by JetBrains, Marimo, and others. We will explore why we believe ACP is a big deal in a future article but for now, I want to focus on the challenges we had to solve to deliver these features.

In particular, Claude Code and OpenAI Codex both provide SDKs, with the caveat that those SDKs are exposed via the command line. Given Tidewave runs in the browser, we have no way to invoke those SDKs directly. ACP does a wonderful job of standardizing those coding agents but it also communicates via standard I/O.

Therefore, we implemented an ACP-over-WebSockets proxy so the browser can spawn and directly communicate with coding agents. The proxy also acts as a PubSub system across multiple browser tabs and deals with reconnections. When the browser spawns the agent, it passes the necessary configuration for it to talk to your web application, delivering the so-called “deep web framework integration”.

However, that’s only half of the story: some of the functionality that Tidewave offers, such as contextual browser testing, requires running code directly in the browser. The usual way to add new tools to coding agents is via Model Context Protocol (MCP). Unfortunately, the browser cannot expose its own ports to act as a MCP server, so we implemented a MCP-over-WebSockets relay. The browser can then act as a regular MCP server by doing I/O over WebSockets, agents can use their built-in streamable HTTP clients, and they behave as if they were communicating directly, thanks to the relay.

Shared context

This infrastructure is open source as part of our new Tidewave Desktop application and CLI.

We’re excited to have tackled these challenges, and even more excited to finally make this available for everyone to try.

Happy coding!

Tidewave.

By Dashbit, the creators of Elixir and Livebook.
Copyright 2025. All rights reserved.

All logos and product names are trademarks or registered trademarks of their respective owners and are used for identification purposes only to indicate compatibility with Tidewave's products.

Quick Links