HERDR 문서

지원하는 에이전트

Herdr는 한 번에 둘 이상의 코딩 에이전트를 실행하도록 제작되었습니다. 각 에이전트는 셸, 로그, 프롬프트 및 실행 중인 프로세스를 그대로 유지하면서 실제 터미널 패널에 유지됩니다. Herdr는 에이전트가 포함된 패널을 추적하고 해당 상태를 탭과 작업 공간으로 롤업하며 모든 터미널을 직접 폴링하는 대신 주의가 필요한 패널로 바로 이동할 수 있도록 해줍니다.

스크립트나 다른 에이전트에서 에이전트를 조정하려면 에이전트 자동화을 참조하세요.

지원하는 에이전트

에이전트는 두 가지 방법 중 하나로 Herdr 지원을 받습니다. Herdr가 이를 지원하거나 Herdr 자체를 지원합니다. 어느 쪽이든 각 에이전트의 idle, working 및 blocked 상태를 보고 에이전트가 완료되거나 필요할 때 알림을 받고 스크립트에서 기다릴 수 있습니다.

다른 에이전트는 여전히 Herdr 패널에서 정상적으로 실행됩니다. 그들은 단지 일반 터미널로 나타납니다.

Herdr의 지원

Herdr는 이러한 에이전트를 인식하고 그들이 화면에 그리는 내용에서 상태를 읽습니다. Herdr 서버를 다시 시작한 후 동일한 세션을 다시 얻으려면 herdr integration install <name>과의 에이전트 통합을 설치하십시오. 각각의 설치 내용은 외부 도구 연동을 참조하세요.

대리인통합메모
Claude Codeclaude
Codexcodex
GitHub 코파일럿 CLIcopilot
커서 에이전트 CLIcursor
OpenCodeopencode상태도 보고
Pipi상태도 보고
OMPomp국가는 통합을 요구한다
Droiddroid
데빈 CLIdevin
키미 코드 CLIkimi상태도 보고
킬로 코드 CLIkilo상태도 보고
헤르메스 에이전트hermes
Qoder CLIqodercli
퀀 코드qwen
레타코드lettaCLI 설치만 가능
마스트라코드mastracode국가는 통합을 요구한다
그록 CLIgrok
반중력 CLIantigravity-cli
Amp없음상태만
키로 CLI없음상태만
마키없음상태만
제미니 CLI없음상태만, 덜 테스트됨
Cline없음상태만, 덜 테스트됨

에이전트가 지원함

이 에이전트는 자신의 상태를 Herdr에 보고합니다. 설치할 것이 없습니다. Herdr 패널에서 실행하세요.

재개 명령도 보고하는 에이전트는 Herdr 서버가 다시 시작된 후 동일한 세션으로 돌아옵니다.

코딩 에이전트를 구축하는 경우 에이전트에 Herdr 지원 추가에서 이 목록에 참여하는 방법을 보여줍니다. Herdr의 CLI 또는 소켓에 대한 몇 번의 호출이 필요하며 Herdr에 대한 변경은 없습니다.

상태 작동 방식

Herdr가 지원하는 에이전트의 경우 Herdr는 각 패널에서 에이전트의 프로세스를 찾고 스크롤한 부분이 아닌 패널의 실시간 하단을 읽습니다. 감지 매니페스트의 규칙은 해당 화면이 idle, working 또는 blocked을 의미하는지 결정합니다. 통합이 상태도 보고하는 경우 Herdr는 화면을 읽는 대신 해당 보고서를 사용합니다.

Herdr를 지원하는 에이전트의 경우 에이전트 자체 보고서에 따라 상태가 결정됩니다.

VM 및 샌드박스 래퍼

Linux 및 macOS에서 호스트 표시 래퍼는 Herdr의 실제 에이전트 프로세스를 숨길 수 있습니다. Herdr에게 사용할 기존 에이전트 화면 매니페스트를 알려주려면 래퍼 명령에 HERDR_AGENT=<agent>을 설정하세요. 예를 들어 Linux에서는 HERDR_AGENT=claude fence -- claude을 실행하고 macOS에서는 HERDR_AGENT=claude nono run --profile claude-code -- claude를 실행합니다. 힌트는 해당 포그라운드 프로세스에만 적용됩니다. VM 또는 컨테이너 내부에만 설정하면 Herdr가 이를 볼 수 없습니다. 상속된 모든 전경 프로세스가 해당 에이전트로 처리되어야 하는 경우가 아니면 전역으로 내보내지 마세요.

