Websockets would work great actually! Basically anything would work as long as you don't use any node or bun specific imports. For file systems you could also use something like this https://github.com/isomorphic-git/lightning-fs
I'm glad you think the try before install scenario makes sense - I think this is definitely the main use case.
Yep, mainly performance - specifically page load time (near instant for Gridland vs ~2-3s for Ink Web). The other issue was flickering. Tbh rendering directly into a canvas is just a better approach and OpenTUI's architect is more modern.
I love that xkcd, I never know what to do, so I'll just :))
Can confirm good canvas renderer performance. Just tested it with a real-time smart meter dashboard — 62 meters streaming over MQTT via JustinX.ai (our data ingestion platform), 60 msg/s (peak), 500ms refresh. Almost no flicker, smooth updates across all meter cards. Much nicer way to handle high-frequency streaming data than xterm.js.
You should be able to. We forked OpenTUI in order to avoid having to shim a bunch of native stuff. I'd like to make it compatible - email me at hi@cjroth.com if you find a way or want any help making it work
Cool I’ll try it out. I recently replaced xterm with Ghostty-web for my terminal in the browser app, but this looks even better. I’m using Next.js and I see you have an example.
Nice! I made a proof-of-concept of using Ink + Ghostty Web a few months back - we didn't end up merging it, but it's still an interesting thing that's possible. I think Ghostty Web is also has tons of potential.
There have been a lot of conversations recently about how model alignment is relative and diversity of alignment is important - see the recent podcast episode between Jack Clark (co-founder of Anthropic) and Ezra Klein.
Many comments here point out that Mistral's models are not keeping up with other frontier models - this has been my personal experience as well. However, we need more diversity of model alignment techniques and companies training them - so any company taking this seriously is valuable.
This is a fascinating report, not because of the content or even quality of the report, but because of the way it was generated. It is an AI generated report dumped into GitHub and has made it onto the front page of Hacker News with over 1,000 upvotes and many comments.
This type of GitHub-based open-source research project will become more common as more people use tools like Claude Code or Codex for research.
_GPT, prioritize truth over comfort, challenge assumptions, and avoid flattery. And analyze the patterns of biases in my prompts, and then don’t do that… or something_
Theory: terminal apps are closing the agent self-improvement loop because agents can use TUIs more easily than web/desktop/mobile.
Anomaly, which builds OpenCode + OpenTUI), is also doing some really interesting stuff in this space with their custom renderer. And then there's Ink (https://github.com/vadimdemedes/ink) which is what Claude Code uses. I also built Ink Web (https://github.com/cjroth/ink-web) to make Ink work in the browser.
You know what's even easier for AI agents to use than TUIs? CLIs.
My experience has been that agents suck at using TUIs, and are good at using CLIs. I would argue that agents are a reason that TUIs might die in favor of CLIs.
I agree, agents struggle with TUIs. I do think this is easy to fix though (here's an interesting approach: https://github.com/remorses/ghostty-opentui). I think agents will have much better luck with TUIs than browsers.
The more interesting scenario IMO is having apps that are both TUIs AND CLIs where the agent uses the CLI but can pause and show the user a TUI for complex tasks where the user needs to input something.
> I think agents will have much better luck with TUIs than browsers.
I’m very skeptical. Why would you think that? TUIs inherently don’t provide programmatically accessible affordances; if they have any affordances at all, they’re purely visual cues that have unstandardized and of varying quality.
Compare that to the DOM in a browser where you’ve got numerous well-understood mechanisms to convey meaning and usability. Semantic HTML and ARIA roles. These things systematically simplify programmatic consumption.
I'm excited to see more patterns like this for other types of code.
reply