기본 콘텐츠로 건너뛰기

Hermes를 Slack 팀원으로 만들기: 헤르메스 연결부터 AI 동료 리서처 에이전트 추가까지

한 줄 요약: Mac에서 실행되는 Hermes Agent를 Slack에 연결하고, 별도의 딥 리서치 전문 에이전트 ‘리서’까지 추가해 사람과 AI 동료가 같은 채널에서 협업하는 구조를 만들었다.

이번에는 단순히 Slack에 챗봇 하나를 붙인 것이 아니다. ‘맥헬미’는 내 MacBook Air에서 실행되는 Hermes Agent에게 붙인 친근한 별명이다. ‘맥에서 일하는 헬미’라는 뜻으로, 지금 이 글을 함께 만들고 실제 작업을 수행하는 AI 에이전트이기도 하다. 이 맥헬미를 Slack의 정식 팀원처럼 연결하고, 이어서 딥 리서치 전담 동료 ‘리서’를 별도의 에이전트로 구성했다. 마지막에는 나와 맥헬미, 리서가 함께 일할 수 있는 협업 채널까지 만들었다.

먼저 사실관계부터 정확히 말하면 Slack 데스크톱 앱은 내가 Mac에 설치했다. 그다음 Slack 채널 생성, Hermes용 Slack App 구성, Gateway 연결, 사용자 허용 정책, 실제 메시지 왕복 검증은 맥헬미와 함께 자동화해 진행했다. 9월 10일 맥헬미 연결을 시작했고, 9월 11일에는 리서까지 독립 에이전트로 확장했다.

왜 터미널이 아니라 Slack이었나

Hermes는 터미널에서 강력하게 일하지만, 매번 터미널을 열어야 한다면 일상적인 협업 도구가 되기 어렵다. 내가 원한 것은 평소 사용하는 Slack에서 사람에게 말을 걸듯 AI 에이전트에게 요청하는 방식이었다.

  • DM에서는 맥헬미 (나의 헤르메스 닉네임)와 일대일로 대화한다.
  • 프로젝트 채널에서는 맥헬미를 멘션해 업무를 맡긴다.
  • 조사가 필요하면 리서를 멘션해 근거 수집과 교차 검증을 맡긴다.
  • 한 스레드 안에서 사람과 에이전트가 결과를 이어서 검토한다.
목표는 “Slack에서 답변하는 봇”이 아니라, 역할과 기억과 도구를 가진 AI 동료가 실제 업무 공간에 들어오는 것이었다.

1단계: 맥헬미용 Slack 공간 만들기

처음에는 맥헬미와 대화할 전용 공개 채널을 만들었다. 이름은 #mac-helmi로 정했다. 채널만 만든다고 Hermes가 들어오는 것은 아니다. Slack에서 독립적으로 보이는 앱과 Hermes를 연결해야 한다.

Hermes CLI로 Slack App Manifest를 생성했다. Manifest에는 앱의 이름과 설명, 봇 사용자, Slash Command, 필요한 이벤트 구독, Socket Mode 설정이 들어간다. 실제 작업에서 사용한 형태는 다음과 같다.

hermes slack manifest --agent-view \
  --name 'mac-helmi' \
  --description 'Local Hermes AI agent' \
  --write

생성된 Manifest를 Slack App 설정에 등록하고 워크스페이스에 앱을 설치했다. 이때 표시 이름과 기술 이름에 적용되는 Slack의 검증 규칙이 달라 한글 이름과 영문 기술 이름을 구분해 처리해야 했다.

2단계: Slack과 Hermes Gateway 연결하기

이번 연결에서는 Slack의 Socket Mode를 사용했다. 공개 웹 서버를 별도로 열지 않고도 Slack 이벤트를 로컬 Hermes Gateway가 실시간으로 받을 수 있는 방식이다.

메시지 흐름

찰리의 Slack 메시지 → Slack App → Socket Mode → Hermes Gateway → 맥헬미 → Slack 답변

연결에 필요한 핵심 요소는 다음과 같았다.

  • 워크스페이스에 설치된 맥헬미 Slack App
  • 봇 인증 정보와 Socket Mode용 앱 인증 정보
  • 메시지를 보낼 수 있는 사용자 허용 목록
  • Slack 플랫폼이 활성화된 Hermes 설정
  • Mac 로그인 때 자동으로 시작되는 Hermes Gateway

