Herdr는 백그라운드 서버에서 패널을 계속 실행합니다. 터미널 클라이언트는 나중에 분리했다가 다시 연결할 수 있습니다.
로컬, SSH 및 herdr --remote 워크플로의 경우 Herdr 작업 방법을 참조하세요.
연결 해제 후 다시 연결
ctrl+b q로 클라이언트를 분리합니다. 패널과 에이전트가 계속 실행됩니다. herdr을 다시 실행하여 다시 연결하세요. herdr server stop를 사용하여 세션과 해당 패널을 중지합니다.
Herdr는 서버 전체 정지 후 다시 시작하면 저장된 세션 형태를 복원합니다. 분리, 서버 다시 시작, 화면 기록 재생, 에이전트 자체 세션 복원 및 라이브 핸드오프 이후의 상태에 대해서는 세션 상태 및 복원을 참조하세요.
명명된 세션
독립적인 Herdr 서버를 원할 경우 명명된 세션을 사용하십시오.
herdr session list
herdr session attach work
herdr session attach side-project
herdr session stop work
herdr session delete side-project명명된 세션에는 자체 패널, 탭, 작업 공간, 소켓 및 런타임 상태가 있습니다. 여전히 동일한 전역 설정 파일을 공유합니다.
세션을 삭제할 때 대소문자를 포함하여 herdr session list로 표시되는 정확한 이름을 사용하세요. 대소문자를 구분하지 않는 파일 시스템에서 herdr session delete foo은 Foo이라는 세션 삭제를 거부합니다.
스크립트에는 --json을 사용하십시오.
herdr session list --json
herdr session stop work --json
herdr session delete side-project --json저장된 SSH 기기
하나의 Herdr 창에 로컬 및 여러 SSH 시스템을 유지하려면 시스템 연결을 참조하세요. 이 가이드에서는 설정, 전환, 재연결, 설정 및 원격 자동화를 다룹니다. 저장된 시스템을 제거하면 클라이언트 연결만 끊어집니다. 해당 컴퓨터의 세션은 중지되지 않습니다.
SSH를 통한 원격 연결
Herdr 작업 방법은 연결 경로를 비교합니다. 서버에 SSH로 연결하고 tmux 스타일 경로에 대해 herdr를 실행하거나, 다중 시스템 작업을 위해 저장된 SSH 시스템을 사용하거나, 로컬 시스템에서 SSH를 통해 연결합니다.
herdr --remote workbox
herdr --remote ssh://you@server:2222이 모드에서는 원격 서버가 실행 중인 패널을 소유하고 SSH를 통해 터미널 콘텐츠와 세션 상태를 보냅니다. 귀하의 지역 Herdr는 사이드바, 메뉴 및 테마를 포함하여 UI를 그립니다. 클라이언트가 로컬로 실행되기 때문에 Herdr는 이미지를 원격 임시 파일에 복사하고 해당 경로를 붙여넣어 이미지 클립보드 붙여넣기와 같은 로컬 데스크톱 기능을 원격 세션에 연결할 수 있습니다.
기본적으로 herdr --remote은 해당 연결에 대해 로컬 Herdr 키 설정을 사용합니다. 이는 원격 서버의 구성이 다른 경우에도 로컬 머슬 메모리를 유지합니다. 로컬 키 설정을 편집한 후 UI의 reload config 작업을 사용하여 분리하지 않고 적용하세요. 대신 원격 서버 구성을 원할 경우 --remote-keybindings server를 사용하세요. 로컬 사용자 정의 명령 키 설정은 전송되지 않습니다. 해당 명령은 원격 호스트에서 실행되기 때문입니다.
반복 대상의 경우 SSH 구성을 사용하십시오.
Host workbox
HostName server.example.com
User you
Port 2222그런 다음 다음을 사용하여 연결합니다.
herdr --remote workbox원격 연결 및 저장된 SSH 시스템은 x86_64 및 aarch64의 Linux 또는 macOS 호스트 또는 x86_64의 Windows 호스트에 연결하는 Linux, macOS 및 Windows 로컬 클라이언트를 지원합니다. 안정적인 엔드포인트 생성을 지원하면 로컬 및 원격 버전이 일치할 필요가 없습니다. Linux 및 macOS 호스트에서 Herdr는 원격 PATH에 이미 있는 호환 가능한 herdr을 선호한 다음 공통 직접, Homebrew, mise 및 Nix 프로필 설치 경로를 확인합니다. Windows 호스트에서 Herdr는 PATH 및 활성 관리 릴리스를 확인합니다. 호환되는 바이너리가 없으면 대화형 실행에서 바이너리를 설치하거나 업데이트하라는 메시지를 표시합니다. 호스트를 수정하는 대신 비대화형 실행이 실패합니다. Linux 및 macOS 설치에서는 ~/.local/bin/herdr을 사용합니다. Windows 설치에서는 전체 Windows 패키지와 해당 앱-로컬 ConPTY 런타임을 사용합니다. ~/.local/bin이 원격 PATH에 없으면 Herdr는 설치 후 경고합니다.
기본적으로 herdr --remote은(는) 먼저 SSH 구성을 포함하는 임시 SSH 구성을 통해 원격 설정과 브리지를 실행한 다음 대체 연결 유지 설정을 추가합니다. 기존 사용자 연결 유지 설정이 승리합니다. Linux 및 macOS 클라이언트는 연결 재사용을 위해 개인 연결별 제어 소켓도 사용합니다. Windows OpenSSH는 그렇지 않습니다. Herdr가 생성한 구성이나 제어 소켓 없이 일반 ssh을 사용하려면 [remote].manage_ssh_config = false을 설정하세요.
원격 연결은 일반적인 OpenSSH 인증을 사용합니다. 대상이 암호 프롬프트를 표시할 수 없는 비대화형 셸, 스크립트, CI 작업 또는 모바일 터미널에서 암호로 보호된 키를 사용하는 경우 먼저 ssh-agent에 키를 로드합니다.
ssh-add
herdr --remote workbox원격 인증이 실패하는 경우 먼저 ssh workbox을 사용하여 일반 SSH 액세스를 확인한 다음 herdr --remote workbox을 다시 실행하세요.
버전 차이만으로는 실행 중인 원격 서버가 교체되거나 다시 시작되지 않습니다. 원격 연결은 필요한 호환성이나 분리된 데몬 지원이 부족한 서버를 중지하기 전에 묻습니다. 저장된 기기의 경우 여기에는 기기 연결에 설명된 표면 및 상태 확인 기능도 포함됩니다. 기본 대답은 아니요입니다. 서버를 중지하면 해당 패널 프로세스가 종료됩니다. 일회성 업그레이드가 필요할 때 실험적 라이브 핸드오프를 선택하려면 --handoff를 전달하세요.
herdr --remote workbox --handoff먼저 서버에 SSH로 접속하고 거기에서 herdr을 실행하면 Herdr는 서버에서 완전히 실행되며 일반 터미널 텍스트 붙여넣기 이상으로 로컬 데스크톱 클립보드에 액세스할 수 없습니다.
Linux 및 macOS 호스트의 경우 Herdr는 플랫폼이 일치할 때 현재 로컬 바이너리를 복사할 수 있습니다. Homebrew, mise 및 Nix 설치의 경우 플랫폼이 다르거나 Windows 호스트의 경우 https://herdr.dev/latest.json에서 현재 클라이언트 버전에 일치하는 릴리스 자산을 다운로드합니다.
로컬 빌드 또는 사용자 지정 패키지의 경우 원격 연결을 실행하기 전에 HERDR_REMOTE_BINARY을 로컬 파일 경로로 설정하세요. Linux 또는 macOS 대상에는 기본 Herdr 실행 파일을 사용하고 Windows 대상에는 완전한 herdr-windows-x86_64.zip 패키지를 사용합니다.
HERDR_REMOTE_BINARY=target/release/herdr herdr --remote workbox원격 명명된 세션
--remote과 함께 --session을 사용하여 원격 호스트의 명명된 세션에 연결합니다.
herdr --remote workbox --session agents터미널 직접 부착
전체 Herdr 연결은 전체 작업 공간 UI를 엽니다. 직접 연결은 현재 터미널에서 하나의 서버 소유 터미널을 엽니다.
직접 터미널 연결은 기본 Windows가 아닌 Linux 및 macOS에서 사용할 수 있습니다.
에이전트 대상별로 연결:
herdr agent attach reviewer터미널 ID로 연결:
herdr terminal attach term_abc123직접 연결은 현재 렌더링된 터미널 상태를 스트리밍한 다음 라이브 ANSI 프레임을 스트리밍합니다. 입력은 해당 터미널로 바로 이동합니다.
ctrl+b q로 분리하세요. ctrl+b ctrl+b와 함께 리터럴 ctrl+b을 보냅니다.
단 하나의 쓰기 가능한 직접 연결 클라이언트만이 터미널에 대한 입력 및 크기 조정을 소유합니다. 기존 소유자를 바꾸려면 --takeover을 사용하세요.
herdr terminal attach term_abc123 --takeover렌더링된 터미널 바이트만 필요한 타사 브리지의 경우 읽기 전용 터미널 세션 관찰자를 사용하세요.
herdr terminal session observe w1:p1 --cols 120 --rows 40줄 바꿈으로 구분된 JSON terminal.frame 레코드를 base64 ANSI 바이트로 출력한 다음 서버가 스트림을 닫을 때 terminal.closed 레코드를 출력합니다. 여러 관찰자가 입력, 크기 조정, 스크롤 또는 소유권 인수 없이 동일한 터미널을 볼 수 있습니다.
대화형 브리지의 경우 쓰기 가능한 터미널 세션 컨트롤러를 사용합니다.
herdr terminal session control w1:p1 --takeover --cols 120 --rows 40제어 모드는 동일한 줄바꿈으로 구분된 프레임 레코드를 출력하고 stdin에서 줄바꿈으로 구분된 JSON 명령을 읽습니다. terminal.input은 텍스트 또는 base64 바이트를 보내고, terminal.resize은 컨트롤러 뷰포트를 변경하고, terminal.scroll는 연결된 뷰포트를 스크롤하고, terminal.mouse은 마우스 보고를 활성화한 애플리케이션에 셀의 마우스 이벤트를 보내고, terminal.release는 컨트롤러를 닫습니다. 한 번에 하나의 컨트롤러만 입력을 소유하고 크기를 조정할 수 있습니다.