CGamesPlay
6 days ago
I strongly resonate with the problem statement, but this implementation was very far off the mark for me. Every interaction feels bad.
I fired it up, and the first thing I notice is that the arrow keys don't work. I can't select Claude Code. Oh, apparently it's in a different control, so I have to press Tab, and then the arrow keys work. Wow, this list of buttons has a slow scrolling animation when navigating it. Can I turn that off? Press enter on Claude, now I'm in a tiny modal window. Press enter, because I want to do the obvious thing, but apparently the obvious thing is "show in launcher", so the background of the modal is weirdly changing while a tiny single character inside the button is indicating that this is the part I'm supposed to be focusing on. No, I want to do the obvious thing of running Claude code. You could easily fit the 4 actions of this form on my screen, but by choosing to use a tiny modal window you're now forcing yourself to use another modal drop-down control to choose the action and a separate "yes actually do it" button, so the OBVIOUS ACTION of RUN THIS AGENT requires pressing tab, enter, down, down, down, enter, tab, enter. Great. Now I'm at a chat interface with an error screen, because it isn't installed. Quit the program, restart, enter, tab, enter, down, down, enter, tab, enter to install. It shows a successful run of the "ACP adapter" for claude. Shift-tab, enter, down, enter, tab, enter. Now I'm back at exactly the same error screen because apparently the install didn't work. Now, I know that you need to be running "npx @zed-industries/claude-code-acp", so I check the docs and apparently I can "toad run COMMAND". But it doesn't work for multi-word commands. And my trial with toad comes to an end.
So I can't test it for anything actually useful right now, but I'll add this to my list of projects to watch. Hopefully, being a UX-focused project, the creator actually focuses on the UX and fixes some of these silly decisions.
dovin
5 days ago
This has been my experience also, so far. I like a lot about this and want to start using it, but beyond the initial awkwardness of key bindings feeling wrong, it just seems a bit too early for me. For example, most of the agents I tried to get working on my Arch system failed to connect, only Claude Code and Vibe worked. Most worked on MacOS (except Codex, even though it's installed on my system). But I need to be able to set the agent into Bypass Permissions mode, and when I do, I'm still constantly prompted with permissions checks. There also seem to be weird errors caused by fish shell. I'd also really like to be able to define my own custom agents (eg one use case I'd like is to be able to launch Claude Code but swapping out the Anthropic endpoint for OpenRouter's so I can try new models using CC's agent harness).
It's possible this is just part of the learning curve, but it is making me think I'll have to come back to this project in a month or two to see if there are fewer pain points. Great work so far though.
willm
5 days ago
[flagged]
CGamesPlay
5 days ago
> Pretty sure you are a troll < OK, I'll come clean: I knew what Textualize is before I even evaluated toad, and have never to date found a Textualize app that "sparked joy" as it were. But I figured I should try Toad anyways since A) I strongly resonate with the problem statement of Toad and B) surely the creator of the library would create a best-in-class implementation using that library. Also, https://news.ycombinator.com/item?id=45912796
> If you don't like the keyboard control, you could always just use your mouse to click stuff. < You're reading me backwards. I like keyboard control, but feel like Textualize is a mouse-first UI library. Pressing arrow keys when launching Toad does nothing because I'm not in a "control". As a user, I am supposed to intuitively know that "Recommended" and "Coding agents" are "different controls" and so it should be obvious to me that the arrow keys would not navigate between them?
> 100x20 characters IIRC < You have 20 lines to work with and you decided to shove 4 of the 5 actions for the form into a modal control within the modal dialog. That's my point.
> Which is displayed prominently in the footer. < That's rich. You dedicate 3 lines to the "show in launcher" button and a "Go" button and say the one line at the bottom of the screen is "prominently". Also, that message isn't even on the opening screen of the app, presumably because I have a flawed understanding of what a "control" is.
> I don't think you were interested in fixing it, as you would have mentioned an error message.
No, the error message was perfectly clear! That's how I knew the solution. "Agent returned a failure code: 127 - /bin/sh: claude-code-acp: command not found" The solution is to run via npx.
> It does work for multi-word commands. But if your command contains a space you will need to wrap it in quotes. < You are wrong.
$ toad run "npx @zed-industries/claude-code-acp"
Not a directory: npx @zed-industries/claude-code-acp
> I imagine you don't work in the terminal much? < Please don't blame your users for uncovering bugs that your coding agent put in that you didn't catch in review.Anyways, go take your sabbatical, relax, you need it. I do genuinely want a better CLI interface for my coding agents and what you said elsewhere that the landscape is "like building a browser for a single website" is very true. Hopefully you come back with fresh eyes and can make a compelling offering in this space.
willm
5 days ago
Not saying there isn't room for improvement. This is the first release, and work is ongoing. But I can't predict everyone's assumptions. Everyone brings their own experiences to the table, and in 6 months of testing nobody has made assumptions you just did.
For instance, "toad run" takes a path to a directory and not a command (check the usage). You've made an incorrect assumption about how that works, based on previous assumptions on how the UI works.
I would be like to understand why you made the assumptions you did, and make changes based on your feedback. But you've chosen to be combative, for reasons known only to yourself.
For the record, I apologize for the "Mr cranky pants" quip. If you do want to improve this software, join the Discord. Let's keep it civil. Merry Xmas.
aja12
4 days ago
From someone who has not tried the software but might be interested if it gains traction:
You should decide whether you are building this for yourself or as a product to others. Each stance is perfectly valid but are somewhat not compatible, the software can be very opinionated or intuitive but attempts to be both seem to often fail.
If you are building opinionated software for yourself and are ok with alienating a part of the userbase: great, some great software are built this way! (Alacritty, Kakoune come to mind). This should be clearly communicated to prospecting users though, it may need to convey "this software has strong opinions you may not agree with, that's fine but it may not suit you" somehow.
If you aim for maximum reach: expect your sense of what is "intuitive" to constantly be challenged, and to have to make many difficult compromises. You also need to take feedback from a more forgiving angle, and above all, assume good faith from your users. In this instance, GP stated their enthusiasm for your shared vision of the problem space, and your knee-jerk reaction was calling them a troll.
Builders of opinionated software should pay trolls no heed and refrain from engaging, and builders for maximum reach should think trolls don't exist.
footnote: `toad run` expecting a folder and not a command seems to fall in the "opinionated" ballpark
CGamesPlay
5 days ago
> Everyone brings their own experiences to the table, and in 6 months of testing nobody has made assumptions you just did. < As an experiment, try disabling the app's mouse support and testing it.
> For instance, "toad run" takes a path to a directory and not a command (check the usage). < I stand corrected. I think I was confused because I read this comment <https://news.ycombinator.com/item?id=46370722> ("toad acp COMMAND") and substituted "toad run COMMAND". I saw in the usage that it mentions "PATH" without specifying what it is the path to, and does include a "--agent" flag but with no explanation about what it does. This level of documentation is far from what I would call good, but I'll give it to you that I could have figured that one out. ([append] `toad run` isn't even the right command and as near as I can tell --agent does nothing. But `toad acp` is what I actually wanted and finally I can actually test the app)
> But you've chosen to be combative < My post was snarky but my experience was honest. I don't think I'm being combative. I certainly don't intend to offend you as the creator of the tool, regardless of whether or not I think the tool is high-quality in its current state.
Merry Christmas, I will continue to watch this project. Maybe I will open a discussion in the Github if I end up successfully able to use it with my newfound understanding of the "acp" subcommand.