Herdr의 터미널 UI는 작업을 확실히 처리한다. Shepi는 그 작업을 Mac에서 더욱 쾌적하게 만든다.
요약
Shepi는 Herdr TUI의 네이티브 Mac 클라이언트로, 여러 AI 코딩 에이전트가 동시에 수행하는 복잡한 터미널 작업을 데스크톱 환경에서 통합 관리할 수 있게 합니다. 이 도구는 작업 상태, 진행 상황, 그리고 인간의 판단이 필요한 지점을 한눈에 보여주며, 사용자가 다른 앱을 사용 중일 때도 macOS 알림으로 에이전트의 활동을 알려줍니다.
핵심 포인트
- 여러 AI 코딩 에이전트의 세션을 데스크톱에서 실시간 통합 관리 가능합니다.
- 터미널과 Shepi 간 작업 세션이 양방향으로 끊김 없이 공유됩니다.
- 에이전트가 판단을 요구할 때 상황, 선택지, 결과를 정리한 질문 카드를 제공받습니다.
- macOS 알림 기능을 통해 다른 앱 사용 중에도 에이전트의 상태를 인지할 수 있습니다.
공식 웹사이트: shepi.app
여러 AI 코딩 에이전트(AI coding agent)를 동시에 구동할 때 어려운 점은 단순히 작업 지시만은 아닙니다. 로컬에서 API를 변경하는 에이전트, 테스트를 확인하는 에이전트, 서버에서 데이터를 처리하는 에이전트 등입니다. 누가 아직 작업을 진행 중인지, 누가 우리의 응답을 기다리고 있는지, 여러 번 터미널로 돌아가서 확인할 필요가 생깁니다.
제가 만든 Shepi는 Herdr의 네이티브 Mac 클라이언트입니다. Herdr TUI와 동일한 공간(space), 탭(tab), 에이전트를 실시간으로 공유하며, 간체 중국어, 영어, 일본어를 지원합니다. 데스크톱 전용의 별도 세션을 만드는 것이 아니기 때문에 현재 작업 내용을 옮길 필요가 없습니다. Herdr가 AI 코딩 에이전트의 터미널 세션을 유지하고, Shepi는 태스크, 진행 상황, 결과물, 사람의 판단이 필요한 장면을 한눈에 볼 수 있는 데스크톱 진입점 역할을 합니다.
Shepi와 Herdr TUI는 동일한 Herdr 서버에 연결되어 같은 공간, 탭, 에이전트를 실시간으로 공유합니다. 터미널에서 시작한 세션은 Shepi에 나타나고, Shepi에서 시작한 것은 터미널에서도 볼 수 있습니다. 두 가지를 동시에 사용할 수 있습니다. 이동(migration)이나 복사도 필요 없으며, 데스크톱만을 위해 별도의 세트 구성을 만들 필요가 없습니다.
Claude Code, Codex, OpenCode, Gemini CLI, Cursor, Copilot CLI 등은 계속해서 완전한 실시간 터미널에서 작동합니다. 회전하는 표시는 작업 중임을 나타내고, 빈 링(ring)은 대기 상태를 의미하며, 상태는 문자로도 표시됩니다. 입력이 필요한 영역(pane)은 밝은 카드 형태로 되어 있습니다. 창을 열거나 TUI로 돌아가더라도 계속 이어지는 것은 같은 작업입니다.
공간, 에이전트의 상태, 실시간 터미널을 하나의 창에 담다.(가이드 원본 이미지)
에이전트가 배포(deploy), 삭제(delete), 설치(install) 등의 확인을 요구하며 멈추면, 사이드바, 페인 헤더, 상태 표시줄이 호박색(amber)으로 변합니다. 에이전트가 조작 정보를 전달했을 때는 무엇을 실행하고 싶은지까지 확인할 수 있습니다. 사이드바를 닫아도 배너가 표시되며, 다른 앱을 사용 중일 때는 macOS 알림으로 어떤 에이전트가 멈췄고 얼마나 작업했는지 알 수 있습니다. '확인' 버튼을 통해 그 자리로 돌아갈 수 있습니다. 소리 역시 Herdr와 같은 타이밍에 울리며, 원격(remote) 연결도 대상입니다. 출력물을 지켜보는 것이 아니라 다른 일에 집중할 수 있도록 하고 싶습니다.
판단이 필요한 태스크가 배경에서 떠오르다.(가이드 원본 영상)
여기서 요청하면 에이전트는 상황, 선택지, 그리고 각각을 선택했을 경우의 결과를 정리한 질문 카드를 내놓을 수 있습니다. 어느 페인에 있든 선택할 수 있으며, 자유롭게 답변을 작성할 수도 있습니다. 응답은 해당 에이전트에게 직접 전달됩니다. 페이지를 열거나, 이름 아래에 진행 상황을 보고하거나, 자신의 상하좌우로 테스트나 로그 페인을 열 수도 있습니다. 열린 페인에는 소속(belonging)이 표시되며 키보드 포커스를 빼앗지 않습니다. 원격에서도 마찬가지입니다. 긴 출력물 속에서 진입점을 찾는 대신, 확인 과정을 작업 근처에 배치할 수 있습니다.
상황을 이해한 후 다음 것을 선택한다. 자신의 언어로도 답변할 수 있다.(가이드 원본 이미지)
작업의 성격에 따라 단계를 나누는 것이 더 자연스러울 때가 있습니다. 에이전트가 작업을 완료하면, 인수인계용 프롬프트(prompt)를 남기고 현재 페인을 닫은 후, 같은 장소에서 새로운 에이전트에게 다음 태스크를 맡길 수 있습니다. 나중에 시작하거나, 다른 에이전트의 완료 후에 실행하는 것도 가능합니다. 이 예정은 머신 위에서 작동하기 때문에 Shepi를 닫아도 계속되지만, 사람의 대응이 필요해지면 멈춰서 기다립니다. 준비하고 싶은 것은 명확한 다음 작업 지점이지, 개발 과정에 인간의 판단이 필요 없게 된다는 전제는 아닙니다.
'아직 작업 중'이라는 것만으로는 진행 정도를 알 수 없습니다. 에이전트는 Shepi에 계획(plan)을 갖도록 하여 이름 아래에 현재 단계, 상태 옆에 총 작업 시간을 표시할 수 있습니다. 단계에 포인터를 두거나 클릭하면 전체 단계, 진행률 바(progress bar), 현재 항목, 각 단계별 소요 시간 등을 전개하여 확인할 수 있습니다. 창을 닫았다가 다시 열어도 이 진행 상황은 남아있습니다. 먼저 현재 위치를 파악한 후, 출력을 전부 읽어야 할지 판단할 수 있습니다.
현재 단계는 사이드바에. 전체 계획과 소요 시간은 펼쳐서 확인할 수 있다.(가이드 원본 이미지)
결과를 확인할 때는 에이전트의 요약만 읽는 것이 아니라, 코드와 대조해 보고 싶을 때가 있습니다. Shepi에서는 로컬 및 원격 프로젝트에서 직전 커밋 이후의 미커밋 변경 사항을 확인할 수 있습니다. 상태 표시줄이나 프리픽스에 이어서 d를 눌러 차이점(diff)을 열고, 병렬 보기 또는 단일 열 중 읽기 쉬운 방식을 선택할 수 있습니다. Esc 키로 원래 페인으로 돌아갑니다. 여기서 하는 작업은 '열람'이며, 스테이징이나 코드 편집이 아닙니다. 그 이후의 조작은 사용자의 워크플로우에 맡길 수 있습니다.
에이전트가 실제 변경 사항과 비교하여 설명합니다. (가이드 원본 이미지)
태스크가 서버에서 실행된다면, 기존 키를 사용하여 Shepi 내에서 SSH 머신을 추가할 수 있습니다. 호스트를 입력하면 Herdr가 연결하고, 해당 머신은 전용 헤더로 사이드바에 추가됩니다. 그 아래에는 스페이스와 에이전트가 나열되며, 각 스페이스에는 대기 중, 작업 중, 완료, 유휴 상태의 수가 표시됩니다. 로컬에서 페이지를 수정하든 원격에서 데이터를 처리하든, 머신이 다르다는 이유만으로 별도의 창 그룹을 관리할 필요가 없도록 하고 싶습니다.
앱 내에서 SSH 머신을 추가하고 로컬 작업과 함께 볼 수 있습니다. (가이드 원본 이미지)
에이전트가 API를 수정한 후, 직접 테스트를 실행해 보고 싶은 경우가 있습니다. 버그 조사 중에는 로그를 계속 추적해야 할 때도 있습니다. Shepi에서는 가로 또는 세로로 실제 셸(real shell)을 분할하여 열고, 태스크 옆에서 테스트, 로그 추적, 커맨드를 통한 PR 생성 등을 수행할 수 있습니다. 새로운 페인은 현재 레이아웃 안에 확장됩니다. 별도의 터미널을 찾거나 자신의 확인용 커맨드를 에이전트 입력에 섞어 넣을 필요가 없습니다. 함께 일한다면, 보는 것뿐만 아니라 직접 손을 움직일 여지 또한 중요합니다.
에이전트 옆의 실제 셸에서 스스로 결과를 확인할 수 있습니다. (가이드 원본 비디오)
여러 에이전트가 나열되어 있을 때, 출력을 한 줄 놓치는 것보다 다른 곳에 입력해 버리는 것이 더 신경 쓰입니다. Shepi는 현재 입력 중인 페인을 밝은 카드 형태로 표시합니다. 깜빡이는 커서는 그곳에만 있으며, 헤더에는 에이전트 이름도 표시됩니다. 다른 페인은 포커스를 잃어도 어두워지지 않아 출력을 비교할 수 있습니다. 클릭으로 이동하거나, 프리픽스에 h, j, k, l을 사용하여 옆으로 이동할 수 있습니다. 이는 주의를 기울이는 위치와 키가 도달하는 위치를 일치시키기 위함입니다.
작업 중에 분할과 이동을 반복하다 보면 페인의 크기가 조금씩 불균형해집니다. 세밀한 비율을 설계할 필요는 없고, 각 태스크에 비슷한 수준의 읽기 좋은 공간만 되돌리고 싶을 때도 있습니다. 프리픽스에 이어서 =를 누르면, 그전까지의 분할이나 조정과 관계없이 현재 탭의 페인을 균등하게 만들 수 있습니다. 창 정리 작업을 빠르게 끝내고, 본래 업무와 별개로 레이아웃 구성에 시간을 쓰지 않도록 하고 싶습니다.
긴 로그를 읽거나 하나의 결과에 집중하고 싶을 때는 프리픽스에 이어서 z를 누르면 해당 페인이 창 전체 크기로 확장됩니다. 글자 위치는 유지되고 다른 페인은 닫히지 않고 배경에 남아 있습니다. 모서리 표시, 탭, 헤더가 확대 중임을 알려줍니다. 동일한 키나 복원 클릭으로 원래 레이아웃으로 돌아갈 수 있습니다. 일시적으로 집중하기 위해 작업 공간을 분산시키고 나중에 다시 배열할 필요가 없습니다.
다른 페인을 배경에 남겨둔 채 현재 페인만 확대합니다. (가이드 원본 비디오)
모델 전환, 개발 서버 재시작, 정해진 커맨드 순차 입력은 하나의 매크로로 묶을 수 있습니다. 단순히 글자를 계속 치는 것뿐 아니라, 이전 결과가 화면에 나타나는 것을 기다린 후에 진행할 수도 있습니다. 예를 들어 모델 메뉴가 나온 후 이동 및 확정을 할 수 있습니다. 현재 에이전트에게 생성과 시도를 요청하고 키를 배울 수 있습니다. 변경, 목록 보기, 삭제도 요청할 수 있고, 직접 설정에 기록할 수도 있습니다. 로컬이든 원격이든, 정해진 반복 작업을 맡기고 판단의 주의는 남겨둘 수 있습니다.
반복 입력을 현재 페인에서 실행합니다. (가이드 원본 비디오)
페이지를 보여달라고 요청하면 에이전트는 터미널 옆에 페이지를 열어줍니다. 로컬 개발 서비스든, 원격 서버가 제공하는 페이지든 모두 대상입니다. 직접 조작할 수 있으며, 헤더에는 뒤로 가기, 앞으로 가기, 새로고침, 외부 브라우저에서 열기 진입점이 있습니다. 페이지 입력란에 커서가 있어도 Shepi의 프리픽스는 유효하며, Esc 키로 키보드 조작을 창으로 되돌릴 수 있습니다. 페이지 확인부터 터미널 작업으로 돌아갈 때마다, 각각이 어느 앱에 있는지 찾을 필요가 없습니다.
개발 서버와 페이지를 나란히 놓고 완성된 결과를 확인합니다. (가이드 원본 이미지)
조사 중인 로그는 담당 에이전트 근처에, 테스트는 비교하기 쉬운 곳에 배치하고 싶습니다. 페인의 헤더를 잡으면 놓기 전에 배치 결과를 확인할 수 있습니다. 다른 페인과 교체하거나 그 위아래 좌우에 둘 수 있습니다. 다른 탭으로 이동하는 것도, 탭 위에서 기다리며 정확한 위치를 선택하는 것도, '+' 버튼을 눌러 전용 탭을 만드는 것도 가능합니다. 이 모든 과정 동안에도 터미널은 계속 작동합니다. 작업 공간 정리 때문에 실제 작업을 중단할 필요가 없습니다.
작업에 맞춰 페인을 재배열할 수 있습니다. (가이드 원본 영상)
작업이 어느 머신, 어느 스페이스에 있는지 매번 기억하기는 어렵습니다. Shepi의 검색 기능은 머신, 스페이스, 에이전트, 페인, 최근 출력 전반을 가로질러 로컬과 SSH 연결 지점을 같은 진입점에서 찾을 수 있게 합니다. 단어 1~2개를 입력하고 어순에 신경 쓰지 않고 조합하여 검색한 후, Return 키를 눌러 결과로 이동할 수 있습니다. 작업 이름이든, 방금 본 출력의 일부든, 기억하는 단서를 통해 작업 장소로 돌아갈 수 있습니다.
작업 위치와 출력 중인 단서를 같은 검색으로 찾을 수 있습니다. (가이드 원본 이미지)
정교한 검색이 필요하지 않고, 잠시 다른 곳을 둘러본 후 직전 페인으로 돌아가고만 싶을 때도 있습니다. Cmd E는 머신을 넘나드는 최근 페인을 최신순으로 나열하고, 방금 떠났던 것을 처음부터 선택할 수 있게 합니다. Return 키를 누르면 돌아갈 수 있습니다. 검색과 마찬가지로 문자를 입력하여 목록을 좁힐 수도 있습니다. 여러 작업을 오가할 때 작은 진입점만 있으면 사이드바나 탭을 매번 구분하지 않고도 잠시 벗어났던 곳에서 복귀할 수 있습니다.
최근 페인 목록에서 방금 있던 곳으로 (가이드 원본 영상)
Shepi를 열어둔 채 자리를 비우면 모든 알림을 그 자리에서 볼 수는 없습니다. 그 사이에 완료된 작업, 사람의 대응이 필요한 사항, 에이전트의 질문 등은 검색 옆에 있는 받은 편지함(Inbox)에 남아있고, Dock에도 건수가 표시됩니다. 항목 1개를 클릭하면 해당 페인으로 바로 이동하며, 그 페인을 확인한 후에 알림이 사라집니다. 돌아왔을 때 기다리고 있던 것부터 받아볼 수 있도록. 모든 터미널을 둘러보며 부재 중에 무슨 일이 일어났는지 추측할 필요가 없도록 만들고 싶습니다.
놓친 일은 여기에 남아, 돌아와서 대응할 수 있습니다. (가이드 원본 이미지)
Shepi를 종료하거나, 창을 닫거나, Herdr TUI를 닫는 것이 서버상의 에이전트를 중단시키지 않습니다. 원격 서버의 작업은 이 Mac이 절전 모드(sleep)에 들어가도 계속됩니다. Shepi를 다시 열면 원래 작업 장소로 돌아갈 수 있습니다. 도중에 연결이 끊겼을 경우, 그 사이에 변경된 페인 수도 상태 표시줄(status line)에서 알 수 있습니다. 창은 진입점일 뿐, 작업이 존재하는 조건이 아닙니다. 자리를 떠나도, 돌아와서 계속할 수 있습니다.
Shepi는 Herdr의 접두사(prefix)와 키 바인딩을 계승하며, 기본값은 Control-B입니다. 마우스로도 조작할 수 있습니다. 터미널의 직접적인 사용감을 유지하면서 병렬 작업, 원격 연결, 사람과의 대응이 필요한 상황을 명확하게 하고 싶습니다. 여러 AI 코딩 에이전트를 사용하거나 Mac과 서버를 오가는 사람들의 작업 환경에 초점을 맞추고 있습니다.
앱 전체가 간체 중국어, 영어, 일본어를 지원합니다. Mac의 언어를 따르도록 설정할 수도 있고, 설정에서 직접 선택할 수도 있으며, 전환은 재부팅 없이 즉시 반영됩니다. 메뉴, 설정, 질문 카드, 메시지, 알림 등은 번역되지만, 터미널 내부의 에이전트, 명령어(command), 출력 내용은 그대로 유지됩니다. 웹사이트와 사용자 가이드도 동일한 3개 언어를 지원하여, 설명을 읽을 때나 조작할 때 같은 언어를 사용할 수 있습니다.
Shepi는 macOS 15 이상, Herdr 0.9.3 이상이 필요하며, Apple silicon과 Intel Mac 모두를 지원합니다. 본 제품은 제가 독립적으로 개발한 것이며, Herdr의 공식 앱은 아닙니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기