@adamancyzhang/claude-orchestrator 0.2.8 → 0.3.1

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.
Files changed (91) hide show
  1. package/README.md +179 -186
  2. package/dist/cli/commands.d.ts +13 -20
  3. package/dist/cli/commands.js +171 -288
  4. package/dist/cli/commands.js.map +1 -1
  5. package/dist/config.d.ts +25 -11
  6. package/dist/config.js +49 -13
  7. package/dist/config.js.map +1 -1
  8. package/dist/index.js +122 -215
  9. package/dist/index.js.map +1 -1
  10. package/dist/leader/decision-engine.d.ts +35 -0
  11. package/dist/leader/decision-engine.js +102 -0
  12. package/dist/leader/decision-engine.js.map +1 -0
  13. package/dist/leader/event-bus.d.ts +11 -0
  14. package/dist/leader/event-bus.js +21 -0
  15. package/dist/leader/event-bus.js.map +1 -0
  16. package/dist/leader/index.d.ts +7 -0
  17. package/dist/leader/index.js +96 -0
  18. package/dist/leader/index.js.map +1 -0
  19. package/dist/leader/monitor.d.ts +14 -0
  20. package/dist/leader/monitor.js +55 -0
  21. package/dist/leader/monitor.js.map +1 -0
  22. package/dist/leader/orchestrator.d.ts +14 -0
  23. package/dist/leader/orchestrator.js +83 -0
  24. package/dist/leader/orchestrator.js.map +1 -0
  25. package/dist/leader/recovery.d.ts +11 -0
  26. package/dist/leader/recovery.js +61 -0
  27. package/dist/leader/recovery.js.map +1 -0
  28. package/dist/leader/state.d.ts +24 -0
  29. package/dist/leader/state.js +122 -0
  30. package/dist/leader/state.js.map +1 -0
  31. package/dist/leader/task-generator.d.ts +34 -0
  32. package/dist/leader/task-generator.js +93 -0
  33. package/dist/leader/task-generator.js.map +1 -0
  34. package/dist/leader/tui.d.ts +5 -0
  35. package/dist/leader/tui.js +136 -0
  36. package/dist/leader/tui.js.map +1 -0
  37. package/dist/leader/watcher.d.ts +18 -0
  38. package/dist/leader/watcher.js +89 -0
  39. package/dist/leader/watcher.js.map +1 -0
  40. package/dist/models/schemas.d.ts +111 -100
  41. package/dist/models/schemas.js +54 -45
  42. package/dist/models/schemas.js.map +1 -1
  43. package/dist/modules/message-router.d.ts +2 -2
  44. package/dist/modules/message-router.js +10 -16
  45. package/dist/modules/message-router.js.map +1 -1
  46. package/dist/modules/registry.js +3 -3
  47. package/dist/modules/registry.js.map +1 -1
  48. package/dist/modules/task-queue.d.ts +4 -1
  49. package/dist/modules/task-queue.js +114 -10
  50. package/dist/modules/task-queue.js.map +1 -1
  51. package/dist/skills/CLAUDE.md +155 -0
  52. package/dist/skills/claude-code-developer/SKILL.md +325 -0
  53. package/dist/skills/claude-orchestrator/SKILL.md +180 -0
  54. package/dist/skills/task-acceptance/SKILL.md +201 -0
  55. package/dist/skills/task-execution/SKILL.md +142 -0
  56. package/dist/skills/task-planning/SKILL.md +188 -0
  57. package/dist/skills/task-review/SKILL.md +220 -0
  58. package/dist/skills/task-traceability/SKILL.md +154 -0
  59. package/dist/skills/task-verification/SKILL.md +194 -0
  60. package/dist/templates/leader-decide.md +59 -0
  61. package/dist/templates/leader-decompose.md +69 -0
  62. package/dist/templates/worker-accept.md +46 -0
  63. package/dist/templates/worker-build.md +45 -0
  64. package/dist/templates/worker-plan.md +43 -0
  65. package/dist/templates/worker-review.md +46 -0
  66. package/dist/templates/worker-verify.md +47 -0
  67. package/dist/utils/exec.d.ts +8 -0
  68. package/dist/utils/exec.js +45 -0
  69. package/dist/utils/exec.js.map +1 -0
  70. package/dist/worker/watcher.d.ts +19 -0
  71. package/dist/worker/watcher.js +152 -0
  72. package/dist/worker/watcher.js.map +1 -0
  73. package/dist/zk/client.d.ts +5 -5
  74. package/dist/zk/client.js +16 -26
  75. package/dist/zk/client.js.map +1 -1
  76. package/dist/zk/paths.d.ts +9 -9
  77. package/dist/zk/paths.js +4 -5
  78. package/dist/zk/paths.js.map +1 -1
  79. package/dist/zk/watcher.d.ts +0 -2
  80. package/dist/zk/watcher.js +0 -3
  81. package/dist/zk/watcher.js.map +1 -1
  82. package/package.json +3 -6
  83. package/dist/modules/context-store.d.ts +0 -10
  84. package/dist/modules/context-store.js +0 -25
  85. package/dist/modules/context-store.js.map +0 -1
  86. package/dist/modules/message-watcher.d.ts +0 -12
  87. package/dist/modules/message-watcher.js +0 -133
  88. package/dist/modules/message-watcher.js.map +0 -1
  89. package/dist/server.d.ts +0 -2
  90. package/dist/server.js +0 -490
  91. package/dist/server.js.map +0 -1
