Claude Code Agent Fleets that run on schedules and join your chat

Published: (January 30, 2026 at 12:16 PM EST)
5 min read
Source: Dev.to

Source: Dev.to

Introduction

I love Claude Code, but there are three things I really wish it could do:

  1. Invoke itself – on a schedule or in response to events.
  2. Talk to it – over Discord or Slack.
  3. Coordinate dozens of Claude Code agents together.

That’s what herdctl aims to do.

herdctl is an MIT‑licensed orchestration layer for Claude Code (more precisely, for the Claude Agents SDK, on which herdctl is built). It was cobbled together in about a week using a combination of Claude Code, ralph wiggum, and GSD. It is not production‑ready.

Demo

herdctl demo video

You can join the Discord server to chat with those Star Trek agents. They’re running in a container on an old machine in my homelab, so while there isn’t much to gain from trying to make them do bad things, I expect some folks will try. Either I’ll have a Lieutenant Worf on guard, or I’ll just kill the agents – YMMV.

Installation

npm install -g herdctl

Or check out the GitHub repo and docs site for more details.

Configuration

Agent definition (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 definition (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

Running a fleet

herdctl start

You can run as many fleets as you like.

Value Proposition

herdctl delivers two kinds of value:

TypeWhat you get
ImmediateChat with your agents from anywhere in the world and have them collaborate in real time.
Long‑termProcesses run consistently over time, automatically improving themselves as they go.

Example Use‑Cases

Engineering‑focused agents

  • Onboarding Quality Agent – Runs the entire product onboarding flow daily and alerts you if anything breaks.
  • Engineering Manager Agent – Receives reports from the QA agent, decides how much autonomy to grant, and escalates only when needed.
  • Local Engineer Agent – Like the BragDoc Engineer Agent in the video: a “build‑your‑own Devin” that can run locally, react to ticket status changes, or any other trigger.

General‑purpose agents

  • Competitor Analysis Agent – Checks competitor sites daily, builds knowledge, and emails a weekly report.
  • SEO Agent – Posts links, tracks analytics, and auto‑optimizes content throughout the day.
  • End‑of‑the‑World Agent – Monitors news feeds for catastrophic events and alerts you to batten down the hatches.

Risks & Safety

  • Never expose a Claude Code agent on your personal laptop to a public Discord channel.
  • Allowing AI agents into company chat (Discord/Slack) is powerful but introduces new attack vectors: data exfiltration, system compromise, or even unwanted media uploads.
  • Companies must tightly control who can access these agents and what they’re permitted to do.

Closing Thoughts

Ultimately, it’s Claude Code that gets instantiated – you can make it do virtually anything. A huge proportion of today’s digital work could be automated this way, raising societal and economic concerns.

On the other hand, I built the first version of herdctl in about a week after months of thinking about it, so this technology is coming whether we like it or not. It’s too easy to build, so we’ll likely see it everywhere soon. The only option is to embrace and adapt.

Happy hacking!

Performance Over Time

I’ve started having two clones of each project I work on now:

  1. Primary clone – the one Claude and I collaborate on in the normal way.
  2. Secondary clone – set aside for the herdctl engineer agent.

This separation prevents us from stepping on each other’s toes.

Scaling Engineer Agents

  • There’s no reason you couldn’t spawn 5, 50, or even more engineer agents, each with its own clone of the codebase to work on.
  • herdctl provides orchestration but does not provide self‑organization.
  • If you do want many engineer agents, consider adding Engineering Manager agents to coordinate them.

Self‑Improving Agents

Agents that improve themselves over time are the thing I’m most excited about right now (what could possibly go wrong?).
There are many possible patterns for evolving an agent’s:

  • System prompt
  • Memories
  • Custom tools
  • Claude Code skills

Typical patterns include:

  • After‑action reports
  • Plan‑vs‑execution analysis
  • Prompt and context engineering

In principle, it should soon be commonplace to have agents that automatically get smarter over time.

Current Limitations & Future Work

  • Bugs, documentation inaccuracies, and assorted problems are expected in this initial incarnation of herdctl.
  • A short period of consolidation and cleanup is likely before moving forward.

If demand grows, I’d expect to:

  1. Build out the Slack integration.
  2. Develop either:
    • A small web app to visualize the state of the fleet, or
    • Re‑visit the communication paths between agents and the fleet.

Open Problem: Agent Coordination Topology

In the meantime, it would be valuable to have a technology that allows a fleet of 50 agents to communicate optimally, with a defined topology governing who can talk to whom.

  • herdctl does not attempt to solve this coordination problem—it should be a separate part of the agentic stack.
  • I’d love for someone to build this coordination layer.
Back to Blog

Related posts

Read more »