Claude Code Agent Fleets 스케줄에 따라 실행되고 채팅에 참여하는

발행: (2026년 1월 31일 오전 02:16 GMT+9)
9 분 소요
원문: Dev.to

Source: Dev.to

소개

저는 Claude Code를 사랑하지만, 정말 바라는 세 가지가 있습니다:

  1. 스스로 호출하기 – 일정에 따라 혹은 이벤트에 반응해서.
  2. 대화하기 – Discord나 Slack을 통해.
  3. 수십 개의 Claude Code 에이전트를 함께 조정하기.

바로 이것이 herdctl이 목표로 하는 바입니다.

herdctl은 Claude Code용(보다 정확히는 Claude Agents SDK 위에 구축된) MIT‑라이선스 오케스트레이션 레이어입니다. Claude Code, ralph wiggum, GSD를 조합해 약 일주일 만에 급조했으며, 프로덕션 준비가 된 것은 아닙니다.

데모

herdctl demo video

Discord 서버에 참여해서 그 스타트렉 에이전트들과 채팅할 수 있습니다. 이들은 내 홈랩의 오래된 머신에 컨테이너로 실행되고 있기 때문에, 그들을 악용하려고 해도 얻을 것이 별로 없지만, 시도하는 사람도 있을 것이라고 예상합니다. 제가 중위 워프를 경비로 두거나, 아니면 에이전트를 그냥 제거할 겁니다 – YMMV.

설치

npm install -g herdctl

또는 자세한 내용은 GitHub 저장소와 문서 사이트를 확인하세요.

구성

에이전트 정의 (price-checker.yaml)

name: price-checker
max_turns: 15
description: Monitors office chair prices across retailers
default_prompt: "Check current prices and update context."

system_prompt: |
  You are a price monitoring agent tracking office chair prices across multiple retailers.

  Check the price of Product X at... [TRUNCATED FOR BREVITY]

permissions:
  allowed_tools:
    - WebSearch
    - WebFetch
    - Read
    - Write
    - Edit
  denied_tools:
    - Bash
    - TodoWrite
    - Task
    - Glob
    - Grep

schedules:
  check:
    type: interval
    interval: 4h

hooks:
  after_run:
    - type: discord
      bot_token_env: DISCORD_BOT_TOKEN
      channel_id: "${DISCORD_CHANNEL_ID}"
      when: "metadata.shouldNotify"

플릿 정의 (fleet.yaml)

version: 1

fleet:
  name: price-checker-example
  description: Find deals and arbitrage opportunities, exploit for MAXIMUM PROFIT

agents:
  - path: agents/price-checker.yaml
  - path: agents/stock-checker.yaml
  - path: agents/arbitrage-exploiter.yml

플릿 실행

herdctl start

원하는 만큼 많은 플릿을 실행할 수 있습니다.

가치 제안

유형얻는 것
즉시전 세계 어디서든 에이전트와 채팅하고 실시간으로 협업하도록 합니다.
장기프로세스가 시간에 따라 일관되게 실행되며, 진행하면서 자동으로 스스로 개선됩니다.

Example Use‑Cases

Engineering‑focused agents

  • Onboarding Quality Agent – 전체 제품 온보딩 흐름을 매일 실행하고 문제가 발생하면 알림을 보냅니다.
  • Engineering Manager Agent – QA 에이전트로부터 보고서를 받고, 부여할 자율성 수준을 결정하며, 필요할 때만 에스컬레이션합니다.
  • Local Engineer Agent – 영상에 나오는 BragDoc Engineer Agent와 같이, 로컬에서 실행될 수 있고 티켓 상태 변화나 기타 트리거에 반응하는 “직접 만드는 Devin”입니다.

General‑purpose agents

  • Competitor Analysis Agent – 경쟁사 사이트를 매일 확인하고, 지식을 축적하며, 주간 보고서를 이메일로 보냅니다.
  • SEO Agent – 링크를 게시하고, 분석을 추적하며, 하루 종일 콘텐츠를 자동으로 최적화합니다.
  • End‑of‑the‑World Agent – 뉴스 피드를 모니터링하여 재앙적인 사건을 감지하고, 대비하도록 알림을 보냅니다.