인증 정보는 화면이나 보고서에 노출하지 않고 권한이 제한된 로컬 자격 증명 저장소로 옮겼다. 설정값은 파일을 직접 손으로 고치기보다 Hermes 명령으로 적용했다.

hermes config set platforms.slack.enabled true
hermes config get platforms.slack.enabled
hermes config check

Gateway는 macOS의 관리 서비스로 등록했다. 실제 확인 결과 서비스 정의가 현재 Hermes 설치와 일치했고, 로그인 시 자동 시작과 비정상 종료 시 자동 재시작이 가능한 상태였다.

3단계: “연결됨”을 실제 대화로 검증하기

Socket Mode가 연결됐다는 로그만으로는 작업이 끝난 것이 아니다. 앱이 채널에 들어와 있는지, 내가 허용된 사용자인지, Hermes가 요청을 처리하고 최종 답변을 다시 Slack에 올리는지까지 확인해야 한다.

#mac-helmi 채널에서 다음처럼 실제 메시지를 보냈다.

@mac-helmi 연결 성공이라고 답해줘.

맥헬미가 “연결 성공! ✅”이라고 답했다. 이어서 DM에서도 멘션 없이 대화가 되는 것을 확인했고, 채널을 홈 채널로 지정했다. 이 시점에서야 Slack 설치가 아니라 Hermes와 Slack의 종단 간 연결이 완료됐다고 판단했다.

4단계: 두 번째 AI 동료 ‘리서’ 만들기

맥헬미 하나가 모든 일을 처리하게 할 수도 있지만, 협업 구조를 만들려면 역할을 분리하는 편이 낫다. 강의 원고와 컨설팅 보고서를 만들면서 자료 조사, 1차 출처 확인, 상충하는 정보의 교차 검증을 전담할 동료가 필요해졌다. 그래서 맥헬미가 딥 리서치(Deep Research) 전문 에이전트를 별도의 Hermes 프로필로 만들고 ‘리서’라는 이름을 붙였다.

‘리서’는 Research와 Researcher, 그리고 Deep Research의 역할을 한국어로 짧고 편하게 부르기 위해 만든 이름이다. Slack에서 “리서에게 조사시켜 보자”라고 자연스럽게 부를 수 있으면서, 무슨 일을 맡은 동료인지 이름만 들어도 알 수 있게 한 것이다.

리서는 단순한 별명이 아니라 별도의 Hermes 프로필이다. 현재 리서의 역할은 다음처럼 정의되어 있다.

근거 중심의 심층 리서치 전문 연구원. 1차 자료를 우선 조사하고 출처를 교차 검증하여 인용 가능한 의사결정 보고서를 작성한다.

모델과 역할, 기억, 설정, Slack 연결을 맥헬미와 분리했다. 확인 당시 기본 맥헬미 프로필과 researcher 프로필의 Gateway가 각각 실행 중이었다. 리서는 별도의 Slack App ‘리서’로 설치해 Slack에서도 독립된 팀원으로 보이게 했다.

중요한 차이: Hermes 프로필을 하나 더 만드는 것만으로 Slack에 새 팀원이 자동으로 생기지는 않는다. Slack에서 독립적으로 대화할 에이전트마다 별도의 Slack App 정체성, 인증 정보, 프로필 범위의 Gateway가 필요하다.

5단계: 맥헬미와 리서를 같은 협업 채널에 추가하기

두 에이전트와 내가 함께 일할 공개 채널로 #agent-lab을 만들었다. 이 채널에 맥헬미와 리서를 각각 초대했다.

에이전트끼리 메시지를 무제한으로 읽고 답하게 두면 서로의 답변에 다시 반응하며 반복 루프가 생길 수 있다. 그래서 리서에는 다음 원칙을 적용했다.

  • 봇 메시지는 명시적으로 멘션된 경우에만 처리한다.
  • 채널에서는 정확한 멘션이 있을 때만 답한다.
  • 사람 → 맥헬미 → 리서처럼 한 방향씩 테스트한다.
  • 각 에이전트는 한 번 답하고, 추가 멘션이 없으면 멈춘다.

