UStackUStack
Multitui favicon

Multitui

Multitui는 어떤 터미널 또는 TUI 프로그램이든 각각 독립된 네이티브 macOS 앱으로 변환해 주는 macOS 앱 팩토리입니다. 이를 통해 파일 시스템 보호, 전용 윈도우, 그리고 Finder와의 깊은 통합을 제공하며, 각 앱은 자체 샌드박스 안에서 동작합니다.

Multitui

Multitui란 무엇인가요?

Multitui란 무엇인가요?

Multitui는 터미널 기반 또는 TUI(text user interface) 프로그램을 독립 실행형 네이티브 macOS 애플리케이션으로 감싸서 실행할 수 있게 해 주는 macOS "앱 팩토리"입니다. 강력한 도구나 신뢰할 수 없는 코드를 메인 터미널에서 직접 실행하는 대신, 각각 하나의 .app 번들로 생성해 일반 Mac 앱처럼 아이콘, 윈도우, 최근 문서, 통합 기능을 갖게 만들 수 있으며, 세밀한 파일 시스템 샌드박싱의 이점을 함께 누릴 수 있습니다.

Multitui는 파워 유저, 개발자, 그리고 커맨드 라인 도구에 의존하는 모든 사용자를 위해 설계되었습니다. 기존 워크플로와 터미널 설정은 그대로 유지하면서, 쉘처럼 CLI 도구에 접근할 수 있도록 하되, 코드가 시스템에서 읽고 쓰고 삭제할 수 있는 범위에 보호 레이어를 추가합니다. 이 덕분에 AI 코딩 에이전트, 유틸리티, 집중형 TUI 앱을 실행하면서도 개발 환경이나 개인 파일을 위험에 빠뜨리지 않을 수 있습니다.

