상세 컨텐츠

본문 제목

맥북 한 대로 AI 개발팀 굴리기 (3) — Agent Office와 삽질 모음

AI

by mingoon.com 2026. 10. 28. 11:42

본문

반응형

시리즈: 멀티 에이전트 하네스 구축기
1편: 설계와 작업 흐름
2편: 사용량 관리와 모델 배치
3편: Agent Office와 삽질 모음 (이 글)

 

1편에서 하네스의 뼈대를, 2편에서 사용량 관리를 다뤘다. 마지막 편은 이 하네스를 "보이게" 만든 대시보드 Agent Office와, 2주 동안 겪은 삽질을 정리한다.


1. Agent Office: 에이전트들이 일하는 걸 보는 사무실

하네스가 커지니 텍스트 로그만으로는 무슨 일이 일어나는지 알기 어려웠다. 그래서 OpenCode 서버 API와 하네스 상태 파일을 읽어서 픽셀 아트 사무실로 그리는 대시보드를 만들었다. 파이썬 서버 하나와 HTML 파일 하나로 되어 있고, 맥 안에서만 열린다(127.0.0.1:4097).

Agent Office 구조 — 여러 곳을 읽어 서버가 2초마다 모으고, 화면은 그 결과만 그린다

캐릭터와 사무실

캐릭터 17명이 OmO 에이전트와 하나씩 짝지어져 있다. 일하는 중이면 책상에 앉아 타이핑하고, 하위 에이전트를 부르면 그 캐릭터가 걸어온다. 말풍선에는 지금 하는 일과 동작이 뜬다. 막히면 말풍선이 빨갛게 바뀐다.

사무실 위쪽 벽에는 서버실 랙이 있다. provider별(OA·NV·GG·OR·OP)로 칸이 나뉘어 있어서 어디서 몇 개씩 돌고 있는지, 한도에 걸린 곳은 어디인지 한눈에 보인다.

작업 중인 사무실 — 왼쪽 책상에서 일하는 에이전트와 말풍선, 오른쪽 휴게실에서 대기 중인 캐릭터들, 위쪽 벽의 서버실 랙

작업 기록 패널

작업을 누르면 오른쪽에 작업 기록 패널이 열린다. 에이전트의 생각, 도구 호출, 하위 에이전트 대화, 텔레그램 대화를 시간순으로 볼 수 있다. 하위 에이전트(리뷰어 등)의 대화는 접힌 블록으로 들어가고, 진행 중이면 새 메시지가 오는 대로 붙는다.

작업 기록 패널 — 최종 보고의 검증 결과, 교차 리뷰 판정, 남은 이슈, STATUS 줄까지 한 화면에서 본다

업무 흐름도

사무실 아래에는 업무 흐름도가 있다. OmO 프롬프트와 하네스 규칙에서 "누가 누구에게 언제 일을 넘기는지"를 뽑아 다이어그램으로 그린 것이다. 오늘 실제로 일어난 지시 횟수를 겹쳐 보여 주고, 지금 진행 중인 지시는 선이 흐르는 애니메이션으로 표시한다. 아래 줄은 /product 명령으로 도는 제품 파이프라인(기획 → 디자인 → 기술 설계 → 개발 → QA → 문서화)인데, 단계마다 사람 승인이 걸려 있다.

업무 흐름도 — 역할별 칸과 지시·자문·리뷰 선, 오늘 쓰인 지시 횟수, 지금 일하는 칸은 빨간 테두리

PIP 모드

PIP 모드(단축키 P)로 사무실을 작은 창으로 띄워 다른 앱 위에 겹쳐 둘 수 있다. 코딩하면서 구석에 띄워 두면 에이전트들이 일하는 게 계속 보인다.

⚙ 설정 패널

⚙ 설정 패널(단축키 S)은 왼쪽에서 슬라이드로 나오고, 두 칸으로 나뉜다.

  • 왼쪽 칸: 캐릭터별 역할과 모델 순서
  • 오른쪽 칸: provider·모델 배지와 Codex 기준(평소·완화 %)

오른쪽 배지를 왼쪽 캐릭터 줄에 끌어다 놓으면 모델 순서가 바뀐다. 칩을 끌어서 순서를 바꾸거나 밖으로 끌어내 빼면 된다. 저장하면 OmO 설정 파일을 주석을 그대로 둔 채 해당 배열만 고친다. 백업을 남기고, 하네스 저장소에 커밋까지 한다. Claude 계열과 금지한 모델은 아예 배지로 나오지 않는다.

⚙ 설정 패널 — 왼쪽은 캐릭터별 모델 순서 칩, 오른쪽은 Codex 기준과 provider별 모델 배지
저장을 누르면 — 검사, 백업, 주석 보존 교체, 무료 프로필 동기화, 커밋까지 한 번에

사용량 카드

