herdr‑cockpit · orch 작업을 보는 Herdr 레이아웃과 모드

기간  — 현재

orch로 여러 에이전트를 돌릴 때 진행 상황이 잘 보이도록 만든 Herdr 레이아웃과 모드입니다. 지휘하는 메인 세션, 계정과 머신에 흩어진 작업 에이전트 세션, 제공자별 남은 사용량을 한 화면에서 봅니다. orch 없이 일반 CLI 세션에도 쓸 수 있습니다.

계정⁠·⁠머신별 세션과 사용량을 한 화면에서 확인

GoJavaScriptSwiftHerdr.appgopsutil

  • Codex⁠·⁠Claude⁠·⁠Gemini 남은 사용량과 초기화 시각, CPU⁠·⁠RAM을 보여 주는 상단 막대
  • 머신⁠·⁠스페이스⁠·⁠탭⁠·⁠창 트리와 메인 세션별 작업 에이전트 수를 보여 주는 에이전트 목록
  • 이 컴퓨터의 메인 세션 터미널을 격자로 모아 바로 입력하는 hub
  • 말이나 글로 한 지시를 알맞은 메인 세션에 전달하는 nexus와 한국어 음성 입력
  • 연결이 끊긴 원격 머신의 탭 숨기기와 복구
  • 원격 머신마다 사용량과 창 정보를 모으는 Go 수집 프로그램

제공자마다 다른 로그인과 호출 제한

문제
Codex, Claude, Gemini의 사용량을 읽으려면 제공자마다 다른 로그인과 호출 제한을 다뤄야 했습니다.
해결
인증, 요청, 캐시, 재시도 간격을 머신마다 도는 Go 수집 프로그램에 모았습니다. 화면은 JSON만 받아 표시하고 인증 정보를 다루지 않습니다.

머신을 바꾸는 사이 늦게 온 응답

문제
머신을 바꾸는 동안 이전 머신의 응답이 늦게 도착하면 지금 보는 머신의 사용량을 덮어쓸 수 있었습니다.
해결
응답을 머신별로 따로 보관하고, 지금 고른 머신이 아닌 응답은 화면에 반영하지 않게 했습니다. 머신을 빠르게 바꿔도 다른 머신의 사용량이 섞여 보이지 않습니다.

엉뚱한 세션으로 갈 수 있던 지시

문제
음성이나 짧은 글로 지시하면 여러 메인 세션 중 어디로 보낼지 모호할 수 있었습니다.
해결
모델이 이 컴퓨터의 메인 세션 목록만 보고 대상을 고릅니다. 확신도가 0.6보다 낮으면 후보를 보여 주며 묻고, 실패하거나 20초를 넘기면 아무것도 보내지 않습니다.

겹쳐 들어온 화면 배치 변경

문제
여러 메인 세션을 한 격자에 모아 보는 화면에서, 세션 목록과 배치 변경이 비동기로 겹칠 수 있었습니다. 늦게 끝난 변경이 이미 지난 화면을 다시 띄울 수 있었습니다.
해결
레이아웃 쓰기를 한 줄로 세워 차례로 처리하고, 열린 화면 상태를 한곳에서 공유하게 했습니다. 세션 목록이 바뀌면 500ms를 기다렸다가 한 번에 반영합니다. 늦게 도착한 쓰기가 지난 화면을 다시 고르지 않습니다.