일부 제한된 Linux 런타임은 터미널 포그라운드 프로세스 그룹을 노출하지 않습니다. 기본 감지를 사용할 수 없는 경우 직접 하위 프로세스 그룹 추론을 선택하려면 HERDR_PROCESS_DETECTION=child-groups을 사용하여 Herdr 서버를 시작합니다. 기본 감지는 여전히 선호되며 기본 native 모드는 이 추론을 수행하지 않습니다. 옵트인 모드는 최선의 노력입니다. 새로운 백그라운드 작업이 포그라운드 작업으로 오해될 수 있습니다. 변수는 서버에서 읽혀지며 다시 시작해야 합니다. 접속 클라이언트가 아닌 원격 서버 환경에서 설정하세요.

차단된 상태

차단된 탐지는 화면 매니페스트 에이전트에 대해 의도적으로 엄격합니다. Herdr는 실시간 하단 버퍼 스냅샷이 알려진 시각적 승인, 질문 또는 권한 UI와 일치하는 경우에만 blocked을 표시합니다. Codex 이외의 알려진 에이전트와 일치하는 매니페스트 규칙이 없는 경우 Herdr는 idle으로 폴백하고 설명 출력에서 ​​해당 폴백을 default_known_agent_idle_fallback로 레이블 지정합니다. Codex는 제목과 작곡가가 활성 턴 동안과 응답 후에 동일하게 보일 수 있기 때문에 unknown로 대체됩니다.

다른 에이전트의 경우 Herdr가 해당 화면 모양을 학습할 때까지 특이한 새 프롬프트가 처음에 blocked 대신 idle로 표시될 수 있습니다. 오분류는 표시되는 상태와 대기에만 영향을 미칩니다. Herdr가 입력을 보내거나 파괴적인 조치를 취하도록 해서는 안 됩니다.

Codex의 경우 표시되는 스피너 또는 실시간 활동 타이머는 working을 설정할 수 있고, 표시되는 승인 프롬프트는 blocked을 설정할 수 있습니다. Codex의 터미널 제목에 스피너가 표시되지 않으면 Herdr는 idle를 보고합니다. Codex는 규칙이 일치하지 않는 경우에만 unknown을 유지합니다. 예를 들어 Codex가 터미널 제목을 설정하지 않고 idle을 기다리거나 완료가 시간 초과될 수 있는 경우입니다. 관리형 시작은 프롬프트를 수락할 수 있는 시기를 결정하기 위해서만 초기 작성기를 사용합니다. 그 관찰은 차례 상태를 바꾸지 않습니다.

탐지 매니페스트

번들 매니페스트는 Herdr 내부에 있습니다. Herdr는 또한 herdr.dev에서 원격 매니페스트 업데이트를 확인하고 Herdr를 다시 시작할 필요 없이 유효한 에이전트별 규칙 업데이트를 자동으로 적용합니다. 원격 매니페스트는 Herdr의 상태 디렉터리에 저장됩니다. 백그라운드 원격 매니페스트 검사를 비활성화하려면 [update] manifest_check = false을 설정합니다.

로컬 재정의는 플랫폼 구성 디렉터리의 원격 또는 번들 매니페스트를 대체할 수 있습니다.

텍스트
~/.config/herdr/agent-detection/<agent>.toml

로컬 재정의는 항상 승리합니다. 로컬 재정의 없이 Herdr는 캐시된 원격 매니페스트와 실행 중인 바이너리의 번들 매니페스트 간에 최신 호환 매니페스트를 사용합니다. 디버그 빌드에서는 동일한 구성 도우미가 herdr-dev과 같은 개발 디렉터리를 사용할 수 있습니다. 잘못된 재정의 파일은 경고와 함께 무시되고 Herdr는 해당 에이전트에 대해 캐시된 원격 또는 번들 매니페스트로 대체됩니다.

Herdr는 에이전트에 대한 원격 매니페스트 패치 감지 규칙을 식별하는 방법을 이미 알고 있습니다. 완전히 새로운 에이전트를 추가하려면 프로세스 감지, 레이블 및 통합 동작을 위한 Herdr 바이너리 업데이트가 필요합니다.

실행 중인 서버는 시작 시 활성 매니페스트를 메모리에 로드합니다. 자동 원격 매니페스트 업데이트는 새 규칙이 작성된 후 해당 메모리 내 캐시를 다시 로드합니다. herdr server update-agent-manifests을 실행하여 원격 매니페스트 업데이트를 즉시 가져오고 실행 중인 서버를 다시 로드하세요. 로컬 재정의를 수동으로 편집한 후 Herdr를 다시 시작하거나 herdr server reload-agent-manifests을 실행하여 실행 중인 서버에 파일을 적용합니다.

패널이 잘못된 상태를 표시하는 경우 herdr agent explain을 사용하세요.

bash
herdr agent explain <target>
herdr agent explain --file screen.txt --agent codex --json