package/dist/config.js CHANGED
@@ -1,22 +1,46 @@
1
1
  import * as fs from "node:fs";
2
2
  import * as path from "node:path";
3
3
  import * as os from "node:os";
4
- const GLOBAL_CONFIG_DIR = path.join(os.homedir(), ".claude-orchestrator");
5
- const GLOBAL_CONFIG_FILE = path.join(GLOBAL_CONFIG_DIR, "config.json");
4
+ export const GLOBAL_CONFIG_DIR = path.join(os.homedir(), ".claude-orchestrator");
5
+ export const GLOBAL_CONFIG_FILE = path.join(GLOBAL_CONFIG_DIR, "config.json");
6
6
  function projectConfigDir() {
7
7
  return path.join(process.cwd(), ".claude-orchestrator");
8
8
  }
9
9
  function projectConfigFile() {
10
10
  return path.join(projectConfigDir(), "config.json");
11
11
  }
12
+ function defaultZkConfig() {
13
+ return { url: "127.0.0.1:2181", root_path: "/claude-orchestrator", auth: null };
14
+ }
15
+ function defaultCacheDir() {
16
+ return "~/.claude-orchestrator/sessions";
17
+ }
18
+ function defaultCliCommand() {
19
+ return "claude --dangerously-skip-permissions --permission-mode dontAsk";
20
+ }
12
21
  export function loadConfig(cliOpts) {
13
- const zkHosts = cliOpts.zookeeper ||
14
- process.env.ZK_HOSTS ||
15
- "127.0.0.1:2181";
16
- const port = parseInt(cliOpts.port || process.env.ORCHESTRATOR_PORT || "3100", 10);
17
- const host = cliOpts.host || process.env.ORCHESTRATOR_HOST || "127.0.0.1";
18
- const instanceId = cliOpts.instanceId || loadInstanceId() || undefined;
19
- return { zkHosts, port, host, instanceId };
22
+ const global = loadGlobalConfig();
23
+ const project = loadProjectConfig();
24
+ // ZK config from global, with CLI/env override for url
25
+ const zk = {
26
+ ...defaultZkConfig(),
27
+ ...global.zookeeper,
28
+ };
29
+ if (cliOpts.zookeeper) {
30
+ zk.url = cliOpts.zookeeper;
31
+ }
32
+ else if (process.env.ZK_HOSTS) {
33
+ zk.url = process.env.ZK_HOSTS;
34
+ }
35
+ const cacheDir = global.cache_dir || defaultCacheDir();
36
+ // Command: project overrides global
37
+ const mergedCommands = project.commands || global.commands;
38
+ const cliCommand = mergedCommands?.["claude-cli"] || defaultCliCommand();
39
+ const leaderSync = mergedCommands?.["leader-sync"] ?? null;
40
+ const instanceId = project.instance_id;
41
+ const name = project.name;
42
+ const role = project.role;
43
+ return { zk, cacheDir, cliCommand, leaderSync, instanceId, name, role };
20
44
  }
