herdctl 1.4.1 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +110 -68
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +33 -6
- package/dist/commands/start.js.map +1 -1
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -1,104 +1,146 @@
|
|
|
1
|
-
|
|
1
|
+
<p align="center">
|
|
2
|
+
<img src="https://raw.githubusercontent.com/edspencer/herdctl/main/docs/public/herdctl-logo.svg" alt="herdctl" width="120" />
|
|
3
|
+
</p>
|
|
2
4
|
|
|
3
|
-
>
|
|
5
|
+
<h1 align="center">herdctl</h1>
|
|
4
6
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
+
<p align="center">
|
|
8
|
+
<strong>Let Claude Code invoke itself.</strong><br/>
|
|
9
|
+
Run agents on schedules, chat with them on Discord, and resume any session in your terminal.
|
|
10
|
+
</p>
|
|
7
11
|
|
|
8
|
-
|
|
12
|
+
<p align="center">
|
|
13
|
+
<a href="https://www.npmjs.com/package/herdctl"><img src="https://img.shields.io/npm/v/herdctl.svg" alt="npm version"></a>
|
|
14
|
+
<a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="License: MIT"></a>
|
|
15
|
+
<a href="https://github.com/edspencer/herdctl/actions"><img src="https://github.com/edspencer/herdctl/workflows/CI/badge.svg" alt="CI Status"></a>
|
|
16
|
+
</p>
|
|
9
17
|
|
|
10
|
-
|
|
18
|
+
<p align="center">
|
|
19
|
+
<a href="https://herdctl.dev">Documentation</a> •
|
|
20
|
+
<a href="https://herdctl.dev/getting-started/">Getting Started</a> •
|
|
21
|
+
<a href="https://discord.gg/d2eXZKtNrh">Discord</a> •
|
|
22
|
+
<a href="https://github.com/edspencer/herdctl/issues">Issues</a>
|
|
23
|
+
</p>
|
|
11
24
|
|
|
12
|
-
|
|
25
|
+
---
|
|
13
26
|
|
|
14
|
-
|
|
27
|
+
<p align="center">
|
|
28
|
+
<img src="https://raw.githubusercontent.com/edspencer/herdctl/main/docs/public/demo/herdctl-demo.gif" alt="herdctl demo — fleet startup and web dashboard" width="720">
|
|
29
|
+
</p>
|
|
15
30
|
|
|
16
|
-
##
|
|
31
|
+
## The Vision
|
|
17
32
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
33
|
+
Claude Code has changed the world, but most of the work it does is supervised by a human. What if Claude Code could invoke itself?
|
|
34
|
+
|
|
35
|
+
**herdctl** is an orchestration layer for Claude Code. Under the hood, it uses the Claude Agents SDK to trigger Claude Code sessions on schedules, via webhooks, or via chat messages.
|
|
36
|
+
|
|
37
|
+
It uses simple .yml files that are a thin wrapper around Claude Agents SDK configs, plus a couple of extra features provided by herdctl - `schedules`, `chat` and `hooks`. Each Agent defined this way can have any number of **schedules** that trigger the agent to do something automatically.
|
|
38
|
+
|
|
39
|
+
herdctl can run **fleets of agents**, each with their own source-controllable configurations. Agent fleets can be run anywhere via a simple `herdctl start` command.
|
|
40
|
+
|
|
41
|
+
herdctl allows you to interact with all of your existing Claude Code projects via **chat apps like Discord and Slack** (Telegram support coming soon).
|
|
42
|
+
|
|
43
|
+
## Key Features
|
|
44
|
+
|
|
45
|
+
- **Self-Invoking Agents** — Define agents that wake themselves up on schedules or triggers. Coordinate an entire fleet from a single `herdctl start` command.
|
|
46
|
+
|
|
47
|
+
- **Fleet Composition** — Build "super-fleets" from multiple project fleets. Each project keeps its own agent configurations, but they all run together with a unified web dashboard and CLI.
|
|
48
|
+
|
|
49
|
+
- **Full Claude Code Power** — If Claude Code can do it, your herdctl agent can do it. Same tools, same MCP servers, same capabilities. herdctl is a thin orchestration layer, not a sandbox.
|
|
50
|
+
|
|
51
|
+
- **Two Runtimes** — CLI runtime uses your Claude Max subscription (much cheaper per token). SDK runtime uses API pricing. Both support Docker isolation with resource limits and network controls.
|
|
52
|
+
|
|
53
|
+
- **Chat From Anywhere** — Connect agents to Discord or Slack. Message your agents from your phone, get responses, and they continue working based on your conversation. Your PR reviewer bot becomes a team member you can @ mention.
|
|
54
|
+
|
|
55
|
+
- **Session Continuity** — Every job creates a real Claude SDK session. When an agent finishes, you can `claude --resume` that exact session in your terminal. Pick up where the agent left off with full context intact.
|
|
56
|
+
|
|
57
|
+
- **Bidirectional Communication** — Agents write structured data back to herdctl via metadata files. Hooks act on that data. Coming soon: agents that request schedule changes, store persistent context, and evolve their own behavior over time.
|
|
58
|
+
|
|
59
|
+
## Intro Video
|
|
60
|
+
|
|
61
|
+
In which we try to cover all of the main parts of herdctl in 20 minutes:
|
|
62
|
+
|
|
63
|
+
<div align="center">
|
|
64
|
+
<a href="https://www.youtube.com/watch?v=b3MRrpHLu8M">
|
|
65
|
+
<img src="https://img.youtube.com/vi/b3MRrpHLu8M/maxresdefault.jpg" alt="herdctl demo" width="600">
|
|
66
|
+
</a>
|
|
67
|
+
<p><em>Watch the demo</em></p>
|
|
68
|
+
</div>
|
|
21
69
|
|
|
22
70
|
## Quick Start
|
|
23
71
|
|
|
24
72
|
```bash
|
|
25
|
-
#
|
|
73
|
+
# Install herdctl globally
|
|
74
|
+
npm install -g herdctl
|
|
75
|
+
|
|
76
|
+
# Initialize a new project with example agents
|
|
26
77
|
herdctl init
|
|
27
78
|
|
|
28
79
|
# Start your agent fleet
|
|
29
80
|
herdctl start
|
|
81
|
+
```
|
|
30
82
|
|
|
31
|
-
|
|
32
|
-
herdctl status
|
|
33
|
-
|
|
34
|
-
# Manually trigger an agent
|
|
35
|
-
herdctl trigger my-agent
|
|
36
|
-
|
|
37
|
-
# List agent sessions
|
|
38
|
-
herdctl sessions
|
|
83
|
+
Your agents are now running. Check their status:
|
|
39
84
|
|
|
40
|
-
|
|
41
|
-
herdctl
|
|
85
|
+
```bash
|
|
86
|
+
herdctl status
|
|
42
87
|
```
|
|
43
88
|
|
|
44
|
-
##
|
|
45
|
-
|
|
46
|
-
Create a `herdctl.yaml` in your project root:
|
|
89
|
+
## Web Dashboard
|
|
47
90
|
|
|
48
|
-
|
|
49
|
-
fleet
|
|
50
|
-
|
|
91
|
+
<div align="center">
|
|
92
|
+
<img src="https://raw.githubusercontent.com/edspencer/herdctl/main/docs/src/assets/screenshots/fleet-overview.png" alt="herdctl web dashboard" width="800">
|
|
93
|
+
<p><em>Fleet overview showing agents, status, and recent jobs</em></p>
|
|
94
|
+
</div>
|
|
51
95
|
|
|
52
|
-
|
|
53
|
-
- path: ./agents/my-agent.yaml
|
|
54
|
-
```
|
|
96
|
+
The web dashboard gives you a browser-based control panel for your fleet. Enable it with `herdctl start --web` or `web.enabled: true` in your config.
|
|
55
97
|
|
|
56
|
-
|
|
98
|
+
- **Fleet overview** — real-time status of all agents and recent jobs
|
|
99
|
+
- **Agent detail** — live output streaming, schedule controls, job history
|
|
100
|
+
- **Interactive chat** — message any agent directly from the browser
|
|
101
|
+
- **Schedule management** — trigger, enable, and disable schedules
|
|
102
|
+
- **Job management** — cancel, fork, and inspect jobs
|
|
57
103
|
|
|
58
|
-
|
|
59
|
-
name: my-agent
|
|
60
|
-
model: claude-sonnet-4-20250514
|
|
104
|
+
See the [web dashboard documentation](https://herdctl.dev/integrations/web-dashboard/) for full details.
|
|
61
105
|
|
|
62
|
-
|
|
63
|
-
daily-review:
|
|
64
|
-
type: cron
|
|
65
|
-
cron: "0 9 * * *"
|
|
66
|
-
prompt: "Review open PRs and provide feedback"
|
|
106
|
+
## Packages
|
|
67
107
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
108
|
+
| Package | Description |
|
|
109
|
+
|---------|-------------|
|
|
110
|
+
| [`herdctl`](https://www.npmjs.com/package/herdctl) | CLI for fleet management. Install globally, run `herdctl start`. |
|
|
111
|
+
| [`@herdctl/core`](https://www.npmjs.com/package/@herdctl/core) | Core library. Embed fleet management in your own applications. |
|
|
112
|
+
| [`@herdctl/web`](https://www.npmjs.com/package/@herdctl/web) | Web dashboard. Real-time fleet monitoring, agent chat, and job management in your browser. |
|
|
113
|
+
| [`@herdctl/discord`](https://www.npmjs.com/package/@herdctl/discord) | Discord connector. Chat with your agents via Discord DMs and channels. |
|
|
114
|
+
| [`@herdctl/slack`](https://www.npmjs.com/package/@herdctl/slack) | Slack connector. Chat with your agents via Slack channels and DMs. |
|
|
115
|
+
| [`@herdctl/chat`](https://www.npmjs.com/package/@herdctl/chat) | Shared chat infrastructure. Session management, streaming, and message handling used by all connectors. |
|
|
74
116
|
|
|
75
|
-
##
|
|
117
|
+
## Documentation
|
|
76
118
|
|
|
77
|
-
|
|
78
|
-
- **Declarative Config** - Define agents, schedules, and permissions in YAML
|
|
79
|
-
- **Multiple Triggers** - Interval, cron, webhooks, chat messages
|
|
80
|
-
- **Work Sources** - GitHub Issues integration (Jira/Linear planned)
|
|
81
|
-
- **Execution Hooks** - Shell commands, webhooks, Discord notifications
|
|
82
|
-
- **Chat Integration** - Discord connector for conversational agents
|
|
83
|
-
- **Session Management** - List and resume Claude Code sessions from CLI
|
|
119
|
+
Full documentation at [herdctl.dev](https://herdctl.dev):
|
|
84
120
|
|
|
85
|
-
|
|
121
|
+
- [Getting Started](https://herdctl.dev/getting-started/)
|
|
122
|
+
- [Configuration Reference](https://herdctl.dev/configuration/fleet-config/)
|
|
123
|
+
- [CLI Reference](https://herdctl.dev/cli-reference/)
|
|
124
|
+
- [Library Reference](https://herdctl.dev/library-reference/fleet-manager/)
|
|
125
|
+
- [Guides & Recipes](https://herdctl.dev/guides/recipes/)
|
|
86
126
|
|
|
87
|
-
|
|
127
|
+
## Contributing
|
|
88
128
|
|
|
89
|
-
|
|
90
|
-
- [Configuration Reference](https://herdctl.dev/configuration/fleet/)
|
|
91
|
-
- [CLI Reference](https://herdctl.dev/cli-reference/commands/)
|
|
92
|
-
- [Guides](https://herdctl.dev/guides/github-issues/)
|
|
129
|
+
Contributions welcome! See [CONTRIBUTING.md](https://github.com/edspencer/herdctl/blob/main/CONTRIBUTING.md) for development setup and guidelines.
|
|
93
130
|
|
|
94
|
-
##
|
|
131
|
+
## Community
|
|
95
132
|
|
|
96
|
-
- [
|
|
97
|
-
- [
|
|
98
|
-
- [
|
|
99
|
-
- [
|
|
100
|
-
- [`@herdctl/chat`](https://www.npmjs.com/package/@herdctl/chat) - Shared chat infrastructure
|
|
133
|
+
- [Discord](https://discord.gg/d2eXZKtNrh) - Chat with the community
|
|
134
|
+
- [GitHub Discussions](https://github.com/edspencer/herdctl/discussions) - Ask questions, share ideas
|
|
135
|
+
- [Developer Blog](https://edspencer.net/blog/tag/herdctl) - Articles and deep dives
|
|
136
|
+
- [Twitter/X](https://twitter.com/edspencer) - Updates and announcements
|
|
101
137
|
|
|
102
138
|
## License
|
|
103
139
|
|
|
104
|
-
MIT
|
|
140
|
+
MIT License - see [LICENSE](https://github.com/edspencer/herdctl/blob/main/LICENSE) for details.
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
<p align="center">
|
|
145
|
+
Built by <a href="https://edspencer.net">Ed Spencer</a>
|
|
146
|
+
</p>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAyBH,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAsID;;GAEG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAqKvE"}
|
package/dist/commands/start.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import * as fs from "node:fs";
|
|
10
10
|
import * as path from "node:path";
|
|
11
|
-
import { ConfigNotFoundError, FleetManager, isFleetManagerError, setLogHandler, shouldLog, } from "@herdctl/core";
|
|
11
|
+
import { ConfigNotFoundError, ConfigurationError, FleetManager, isFleetManagerError, setLogHandler, shouldLog, } from "@herdctl/core";
|
|
12
12
|
import { getBanner } from "../utils/banner.js";
|
|
13
13
|
import { colorize, colors, getLevelColor, getMessageColor, getSourceColor, } from "../utils/colors.js";
|
|
14
14
|
/**
|
|
@@ -197,16 +197,43 @@ export async function startCommand(options) {
|
|
|
197
197
|
process.on("SIGTERM", () => shutdown("SIGTERM"));
|
|
198
198
|
try {
|
|
199
199
|
// Initialize the fleet manager
|
|
200
|
-
|
|
200
|
+
let webOnlyMode = false;
|
|
201
|
+
try {
|
|
202
|
+
await manager.initialize();
|
|
203
|
+
}
|
|
204
|
+
catch (initError) {
|
|
205
|
+
// If no config file found, fall back to web-only mode
|
|
206
|
+
const isConfigNotFound = initError instanceof ConfigNotFoundError ||
|
|
207
|
+
(initError instanceof ConfigurationError && initError.cause instanceof ConfigNotFoundError);
|
|
208
|
+
if (isConfigNotFound) {
|
|
209
|
+
console.log("No fleet configuration found — starting web UI only.");
|
|
210
|
+
console.log("Browse your Claude Code sessions at http://localhost:%s", options.webPort ?? 3232);
|
|
211
|
+
console.log("");
|
|
212
|
+
await manager.initializeWebOnly({
|
|
213
|
+
port: options.webPort,
|
|
214
|
+
});
|
|
215
|
+
webOnlyMode = true;
|
|
216
|
+
}
|
|
217
|
+
else {
|
|
218
|
+
throw initError;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
201
221
|
// Start the fleet
|
|
202
222
|
await manager.start();
|
|
203
223
|
// Write PID file
|
|
204
224
|
const pidFile = await writePidFile(stateDir);
|
|
205
225
|
console.log(`PID file written: ${pidFile}`);
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
226
|
+
if (!webOnlyMode) {
|
|
227
|
+
// Get and display startup status
|
|
228
|
+
const status = await manager.getFleetStatus();
|
|
229
|
+
const agents = await manager.getAgentInfo();
|
|
230
|
+
console.log(formatStartupStatus(status, agents));
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
console.log("");
|
|
234
|
+
console.log("Press Ctrl+C to stop the server");
|
|
235
|
+
console.log("");
|
|
236
|
+
}
|
|
210
237
|
// Stream logs to stdout
|
|
211
238
|
// This keeps the process running since it's an async iterator
|
|
212
239
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAEL,mBAAmB,
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAEL,mBAAmB,EACnB,kBAAkB,EAElB,YAAY,EAEZ,mBAAmB,EAEnB,aAAa,EACb,SAAS,GACV,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EACL,QAAQ,EACR,MAAM,EACN,aAAa,EACb,eAAe,EACf,cAAc,GACf,MAAM,oBAAoB,CAAC;AAU5B;;GAEG;AACH,MAAM,iBAAiB,GAAG,UAAU,CAAC;AAErC;;GAEG;AACH,SAAS,mBAAmB,CAAC,MAAmB,EAAE,MAAoB;IACpE,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IACrC,KAAK,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IACnD,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IAEzD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,iDAAiD;IACjD,IAAI,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;QAC/D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAE/B,sBAAsB;QACtB,MAAM,UAAU,GAAgB,EAAE,CAAC;QACnC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAuB,CAAC;QAEnD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrD,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACtC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBACzC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAClB,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,WAAW,EAAE,CAAC;YAClD,KAAK,CAAC,IAAI,CAAC,KAAK,QAAQ,GAAG,CAAC,CAAC;YAC7B,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;gBAChC,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAC7C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,YAAoB;IAC3C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE;QACpC,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,KAAK;KACd,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,KAAe;IACrC,MAAM,SAAS,GAAG,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;IACpE,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAExF,qBAAqB;IACrB,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,WAAW,GAAG,QAAQ,CAAC,IAAI,KAAK,CAAC,SAAS,GAAG,EAAE,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACtF,CAAC;SAAM,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACxB,WAAW,GAAG,QAAQ,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACxF,CAAC;IAED,oDAAoD;IACpD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEzF,4DAA4D;IAC5D,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,UAAgC,CAAC;IAChE,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,GAAG,SAAS,IAAI,KAAK,IAAI,WAAW,GAAG,OAAO,IAAI,OAAO,EAAE,CAAC;AACrE,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,YAAY,CAAC,QAAgB;IAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;IAEnC,gCAAgC;IAChC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEvD,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IACnD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,aAAa,CAAC,QAAgB;IAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAEnD,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,+BAA+B;QAC/B,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAAqB;IACtD,iFAAiF;IACjF,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,OAAO,CAAC;IAC1C,CAAC;IAED,uEAAuE;IACvE,aAAa,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QAC7C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAAE,OAAO;QAC9B,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QAC/E,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,MAAM,GAAG,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,QAAQ;YACrB,CAAC,CAAC,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE;YAClD,CAAC,CAAC,GAAG,OAAO,GAAG,OAAO,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,GAAG,QAAQ,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,IAAI,iBAAiB,CAAC;IAEpD,wCAAwC;IACxC,IAAI,eAAiD,CAAC;IACtD,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC/D,eAAe,GAAG;YAChB,GAAG,EAAE;gBACH,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;gBAC1D,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;aAChE;SACF,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;IACzB,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAEjC,8DAA8D;IAC9D,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC;QAC/B,UAAU,EAAE,OAAO,CAAC,MAAM;QAC1B,QAAQ;QACR,eAAe;KAChB,CAAC,CAAC;IAEH,qEAAqE;IACrE,IAAI,cAAc,GAAG,KAAK,CAAC;IAE3B;;OAEG;IACH,KAAK,UAAU,QAAQ,CAAC,MAAc;QACpC,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QACD,cAAc,GAAG,IAAI,CAAC;QAEtB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,+BAA+B,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,IAAI,CAAC;gBACjB,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,KAAK;gBACd,eAAe,EAAE,IAAI;aACtB,CAAC,CAAC;YAEH,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;YAE9B,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,wBAAwB,EACxB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAC;YACF,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IAEjD,IAAI,CAAC;QACH,+BAA+B;QAC/B,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;QAC7B,CAAC;QAAC,OAAO,SAAS,EAAE,CAAC;YACnB,sDAAsD;YACtD,MAAM,gBAAgB,GACpB,SAAS,YAAY,mBAAmB;gBACxC,CAAC,SAAS,YAAY,kBAAkB,IAAI,SAAS,CAAC,KAAK,YAAY,mBAAmB,CAAC,CAAC;YAE9F,IAAI,gBAAgB,EAAE,CAAC;gBACrB,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;gBACpE,OAAO,CAAC,GAAG,CACT,yDAAyD,EACzD,OAAO,CAAC,OAAO,IAAI,IAAI,CACxB,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAEhB,MAAM,OAAO,CAAC,iBAAiB,CAAC;oBAC9B,IAAI,EAAE,OAAO,CAAC,OAAO;iBACtB,CAAC,CAAC;gBACH,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,MAAM,SAAS,CAAC;YAClB,CAAC;QACH,CAAC;QAED,kBAAkB;QAClB,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QAEtB,iBAAiB;QACjB,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,qBAAqB,OAAO,EAAE,CAAC,CAAC;QAE5C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,iCAAiC;YACjC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;QAED,wBAAwB;QACxB,8DAA8D;QAC9D,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;gBACvF,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,kEAAkE;YAClE,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,8BAA8B;QAC9B,IAAI,KAAK,YAAY,mBAAmB,EAAE,CAAC;YACzC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACrD,OAAO,CAAC,KAAK,CAAC,kBAAkB,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;YACxD,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;YACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACzC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,gBAAgB;QAChB,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAChF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "herdctl",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0",
|
|
4
4
|
"description": "Autonomous Agent Fleet Management for Claude Code",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -17,10 +17,10 @@
|
|
|
17
17
|
"@inquirer/prompts": "^8.2.0",
|
|
18
18
|
"commander": "^12",
|
|
19
19
|
"yaml": "^2",
|
|
20
|
-
"@herdctl/core": "5.
|
|
21
|
-
"@herdctl/discord": "1.0.
|
|
22
|
-
"@herdctl/slack": "1.2.
|
|
23
|
-
"@herdctl/web": "0.9.
|
|
20
|
+
"@herdctl/core": "5.8.0",
|
|
21
|
+
"@herdctl/discord": "1.0.14",
|
|
22
|
+
"@herdctl/slack": "1.2.8",
|
|
23
|
+
"@herdctl/web": "0.9.2"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
26
|
"typescript": "^5",
|