Live explain은 실행 중인 서버에 의해 평가되므로 활성 매니페스트 캐시를 반영합니다. 설명 출력에는 에이전트, 최종 상태, 전체 수명 주기 기관에서 화면 감지를 건너뛰었는지 여부, 매니페스트 소스 및 버전, 캐시된 원격 버전, 로컬 재정의 섀도잉, 원격 업데이트 상태, 일치하는 규칙, 표시되는 증거 플래그, 평가된 규칙에 대한 일치자 및 화면 영역의 근거, 기록 뷰어의 업데이트 건너뛴 이유, 일치하는 규칙이 없을 때 유휴 대체 이유가 표시됩니다.

Herdr는 외부 터미널 환경으로 tmux 내부에서 실행될 수 있습니다. 에이전트 감지는 Herdr 패널 내에서 시작된 tmux 세션을 검사하지 않습니다. 쉘 프레임워크가 Herdr 내부에 tmux를 자동으로 입력하는 경우 Herdr는 tmux을 그 뒤에 있는 에이전트 대신 패널 프로세스로 간주합니다.

TMUX이 설정 해제될 때마다 쉘이 자동으로 tmux에 연결되는 경우 Herdr 패널을 제외하도록 시작 규칙을 업데이트하세요. Herdr 패널 내부에서 외부 tmux 세션을 다시 연결하면 터미널이 반복적으로 축소되어 깜박일 수 있습니다. tmux를 실행하기 전에 기존 조건에 HERDR_ENV 검사를 추가하세요.

zsh
if [[ -z ${TMUX:-} && ${HERDR_ENV:-} != 1 ]]; then
  tmux new-session -A -s my-session
fi

상태 롤업

사이드바는 상태를 위쪽으로 굴립니다.

응답을 기다리는 에이전트는 해당 패널, 탭 및 작업 공간을 차단된 것처럼 보이게 합니다. 작업 중인 에이전트는 작업 공간을 활성화된 것처럼 보이게 합니다. 완료된 에이전트는 사용자가 볼 때까지 계속 표시됩니다.

이것이 주요 Herdr 워크플로우입니다. 여러 에이전트를 시작하고, 병렬로 작업하도록 하고, 사이드바를 사용하여 결정이 필요한 프로젝트, 아직 실행 중인 프로젝트, 검토할 준비가 된 프로젝트를 확인합니다.

맞춤 에이전트 라벨

표시할 에이전트 대상의 이름을 바꿀 수 있습니다.

bash
herdr agent rename w1:p1 reviewer
herdr agent rename reviewer --clear

대상은 고유한 라이브 에이전트 이름이나 현재 에이전트를 호스팅하는 패널 ID를 허용합니다. 단말기 ID와 에이전트 종류 라벨은 허용되지 않습니다.

맞춤 상태 라벨

통합은 수명 주기 상태를 의미 상태로만 보고합니다. 패널 메타데이터 토큰을 사용하여 별도로 디스플레이 사용자 정의를 추가합니다.

bash
herdr pane report-agent w1:p1 \
  --source custom:indexer \
  --agent docs-bot \
  --state working


herdr pane report-metadata w1:p1 \
  --source custom:indexer-display \
  --token summary=indexing

state은 대기, 알림 및 롤업을 제어합니다. summary 토큰은 표시 전용이며 에이전트 사이드바 행에서 $summary로 사용될 수 있습니다.

에이전트 사이드바 행은 terminal_title 또는 terminal_title_stripped을 선택할 수도 있습니다. 둘 다 기본 행에 나타나지 않습니다. 첫 번째는 최신 안전 표준화 OSC 0/2 터미널 제목을 보여줍니다. 두 번째는 인식된 선행 활동 또는 스피너 글리프 하나와 뒤따르는 공백을 제거합니다. Herdr는 서버에서 이러한 값을 소유합니다. 콜드 재시작 시 일시적이며 메타데이터 제목 및 의미 에이전트 상태와 독립적으로 유지됩니다. 따라서 Spinner 애니메이션은 제거된 텍스트가 동일하게 유지될 때 패널 업데이트를 생성하지 않고 원시 제목을 업데이트할 수 있습니다.

에이전트에게 직접 연결

전체 Herdr UI 대신 현재 터미널을 하나의 에이전트 터미널에 연결합니다.

bash
herdr agent attach reviewer

ctrl+b q로 분리하세요. ctrl+b ctrl+b와 함께 리터럴 ctrl+b을 보냅니다.

마우스 휠로 스크롤하거나 일반 페이지 위로/페이지 아래로 스크롤합니다. 일반 입력은 맨 아래로 다시 점프합니다.

다른 직접 연결 클라이언트가 이미 입력을 소유하고 있는 경우 --takeover을 사용하세요.

bash
herdr agent attach reviewer --takeover

에이전트가 아닌 터미널에 대해 동일한 직접 연결 동작을 원할 경우 herdr terminal attach <terminal_id>을 사용하십시오.

원문의 설명을 한국어로 옮겼습니다. 명령어·설정 키·API 이름과 코드 예제는 그대로 유지합니다. 번역 안내
한국어 설명과 명령어를 함께 검색합니다ESC 닫기