실제 설정에서도 allow_bots: mentions, require_mention: true, strict_mention: true를 적용했다. 이것이 여러 AI 에이전트를 Slack에 넣을 때 필요한 기본 안전장치다.

DM, 채널, 스레드는 같은 기억을 공유할까?

여기서 중요한 운영 원리를 하나 알게 됐다. Slack의 DM, 채널 일반 대화, 각 채널 스레드는 서로 다른 대화 세션이다.

  • 찰리와 맥헬미의 DM은 하나의 독립 세션이다.
  • #agent-lab의 일반 대화는 또 다른 세션이다.
  • #agent-lab 안의 각 스레드도 스레드별 세션이다.
  • 찰리와 리서의 DM은 리서 프로필의 별도 세션이다.

같은 프로필은 역할, 장기 기억, 스킬, 설정과 파일을 공유할 수 있지만, 이전 대화 전체가 다른 채널이나 새 스레드에 자동으로 붙는 것은 아니다. 따라서 실제 협업에서는 하나의 업무를 하나의 루트 메시지와 스레드에서 계속 이어가는 편이 좋다.

자동화 과정에서 가장 어려웠던 부분

1. 앱 설치와 실제 연결은 다르다

Slack App이 워크스페이스에 보인다고 Hermes와 대화할 수 있는 것은 아니다. 앱 설치, Socket Mode, 사용자 허용 정책, 채널 가입, Gateway 실행과 메시지 왕복이 모두 성공해야 한다.

2. 채널 가입을 별도로 확인해야 한다

명령이 Hermes에 도착해도 봇이 채널 멤버가 아니면 답변 게시가 실패할 수 있다. 그래서 앱 목록에 보이는지만 확인하지 않고 실제 채널 멤버십과 답변까지 검증했다.

3. 에이전트마다 독립된 정체성이 필요하다

맥헬미와 리서는 같은 Hermes 기술을 사용하지만 Slack에서는 서로 다른 팀원이다. 독립 DM과 독립 멘션을 제공하려면 각자 프로필, Slack App과 Gateway가 필요하다.

4. 봇 간 대화에는 루프 방지 정책이 필요하다

여러 에이전트를 한 채널에 넣을수록 “모든 메시지에 반응”하는 설정은 위험하다. 명시적 멘션과 한 방향씩의 테스트가 중요했다.

이번 작업을 작은 AI 팀의 관점에서 보면

이 구조의 핵심은 역할이 다른 여러 AI 에이전트를 한 업무 공간에서 조율하는 데 있다.

큰 모델 하나에게 모든 일을 맡기는 대신, 맥헬미는 업무 총괄과 실행을 담당하고 리서는 근거 조사와 교차 검증을 담당한다. 사람인 나는 Slack에서 적합한 동료를 호출하고, 결과를 확인하고, 다음 행동을 승인한다.

  • 사람: 목적 설정, 승인, 최종 판단
  • 맥헬미: 업무 분해, 실행, 결과 통합
  • 리서: 1차 자료 조사, 출처 교차 검증, 근거 보고
  • Slack: 요청·협업·검토가 모이는 공통 작업 공간

핵심은 AI가 사람을 대신하는 것이 아니라, 사람이 여러 AI 동료의 역할과 비용과 권한을 조정하는 데 있다.

개인과 소규모 조직이 적용할 때의 체크리스트

  1. 첫 번째 에이전트의 역할을 한 문장으로 정한다.
  2. 전용 Slack App과 채널을 만든다.
  3. 사용자·채널 허용 범위를 먼저 설정한다.
  4. Gateway 연결 로그와 실제 메시지 왕복을 모두 확인한다.
  5. 두 번째 에이전트는 역할이 분명할 때만 추가한다.
  6. 에이전트마다 독립된 프로필과 Slack 정체성을 사용한다.
  7. 공용 채널에서는 멘션 전용 정책으로 반복 대화를 막는다.
  8. 업무별로 하나의 스레드를 유지한다.
  9. 토큰·인증 정보·개인 ID는 문서와 화면에 노출하지 않는다.
  10. AI의 결과는 사람이 확인한 뒤 외부 발송이나 게시를 승인한다.

