Terax: One Developer Built an AI Terminal Better Than Warp

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00This is Terax, an open source AI native terminal built with Tauri2 and Rust that gives you a
00:00:05multi-tab terminal, a code editor, a file preview sidebar, and a web browser, all in a 7 megabyte
00:00:12app that starts in under 300 milliseconds. It even has its own AI agent that reads your entire
00:00:17code base, runs commands, and proposes edits as reviewable diffs. But with Warp at over 58,000
00:00:24stars on GitHub, and Cmox with support for agent-based notifications, is a tiny app built
00:00:28by one person really worth your time? Get subscribed and let's find out.
00:00:36Terax was made by a developer called Krinter, who started it as a side project because they wanted
00:00:40a faster, lighter version of Warp, with AI built into it for coding and not bolted on as an afterthought.
00:00:46So Terax does all of that. It implements a real terminal using Xterm.js with WebGPU, the same as
00:00:53VS Code, with a real code editor powered by CodeMirror 6, and a real AI agent using Vercel's AI SDK,
00:01:00which can pretty much be used for any model out there, including local ones.
00:01:04But how does it pull all of these things together with such a tiny footprint?
00:01:08Well, it uses Tauri2 instead of Electron, which means no bundled Chromium, saving an extra 200 megabytes.
00:01:14The Rust back-end handles everything that touches the OS, so Pty, File System Process Management,
00:01:20and the React front-end just renders the UI. So the whole thing is around 7 megabytes.
00:01:25And if you watched my video on Cmox, you may be wondering how Terax compares to it.
00:01:29Well, I'll go through a more detailed comparison later on in the video, but for now, let's take Terax for a spin.
00:01:34So after you install Terax, the first thing that may stand out to you is the file menu on the left-hand side.
00:01:39Check this out. If I navigate with CD, immediately this goes to the right place, meaning I don't need to use LS.
00:01:45So I go to a different vault, a different directory, it takes me in this straight away, and go back to where I was before.
00:01:51I can also create new tabs, close them, and create splits, just like you would in most modern terminals.
00:01:57If I go into the package's UI directory and open up a file service app TSX, you can immediately see it opens the Terax code editor
00:02:05that has syntax highlighting for most languages.
00:02:08But if I wanted to, I could use my terminal-based file editors like Helix, for example, and of course use AI coding tools like Claude Code.
00:02:14But there are a few benefits to using the Terax editor.
00:02:17So if you look at the bottom right-hand corner, there's an OpenAI Agent button, which allows me to choose a model.
00:02:23So right now, I've put in my OpenAI and Claude API keys, which are stored using the native OS keyring.
00:02:29And from here, I can ask questions about the opened file, like why are there so many functions in the use effect hook?
00:02:34And the agent will search through the file and give me an answer.
00:02:37Now, you'll notice here that I can see the amount of context that I've used, and I can change the type of agent that's being used.
00:02:43I can also go to previous sessions over here and ask follow-up questions.
00:02:46Now, Terax currently only has two subcommands.
00:02:48Plan to go into plan mode, which shows over here.
00:02:51Triggering plan again goes back into build mode.
00:02:54And init, which will go through the whole project and create a Terax MD file, similar to a Claude or Agents MD file.
00:03:00And when it does that, it shows us a code diff, which of course we can accept or reject.
00:03:04Now, because I already have a Terax MD file over here, I'm going to reject it.
00:03:08But what I could do is ask it to make changes to this specific file.
00:03:12And if there are changes, it gives us a nice diff showing us what will be removed and what will be added, also giving us the option to accept or reject.
00:03:18But I can also do some really cool things with Terax.
00:03:21Check this out.
00:03:21So if I press this button, I can open up a privacy page, which means this tab is hidden from AI.
00:03:26I could open a new editor window to create a new file, or I could open the browser, which even gives me a list of common ports.
00:03:33So if I run this app and navigate to the right ports, I could interact with my app on one tab and make code changes in the other without jumping between different tools.
00:03:41Inside the settings, I could change the editor theme, enable Vim mode, which I really like, adjust the agents, give custom instructions and reusable prompts.
00:03:49Now, I will admit there are some things I don't like about Terax.
00:03:52Right now, I can open my project in Helix, which is fine.
00:03:55But if I did the same thing in NeoVim, it just kind of crashes.
00:03:58And I'm not sure if that's because I'm using Nix and I've got a weird Nix fish shell configuration, but NeoVim works fine in Western.
00:04:04I couldn't figure out how to navigate the left sidebar with the keyboard.
00:04:08So even though I could navigate to different directories, if I wanted to open a file, there's no Terax open command or a keyboard shortcut to go to the sidebar.
00:04:15I mean, I can open and close the sidebar with command B, but if I wanted to open a file, I'd have to click on it with the mouse, which isn't something I expect to do in a terminal.
00:04:24I also can't zoom in with command plus for some reason that hasn't been enabled.
00:04:28And if I wanted to go to a non local host site in the browser, I get this X frame options error, which I kind of get for security reasons because it's using iframes, but it would be nice to be able to do this.
00:04:38Honestly, for something that was built with mostly JavaScript, this is incredibly performant.
00:04:43I mean, I was skeptical when the author chose not to use libghosty for the terminal.
00:04:47But if I didn't know this was open source and had no idea what code was used to build this, I would have thought this used a systems language.
00:04:54Well, it kind of does because Tauri is rust, but you get what I mean.
00:04:57Basically, it's amazing what can be done nowadays by a single developer using AI and many open source tools.
00:05:04I mean, this almost rivals warp, which was built by a whole company and has VC funding.
00:05:09Not to mention this isn't even a 1.0 version of Terax.
00:05:12So I'm sure there'll be more features and more fixes coming later in the pipeline.
00:05:16But how does this compare to CMUX?
00:05:18Well, Terax is an agentic development environment like warp, whereas CMUX is a different tool altogether.
00:05:24It gives your agents the ability to control everything in the terminal.
00:05:28So you can create new panes, new tabs, control the sidebar, rename the sidebar and so on,
00:05:32which is perfect for multi-agent workflows.
00:05:34With Terax, on the other hand, the agent is only scoped to look at the code and files.
00:05:39So it can't create new tabs and new split panes.
00:05:42It can't control the sidebar, but it can make adjustments to the code itself.
00:05:45So if you want your agents to open up browsers, navigate the web and spin up sub-agents, then check out CMUX.
00:05:51But if you want to code in the terminal, use an agent to make changes and view the changes in the browser, then use Terax.
00:05:58Personally, I'll be sticking with West Term and NeoVim for most of my development.
00:06:01And if you want to know why I'm choosing ResTerm over, say, Ghosty, then check out this video.

