ShellBridge
SSH 터미널과 SFTP 파일 작업을 한 화면에 묶는 서버 작업실
로컬 에이전트와 사이드 프로젝트 운영으로 잦아진 서버 작업을 위해, SSH 터미널·SFTP 파일 브라우저·원격 파일 편집을 하나의 데스크톱 워크스페이스로 묶는 Tauri 앱입니다.
업데이트 2026년 7월 5일

왜 만들었나
로컬 에이전트와 사이드 프로젝트를 함께 쓰다 보면 서버를 만지는 빈도가 자연스럽게 늘어납니다. 코드를 수정하고, 빌드하고, 파일을 올리고, 로그를 보고, 설정을 바꾼 뒤 다시 재시작하는 흐름이 반복됩니다. 단순 SSH 터미널은 명령을 실행하기에는 충분하지만, 원격 파일을 찾고 열고 수정하고 다시 업로드하는 과정까지 맡기기에는 손이 자주 끊깁니다.
Windows에는 MobaXterm처럼 터미널과 파일 작업을 함께 제공하는 도구가 있지만, ShellBridge가 필요로 하는 범위는 훨씬 좁고 선명했습니다. SSH와 SFTP 중심의 개인 서버 작업만 빠르게 처리하고 싶은데, 무거운 올인원 프로그램은 목적보다 과했고 macOS에서는 비슷한 흐름을 편하게 쓰려면 선택지가 적거나 유료인 경우가 많았습니다.
ShellBridge는 그 사이에 놓는 작은 다리입니다. 서버를 거대한 관리 콘솔로 다루기보다, 프로젝트 옆에 붙어 있는 조용한 원격 작업 공간으로 다루기 위한 앱입니다.
핵심 기능
- 저장된 세션을 탭처럼 전환하며 사용하는 SSH 터미널
- ANSI 컬러, 커서, 텍스트 선택을 지원하는 터미널 출력
- 원격 디렉터리를 탐색하는 SFTP 파일 브라우저
- 파일·폴더 생성, 삭제 확인, 경로 복사, 드래그 앤 드롭 업로드
- UTF-8 원격 텍스트 파일을 열고 수정한 뒤 서버에 다시 저장하는 내장 에디터
- 같은 이름의 파일이 여러 경로에서 열릴 때 경로를 함께 보여주는 편집 흐름
- 검색, 하이라이트, 결과 이동, 외부 변경 충돌 경고
- 이미지 파일은 텍스트 에디터 대신 내장 이미지 뷰어로 확인
- 접속 서버의 OS, 업데이트 수, CPU, RAM, 디스크 사용량을 보여주는 상태 카드
- 비밀번호와 개인키 인증, passphrase, known_hosts 검증, OS 키체인 기반 자격 증명 저장 정책
기술 스택
ShellBridge는 Tauri 2 기반 데스크톱 앱입니다. UI는 React 19와 TypeScript, Vite로 구성하고, 터미널 렌더링은 xterm.js를 사용합니다. 상태 관리는 Zustand를 쓰며, 원격 접속과 파일 작업은 Rust 백엔드에서 SSH2/SFTP 흐름으로 처리합니다. 자격 증명은 세션 파일에 민감 정보를 남기지 않고 OS Credential Store 또는 Keychain 쪽에 맡기는 방향으로 설계했습니다.
사용 흐름
- 서버 세션을 선택하고 접속합니다.
- 중앙 터미널에서 명령을 실행합니다.
- 오른쪽 SFTP 브라우저에서 원격 파일을 찾습니다.
- 필요한 텍스트 파일을 열어 바로 수정합니다.
- 저장, 업로드, 다운로드, 재시작 명령을 같은 워크스페이스 안에서 이어갑니다.
이 흐름은 특히 로컬 에이전트가 만든 산출물을 서버로 옮기거나, 배포 후 로그와 설정을 빠르게 확인해야 할 때 손을 덜어줍니다. 터미널 앱과 SFTP 앱을 따로 열고 같은 접속 정보를 반복 입력하는 대신, 하나의 세션에서 서버 작업을 이어갈 수 있습니다.
하지 않으려는 것
ShellBridge는 모든 서버 관리 기능을 담은 거대한 콘솔을 목표로 하지 않습니다. RDP, VNC, X11, Kubernetes 관리, 팀 계정, 클라우드 동기화, 유료 기능, 원격 Git GUI 같은 범위는 초기 목표에서 제외합니다.
처음의 기준은 단순합니다. 접속하고, 탐색하고, 단일 파일을 주고받고, 원격 텍스트 파일을 안전하게 고치는 흐름이 끊기지 않는 것. ShellBridge는 그 작은 반복을 가볍게 만드는 앱입니다.