top | item 44962318

(no title)

joshmlewis | 6 months ago

As someone who builds AI products and having used agentic coding tools since they came out (often with Rails projects), I don't get this. There was a similar project called Rails MCP Server which said:

> "This Rails MCP Server implements the MCP specification to give AI models access to Rails projects for code analysis, exploration, and assistance."

And again I don't get the value. I can see some slight benefits to having a tight browser integration but I don't think that's worth leaving the IDE / CLI tools and the workflows they bring. You can also use Playwright MCP or just screenshot easily for more context. Claude Code can now run your server in the background and view logs as well. In a perfect world where LLM's can one shot whole features, maybe. But I can't let Claude Code go 10 minutes without it introducing a bad pattern and having to stop it. Reducing that visibility even further with this does not seem like a good combo.

I'm not wanting to tear down others projects either, just giving my perspective. I should try it to see how it does in the wild but the Copilot license or Anthropic API key requirement also deters me as well as having to have a project specific dependency.

discuss

order

josevalim|6 months ago

As you said, the best would be for you to give it a try and see the benefits in practice (if any). Beyond that, I can add to two points you brought up:

First, Playwright MCP is really not enough. For example, imagine you are building a project management software and you are working on a feature for transferring tasks between projects. Testing this feature requires at least a user who is admin and at least two projects. When it is time for Playwright to test this feature, you need to automate the account creation, then it has to set up two projects, add the task, etc, and it often gets stuck.

When you are using Tidewave, you naturally do this setup as part of your development, which Tidewave has direct access to during tests. So it just interacts with the same page. Furthermore, if you see any bugs or places you could improve, you can't really tell Playwright or regular coding agent to fix them, you have to translate what you want. With Tidewave you just point and click and it works across browsers. I talk more about this in the announcement post: https://tidewave.ai/blog/tidewave-web-phoenix-rails

Other than that, I am really curious about the handoff between Tidewave and the editor that you mentioned. At some point, you will need the editor indeed, but how to best do this transaction? Should you be able to review and do tiny tweaks within Tidewave first? Regardless, moving the agent to the browser for web applications bring enough benefits to justify going one lever higher. :)

yed|6 months ago

Playwright MCP has a mode where it can run as a Chrome Extension, which allows you to use it on your active browser session. Not sure if you can do point and click to communicate but it covers the development setup and login bit.

taatparya|6 months ago

Does it include support for Ash framework?

pelagicAustral|6 months ago

I've been using it for a few hours and I find that it struggles at times with some of the instructions, it completely obliterated a modal and overall I didn't felt like I trusted it too much with larger tasks, but then I started working with Claude Code on a console, and Tidewave on my browser and the workflow is pleasing, I only give UI portions of work to Tidewave and it works well, it's nice to be able to select elements and pass instructions for refactoring UI... this is only from like 2 or 3 hours of testing...

troupo|6 months ago

On top of what Jose Valim said:

I ran this yesterday. Since it's running inside your app and has access to everything your app does, here's what it did for me:

I have an app that processes images and displays certain info on them. The images are processed asynchronously.

I needed a pubsub when info was inserted into the DB to be sent out, and info on the page to appear immediately.

Since Tidewave is running inside the app, it did the following:

- opened the info page

- triggered dummy data insert into the DB

Edit: I mean it inserted data using the exposed module functions that would trigger the pubsub [1], it did not add data to DB directly

- monitored both the app logs and the page to see what's happening

- made several iterations adding pubsub, subscribing to it, and fixing page display

I didn't need to make screenshots because Tidewave was looking at the page already.

I didn't need to paste screenshots anywhere and rely on that model's OCR to figure out what's going on.

I didn't have to copy-paste logs.

and so on

[1] https://hexdocs.pm/ash/Ash.Notifier.PubSub.html