21
45
  function readConfigFile(filePath) {
22
46
  try {
@@ -40,12 +64,18 @@ export function saveInstanceConfig(config, global = false) {
40
64
  writeConfigFile(filePath, { ...existing, ...config });
41
65
  }
42
66
  export function loadInstanceConfig() {
43
- const project = readConfigFile(projectConfigFile());
44
- const global = readConfigFile(GLOBAL_CONFIG_FILE);
67
+ const project = loadProjectConfig();
68
+ const global = loadGlobalConfig();
45
69
  return { ...global, ...project };
46
70
  }
47
- export function saveInstanceId(instanceId, global = false) {
48
- saveInstanceConfig({ instance_id: instanceId }, global);
71
+ export function loadGlobalConfig() {
72
+ return readConfigFile(GLOBAL_CONFIG_FILE);
73
+ }
74
+ function loadProjectConfig() {
75
+ return readConfigFile(projectConfigFile());
76
+ }
77
+ export function saveInstanceId(instanceId) {
78
+ saveInstanceConfig({ instance_id: instanceId }, false);
49
79
  }
50
80
  export function loadInstanceId() {
51
81
  const config = loadInstanceConfig();
@@ -59,4 +89,10 @@ export function resolveInstanceId(cliInstanceId) {
59
89
  }
60
90
  return resolved;
61
91
  }
92
+ export function expandHomeDir(p) {
93
+ if (p.startsWith("~")) {
94
+ return path.join(os.homedir(), p.slice(1));
95
+ }
96
+ return p;
97
+ }
62
98
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { Command } from "commander";
3
- import { loadConfig, loadInstanceId } from "./config.js";
4
- import { cmdStatus, cmdRegister, cmdHeartbeat, cmdListInstances, cmdPushTask, cmdClaimTask, cmdCompleteTask, cmdListTasks, cmdSendMessage, cmdPollMessages, cmdWaitForMessage, cmdDismissMessage, cmdRequestHelp, cmdSetContext, cmdGetContext, cmdDeleteContext, cmdListContextKeys, cmdWatchContext, cmdWatchTasks, cmdUnregister, cmdSetup, } from "./cli/commands.js";
3
+ import { loadConfig, loadInstanceConfig } from "./config.js";
4
+ import { cmdRegister, cmdPushTask, cmdClaimTask, cmdCompleteTask, cmdPollTask, cmdSendMessage, cmdPollMessage, cmdDeleteMessage, cmdUnregister, cmdSetup, cmdTaskBlock, cmdTaskFail, cmdTaskRetry, } from "./cli/commands.js";
5
5
  import { output } from "./utils/output.js";
6
6
  import { readFileSync } from "node:fs";
7
7
  import { fileURLToPath } from "node:url";
@@ -13,130 +13,89 @@ program
13
13
  .name("claude-orchestrator")
14
14
  .description("Multi-agent orchestration CLI backed by ZooKeeper")
15
15
  .version(pkg.version)
16
- .option("-z, --zookeeper <hosts>", "ZooKeeper connection string (env: ZK_HOSTS)", "127.0.0.1:2181")
17
- .option("-i, --instance-id <id>", "Instance ID (reads from .claude-orchestrator/config.json or ~/.claude-orchestrator/config.json if omitted)")
18
- .hook("preAction", (thisCmd) => {
19
- const opts = thisCmd.opts();
20
- if (process.env.ZK_HOSTS && (!opts.zookeeper || opts.zookeeper === "127.0.0.1:2181")) {
21
- thisCmd.setOptionValue("zookeeper", process.env.ZK_HOSTS);
22
- }
23
- });
24
- // Helper to extract typed options from a Command
25
- function getOpts(cmd) {
26
- return cmd.optsWithGlobals();
16
+ .option("-z, --zookeeper <hosts>", "ZooKeeper connection string (env: ZK_HOSTS)", "127.0.0.1:2181");
17
+ function getZkHosts(cmd) {
18
+ return cmd.optsWithGlobals().zookeeper || "127.0.0.1:2181";
27
19
  }
28
20
  function getSubOpts(cmd) {
29
21
  return cmd.opts();
30
22
  }
31
23
  // ── Commands ──
24
+ // ── Control Commands ──
32
25
  program
33
- .command("status")
34
- .description("Check server connection and ZooKeeper health")
26
+ .command("leader")
27
+ .description("Start Leader node (TUI orchestration console)")
28
+ .option("--name <name>", "Leader display name")
35
29
  .action(async function () {
36
- try {
37
- await cmdStatus(getOpts(this).zookeeper);
38
- }
39
- catch (e) {
40
- output({ status: "error", zookeeper: String(e), instances_online: 0 }, true);
41
- }
30
+ const { name } = getSubOpts(this);
31
+ const config = loadConfig({ zookeeper: getZkHosts(this) });
32
+ const { startLeader } = await import("./leader/index.js");
33
+ await startLeader({
34
+ zkHosts: config.zk.url,
35
+ name,
36
+ instanceId: config.instanceId,
37
+ command: config.cliCommand,
38
+ cacheDir: config.cacheDir,
39
+ });
42
40
  });
43
41
  program
44
42
  .command("register")
45
- .description("Register this instance with the orchestrator")
46
- .option("--name <name>", "Display name (reads from config if omitted)")
47
- .option("--role <role>", "Instance role (reads from config if omitted)")
48
- .action(async function () {
49
- try {
50
- const { name, role } = getSubOpts(this);
51
- const { zookeeper, instanceId } = getOpts(this);
52
- await cmdRegister(zookeeper, instanceId, name, role);
53
- }
54
- catch (e) {
55
- output({ error: String(e) }, true);
56
- }
57
- });
58
- program
59
- .command("heartbeat")
60
- .description("Send heartbeat to keep registration alive")
61
- .option("--current-task <id>", "Current task title (omit to clear)")
62
- .action(async function () {
63
- try {
64
- const { currentTask } = getSubOpts(this);
65
- const { zookeeper, instanceId } = getOpts(this);
66
- await cmdHeartbeat(zookeeper, instanceId, currentTask);
67
- }
68
- catch (e) {
69
- output({ error: String(e) }, true);
70
- }
71
- });
72
- program
73
- .command("list-instances")
74
- .description("List all active instances")
75
- .action(async function () {
76
- try {
77
- await cmdListInstances(getOpts(this).zookeeper);
78
- }
79
- catch (e) {
80
- output({ error: String(e) }, true);
81
- }
82
- });
83
- program
84
- .command("push-task")
85
- .description("Create and push a new task to the queue")
86
- .requiredOption("--title <title>", "Task title")
87
- .option("--description <text>", "Task description", "")
88
- .option("--priority <n>", "Priority: 0=HIGH, 1=MEDIUM, 2=LOW", "1")
89
- .option("--assignee <id>", "Target instance ID")
43
+ .description("Register as Worker and listen for messages (Ctrl+C to stop)")
90
44
  .action(async function () {
91
45
  try {
92
- const { title, description, priority, assignee } = getSubOpts(this);
93
- const { zookeeper, instanceId } = getOpts(this);
94
- await cmdPushTask(zookeeper, instanceId, title, description, parseInt(priority), assignee);
46
+ await cmdRegister(getZkHosts(this));
95
47
  }
96
48
  catch (e) {
97
49
  output({ error: String(e) }, true);
98
50
  }
99
51
  });
100
52
  program
101
- .command("claim-task")
102
- .description("Claim the highest-priority pending task")
53
+ .command("unregister")
54
+ .description("Explicitly unregister an instance")
55
+ .option("--instance-id <id>", "Instance ID (default from project config)")
103
56
  .action(async function () {
104
57
  try {
105
- const { zookeeper, instanceId } = getOpts(this);
106
- await cmdClaimTask(zookeeper, instanceId);
58
+ const { instanceId } = getSubOpts(this);
59
+ await cmdUnregister(getZkHosts(this), instanceId);
107
60
  }
108
61
  catch (e) {
109
62
  output({ error: String(e) }, true);
110
63
  }
111
64
  });
112
65
  program
113
- .command("complete-task")
114
- .description("Mark a claimed task as completed")
115
- .requiredOption("--task-id <id>", "Task ID to complete")
116
- .requiredOption("--result <text>", "Summary of what was accomplished")
66
+ .command("config")
67
+ .description("Show current configuration")
117
68
  .action(async function () {
118
- try {
119
- const { taskId, result } = getSubOpts(this);
120
- const { zookeeper, instanceId } = getOpts(this);
121
- await cmdCompleteTask(zookeeper, instanceId, taskId, result);
122
- }
123
- catch (e) {
124
- output({ error: String(e) }, true);
125
- }
69
+ const config = loadConfig({ zookeeper: getZkHosts(this) });
70
+ const projectConfig = loadInstanceConfig();
71
+ output({
72
+ zookeeper: config.zk,
73
+ global: {
74
+ cache_dir: config.cacheDir,
75
+ "commands.claude-cli": config.cliCommand,
76
+ "commands.leader-sync": config.leaderSync,
77
+ },
78
+ project: {
79
+ name: projectConfig.name || "(not set)",
80
+ role: projectConfig.role || "(not set)",
81
+ instance_id: projectConfig.instance_id || "(not set)",
82
+ },
83
+ });
126
84
  });
127
85
  program
128
- .command("list-tasks")
129
- .description("List tasks, optionally filtered by status")
130
- .option("--status <status>", "Filter: pending, claimed, completed")
86
+ .command("setup")
87
+ .description("Initialize orchestrator environment and agent templates")
88
+ .option("--leader", "Initialize as Leader environment", false)
89
+ .option("--name <name>", "Instance display name")
90
+ .option("--role <role>", "Instance role (planner/builder/verifier/reviewer/accepter)")
91
+ .option("--cache-dir <path>", "Shared cache directory (default: ~/.claude-orchestrator/sessions)")
92
+ .option("--command <cmd>", "Claude CLI command (default: claude --dangerously-skip-permissions -v)")
93
+ .option("--global", "Write config only to ~/.claude-orchestrator/", false)
131
94
  .action(async function () {
132
- try {
133
- const { status } = getSubOpts(this);
134
- await cmdListTasks(getOpts(this).zookeeper, status);
135
- }
136
- catch (e) {
137
- output({ error: String(e) }, true);
138
- }
95
+ const { leader, name, role, cacheDir, command, global: isGlobal } = getSubOpts(this);
96
+ await cmdSetup({ leader, name, role, cacheDir, command, global: isGlobal, instanceId: undefined });
139
97
  });
98
+ // ── Message Commands ──
140
99
  program
141
100
  .command("send-message")
142
101
  .description("Send a message to another instance or broadcast to all")
@@ -144,207 +103,155 @@ program
144
103
  .option("--to <id>", "Recipient instance ID")
145
104
  .option("--to-name <name>", "Recipient instance name (e.g. @Tom, @All)")
146
105
  .option("--broadcast", "Send to all instances", false)
106
+ .option("--request-help", "Send as a help request", false)
107
+ .option("--instance-id <id>", "Sender instance ID (default from project config)")
147
108
  .action(async function () {
148
109
  try {
149
- const { content, to, toName, broadcast } = getSubOpts(this);
150
- if (!to && !toName && !broadcast) {
151
- throw new Error("Must specify --to, --to-name, or --broadcast");
110
+ const { content, to, toName, broadcast, requestHelp, instanceId } = getSubOpts(this);
111
+ if (!to && !toName && !broadcast && !requestHelp) {
112
+ throw new Error("Must specify --to, --to-name, --broadcast, or --request-help");
152
113
  }
153
- const { zookeeper, instanceId } = getOpts(this);
154
- await cmdSendMessage(zookeeper, instanceId, content, to, broadcast, toName);
114
+ await cmdSendMessage(getZkHosts(this), instanceId, content, to, broadcast, toName, requestHelp);
155
115
  }
156
116
  catch (e) {
157
117
  output({ error: String(e) }, true);
158
118
  }
159
119
  });
160
120
  program
161
- .command("poll-messages")
121
+ .command("poll-message")
162
122
  .description("Check for new messages")
123
+ .option("--instance-id <id>", "Instance ID (default from project config)")
163
124
  .action(async function () {
164
125
  try {
165
- const { zookeeper, instanceId } = getOpts(this);
166
- await cmdPollMessages(zookeeper, instanceId);
167
- }
168
- catch (e) {
169
- output({ error: String(e) }, true);
170
- }
171
- });
172
- program
173
- .command("wait-for-message")
174
- .description("Wait for new messages (long poll)")
175
- .option("--timeout <seconds>", "Timeout in seconds", "30")
176
- .action(async function () {
177
- try {
178
- const { timeout } = getSubOpts(this);
179
- const { zookeeper, instanceId } = getOpts(this);
180
- await cmdWaitForMessage(zookeeper, instanceId, parseInt(timeout));
126
+ const { instanceId } = getSubOpts(this);
127
+ await cmdPollMessage(getZkHosts(this), instanceId);
181
128
  }
182
129
  catch (e) {
183
130
  output({ error: String(e) }, true);
184
131
  }
185
132
  });
186
133
  program
187
- .command("dismiss-message")
188
- .description("Dismiss (delete) a message")
189
- .requiredOption("--message-id <id>", "Message ID to dismiss")
134
+ .command("delete-message")
135
+ .description("Delete a message")
136
+ .requiredOption("--message-id <id>", "Message ID to delete")
137
+ .option("--instance-id <id>", "Instance ID (default from project config)")
190
138
  .action(async function () {
191
139
  try {
192
- const { messageId } = getSubOpts(this);
193
- const { zookeeper, instanceId } = getOpts(this);
194
- await cmdDismissMessage(zookeeper, instanceId, messageId);
140
+ const { messageId, instanceId } = getSubOpts(this);
141
+ await cmdDeleteMessage(getZkHosts(this), instanceId, messageId);
195
142
  }
196
143
  catch (e) {
197
144
  output({ error: String(e) }, true);
198
145
  }
199
146
  });
147
+ // ── Task Commands ──
200
148
  program
201
- .command("request-help")
202
- .description("Broadcast a help request to all online instances")
203
- .requiredOption("--question <text>", "Your question or problem description")
204
- .option("--context <text>", "Additional context (stack traces, logs)")
205
- .action(async function () {
206
- try {
207
- const { question, context } = getSubOpts(this);
208
- const { zookeeper, instanceId } = getOpts(this);
209
- await cmdRequestHelp(zookeeper, instanceId, question, context);
210
- }
211
- catch (e) {
212
- output({ error: String(e) }, true);
213
- }
214
- });
215
- program
216
- .command("set-context")
217
- .description("Store a shared context key-value pair")
218
- .requiredOption("--key <key>", "Context key")
219
- .requiredOption("--value <value>", "Context value")
149
+ .command("push-task")
150
+ .description("Create and push a new task to the queue")
151
+ .requiredOption("--title <title>", "Task title")
152
+ .option("--description <text>", "Task description", "")
153
+ .option("--priority <n>", "Priority: 0=HIGH, 1=MEDIUM, 2=LOW", "1")
154
+ .option("--assignee <id>", "Target instance ID")
155
+ .option("--link <link>", "Responsibility chain link: plan, build, verify, review, accept")
156
+ .option("--chain-id <id>", "Chain identifier for grouping related tasks")
157
+ .option("--depends-on <ids>", "Comma-separated task IDs this task depends on")
158
+ .option("--blocked-by <ids>", "Comma-separated task IDs blocking this task")
159
+ .option("--instance-id <id>", "Creator instance ID (default from project config)")
220
160
  .action(async function () {
221
161
  try {
222
- const { key, value } = getSubOpts(this);
223
- const { zookeeper, instanceId } = getOpts(this);
224
- await cmdSetContext(zookeeper, instanceId, key, value);
162
+ const { title, description, priority, assignee, link, chainId, dependsOn, blockedBy, instanceId } = getSubOpts(this);
163
+ const dependsOnArr = dependsOn ? dependsOn.split(",").map(s => s.trim()).filter(Boolean) : undefined;
164
+ const blockedByArr = blockedBy ? blockedBy.split(",").map(s => s.trim()).filter(Boolean) : undefined;
165
+ await cmdPushTask(getZkHosts(this), instanceId, title, description, parseInt(priority), assignee, link, chainId, dependsOnArr, blockedByArr);
225
166
  }
226
167
  catch (e) {
227
168
  output({ error: String(e) }, true);
228
169
  }
229
170
  });
230
171
  program
231
- .command("get-context")
232
- .description("Retrieve a shared context value by key")
233
- .requiredOption("--key <key>", "Context key to retrieve")
172
+ .command("poll-task")
173
+ .description("List tasks, optionally filtered by status")
174
+ .option("--status <status>", "Filter: pending, claimed, completed, blocked, failed")
234
175
  .action(async function () {
235
176
  try {
236
- const { key } = getSubOpts(this);
237
- await cmdGetContext(getOpts(this).zookeeper, key);
177
+ const { status } = getSubOpts(this);
178
+ await cmdPollTask(getZkHosts(this), status);
238
179
  }
239
180
  catch (e) {
240
181
  output({ error: String(e) }, true);
241
182
  }
242
183
  });
243
184
  program
244
- .command("delete-context")
245
- .description("Delete a shared context key")
246
- .requiredOption("--key <key>", "Context key to delete")
185
+ .command("claim-task")
186
+ .description("Claim the highest-priority pending task")
187
+ .option("--instance-id <id>", "Instance ID (default from project config)")
247
188
  .action(async function () {
248
189
  try {
249
- const { key } = getSubOpts(this);
250
- await cmdDeleteContext(getOpts(this).zookeeper, key);
190
+ const { instanceId } = getSubOpts(this);
191
+ await cmdClaimTask(getZkHosts(this), instanceId);
251
192
  }
252
193
  catch (e) {
253
194
  output({ error: String(e) }, true);
254
195
  }
255
196
  });
256
197
  program
257
- .command("list-context-keys")
258
- .description("List all shared context keys")
198
+ .command("complete-task")
199
+ .description("Mark a claimed task as completed")
200
+ .requiredOption("--task-id <id>", "Task ID to complete")
201
+ .requiredOption("--result <text>", "Summary of what was accomplished")
202
+ .option("--instance-id <id>", "Instance ID (default from project config)")
259
203
  .action(async function () {
260
204
  try {
261
- await cmdListContextKeys(getOpts(this).zookeeper);
205
+ const { taskId, result, instanceId } = getSubOpts(this);
206
+ await cmdCompleteTask(getZkHosts(this), instanceId, taskId, result);
262
207
  }
263
208
  catch (e) {
264
209
  output({ error: String(e) }, true);
265
210
  }
266
211
  });
267
212
  program
268
- .command("watch-context")
269
- .description("Watch a context key for changes (blocks until change)")
270
- .requiredOption("--key <key>", "Context key to watch")
213
+ .command("task-block")
214
+ .description("Mark a claimed task as blocked")
215
+ .requiredOption("--task-id <id>", "Task ID")
216
+ .requiredOption("--reason <text>", "Blocking reason")
217
+ .option("--instance-id <id>", "Instance ID (default from project config)")
271
218
  .action(async function () {
272
219
  try {
273
- const { key } = getSubOpts(this);
274
- await cmdWatchContext(getOpts(this).zookeeper, key);
220
+ const { taskId, reason, instanceId } = getSubOpts(this);
221
+ await cmdTaskBlock(getZkHosts(this), instanceId, taskId, reason);
275
222
  }
276
223
  catch (e) {
277
224
  output({ error: String(e) }, true);
278
225
  }
279
226
  });
280
227
  program
281
- .command("watch-tasks")
282
- .description("Watch for new tasks (blocks until change)")
228
+ .command("task-fail")
229
+ .description("Mark a claimed task as failed")
230
+ .requiredOption("--task-id <id>", "Task ID")
231
+ .requiredOption("--reason <text>", "Failure reason")
232
+ .option("--instance-id <id>", "Instance ID (default from project config)")
283
233
  .action(async function () {
284
234
  try {
285
- await cmdWatchTasks(getOpts(this).zookeeper);
235
+ const { taskId, reason, instanceId } = getSubOpts(this);
236
+ await cmdTaskFail(getZkHosts(this), instanceId, taskId, reason);
286
237
  }
287
238
  catch (e) {
288
239
  output({ error: String(e) }, true);
289
240
  }
290
241
  });
291
242
  program
292
- .command("unregister")
293
- .description("Explicitly unregister an instance")
243
+ .command("task-retry")
244
+ .description("Re-queue a failed task for retry")
245
+ .requiredOption("--task-id <id>", "Task ID to retry")
294
246
  .action(async function () {
295
247
  try {
296
- const { zookeeper, instanceId } = getOpts(this);
297
- await cmdUnregister(zookeeper, instanceId);
248
+ const { taskId } = getSubOpts(this);
249
+ await cmdTaskRetry(getZkHosts(this), undefined, taskId);
298
250
  }
299
251
  catch (e) {
300
252
  output({ error: String(e) }, true);
301
253
  }
302
254
  });
303
- program
304
- .command("config")
305
- .description("Show current configuration")
306
- .action(async function () {
307
- const opts = getOpts(this);
308
- const resolvedId = opts.instanceId || loadInstanceId();
309
- output({
310
- zookeeper: opts.zookeeper,
311
- instance_id: resolvedId || "(not set)",
312
- config_dir: "~/.claude-orchestrator/",
313
- });
314
- });
315
- program
316
- .command("setup")
317
- .description("Configure Claude Code MCP connection in the working directory")
318
- .option("--port <port>", "Orchestrator server port (default: 3100)", "3100")
319
- .option("--host <host>", "Orchestrator server host (default: 127.0.0.1)", "127.0.0.1")
320
- .option("--name <name>", "Instance name for X-Instance-Name header")
321
- .option("--role <role>", "Instance role for X-Instance-Role header")
322
- .option("--global", "Write to ~/.claude/mcp.json instead of local .claude/mcp.json", false)
323
- .option("--with-hook", "Add SessionStart hook to auto-register on Claude Code startup", false)
324
- .action(async function () {
325
- const { port, host, name, role, global: isGlobal, withHook } = getSubOpts(this);
326
- await cmdSetup({ port, host, name, role, global: isGlobal, withHook });
327
- });
328
- program
329
- .command("server")
330
- .description("Start MCP server")
331
- .option("--port <port>", "Server port (env: ORCHESTRATOR_PORT)", process.env.ORCHESTRATOR_PORT || "3100")
332
- .option("--host <host>", "Server host (env: ORCHESTRATOR_HOST)", process.env.ORCHESTRATOR_HOST || "127.0.0.1")
333
- .option("--name <name>", "Instance name for the server")
334
- .option("--role <role>", "Instance role for the server")
335
- .action(async function () {
336
- const { port, host, name, role } = getSubOpts(this);
337
- const { zookeeper } = getOpts(this);
338
- const { startServer } = await import("./server.js");
339
- const config = loadConfig({ zookeeper, port, host });
340
- try {
341
- await startServer(config);
342
- }
343
- catch (e) {
344
- console.error("Failed to start server:", e);
345
- process.exit(1);
346
- }
347
- });
348
255
  // ── Main entry ──
349
256
  async function main() {
350
257
  program.parse();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EACL,SAAS,EACT,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,aAAa,EACb,QAAQ,GACT,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAErF,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,qBAAqB,CAAC;KAC3B,WAAW,CAAC,mDAAmD,CAAC;KAChE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;KACpB,MAAM,CACL,yBAAyB,EACzB,6CAA6C,EAC7C,gBAAgB,CACjB;KACA,MAAM,CACL,wBAAwB,EACxB,4GAA4G,CAC7G;KACA,IAAI,CAAC,WAAW,EAAE,CAAC,OAAgB,EAAE,EAAE;IACtC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC5B,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,gBAAgB,CAAC,EAAE,CAAC;QACrF,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,iDAAiD;AACjD,SAAS,OAAO,CAAC,GAAY;IAI3B,OAAO,GAAG,CAAC,eAAe,EAAgD,CAAC;AAC7E,CAAC;AAED,SAAS,UAAU,CAAI,GAAY;IACjC,OAAO,GAAG,CAAC,IAAI,EAAO,CAAC;AACzB,CAAC;AAED,iBAAiB;AAEjB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,8CAA8C,CAAC;KAC3D,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC/E,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,8CAA8C,CAAC;KAC3D,MAAM,CAAC,eAAe,EAAE,6CAA6C,CAAC;KACtE,MAAM,CAAC,eAAe,EAAE,8CAA8C,CAAC;KACvE,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,UAAU,CAAmC,IAAI,CAAC,CAAC;QAC1E,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,WAAW,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACvD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,2CAA2C,CAAC;KACxD,MAAM,CAAC,qBAAqB,EAAE,oCAAoC,CAAC;KACnE,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,WAAW,EAAE,GAAG,UAAU,CAA2B,IAAI,CAAC,CAAC;QACnE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,2BAA2B,CAAC;KACxC,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,yCAAyC,CAAC;KACtD,cAAc,CAAC,iBAAiB,EAAE,YAAY,CAAC;KAC/C,MAAM,CAAC,sBAAsB,EAAE,kBAAkB,EAAE,EAAE,CAAC;KACtD,MAAM,CAAC,gBAAgB,EAAE,mCAAmC,EAAE,GAAG,CAAC;KAClE,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC;KAC/C,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,UAAU,CAK1D,IAAI,CAAC,CAAC;QACT,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,WAAW,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC7F,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,YAAY,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,kCAAkC,CAAC;KAC/C,cAAc,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;KACvD,cAAc,CAAC,iBAAiB,EAAE,kCAAkC,CAAC;KACrE,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAqC,IAAI,CAAC,CAAC;QAChF,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,eAAe,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,2CAA2C,CAAC;KACxD,MAAM,CAAC,mBAAmB,EAAE,qCAAqC,CAAC;KAClE,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAsB,IAAI,CAAC,CAAC;QACzD,MAAM,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,cAAc,CAAC;KACvB,WAAW,CAAC,wDAAwD,CAAC;KACrE,cAAc,CAAC,kBAAkB,EAAE,iBAAiB,CAAC;KACrD,MAAM,CAAC,WAAW,EAAE,uBAAuB,CAAC;KAC5C,MAAM,CAAC,kBAAkB,EAAE,2CAA2C,CAAC;KACvE,MAAM,CAAC,aAAa,EAAE,uBAAuB,EAAE,KAAK,CAAC;KACrD,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAKlD,IAAI,CAAC,CAAC;QACT,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC9E,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,wBAAwB,CAAC;KACrC,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,eAAe,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CAAC,mCAAmC,CAAC;KAChD,MAAM,CAAC,qBAAqB,EAAE,oBAAoB,EAAE,IAAI,CAAC;KACzD,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAsB,IAAI,CAAC,CAAC;QAC1D,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,iBAAiB,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CAAC,4BAA4B,CAAC;KACzC,cAAc,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;KAC5D,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAwB,IAAI,CAAC,CAAC;QAC9D,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,iBAAiB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IAC5D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,cAAc,CAAC;KACvB,WAAW,CAAC,kDAAkD,CAAC;KAC/D,cAAc,CAAC,mBAAmB,EAAE,sCAAsC,CAAC;KAC3E,MAAM,CAAC,kBAAkB,EAAE,yCAAyC,CAAC;KACrE,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,UAAU,CAGrC,IAAI,CAAC,CAAC;QACT,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,uCAAuC,CAAC;KACpD,cAAc,CAAC,aAAa,EAAE,aAAa,CAAC;KAC5C,cAAc,CAAC,iBAAiB,EAAE,eAAe,CAAC;KAClD,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,UAAU,CAAiC,IAAI,CAAC,CAAC;QACxE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,aAAa,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,wCAAwC,CAAC;KACrD,cAAc,CAAC,aAAa,EAAE,yBAAyB,CAAC;KACxD,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,CAAkB,IAAI,CAAC,CAAC;QAClD,MAAM,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,gBAAgB,CAAC;KACzB,WAAW,CAAC,6BAA6B,CAAC;KAC1C,cAAc,CAAC,aAAa,EAAE,uBAAuB,CAAC;KACtD,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,CAAkB,IAAI,CAAC,CAAC;QAClD,MAAM,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACvD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,mBAAmB,CAAC;KAC5B,WAAW,CAAC,8BAA8B,CAAC;KAC3C,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,uDAAuD,CAAC;KACpE,cAAc,CAAC,aAAa,EAAE,sBAAsB,CAAC;KACrD,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,CAAkB,IAAI,CAAC,CAAC;QAClD,MAAM,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,2CAA2C,CAAC;KACxD,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,mCAAmC,CAAC;KAChD,MAAM,CAAC,KAAK;IACX,IAAI,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,aAAa,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,4BAA4B,CAAC;KACzC,MAAM,CAAC,KAAK;IACX,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,cAAc,EAAE,CAAC;IACvD,MAAM,CAAC;QACL,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,WAAW,EAAE,UAAU,IAAI,WAAW;QACtC,UAAU,EAAE,yBAAyB;KACtC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,+DAA+D,CAAC;KAC5E,MAAM,CAAC,eAAe,EAAE,0CAA0C,EAAE,MAAM,CAAC;KAC3E,MAAM,CAAC,eAAe,EAAE,+CAA+C,EAAE,WAAW,CAAC;KACrF,MAAM,CAAC,eAAe,EAAE,0CAA0C,CAAC;KACnE,MAAM,CAAC,eAAe,EAAE,0CAA0C,CAAC;KACnE,MAAM,CAAC,UAAU,EAAE,+DAA+D,EAAE,KAAK,CAAC;KAC1F,MAAM,CAAC,aAAa,EAAE,+DAA+D,EAAE,KAAK,CAAC;KAC7F,MAAM,CAAC,KAAK;IACX,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,UAAU,CAOtE,IAAI,CAAC,CAAC;IACT,MAAM,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;AACzE,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,kBAAkB,CAAC;KAC/B,MAAM,CAAC,eAAe,EAAE,sCAAsC,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,MAAM,CAAC;KACxG,MAAM,CAAC,eAAe,EAAE,sCAAsC,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,WAAW,CAAC;KAC7G,MAAM,CAAC,eAAe,EAAE,8BAA8B,CAAC;KACvD,MAAM,CAAC,eAAe,EAAE,8BAA8B,CAAC;KACvD,MAAM,CAAC,KAAK;IACX,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,UAAU,CAK1C,IAAI,CAAC,CAAC;IACT,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,UAAU,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAErD,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,mBAAmB;AAEnB,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,KAAK,EAAE,CAAC;AAClB,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}