주요 기능

  • 어떤 터미널 도구든 나만의 macOS 앱으로
    TUI 및 커맨드 라인 프로그램을 전용 macOS 앱으로 바꿔 각자 고유한 .app 번들을 부여합니다. lazygit, htop, AI 코딩 에이전트 같은 도구에 또 하나의 터미널 탭 대신, 전용 윈도우와 아이콘을 줄 수 있습니다.

  • macOS sandbox-exec을 활용한 파일 시스템 샌드박싱
    Multitui는 내장된 sandbox-exec 프레임워크를 사용해 앱이 접근할 수 있는 범위를 제어합니다:

    • 삭제 작업에 대해 전역 기본 거부
    • 사용자 폴더(~)의 읽기 및 쓰기 기본 거부
    • 특정 경로나 프로젝트 폴더에 대한 선택적 허용 규칙
    • 신뢰하는 프로젝트 디렉터리에 대한 전체 읽기/쓰기 허용 옵션
    • 거부된 동작을 로그로 남겨, 어떤 것이 막혔는지 확인하고 선택적으로 허용
    • 의도적으로 제한을 우회하고 싶을 때 사용하는 "--dangerously-skip-permissions" 모드
  • 폴더 기반 & 파일 기반 앱
    본인 워크플로에 맞는 앱을 구성할 수 있습니다:

    • 폴더 기반 앱: 프로젝트 디렉터리를 열고 그 안에서 작업 (AI 코드 에이전트, lazygit, dua 등 도구에 적합)
    • 파일 기반 앱: Finder에서 문서를 더블 클릭해 커스텀 앱으로 열기 (nano, SQLite 도구, JSON 뷰어, 헥스 에디터 등과 잘 어울림)
  • 일급 macOS 통합
    생성된 각 앱은 네이티브 Mac 앱처럼 동작합니다:

    • Dock 아이콘 및 Spotlight 검색 지원
    • 네이티브 윈도우 관리 지원 (Rectangle, Magnet 등과 완벽 호환)
    • 최근 문서 메뉴 및 문서 기반 워크플로
    • 네이티브 탭 및 구성 가능한 툴바, 깔끔한 미니멀 툴바까지 지원
  • Finder 통합 및 파일 처리
    Finder에서 바로 콘텐츠를 실행하고 열 수 있습니다:

    • 빠른 접근을 위한 Finder 툴바 버튼
    • 오른쪽 클릭(컨텍스트 메뉴) 지원
    • Dock 아이콘으로 파일이나 폴더 드래그해서 열기
    • 특정 파일 형식이나 확장자의 기본 앱으로 등록
    • URL 스킴 지원 (예: claudecode://open?arg=/path/to/open)
  • 커맨드 라인 & 자동화 친화적
    생성된 각 앱은 프로그래밍 방식으로 실행할 수 있습니다:

    • MyApp.app /path/to/open처럼 커맨드 라인에서 실행
    • AppleScript 및 자동화 워크플로와 통합
    • 셸 스크립트, 런처, 서드파티 자동화 도구와 조합해 사용
  • 분리된 셸 히스토리 & 스니펫
    메인 셸 히스토리를 깔끔하게 유지하고 도구별로 집중할 수 있습니다:

    • 각 앱은 기본 셸과 분리된 자체 커맨드 히스토리를 유지
    • 자주 사용하는 명령을 앱 전용 스니펫으로 저장
    • 실험적인 명령과 일상적인 히스토리가 섞이는 것을 줄이고 노이즈 감소
  • AI 코딩 에이전트와 개발 도구에 최적화
    AI 에이전트와 코드 어시스턴트를 안전하게 실행할 수 있습니다:

    • Claude Code, Codex, Gemini 및 기타 코딩 에이전트를 위한 예제 프리셋 제공
    • 프로젝트 디렉터리 내부에서는 자유롭게 작업하게 하되 시스템의 나머지 영역 접근은 차단
    • 샌드박스 경로 밖에서의 실수로 인한 파일 삭제나 원치 않는 수정 방지
  • 바로 사용할 수 있는 예제 앱
    Multitui는 만들 수 있는 앱의 예시를 보여주는 다양한 샘플 앱을 제공합니다:

    • AI & 코드: Claude Code, Codex, Gemini, OpenCode(오픈 소스 코딩 에이전트)
    • 개발 도구: lazygit (Git TUI), dua (디스크 사용량 탐색기)
    • 파일 유틸리티: nano (텍스트 에디터), Harlequin (SQLite 인터페이스), jqp (jq 기반 JSON 뷰어), 헥스 뷰어, 마크다운 에디터
    • 시스템 유틸리티: top, htop, 네트워크 모니터, 배터리 사용량 모니터, Docker 관리(lazydocker) 등
  • CLI 도구로 만드는 메뉴 막대 위젯
    주기적으로 CLI 명령을 실행하고 그 결과를 표시하는 가벼운 메뉴 막대 앱을 만들 수 있습니다:

    • (예: 1.1.1.1 같은) 호스트에 대한 핑 지연 시간 표시
    • icanhazip.com과 같은 서비스를 통해 외부 IP 표시
    • wttr.in 같은 도구로 날씨 또는 온도 추적
  • 기존 터미널 워크플로 유지
    Multitui는 대체제가 아니라 추가 도구입니다. 일반적인 작업은 계속 iTerm2, Ghostty, Alacritty, Terminal.app 등을 사용하면서, 가장 중요한 도구만 전용 샌드박스 윈도우로 옮겨 사용할 수 있습니다.

Multitui 사용 방법

  1. 다운로드 및 설치

    • macOS용 Multitui 앱을 다운로드합니다 (macOS 15+용 네이티브 앱).
    • Applications 폴더로 드래그한 뒤, 다른 Mac 앱과 동일하게 실행합니다.
  2. 새 앱 설정 만들기

    • Multitui "앱 팩토리" 인터페이스를 엽니다.
    • 감싸서 실행하고 싶은 도구(예: AI 에이전트, lazygit, JSON 뷰어, 시스템 유틸리티 등)에 대한 새 앱 프로필을 생성합니다.
    • 앱이 실행할 명령 또는 실행 파일(executable)을 지정합니다.
  3. 앱 유형과 동작 방식 선택

    • 앱이 폴더 기반(프로젝트 디렉터리를 대상으로 동작)인지, 파일 기반(특정 파일을 여는 방식)인지 결정합니다.
    • Finder 더블 클릭, 드래그 앤 드롭, 툴바 버튼, URL 스킴 등 사용자가 콘텐츠를 여는 방식을 설정합니다.
  4. 샌드박스 규칙 구성

    • 샌드박스 설정 패널을 엽니다.
    • 쓰기/삭제 전역 거부, 사용자 폴더 접근 거부 등 안전한 기본값에서 시작합니다.
    • 프로젝트 디렉터리나 전용 작업 공간처럼 필요한 경로에 대해 선택적 허용 규칙을 추가합니다.
    • 앱이 어떤 경로에 접근하려 했는지 확인하기 위해 거부 로그를 참고하고, 필요에 따라 규칙을 다듬습니다.
  5. macOS 통합 커스터마이즈

    • 앱 이름, 아이콘, 외형을 설정합니다.
    • 문서 처리 방식, 최근 문서 동작, 툴바 스타일을 구성합니다.
    • 네이티브 탭을 지원할지, 혹은 심플한 미니멀 툴바 스타일을 사용할지 결정합니다.
  6. 앱 빌드 및 테스트

    • .app 번들을 생성합니다.
    • Finder, Dock, Spotlight에서 새 앱을 실행합니다.
    • 내부의 TUI/CLI 도구가 앱 윈도우 안에서 올바르게 동작하는지 확인합니다.
    • 일반적인 작업을 시도해 보고, 거부 로그를 확인해 샌드박스가 기대대로 동작하는지 검증합니다.
  7. 워크플로에 통합

    • 빠른 접근을 위해 Dock에 새 앱을 고정합니다.
    • 관련 폴더와 파일에 대해 Finder 툴바나 컨텍스트 메뉴에 추가합니다.
    • 커맨드 라인이나 URL 스킴을 사용해 특정 대상 경로를 프로그래밍 방식으로 열 수 있습니다.
    • 자주 사용하는 명령을 앱 내 스니펫으로 저장하고, 분리된 셸 히스토리를 활용해 집중된 워크플로를 구성합니다.

활용 예시

  1. 안전한 AI 코딩 에이전트 및 어시스턴트 실행
    Claude Code, Codex, Gemini 등 AI 코딩 에이전트를 안심하고 사용할 수 있습니다. Multitui를 활용해:

    • 에이전트가 특정 프로젝트 폴더 내에서만 읽기/쓰기 가능하도록 제한하고
    • 홈 디렉터리, SSH 키, 무관한 리포지토리 접근은 차단하며
    • 생성된 코드를 실험하면서도 시스템 다른 곳의 파일이 실수로 삭제되거나 수정되지 않도록 방지합니다.
      이는 AI의 강력함을 활용하면서 전체 파일 시스템 접근 권한을 넘기고 싶지 않은 개발자에게 특히 적합합니다.
  2. 집중형 개발을 위한 전용 TUI 앱
    자주 사용하는 TUI 도구를 독립 실행형 앱으로 변환해 보세요:

    • lazygit을 전용 Git 관리 앱으로 감싸기
    • dua를 디스크 사용량 탐색 앱으로 만들기
    • lazydocker를 활용한 Docker 관리 앱 빌드 각 도구가 개별 윈도우와 Dock 아이콘을 가지므로 터미널 탭 혼잡을 줄이면서, macOS의 윈도우 관리 및 단축키를 최대한 활용할 수 있습니다.
  3. 강력한 파일 및 데이터 인스펙터
    CLI 도구 기반의 파일 중심 앱을 만들어 데이터를 탐색·편집할 수 있습니다:

    • 텍스트 파일을 더블 클릭하여 여는 nano 기반 텍스트 에디터 앱
    • Harlequin 같은 도구를 활용한 SQLite 데이터베이스 인스펙터 앱
    • jqpjq를 이용한 JSON 뷰어
    • 저수준 파일 검사용 헥스 뷰어 또는 패치 도구 Finder 통합을 사용하면 파일을 더블 클릭하거나 오른쪽 클릭했을 때, 자동으로 커스텀 Multitui 앱으로 열리도록 설정할 수 있습니다.
  4. 시스템 모니터링 및 진단
    시스템 유틸리티를 항상 사용할 수 있는 독립된 모니터링 앱으로 전환하세요:

    • 전용 윈도우에서 실행되는 리소스 모니터(top, htop 등)
    • 네트워크 연결 모니터 및 트래픽 인스펙터
    • 배터리 사용량 또는 전력 소모 모니터 구성에 따라 글로벌 단축키나 "항상 위에" 옵션을 사용해, 작업 중에도 중요한 정보를 항상 볼 수 있게 유지할 수 있습니다.
  5. CLI 명령으로 만드는 메뉴 막대 상태 위젯
    Multitui를 이용해 단순한 CLI 출력 결과를 가벼운 메뉴 막대 위젯으로 바꿔 보세요:

    • 1.1.1.1 같은 호스트에 핑을 보내고 지연 시간을 메뉴 막대에 표시
    • icanhazip.com을 폴링해 현재 공인 IP 주소 표시
    • wttr.in으로 로컬 날씨나 온도 정보를 가져와 표시 이런 작고 집중된 앱을 사용하면 브라우저나 전체 터미널 창을 열지 않고도 실시간 상태를 확인할 수 있습니다.

자주 묻는 질문(FAQ)

1. Multitui는 어떤 플랫폼을 지원하나요?
Multitui는 macOS 15 이상에서 동작하는 네이티브 macOS 애플리케이션입니다. sandbox-exec, Dock 통합, Finder 확장, 네이티브 문서 처리 등 macOS 고유 기술을 활용하므로, Windows나 Linux용 버전은 제공되지 않습니다.

2. 기존 터미널이나 셸 설정을 바꿔야 하나요?
아니요. Multitui는 현재 워크플로를 대체하지 않고 보완하도록 설계되었습니다. 일반적인 작업은 계속 iTerm2, Ghostty, Alacritty, Terminal.app 등 원하는 터미널을 사용할 수 있습니다. Multitui는 AI 에이전트, TUI, 시스템 유틸리티 같은 선택된 도구에 전용 샌드박스 앱 윈도우를 제공할 때 가장 잘 활용됩니다.

3. Multitui는 파일 시스템을 어떻게 보호하나요?
Multitui는 macOS의 sandbox-exec을 사용해 생성된 각 앱이 수행할 수 있는 작업을 제한합니다. 기본적으로 모든 위치에서 삭제 작업을 거부하고, 사용자 폴더(~)에 대한 읽기/쓰기 접근을 차단합니다. 그런 다음 신뢰하는 경로(예: 특정 프로젝트 디렉터리)에 대해 선택적으로 허용 규칙을 추가할 수 있습니다. 거부된 작업은 모두 로그에 기록되므로 검토 후 필요에 따라 제한을 완화할 수 있습니다. 또한 의도적으로 전체 접근 권한이 필요할 때는 이러한 보호를 우회하는 명시적인 옵션도 제공합니다.

4. Multitui 앱으로 파일과 폴더를 직접 열 수 있나요?
네. Multitui는 Finder와 macOS 문서 처리 시스템과 통합됩니다. 다음과 같은 방식으로 사용할 수 있습니다:

  • 파일 핸들러로 등록한 경우, 파일을 더블 클릭해 커스텀 앱으로 열기
  • Finder 툴바 버튼 또는 오른쪽 클릭 컨텍스트 메뉴 항목 사용
  • 파일이나 폴더를 Dock 아이콘으로 드래그해서 열기
  • URL 스킴(예: claudecode://open?arg=/path/to/open)과 MyApp.app /path/to/open 같은 커맨드 라인 호출을 사용해 프로그래밍 방식으로 콘텐츠 열기

5. Multitui는 비개발자에게도 적합한가요?
Multitui는 주로 커맨드 라인 도구에 익숙한 기술 사용자와 파워 유저를 대상으로 설계되었습니다. 하지만 일단 앱이 만들어지고 나면, 비전문가도 생성된 .app 번들을 통해 터미널을 전혀 사용하지 않고 파일을 열거나 도구를 실행하고 메뉴 막대 위젯을 사용할 수 있습니다. 팀에서는 숙련된 사용자가 앱을 구성해 두고, 다른 구성원은 이를 일반 macOS 앱처럼 실행만 해서 쓸 수 있습니다.

Multitui | UStack