TUI
anchor alias
TUI
TUI는 Hermes의 최신 터미널 프런트엔드입니다. Classic CLI와 같은 Python 런타임을 사용하므로 동일한 에이전트, 세션, 슬래시 명령을 더 깔끔하고 빠르게 반응하는 화면에서 사용할 수 있습니다.
Hermes를 대화형으로 사용할 때 권장되는 실행 방식입니다.
실행
# TUI 실행
hermes --tui
# 최신 TUI 세션 재개. 없으면 최신 classic 세션으로 fallback
hermes --tui -c
hermes --tui --continue
# 세션 ID 또는 제목으로 특정 세션 재개
hermes --tui -r 20260409_000000_aa11bb
hermes --tui --resume "my t0p session"
# 소스에서 직접 실행. TUI 기여자를 위한 prebuild 생략 모드
hermes --tui --dev
env var를 통해 활성화할 수 있습니다.
export HERMES_TUI=1
hermes # now uses the TUI
hermes chat # same
Classic CLI도 계속 사용할 수 있습니다. CLI 인터페이스에 설명된 슬래시 명령, quick command, 스킬 사전 로드, personality, 여러 줄 입력, interrupt는 TUI에서도 동일하게 작동합니다.
왜 TUI
- 즉시 표시되는 첫 화면 - 앱 로딩이 끝나기 전에도 배너가 먼저 그려져 시작 중 터미널이 멈춘 것처럼 보이지 않습니다.
- 논블로킹 입력 - 세션이 준비되기 전에도 메시지를 입력하고 큐에 넣을 수 있습니다. 첫 프롬프트는 에이전트가 온라인이 되는 즉시 전송됩니다.
- 풍부한 오버레이 - 모델 선택, 세션 선택, 승인, clarification 프롬프트가 inline 흐름 대신 모달 패널로 표시됩니다.
- 라이브 세션 패널 - 도구와 스킬 초기화 상태를 확인할 수 있습니다.
- 마우스 친화적 선택 - SGR inverse 대신 균일한 배경으로 강조해 터미널의 일반 복사 gesture로 복사할 수 있습니다.
- Alternate-screen 렌더링 - 스트리밍 중 깜박임을 줄이고 종료 후 scrollback이 지저분해지는 것을 막습니다.
- 작성기 편의 기능 - 긴 snippet,
Cmd+V/Ctrl+V텍스트 붙여넣기, 클립보드 이미지 paste, bracketed paste 안전 처리, 이미지/파일 경로 첨부 정규화를 지원합니다.
동일 skins 및 personalities 적용. /skin ares, /personality pirate 및 UI 리페인트를 사용하여 중간 세션을 전환합니다. Skins & Themes customizable 키의 전체 목록에 대해 하나가 TUI를 클래식에 적용하는 TUI - TUI는 배너 팔레트, UI 색상, 신속한 glyph / 색상, 세션 디스플레이, 완료 메뉴, 선택 bg, tool_prefix 및 help_header를 영광.
요구 사항
- Node.js ≥ 20 - TUI는 Python CLI에서 시작된 하위 프로세스로 실행됩니다.
hermes doctor는 이것을 검증합니다. - TTY - 고전적인 CLI, piping stdin 또는 비동기 환경에서 실행하면 단일 채권 모드로 돌아갑니다.
첫 출시 Hermes는 ui-tui/node_modules (일회, 몇 초)에 TUI의 노드 의존성을 설치합니다. 초기 출시가 빠릅니다. 새로운 헤르메스 버전을 당하면 TUI 번들은 소스가 dist보다 더 새로운 때 자동으로 재건됩니다.
외부 prebuild
미리 구축 된 번들 (Nix, 시스템 패키지)를 발송하는 배포는 Hermes를 다음과 같이 할 수 있습니다.
사이트맵
디렉토리는 dist/entry.js를 포함해야합니다.
키빈딩
Keybindings는 Classic CLI 정확히 일치합니다. 유일한 행동 다름:
- **Mouse 드래그 ** 획일한 선택 배경으로 텍스트를 강조합니다.
- **
Cmd+V/Ctrl+V** 첫 번째는 정상적인 텍스트 페이스트를 트리밍하고, OSC52/native 클립보드에 다시 떨어졌고, 클립보드 또는 붙여진 페이로드가 이미지로 해결할 때 이미지 첨부 파일을 마지막으로 이미지 첨부합니다. - **
/terminal-setup**는 로컬 VS Code / Cursor / Windsurf 터미널 바인딩을 설치하여Cmd+Enter및 macOS의 undo/redo parity를 더 잘 처리합니다. - Slash autocompletion는 설명이있는 플로팅 패널로 열리고 인라인 드롭 다운이 아닙니다.
Ctrl+X- 누적된 메시지가 강조될 때 (이제가 여전히 실행되었는 동안), 큐에서 삭제.Esc삭제 없이 편집 및 불쾌한 취소.- **
Ctrl+G/Ctrl+X Ctrl+E** - 멀티 라인 / 롱 프롬프트 구성을위한$EDITOR의 현재 입력 버퍼를 엽니 다. 저장 및 내보내기로 콘텐츠를 다시 프롬프트로 보냅니다.
슬래시 명령
모든 슬래시 명령은 변경되지 않습니다. 몇 가지는 TUI 소유 - 그들은 부유 한 출력을 생산하거나 인라인 패널보다 오버레이로 렌더링합니다.
| 사령 | TUI 행동 |
|---|---|
/help | 분류된 명령, arrow-key navigable으로 오버레이 |
/sessions | 모달 세션 피커 - 미리보기, 제목, 토큰 총, 이력서 인라인 |
/model | 모달 모델 피커 제공 업체, 비용 힌트 포함 |
/skin | 라이브 미리보기 - 테마 변경은 검색으로 적용합니다 |
/details | 토글동스툴콜 상세 |
/usage | 리치 토큰 / 비용 / 컨텍스트 패널 |
/agents (alias /tasks) | 관찰력 오버레이 - kill/pause controls, per-branch cost / token / file rollups, turn-by-turn history |
/reload | 재읽는 ~/.hermes/.env를 실행하는 TUI 프로세스로 새로 추가된 API 키는 다시 시작 없이 효과를 가져다 줍니다 |
/mouse | config.yaml의 display.mouse_tracking에 대한 런타임 추적/오프 토글 마우스 트래킹 |
다른 모든 슬래시 명령 (설치된 스킬, 빠른 명령, 그리고 성격 견인 포함)은 클래식 CLI와 동일하게 작동합니다. 슬래시 명령 참조를 참조하세요.
LaTeX 수학 렌더링
TUI의 Markdown 파이프라인은 LaTeX 수학 인라인을 렌더링합니다. $E = mc^2$ 및 $$\frac{a}{b}$$는 Raw TeX 소스 대신 Unicode-formatted math로 렌더링됩니다. 인라인 및 블록 수학을 위해 작동; 지원되지 않은 구문은 코드 스팬에 감싸이는 리터럴 TeX를 보여주기 위해 돌아갑니다.
이것은 항상-에 - 구성 할 아무것도. Classic CLI는 익지않는 TeX를 지킵니다.
가벼운 터미널 탐지
TUI 자동 감지 라이트 터미널과 빛 테마에 따라 교환합니다. 3개의 층에 있는 탐지 일:
HERMES_TUI_THEMEenv var - 가장 높은 우선 순위. 가치:light,dark, 또는 원료 6-char 배경 육 (예:ffffff,1a1a2e).COLORFGBGenv var - 고전적인 "내 배경 색상은 무엇입니까?" xterm-derived 터미널에 의해 사용되는 힌트.- OSC 11을 통해 터미널 배경 조사 -
COLORFGBG를 설정하지 않는 현대 터미널 (Ghostty, Warp, iTerm2, WezTerm, Kitty)에서 작동합니다.
터미널에 영구적으로 빛 테마를 원한다면:
사이트맵
Busy 지표 스타일
상태 막대기 바쁜 지시자는 pluggable 입니다 — 과태는 에이전트 일 도중 Hermes' kawaii 얼굴 팔레트를 매 2.5 초 자전합니다. 구성 또는 /indicator 슬래시 명령을 통해 다른 스타일을 선택합니다.
display:
tui_status_indicator: kaomoji # kaomoji | emoji | unicode | ascii
또는 불소: /indicator emoji (등). 일치한 glyph 폭을 가진 작풍 배 그래서 상태 막대기의 나머지는 교체에 지터가 아닙니다.
자동 이력서
기본적으로 hermes --tui는 신선한 세션을 시작합니다. 가장 최근의 TUI 세션에 다시 참여하려면 (단말 또는 SSH 연결이 예상대로 떨어지면 사용), 선택:
export HERMES_TUI_RESUME=1 # most-recent TUI session
# or:
export HERMES_TUI_RESUME=<session-id> # specific session
변수를 설정하거나 --resume <id>를 명시적으로 per-launch 기초에 삭제합니다.
상태 선
TUI의 상태 선은 즉시 에이전트 국가를 추적합니다:
| 현황 | 의미 |
|---|---|
starting agent… | 세션 ID는 라이브; 도구와 스킬은 여전히 온라인에 올린다. 입력 할 수 있습니다 - 메시지 큐 및 준비가되면 전송. · |
ready | 요원은 요원, 입수입니다. |
thinking… / running… | 에이전트는 도구가 아닌 이유입니다. |
interrupted | 현재가 취소되었습니다. |
forging session… / resuming… | 처음 연결 또는 --resume 핸디케이크. |
per-skin status-bar 색상과 임계 값은 고전적인 CLI와 공유됩니다. - Skins를 사용자 정의합니다.
상태 선은 또한 보여줍니다:
- git 분기 작업 디렉토리 —
~/projects/hermes-agent (docs/two-week-gap-sweep).git checkout가 사이드 터미널 (mtime-cached)에서git checkout가 실제 활성 지점을 반영하여 출시되었습니다. -Per-prompt elapsed time —⏱ 12s/3m 45s는 턴이 완료된 후⏲ 32s / 3m 45s에 얼어붙습니다. 첫번째 번호는 마지막 사용자 메시지부터 시간입니다; 두번째는 총 세션 내구입니다. 모든 새로운 프롬프트에 재설정.
구성
TUI는 모든 표준 헤르메스 구성을 존중합니다. ~/.hermes/config.yaml, 프로파일, 개인, 스킨, 빠른 명령, 자격 풀, 메모리 제공 업체, 도구 / 스킬 활성화. TUI-specific config 파일이 존재하지 않습니다.
특히 TUI 표면의 손전등:
사이트맵
실행 시간 toggles:
/details [hidden|collapsed|expanded|cycle]- 글로벌 모드 설정/details <section> [hidden|collapsed|expanded|reset]— 1개의 단면도를 삭제하세요 (구분:thinking,tools,subagents,activity)
기본 가시성
TUI는 턴을 스트림하는 per-section 디폴트에 대한 의견이 있습니다. chevrons의 벽 대신 라이브 성적:
thinking- 옵션. Reasoning 스트림 인라인으로 모델이 방출합니다.tools- 옵션. 도구 호출 및 결과 렌더링이 열립니다.subagents- 글로벌details_mode(아래에서 컬 됨) chevron 으로 default — 은밀한 을 유지한다.activity- **숨겨진 **. 주변 메타 (게이트웨이 힌트, 단자성 판사, 배경 알림)은 대부분의 일일 사용을위한 소음입니다. 제품 정보 실패 도구 행에 여전히 인라인을 렌더링; 주위 errors/warnings 표면은 모든 패널을 때 떠오릅니다 인기있는
Per-section 재정의s는 두 섹션의 기본값과
글로벌 details_mode. 레이아웃을 reshape에:
display.sections.thinking: collapsed- chevron에서 다시 생각display.sections.tools: collapsed- chevron 아래 도구 호출display.sections.activity: collapsed- 활동 패널을 뒤로 선택- 런타임에
/details <section> <mode>display.sections에서 명시적으로 설정하는 것은 기본적으로 승리하므로 기존 설정은 변경되지 않습니다.
세션
세션은 TUI와 고전적인 CLI 사이에 공유됩니다. — 둘 다 동일한 ~/.hermes/state.db에 쓰기. 세션을 시작할 수 있습니다. 세션 피커 표면은 소스 태그와 함께 두 소스에서 세션.
Lifecycle, 검색, 압축 및 수출에 대한 Sessions를 참조하세요.
클래식 CLI로 재생
hermes 출시 (--tui 제외) 클래식 CLI에 머물. 기계를 만들기 위해 TUI, 당신의 셸 단면도에 있는 HERMES_TUI=1를 놓으십시오. 돌아 가기 위해, 그것을 해제.
TUI가 실행 실패하면 (노 노드 없음, 누락 된 번들, TTY 문제), Hermes는 진단을 인쇄하고 다시 가을 - 당신이 갇히지 않는 것보다.
참조
- CLI 인터페이스 - 전체 슬래시 명령 및 키 바인딩 참조 (shared)
- Sessions - 이력서, 지점 및 역사
- Skins & Themes - 배너, 상태 표시 및 오버레이 테마
- Voice Mode - 인터페이스 모두에서 작업
- Configuration - 모든 구성 키