위험 및 안전

  • Claude Code 에이전트를 개인 노트북에서 공개 Discord 채널에 절대 노출하지 마세요.
  • AI 에이전트를 회사 채팅(Discord/Slack)에 도입하는 것은 강력하지만, 데이터 유출, 시스템 침해, 원치 않는 미디어 업로드와 같은 새로운 공격 경로를 초래합니다.
  • 기업은 이러한 에이전트에 접근할 수 있는 사람과 허용되는 작업을 엄격히 통제해야 합니다.

마무리 생각

궁극적으로 인스턴스화되는 것은 Claude Code이며, 이를 통해 사실상 모든 일을 시킬 수 있습니다. 오늘날 디지털 업무의 큰 비중을 이 방식으로 자동화할 수 있어 사회적·경제적 우려가 제기됩니다.

반면에 저는 몇 달간 고민한 뒤 약 일주일 만에 herdctl의 첫 번째 버전을 만들었습니다. 따라서 이 기술은 우리가 원하든 원하지 않든 다가올 것입니다. 만들기가 너무 쉬워서 곧 어디서든 볼 수 있게 될 겁니다. 유일한 선택은 수용하고 적응하는 것입니다.

행복한 해킹!

시간에 따른 성능

저는 이제 작업하는 각 프로젝트마다 두 개의 클론을 가지고 있습니다:

  1. Primary clone – Claude와 제가 일반적인 방식으로 협업하는 클론입니다.
  2. Secondary cloneherdctl 엔지니어 에이전트를 위해 따로 두는 클론입니다.

이 구분 덕분에 서로의 발을 밟는 일을 방지할 수 있습니다.

엔지니어 에이전트 확장

  • 5명, 50명, 혹은 그 이상의 엔지니어 에이전트를 생성하고, 각각이 작업할 코드베이스 복제본을 가질 수 있는 이유가 없습니다.
  • herdctl은 오케스트레이션을 제공하지만 자체 조직화는 제공하지 않습니다.
  • 많은 엔지니어 에이전트를 원한다면, 이를 조정할 엔지니어링 매니저 에이전트를 추가하는 것을 고려하세요.

자기‑개선 에이전트

시간이 지남에 따라 스스로 개선되는 에이전트는 현재 내가 가장 흥미롭게 생각하는 분야다 (무엇이 잘못될 수 있겠어?).
에이전트를 진화시키는 다양한 패턴이 있다:

  • 시스템 프롬프트
  • 메모리
  • 커스텀 툴
  • Claude Code 스킬

일반적인 패턴에는 다음이 포함된다:

  • 사후 보고서
  • 계획 대비 실행 분석
  • 프롬프트 및 컨텍스트 엔지니어링

원칙적으로 곧 시간이 지남에 따라 자동으로 더 똑똑해지는 에이전트를 흔히 볼 수 있게 될 것이다.

현재 제한 사항 및 향후 작업

  • 버그, 문서 부정확성 및 다양한 문제herdctl의 초기 버전에서 예상됩니다.
  • 앞으로 나아가기 전에 짧은 통합 및 정리 기간이 필요할 것으로 보입니다.

수요가 증가하면 다음을 기대합니다:

  1. Slack 통합을 구축합니다.
  2. 다음 중 하나를 개발합니다:
    • 작은 웹 앱을 만들어 플릿 상태를 시각화하거나, 또는
    • 에이전트와 플릿 간의 통신 경로를 재검토합니다.

오픈 문제: 에이전트 협조 토폴로지

그 사이에, 50 에이전트로 구성된 플릿이 최적의 방식으로 통신할 수 있도록 하고, 누가 누구와 대화할 수 있는지를 정의하는 토폴로지를 제공하는 기술이 있으면 유용할 것입니다.

  • herdctl은 이 협조 문제를 해결하려고 하지 않으며, 이는 에이전트 스택의 별도 부분이어야 합니다.
  • 누군가가 이 협조 레이어를 구축해 주면 좋겠습니다.
Back to Blog

관련 글

더 보기 »