Terax: 단 한 명의 개발자가 Warp보다 뛰어난 AI 터미널을 만들었습니다

BBetter Stack
컴퓨터/소프트웨어창업/스타트업AI/미래기술

Transcript

00:00:00이것은 Terax입니다. Tauri2와 Rust로 빌드된 오픈 소스 AI 네이티브 터미널로,
00:00:05멀티 탭 터미널, 코드 에디터, 파일 미리보기 사이드바, 웹 브라우저 기능을 모두 갖추고 있습니다.
00:00:12앱 용량은 7MB에 불과하며 300밀리초 이내에 시작됩니다. 심지어 전체 코드 베이스를 읽고,
00:00:17명령어를 실행하며 검토 가능한 diff로 수정 사항을 제안하는 자체 AI 에이전트까지 있죠.
00:00:24하지만 GitHub에서 58,000개 이상의 스타를 받은 Warp와 에이전트 기반 알림을 지원하는 Cmox가 있는데,
00:00:28개인 개발자가 만든 이 작은 앱이 정말 가치가 있을까요? 구독하고 함께 알아봅시다.
00:00:36Terax는 Krinter라는 개발자가 만든 프로젝트입니다. 이 개발자는 더 빠르고 가벼운
00:00:40Warp의 버전을 원했고, AI가 나중에 덧붙여지는 것이 아니라 코딩을 위해 내장되기를 바랐죠.
00:00:46그래서 Terax는 이 모든 것을 구현했습니다. VS Code와 동일한 WebGPU 기반의 Xterm.js를 사용하여
00:00:53실제 터미널을 구현하고, CodeMirror 6 기반의 실제 코드 에디터와 Vercel AI SDK를 사용하는 실제 AI 에이전트를 갖췄습니다.
00:01:00이 SDK는 로컬 모델을 포함하여 현재 존재하는 거의 모든 모델에 사용할 수 있습니다.
00:01:04그렇다면 이 모든 기능을 어떻게 이렇게 작은 용량에 담아냈을까요?
00:01:08Electron 대신 Tauri2를 사용하여 Chromium 번들을 포함하지 않음으로써 200MB를 절약했기 때문입니다.
00:01:14Rust 백엔드가 PTY, 파일 시스템, 프로세스 관리 등 OS와 관련된 모든 것을 처리하고,
00:01:20React 프론트엔드는 UI만 렌더링합니다. 그래서 전체 용량이 약 7MB 정도입니다.
00:01:25만약 제 Cmox 영상을 보셨다면 Terax가 어떻게 다른지 궁금하실 겁니다.
00:01:29영상 후반부에 더 자세히 비교해 보겠지만, 우선 Terax를 한번 써보죠.
00:01:34Terax를 설치하고 나면 가장 먼저 눈에 띄는 것이 왼쪽에 있는 파일 메뉴입니다.
00:01:39보세요. cd 명령어로 이동하면 즉시 해당 위치로 가서 LS 명령어를 사용할 필요가 없습니다.
00:01:45다른 볼트나 디렉터리로 이동하면 즉시 그곳으로 데려다주고, 원래 있던 곳으로 돌아갈 수도 있습니다.
00:01:51대부분의 최신 터미널처럼 새로운 탭을 만들거나 닫고, 화면을 분할할 수도 있습니다.
00:01:57packages/ui 디렉터리로 들어가 file-service-app.tsx 파일을 열면 Terax 코드 에디터가 바로 실행되며,
00:02:05대부분의 언어에 대한 구문 강조 기능을 제공합니다.
00:02:08물론 Helix 같은 터미널 기반 파일 에디터를 사용하거나 Claude Code 같은 AI 코딩 도구를 사용할 수도 있습니다.
00:02:14하지만 Terax 에디터를 사용할 때 얻는 몇 가지 장점이 있습니다.
00:02:17우측 하단 코너를 보면 모델을 선택할 수 있는 OpenAI 에이전트 버튼이 있습니다.
00:02:23저는 OpenAI와 Claude API 키를 입력해 두었는데, 이는 OS 기본 키링에 저장됩니다.
00:02:29여기서 열린 파일에 대해 질문할 수 있습니다. 예를 들어 “왜 useEffect 훅에 함수가 이렇게 많나요?” 같은 질문이죠.
00:02:34그러면 에이전트가 파일을 검색하고 답을 줍니다.
00:02:37사용된 컨텍스트 양을 여기서 확인할 수 있고, 사용 중인 에이전트 유형도 변경할 수 있습니다.
00:02:43이전 세션으로 돌아가 후속 질문을 할 수도 있습니다.
00:02:46Terax는 현재 두 가지 서브 명령어를 지원합니다.
00:02:48plan을 입력하면 여기 보이는 것처럼 plan 모드로 전환됩니다.
00:02:51다시 plan을 트리거하면 build 모드로 돌아갑니다.
00:02:54그리고 init은 프로젝트 전체를 스캔하여 Claude나 Agents MD 파일과 유사한 Terax.md 파일을 생성합니다.
00:03:00그렇게 하면 코드 diff를 보여주며, 당연히 우리는 이를 수락하거나 거절할 수 있습니다.
00:03:04저는 이미 Terax.md 파일이 있기 때문에 거절하겠습니다.
00:03:08하지만 특정 파일에 대해 변경을 요청할 수도 있습니다.
00:03:12변경 사항이 있다면 삭제되는 부분과 추가되는 부분을 보여주는 멋진 diff를 제공하며, 수락이나 거절을 선택할 수 있습니다.
00:03:18Terax로는 정말 멋진 일들을 할 수 있습니다.
00:03:21보시죠.
00:03:21이 버튼을 누르면 개인 정보 보호 페이지를 열 수 있는데, 즉 이 탭은 AI에게 숨겨집니다.
00:03:26새 에디터 창을 열어 새 파일을 만들거나, 일반적인 포트 목록을 제공하는 브라우저를 열 수도 있습니다.
00:03:33앱을 실행하고 올바른 포트로 이동하면, 여러 도구 사이를 왔다 갔다 할 필요 없이 한 탭에서는 앱을 사용하고 다른 탭에서는 코드를 수정할 수 있습니다.
00:03:41설정에서 에디터 테마를 변경하고, 제가 정말 좋아하는 Vim 모드를 활성화하고, 에이전트를 조정하고, 사용자 지정 지침과 재사용 가능한 프롬프트를 설정할 수 있습니다.
00:03:49물론 Terax에 마음에 들지 않는 점도 있습니다.
00:03:52현재 제 프로젝트를 Helix에서 여는 것은 괜찮습니다.
00:03:55하지만 NeoVim에서 똑같이 하면 그냥 충돌이 나더군요.
00:03:58제가 Nix를 사용하고 Fish 셸 구성이 이상해서 그런 건지는 모르겠지만, NeoVim은 다른 곳에서는 잘 작동합니다.
00:04:04또한 키보드로 왼쪽 사이드바를 탐색하는 방법을 찾을 수 없었습니다.
00:04:08디렉터리 이동은 가능하지만 파일을 열려고 할 때 Terax open 명령어 같은 것이 없거나 사이드바 이동 단축키가 없었습니다.
00:04:15Cmd+B로 사이드바를 열고 닫을 수는 있지만 파일을 열려면 마우스로 클릭해야 하는데, 터미널 환경에서 마우스 클릭은 기대하지 않는 방식입니다.
00:04:24이유는 모르겠지만 Cmd+ 더하기 키로 화면을 확대할 수도 없습니다.
00:04:28브라우저에서 로컬 호스트가 아닌 사이트로 이동하면 X-Frame-Options 오류가 발생하는데, iframe을 사용해서 보안상 그럴 수 있다고는 하지만 고쳐지면 좋겠네요.
00:04:38솔직히 대부분 JavaScript로 만들어졌다는 점을 고려하면 매우 뛰어난 성능입니다.
00:04:43터미널 렌더링에 libghosty를 사용하지 않기로 했을 때 솔직히 좀 회의적이었습니다.
00:04:47하지만 이게 오픈 소스인지 모르고 소스 코드를 보지 않았다면, 시스템 언어로 빌드되었다고 생각했을 겁니다.
00:04:54사실 Tauri가 Rust 기반이니 일종의 시스템 언어인 셈이지만, 무슨 뜻인지 아실 겁니다.
00:04:57결론적으로 오늘날 AI와 많은 오픈 소스 도구를 사용하여 한 명의 개발자가 할 수 있는 일이 정말 놀랍습니다.
00:05:04전체 기업이 개발하고 VC 투자를 받은 Warp와 거의 맞먹는 수준입니다.
00:05:09게다가 아직 1.0 버전도 아니라는 점을 감안해야 합니다.
00:05:12앞으로 더 많은 기능과 수정 사항들이 추가될 것이라 확신합니다.
00:05:16그럼 CMUX와는 어떻게 다를까요?
00:05:18Terax는 Warp와 같은 에이전트형 개발 환경인 반면, CMUX는 완전히 다른 도구입니다.
00:05:24CMUX는 에이전트가 터미널의 모든 것을 제어할 수 있는 능력을 제공합니다.
00:05:28그래서 새로운 창을 만들고, 탭을 생성하고, 사이드바를 제어하거나 이름을 바꾸는 등의 작업을 할 수 있어서
00:05:32멀티 에이전트 워크플로우에 완벽합니다.
00:05:34반면에 Terax의 에이전트는 코드와 파일만 볼 수 있도록 범위가 제한되어 있습니다.
00:05:39탭을 새로 만들거나 분할 창을 만들 수는 없습니다.
00:05:42사이드바를 제어할 수는 없지만 코드 자체를 수정할 수는 있습니다.
00:05:45에이전트가 브라우저를 열고 웹을 탐색하며 하위 에이전트를 실행하게 하려면 CMUX를 확인하세요.
00:05:51하지만 터미널에서 코딩하고, 에이전트를 사용해 변경 사항을 만들고, 브라우저에서 그 결과를 보려면 Terax를 사용하세요.
00:05:58개인적으로는 개발 대부분을 위해 West Term과 NeoVim을 계속 사용할 것 같습니다.
00:06:01제가 왜 Ghosty 대신 West Term을 선택했는지 궁금하시다면 이 영상을 확인해 보세요.