마무리

이번 작업으로 Mac 안에서만 일하던 Hermes가 Slack의 실제 업무 공간으로 들어왔다. 그리고 맥헬미 하나에서 끝나지 않고, 리서라는 전문 동료를 추가해 작은 AI 팀의 형태를 갖추었다.

가장 인상적인 변화는 기술보다 사용 방식이다. 이제 나는 터미널 명령을 기억하기보다 Slack에서 동료를 부른다. 맥헬미에게 일을 정리해 달라고 하고, 리서에게 근거를 조사해 달라고 요청한다. 결과는 같은 스레드에서 검토한다.

AI 에이전트의 다음 단계는 더 똑똑한 챗봇이 아니라, 역할과 책임과 협업 규칙을 가진 작은 팀일 수 있다.

참고 링크

댓글

이 블로그의 인기 게시물

AI 바이브코딩 운영 가이드 (프롬프트 25종 첨부)

  AX컨설팅 동료용 실무 가이드 AI 바이브코딩 80% 벽 을 넘는 운영 가이드 AI로 웹사이트, 업무 자동화, 데이터 분석, 제안서 보조 도구, 내부 업무 시스템을 만들어보려는 컨설턴트를 위한 문서입니다. 바이브코딩은 “AI에게 코딩을 맡기는 일”이 아니라, AI 개발팀을 운영하는 일 입니다. 빠르게 되는 구간 ◀ 80% 벽 운영으로 넘는 구간 95% 80%까지는 AI가 데려다줍니다. 나머지 15%는 코딩 실력이 아니라 운영 방식 으로 넘습니다. 목차 1. 왜 80%에서 막히는가 2. 자주 나오는 네 가지 증상 3. 반드시 박아둘 검증 원칙 4. 상황별 실전 프롬프트 8종 5. 운영 4원칙 6. 컨설팅 현장 시나리오 7. 현장 체크리스트 18 8. 복사해서 쓰는 프롬프트 9. 최종 정리 01 · 진단 처음엔 날아가는데, 왜 80%에서 멈출까 요즘 AI로 개발을 해보면 처음에는 정말 빠릅니다. 로그인 화면이 금방 만들어지고, 버튼도 생기고, 데이터 입력 폼도 나오고, 간단한 대시보드도 몇 분 만에 완성됩니다. “이제 코딩은 AI가 다 해주는구나.” 그런데 실제 프로젝트에서는 이상한 일이 생깁니다. 처음 70~80%까지는 빠르게 가는데, 그 다음부터 갑자기 진도가 안 나갑니다. 증상 80% 지점에서 벌어지는 일 버튼 하나 고쳤더니 다른 버튼이 망가집니다. 오류를 고쳐달라고 했더니 디자인이 깨집니다. AI는 “수정 완료했습니다”라고 하는데 실행해보면 그대로입니다. 이전에 정한 요구사항을 잊어버립니다. 새 기능을 붙일수록 코드가 점점 복잡해집니다. 결국 처음부터 다시 만드는 것이 더 빠른 상황이 됩니다. 한 줄 결론 80% 벽은 AI의 코딩 실력만의 문제가 아닙니다. 대부분은 검증 없는 지시, 오염된 컨텍스트, 롤백 없는 작업 방식, 모호한 완료 기준 때문에 생깁니다. AI에게 코딩을 맡긴다는 것은 개발자를 없애는 일이 아닙니다. 오히려 우리의 역할이 바뀝니다. 기존 방식 AI 바이브코딩 방식 내가 직접 코드를 작성한다 AI에게 작업을 나누어 맡긴다 개발...

[알아두면 쓸모 있는 구글 문서 팁] 문서 공유시- 사용자 이름 대신에 익명의 동물이 표시 되는 이유와 동물 종류