오른쪽에는 사용량 카드가 있다. CODEX 카드에는 5시간·주간 사용률과 전환 기준선이 표시된다. 그 아래 다른 PROVIDER 카드는 실제로 쓰는 provider만 보여 주는데, 공식 조회가 안 되는 값에는 [추정] 배지를 단다. 자세한 건 2편에 적었다.


2. 삽질 모음

블로그에 쓰려고 보니 이게 제일 쓸모 있을 것 같다.

증상 원인 해결
작업은 도는데 OmO 에이전트가 안 보이고 build만 일함 OmO 플러그인 설치가 며칠째 깨져 있었고, OpenCode 기본 에이전트가 대신 일하고 있었음 플러그인 버전 고정 + "OmO 안 뜸" 감시 알림 추가
30분째 응답 없음 도구가 권한 승인(ask) 창을 기다림. 사람이 없는 하네스라 영원히 안 끝남 승인 대기로 멈춘 도구를 감지해 중단하고 다시 지시
에이전트가 git push를 함 환경변수 접두사나 git -C … 형태로 push 금지 규칙을 우회 금지 패턴을 *git push*, *git -C * push* 등으로 넓힘
/clone 한 빈 저장소에서 작업 실패 빈 저장소엔 main 커밋이 없어 브랜치를 갈라낼 수 없음 clone 직후 빈 초기 커밋 생성
추가 요청이 "폴더가 이미 있다"로 실패 작업 폴더를 지운 직후 플러그인이 빈 폴더를 다시 만듦 찌꺼기면 치우고, 파일이 있으면 이름만 바꿔 비켜 두기
리뷰어가 "같은 실패 반복 ×4" 알림 git diff --no-index는 차이가 있으면 종료 코드 1을 냄. 실패가 아님 diff·grep·test류의 exit 1은 실패로 세지 않음
진행 중인 리뷰가 작업 기록에 안 보임 하위 세션을 오래된 것부터 12개만 가져오고 있었음 최근 30개를 시간순으로
OpenCode 재시작할 때마다 브라우저가 열림 opencode web은 브라우저를 자동으로 띄움 opencode serve로 교체
Go DeepSeek가 400 오류 Go 워크스페이스 개인정보 설정이 지역 제한이었음 콘솔에서 Global로 변경
Codex 5시간 한도가 순식간에 사라짐 한도 직후 재시도가 매번 새 세션으로 처음부터 시작 같은 세션 재개 + 실행당 80%p 일시정지
캡처 이미지 때문에 토큰이 폭증 레티나 2배 해상도 스크린샷을 에이전트가 여러 장 열어 봄 캡처 도구 bin/shot 기본 1배, 필요한 장만 열라는 규칙

 

한 가지 더. 크로스 세션 메모리 도구(claude-mem)를 붙였다가 뺐다. 저장된 내용이 하네스 이야기뿐이라 쓸모가 없었고, 인증 문제까지 있었다. 도구를 늘리기 전에 "정말 필요한가"를 먼저 따져야 한다는 교훈을 얻었다.


3. 정리하며

2주 동안 느낀 점은 이렇다.

  • 에이전트 자체보다 "에이전트를 둘러싼 것"이 훨씬 손이 많이 간다. 작업 격리, 완료 판정, 사용량, 권한, 알림, 복구 같은 것들이다. 모델 성능은 매달 좋아지지만 이 부분은 직접 만들어야 한다.
  • 사람이 없는 상황을 전제로 설계해야 한다. 승인 창, 질문, 재시도는 사람이 옆에 있으면 문제가 안 된다. 하지만 밤새 혼자 도는 하네스에서는 전부 멈춤 버튼이 된다.
  • 보이면 고칠 수 있다. 사무실 화면을 만든 뒤로 "에이전트가 지금 뭘 하는지 모르겠다"는 일이 사라졌다. 버그도 화면에서 먼저 발견했다.
  • 마지막 결정은 사람이 한다. 합치기와 push는 끝까지 사람 몫으로 남겼다. 그래서 마음 편히 맡길 수 있다.

남은 숙제

  • OpenCode Go 사용량을 추정이 아니라 정확히 보기 (공식 API가 나오면)
  • 새로 넣은 무료 모델들의 응답 속도 검증 (느리면 자동으로 안 넘어감)
  • DeepSeek ZDR 정책이 매달 갱신되는지 확인하기
  • 하네스 자체를 다른 맥에 그대로 옮기는 복원 절차 다듬기 (RESTORE.md는 있다)

다음에는 이 하네스로 실제로 만든 것들을 소개할 생각이다. e-ink 리더용 홈 화면 앱과 그 이미지 서버가 첫 번째다.

 

이전 글: (2) 사용량 관리와 모델 배치

처음부터: (1) 설계와 작업 흐름

 

 

※ 이 글은 AI의 도움을 받아 작성했고, 작성자가 내용을 직접 검토한 뒤 올렸다.

 

관련글 더보기

댓글 영역