Key Takeaway

Terax는 Tauri2와 Rust를 활용해 7MB의 가벼운 용량으로 고성능 터미널 환경과 코드 에디터, AI 에이전트 기능을 하나의 도구에 통합한 AI 네이티브 개발 환경입니다.

Highlights

  • Terax는 Tauri2와 Rust로 빌드되어 앱 용량이 7MB에 불과하며 300밀리초 이내에 실행됩니다.

  • WebGPU 기반의 Xterm.js로 실제 터미널을, CodeMirror 6로 코드 에디터를 구현했습니다.

  • Vercel AI SDK를 통해 로컬 모델을 포함한 거의 모든 LLM을 AI 에이전트로 활용할 수 있습니다.

  • 현재 특정 프로젝트에서 NeoVim 사용 시 충돌이 발생하며, 키보드만으로 사이드바 파일을 여는 기능은 지원하지 않습니다.

  • CMUX는 터미널 시스템 전체 제어가 가능한 멀티 에이전트 워크플로우에 특화되어 있으며, Terax는 파일과 코드 수정에 집중된 개발 환경을 제공합니다.

Timeline

Terax의 특징 및 개발 배경

  • Terax는 7MB의 가벼운 용량과 300밀리초 내의 빠른 실행 속도를 제공합니다.
  • Electron 대신 Tauri2를 사용하여 Chromium 번들을 제거함으로써 용량을 200MB 이상 절감했습니다.
  • Rust 백엔드가 PTY, 파일 시스템 등 OS 작업을 처리하고 React 프론트엔드가 UI를 렌더링합니다.