구글 드라이브에는 다른 유사 서비스에서는 제공하지 않는 구글 만의 유니크한 기능들이 있다 구글 문서를  불특정 다수에게 전체 공개로 공유할 수 있습니다. 불특정인이 구글 문서에 접속한 경우 익명의 동물로 표시됩니다.  ' 웹에 공개' 또는 '링크가 있는 사용자' 공유 설정을 선택하면 인식할 수 없는 이름이나 익명의 동물이 표시될 수 있습니다. 파일에서 인식할 수 없는 이름을 볼 수 있는 몇 가지 이유는 다음과 같습니다. 메일링 리스트와 파일을 공유합니다. Google 계정이 없는 사용자와 파일을 공유하며, 그 사용자가 다른 사용자에게 공유 초대를 전달했습니다. 내 파일을 수정할 수 있는 누군가가 파일을 다른 사용자와 공유했습니다. 다른 사용자가 자신의 Google 계정 이름을 변경했습니다. 공유 설정 페이지에서 해당 사용자 이름 위로 마우스를 이동하여 이메일 주소를 확인하세요. 익명의 동물 다른 사용자에게 개별적으로 보기 또는 수정 권한을 부여하거나 메일링 리스트에 속해 있는 경우에만 사용자 이름이 표시됩니다. 파일 권한을 '링크가 있는 사용자'로 설정하면 파일을 보고 있는 사용자의 이름이 표시되지 않습니다. 대신 다른 사용자가 익명으로 라벨이 지정되어 표시되고 각 익명 사용자는 다양한 익명의 동물로 나열됩니다. 파일 권한을 '링크가 있는 사용자'로 설정했지만 특정 사용자와 파일을 공유하는 경우 파일을 공유한 사용자의 이름이 표시됩니다. 그 외 다른 사용자가 파일을 볼 때는 익명으로 나타납니다. 비공개 파일의 익명 동물 파일 권한을 '링크가 있는 사용자'로 설정한 다음 이를 '특정 사용자'로 변경하면 다음과 같은 경우 여러 익명의 동물이 표시될 수 있습니다. 누군가 파일을 여러 번 여는 경우에는 익명의 동물 목록에서 오래되고 연결이 끊긴 세션을 강제 종료하는 데 조금 시간이 걸릴 수 있습니다. 누군가 온...

[팁] Google Slide 프리젠테이션시 모든 한글폰트가 '굴림체' 로 바뀌는 현상을 해결한 크롬 확장 프로그램 소개

구글 문서도구인 구글 슬라이드를 이용하여 프리젠테이션을 많이 하는 분들을 위한 희소식 현재 구글 슬라이드에서는 슬라이드 편집시 사용한 고유 한글 폰트들은 프리젠테이션 모드로 전환할 경우는 모두 '굴림체' 로 바뀌어 표시가 되는 불편함이 있었습니다. 예). 슬라이드 편집에서 사용한 '궁서체' 한글 폰트는, 프리젠테이션 모드에서는 '굴림체'로 바뀌어 디스플레이됨 예). 슬라이드 편집 모드 - '궁서체' 폰트 사용 프리젠테이션 모드에서 '굴림체' 로 변경됨    따라서, 이러한 현상을 해결하는 크롬 확장 프로그램이 개발 되었습니다.  크롬 확장 프로그램 명 - ShowAsis 입니다. 크 롬 웹스토어 링크 -  https://goo.gl/PVPkZz 이 확장 프로그램을 사용하여 슬라이드 프리젠테이션을 하면, 편집 모드의 폰트 그대로 프리젠테이션시에도 그대로 한글 폰트로 디스플레이 됩니다. 단, 단점은 슬라이드가 애니메이션 슬라이드가 있는 경우는 애니메이션이 동작하지 않습니다. ----------------------- G Suite/Google Apps 전문 블로그 -  charlychoi.blogspot.kr 도서 '기업과 학교를 위한 구글크롬북'

Uber의 Software Factory에서 배울 점: AI 에이전트는 ‘비용’이 아니라 ‘운영 설계’의 문제다