Key Takeaway

Terax provides a lightweight, performant AI-native development environment by leveraging Tauri2 and Rust to integrate terminal, code editor, and file management into a 7-megabyte footprint.

Highlights

  • Terax is a 7-megabyte, AI-native terminal that launches in under 300 milliseconds.

  • The application architecture uses Tauri2 and Rust, bypassing the need for a bundled Chromium browser to save 200 megabytes of space.

  • Integrated development features include Xterm.js with WebGPU for the terminal, CodeMirror 6 for the code editor, and Vercel's AI SDK for model-agnostic agent capabilities.

  • Users can define terminal tabs as privacy-protected to exclude them from AI context processing.

  • The built-in file explorer allows navigation via CD commands, bypassing the need for manual LS commands.

  • Current limitations include lack of keyboard-driven navigation for the sidebar, inability to zoom using keyboard shortcuts, and occasional stability issues with NeoVim.

Timeline

Architectural Overview and Performance

  • Terax utilizes Tauri2 instead of Electron to maintain a 7-megabyte app size.
  • The application leverages Rust for system-level operations while using React for the front-end UI.
  • Xterm.js with WebGPU provides terminal rendering similar to VS Code.
  • The built-in AI agent uses Vercel's AI SDK to support various models, including local options.

By opting for Tauri2 over Electron, the application avoids bundling Chromium, which results in significant size reduction. Rust handles OS-level tasks like process management and file system interaction. This structure allows the application to achieve under 300-millisecond startup times.

Core Functionality and AI Integration

  • The file browser automatically updates based on CD commands entered in the terminal.
  • Integrated AI agents can perform project-wide initialization and generate reviewable code diffs.
  • Users can define context-specific AI settings, including custom instructions and reusable prompts.
  • The application provides a unified interface for terminal commands, file editing, and web browser previews.

The interface combines a terminal, a CodeMirror 6-based editor, and a browser. AI agents interact with the codebase by reading files and suggesting edits, which are presented as diffs for user approval. Additionally, specific tabs can be marked as private to prevent the AI from accessing that session's data.

Limitations and Comparison with CMUX

  • Terax currently lacks full keyboard support for sidebar navigation and zoom commands.
  • NeoVim stability issues persist under certain shell configurations.
  • Terax agents are scoped to code and file manipulation, whereas CMUX allows agents to control terminal-wide infrastructure.
  • The browser feature faces security-based X-frame options errors when loading non-local sites.

While Terax is performant, it is still pre-1.0 and lacks some advanced terminal ergonomics. CMUX remains the superior choice for multi-agent workflows involving pane and tab management, while Terax is focused on direct coding assistance and browser interaction within a unified window.

Community Posts

No posts yet. Be the first to write about this video!

Write about this video