Krinter가 개발한 Terax는 Warp의 대안으로 설계되었으며 코딩 작업 내에 AI가 내장된 환경을 지향합니다. VS Code와 동일한 Xterm.js 및 CodeMirror 6 기반 기술을 사용하며 실제 터미널과 코드 에디터 기능을 모두 갖추고 있습니다.

핵심 기능 및 에이전트 워크플로우

  • 파일 서비스 사이드바를 통해 cd 명령어 없이 즉각적인 디렉터리 이동이 가능합니다.
  • OS 기본 키링에 저장된 API 키를 사용하여 파일 컨텍스트 기반의 질문과 답변이 가능합니다.
  • init 명령어로 프로젝트를 스캔하여 Terax.md 파일을 생성하고 코드 수정 제안(diff)을 수락하거나 거절할 수 있습니다.

Terax는 터미널 탭과 코드 에디터가 공존하는 환경을 제공하며, 우측 하단 에이전트 버튼으로 코드에 대한 질문을 수행합니다. plan과 build 모드 전환, 특정 파일에 대한 변경 요청, 웹 브라우저 통합 탭 등의 기능을 통해 개발 워크플로우를 효율화합니다.

제한 사항 및 도구 비교

  • NeoVim과의 호환성 문제와 사이드바 파일 탐색 시 마우스 클릭 의존성은 해결 과제입니다.
  • Terax의 에이전트는 코드와 파일 작업에 국한되어 있으며 터미널 창 제어는 불가능합니다.
  • CMUX는 터미널 전체 시스템 제어 및 멀티 에이전트 작업에 유리하고 Terax는 터미널 기반 코딩과 결과 확인에 최적화되어 있습니다.

현재 1.0 미만 버전으로서 일부 단축키 미지원, 폰트 확대 문제, X-Frame-Options 오류 등이 존재합니다. 하지만 개인 개발자가 구축한 결과물로서 기업 수준의 제품인 Warp와 유사한 성능을 보이며, 용도에 따라 CMUX와 차별화된 사용성을 제공합니다.

Community Posts

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

Write about this video