Uber의 Software Factory에서 배울 점: AI 에이전트는 ‘비용’이 아니라 ‘운영 설계’의 문제다 Uber Engineering이 공개한 “Running a Software Factory Efficiently at Uber Scale” 글은 단순한 AI 코딩 도구 소개가 아닙니다. 핵심은 AI 에이전트를 개발 현장에 많이 쓰면서도 비용을 통제하기 위한 운영 구조 입니다. 저는 이 글을 보면서 개인용 AI 오케스트레이션, 특히 제가 정리하고 있는 CPAO(Cost-aware Personal Agentic Orchestration) 와 매우 가까운 문제의식을 느꼈습니다. 규모는 Uber처럼 크지 않더라도, 개인·소규모 조직도 이제 AI를 “가끔 쓰는 도구”가 아니라 “반복 업무를 맡기는 업무팀”으로 운영해야 하는 단계에 들어섰기 때문입니다. 1. Uber가 말하는 AI Software Factory Uber는 AI 도구가 소프트웨어 개발 전 과정에 들어와 있다고 설명합니다. 코드 작성, 코드 리뷰, CI 실패 복구, 버그 분석, 온콜 알림 처리, 유지보수 PR 생성 등 여러 업무가 에이전트 기반으로 움직이고 있습니다. 인상적인 것은 사용량 증가입니다. Uber에 따르면 2026년 2월부터 8월까지 주간 활성 사용자는 7배, 주간 에이전트 요청은 9.4배 증가했습니다. 그런데 총 AI 비용은 4월 이후 비교적 안정화됐다고 합니다. 동일 모델 기준으로 보면 1,000개 요청당 비용은 피크 대비 약 34%, 세션당 비용은 6월 피크 대비 52% 낮아졌다고 합니다. 즉, Uber의 방향은 “AI를 덜 쓰자”가 아닙니다. 오히려 더 많이 쓰되, 낭비되는 턴·요청·토큰을 줄이는 방식 입니다. 2. 핵심은 비용 방정식이다 Uber는 AI 에이전트 비용을 다음과 같은 식으로 분해합니다. 총비용 = 사용자 수 × 세션/사용자 × 턴/세션 × 요청/턴 × 토큰/요청 × 토큰당 가격 이 식이 중요한 이유는 AI 비용을 막연한 “...

Claude Fable 5.1 프롬프트 가이드: 쉽게 쓰는 AI 지시문 작성법

Claude Prompting Guide Claude Fable 5.1 프롬프트 가이드: 쉽게 쓰는 AI 지시문 작성법 Anthropic의 공식 문서는 Claude Fable 5.1을 더 잘 쓰기 위한 프롬프트 작성법을 설명합니다. 개발자용 문서라 조금 어렵지만, 핵심은 간단합니다. AI에게 “무엇을, 어느 정도로, 어떤 방식으로 끝낼지”를 더 분명히 알려주라는 것입니다. 출처: Anthropic Claude Platform Docs 한눈에 보는 핵심 작업 난이도에 맞게 AI의 “생각하는 정도”를 조절한다. 긴 작업에서는 중간 진행 상황을 사용자에게 알려달라고 요청한다. 독립적인 도구 호출은 한 번에 묶어서 처리하게 한다. 대화 기록은 중간에 고치지 말고 계속 뒤에 붙이는 방식이 안전하다. 글이 너무 길거나 딱딱하면 쉬운 문장과 구조를 요청한다. 작업을 시켰다면 끝까지 완료하고 검증하게 한다. 1. “생각하는 정도”를 작업에 맞게 정하라 Claude Fable 5.1에는 작업에 얼마나 많은 추론을 쓸지 정하는 effort 개념이 있습니다. 쉽게 말하면 AI에게 “빨리 대답할지, 더 깊게 생각할지”를 조절하는 장치입니다. 낮은 effort 간단한 요약, 분류, 짧은 답변처럼 빠른 처리가 중요한 작업 중간 effort 품질과 비용의 균형이 필요한 일반 업무 높은 effort 코딩, 분석, 복잡한 문서 작성처럼 실수가 비싼 작업 매우 높은 effort 긴 산출물이나 중요한 의사결정 보조 작업 문서의 조언은 명확합니다. 무조건 가장 높은 설정을 쓰지 말고, 실제 업무에서 품질·속도·비용을 비교해보라는 것입니다. AX 컨설팅 관점에서는 이 부분이 중요합니다. AI도 직원처럼 업무 난이도에 맞는 투입 시간이 필요합니다. 2. 오래 걸...