DEV Community

Brahim G
Brahim G

Posted on

I Built an LLM-Native Terminal Emulator for macOS (Rust, Swift, Metal)

Every day I open my terminal, start Claude Code or Gemini CLI, and spend the first few minutes configuring the right context for the project.

Setting up CLAUDE.md.
Connecting MCP servers.
Finding the right prompts.

After doing this hundreds of times, I started asking a simple question:

Why can't the terminal do this automatically?

So I built one.

Awal Terminal is a free, open-source macOS terminal emulator designed for developers who work with AI coding agents.


The Problem With Using AI Agents in a Regular Terminal

Traditional terminals treat AI output like any other text stream.

But AI coding sessions are fundamentally different:

  • They produce structured output, tool calls, code blocks, diffs
  • They require project-specific context to work well
  • They consume tokens and money you usually can't see
  • They often run long tasks where you're just waiting

A regular terminal has no idea what's happening inside the AI session.

It just shows text.


What Makes Awal Different

Awal Terminal treats AI coding workflows as a first-class concept, not an afterthought.

Instead of acting like a passive text viewer, it understands the structure of an AI session and surfaces useful information.

Here are the main ideas behind it.


AI Components

This is the feature I'm most excited about.

When you open a project directory, Awal automatically detects your stack:

Next.js, Django, Rails, Flask, NestJS, Flutter, and more.

It then injects the right skills, prompts, rules, and MCP servers into your AI session.

No manual setup required.

You can also share these configurations across teams using Git registries:

[ai_components.registry.team]
source = "git"
url = "https://github.com/your-org/awal-components"
Enter fullscreen mode Exit fullscreen mode

Everyone on the team gets the same AI setup, automatically synced.


AI Side Panel

While your AI agent runs, the side panel shows what's actually happening in real time:

  • token usage and cost
  • context window fill level
  • file references
  • git changes

This information normally stays invisible inside a terminal session.


Smart Output Folding

AI agents produce a lot of structured output.

Tool calls, code blocks, and diffs can easily flood the terminal.

Awal automatically collapses these into foldable sections so you can expand only what you care about.

Large sessions become navigable instead of overwhelming.


Multi-Provider Profiles

Switch between:

  • Claude Code
  • Gemini CLI
  • Codex CLI
  • plain shell

Each provider gets its own saved configuration.

One terminal, multiple AI agents.


Resume AI Sessions

Awal keeps track of past AI sessions.

From the startup menu you can reopen previous sessions, including Claude sessions with their turn count and timestamps.

This makes it easier to continue long-running workflows.


Voice Input

Awal includes voice input powered by Whisper running entirely on-device.

You can use:

  • push-to-talk
  • continuous mode
  • wake word mode

Nothing leaves your machine.

It's surprisingly useful when reviewing AI-generated code and giving quick instructions.


The Architecture

The project is split into two main layers:

core/  → Rust
        terminal emulation
        ANSI parsing
        AI output analysis

app/   → Swift
        macOS UI
        Metal GPU rendering
        voice input
        AI side panel
Enter fullscreen mode Exit fullscreen mode

Rust handles the heavy lifting.
Swift handles the macOS-native interface.

Rendering is done using Metal GPU acceleration with a glyph atlas and triple buffering.

The result is a smooth 120fps terminal, even when scrolling through thousands of lines of AI output.

This is not an Electron wrapper. It's a native macOS application.


Why I Built This

I work with AI coding agents every day.

Over time I got frustrated with the friction:

  • manually configuring context
  • scrolling through huge walls of output
  • switching between providers
  • losing visibility into token costs

I started building Awal Terminal on weekends, and it quickly became the tool I reach for whenever I start a new coding session.


Try It

Install via Homebrew:

brew tap AwalTerminal/tap
brew install --cask awal-terminal
Enter fullscreen mode Exit fullscreen mode

Or download the latest release from GitHub.

Awal Terminal is free and open source (MIT licensed) and currently available for macOS.

If you work with AI coding agents daily, I'd love to hear your feedback, especially on the AI Components system.

GitHub:
https://github.com/AwalTerminal/Awal-terminal

If you find it useful, consider starring the project. It helps other developers discover it.

Top comments (0)