HNHacker News
TopNewBestAskShowJobs

willm

3,165 karma · joined February 17, 2008

submissionscomments
willm··on Self-updating screenshots
I approve of this approach.

The docs for Textual (TUI library for Python) build screenshots along with the docs. Technically not really screenshots, they are SVGs, but principle is the same. They never get out of date.

https://textual.textualize.io/widgets/markdown/#example

willm··on Building a TUI is easy now
What TUIs are you referring to? Mouse is supported and working on just about every TUI framework.
willm··on Building a TUI is easy now
It is possible. Terminals have supported mouse interactions for a long time.
willm··on Toad is a unified experience for AI in the terminal
I know for a fact that Textual can generate an entire frame in less than a 60th of a second. Any lag you see has nothing to do with the choice of language. A TUI just doesn’t require that much number crunching to use a low level language.

I’d be interesting in knowing what platform and terminal you observed the lag, when testing Toad.

willm··on Toad is a unified experience for AI in the terminal
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.

willm··on Toad is a unified experience for AI in the terminal
De nada.
willm··on Toad is a unified experience for AI in the terminal
It’s stored statically in the Codebase. In the future, I suspect there will be enough compatible agents that there might be a web service to search them.

I think they are working in the Copilot ACP layer. Doubt it will take long.

willm··on Toad is a unified experience for AI in the terminal
It is quite literally instantaneous on my 5 year old laptop. Whatever you are seeing isn't due to the choice of Python.
willm··on Toad is a unified experience for AI in the terminal
Thanks!
willm··on Toad is a unified experience for AI in the terminal
The ACP protocol supports MCP. That would be how the client provides additional functionality for the agent. There's no UI in Toad for that yet, but there will be in a future update.
willm··on Toad is a unified experience for AI in the terminal
It should be as easy as running: toad acp “command”
willm··on Toad is a unified experience for AI in the terminal
You may be confusing Agent Communication Protocol with Agent Client Protocol. Yeah, 2 ACP protocols. I had no hand in the naming.

If an agent can be configured to use Ollama, then you could use it from a Toad. It might be possible right now.

willm··on Toad is a unified experience for AI in the terminal
Pretty sure I could run Toad in Toad, but I’m scared to try.
willm··on Toad is a unified experience for AI in the terminal
I don’t follow your first question. Toad already displays pretty diffs. MCP works in the same way as the native CLI.

One of the advantages of Toad is that it is vendor agnostic. In the future Toad will be able to run sub agents, and allocate any agent to any job. Still to figure out the UX for that.

willm··on Toad is a unified experience for AI in the terminal
That’s pretty much it. You can bring your own agent. Including OpenCode by the way. I doubt they will mind as they still get paid for the tokens.

You get a nice UI that is only going to get better as time goes on.

It’s far better model to separate the agent from the UI. The current situation is like building a browser for a single website.

willm··on Toad is a unified experience for AI in the terminal
Hope you like it. It is still Claude Code doing the work. Toad talks to the agent, and is the agent that works with the LLM. So the results should be identical to the native CLI.
willm··on Toad is a unified experience for AI in the terminal
I'm very taken by your response!
willm··on Toad is a unified experience for AI in the terminal
I'm sure you recognise some of these? https://github.com/batrachianai/toad/blob/main/src/toad/app....
willm··on Toad is a unified experience for AI in the terminal
Guess you don’t like sci-fi movie quotes. You can change that to a simple pulse animation in the settings.

It literally is using Claude under the hood. Should be no different than Claude’s own CLI.

willm··on Toad is a unified experience for AI in the terminal
ACP is will designed. It will always be a few features behind the native CLIs as the protocol catches up. But there is very little that you can't do with ACP. A lot can be done with slash commands that are passed through to the agent verbatim.

Python is more than capable of running a TUI. It is just text manipulation after all. Toad uses Textual, which is currently the best TUI library around. I may be biased saying that as I built it...

willm··on Toad is a unified experience for AI in the terminal
Thanks. Hope you like it.
willm··on Toad is a unified experience for AI in the terminal
Hi. Will McGugan here. I built Toad. Ask me anything.
willm··on Mistral releases Devstral2 and Mistral Vibe CLI
Python is more than capable of doing that. It’s not an issue of raw execution speed.

https://willmcgugan.github.io/streaming-markdown/

willm··on Large integer precision error in Bash command output rendering
I'm working on a fix for the terminal UI.

https://www.youtube.com/watch?v=OGGVdPZTc8E&t=2s

willm··on Ask HN: What Are You Working On? (Nov 2025)
I’m working in a universal UI for agentic coding in the terminal.

https://willmcgugan.github.io/toad-report-2/

willm··on No_color: Disabling ANSI color output by default
I asked the author a while back. They said it purely relates to colour. Not other styles. Alas, they removed the issues and there is no record of that.
willm··on Agent Client Protocol (ACP)
Harsh. But fair. JSON-RPC is one of the leanest protocols out there.
willm··on Show HN: Spegel, a Terminal Browser That Uses LLMs to Rewrite Webpages
Why not just use ncurses?
willm··on Show HN: Interactive systemd – a better way to work with systemd units
Nice! How did you find working with the Textual library?
willm··on The Aging Programmer [video]
Very general advice, but as a 50 year old developer I needed to read this.
Page 1 of 6Next →