@monoes/monomindcli 2.0.3 → 2.1.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.
Files changed (179) hide show
  1. package/.claude/helpers/control-start.cjs +13 -20
  2. package/.claude/helpers/event-logger.cjs +109 -6
  3. package/.claude/helpers/graphify-freshen.cjs +19 -17
  4. package/.claude/helpers/handlers/agent-start-handler.cjs +60 -28
  5. package/.claude/helpers/handlers/capture-handler.cjs +75 -18
  6. package/.claude/helpers/handlers/edit-handler.cjs +27 -9
  7. package/.claude/helpers/handlers/gates-handler.cjs +16 -7
  8. package/.claude/helpers/handlers/loops-status-handler.cjs +1 -1
  9. package/.claude/helpers/handlers/route-handler.cjs +4 -4
  10. package/.claude/helpers/handlers/session-handler.cjs +40 -22
  11. package/.claude/helpers/handlers/session-restore-handler.cjs +0 -12
  12. package/.claude/helpers/handlers/task-handler.cjs +53 -22
  13. package/.claude/helpers/hook-handler.cjs +54 -4
  14. package/.claude/helpers/intelligence.cjs +94 -15
  15. package/.claude/helpers/session.cjs +6 -1
  16. package/.claude/helpers/statusline.cjs +10 -10
  17. package/.claude/helpers/token-tracker.cjs +3 -3
  18. package/.claude/helpers/utils/agent-registrations.cjs +41 -0
  19. package/.claude/helpers/utils/fs-helpers.cjs +183 -0
  20. package/.claude/helpers/utils/micro-agents.cjs +10 -6
  21. package/.claude/helpers/utils/telemetry.cjs +35 -19
  22. package/bin/cli.js +10 -1
  23. package/dist/src/commands/agent-ops.d.ts.map +1 -1
  24. package/dist/src/commands/agent-ops.js +9 -15
  25. package/dist/src/commands/agent-ops.js.map +1 -1
  26. package/dist/src/commands/cleanup.d.ts.map +1 -1
  27. package/dist/src/commands/cleanup.js +20 -4
  28. package/dist/src/commands/cleanup.js.map +1 -1
  29. package/dist/src/commands/completions.d.ts.map +1 -1
  30. package/dist/src/commands/completions.js +66 -261
  31. package/dist/src/commands/completions.js.map +1 -1
  32. package/dist/src/commands/doctor.d.ts.map +1 -1
  33. package/dist/src/commands/doctor.js +7 -2
  34. package/dist/src/commands/doctor.js.map +1 -1
  35. package/dist/src/commands/hooks-workers.d.ts.map +1 -1
  36. package/dist/src/commands/hooks-workers.js +7 -0
  37. package/dist/src/commands/hooks-workers.js.map +1 -1
  38. package/dist/src/commands/index.d.ts.map +1 -1
  39. package/dist/src/commands/index.js +3 -0
  40. package/dist/src/commands/index.js.map +1 -1
  41. package/dist/src/commands/mcp.d.ts.map +1 -1
  42. package/dist/src/commands/mcp.js +11 -6
  43. package/dist/src/commands/mcp.js.map +1 -1
  44. package/dist/src/commands/memory-admin.d.ts.map +1 -1
  45. package/dist/src/commands/memory-admin.js +12 -6
  46. package/dist/src/commands/memory-admin.js.map +1 -1
  47. package/dist/src/commands/memory-transfer.d.ts.map +1 -1
  48. package/dist/src/commands/memory-transfer.js +6 -13
  49. package/dist/src/commands/memory-transfer.js.map +1 -1
  50. package/dist/src/commands/monograph.js +3 -3
  51. package/dist/src/commands/monograph.js.map +1 -1
  52. package/dist/src/commands/org.d.ts +3 -1
  53. package/dist/src/commands/org.d.ts.map +1 -1
  54. package/dist/src/commands/org.js +306 -129
  55. package/dist/src/commands/org.js.map +1 -1
  56. package/dist/src/commands/start.d.ts.map +1 -1
  57. package/dist/src/commands/start.js +142 -37
  58. package/dist/src/commands/start.js.map +1 -1
  59. package/dist/src/commands/tokens.d.ts.map +1 -1
  60. package/dist/src/commands/tokens.js +21 -3
  61. package/dist/src/commands/tokens.js.map +1 -1
  62. package/dist/src/config-adapter.d.ts.map +1 -1
  63. package/dist/src/config-adapter.js +37 -17
  64. package/dist/src/config-adapter.js.map +1 -1
  65. package/dist/src/index.d.ts.map +1 -1
  66. package/dist/src/index.js +64 -28
  67. package/dist/src/index.js.map +1 -1
  68. package/dist/src/init/claudemd-generator.d.ts.map +1 -1
  69. package/dist/src/init/claudemd-generator.js +44 -11
  70. package/dist/src/init/claudemd-generator.js.map +1 -1
  71. package/dist/src/init/executor.d.ts.map +1 -1
  72. package/dist/src/init/executor.js +63 -49
  73. package/dist/src/init/executor.js.map +1 -1
  74. package/dist/src/mcp-client.d.ts +8 -3
  75. package/dist/src/mcp-client.d.ts.map +1 -1
  76. package/dist/src/mcp-client.js +37 -3
  77. package/dist/src/mcp-client.js.map +1 -1
  78. package/dist/src/mcp-server.d.ts.map +1 -1
  79. package/dist/src/mcp-server.js +8 -2
  80. package/dist/src/mcp-server.js.map +1 -1
  81. package/dist/src/mcp-tools/agent-tools.d.ts +20 -0
  82. package/dist/src/mcp-tools/agent-tools.d.ts.map +1 -1
  83. package/dist/src/mcp-tools/agent-tools.js +10 -5
  84. package/dist/src/mcp-tools/agent-tools.js.map +1 -1
  85. package/dist/src/mcp-tools/github-tools.d.ts.map +1 -1
  86. package/dist/src/mcp-tools/github-tools.js +30 -8
  87. package/dist/src/mcp-tools/github-tools.js.map +1 -1
  88. package/dist/src/mcp-tools/graphify-tools.d.ts.map +1 -1
  89. package/dist/src/mcp-tools/graphify-tools.js +11 -2
  90. package/dist/src/mcp-tools/graphify-tools.js.map +1 -1
  91. package/dist/src/mcp-tools/hive-mind-tools.d.ts.map +1 -1
  92. package/dist/src/mcp-tools/hive-mind-tools.js +51 -34
  93. package/dist/src/mcp-tools/hive-mind-tools.js.map +1 -1
  94. package/dist/src/mcp-tools/knowledge-tools.d.ts.map +1 -1
  95. package/dist/src/mcp-tools/knowledge-tools.js +9 -1
  96. package/dist/src/mcp-tools/knowledge-tools.js.map +1 -1
  97. package/dist/src/mcp-tools/monograph-compat.d.ts.map +1 -1
  98. package/dist/src/mcp-tools/monograph-compat.js +56 -14
  99. package/dist/src/mcp-tools/monograph-compat.js.map +1 -1
  100. package/dist/src/mcp-tools/monograph-tools.d.ts.map +1 -1
  101. package/dist/src/mcp-tools/monograph-tools.js +65 -43
  102. package/dist/src/mcp-tools/monograph-tools.js.map +1 -1
  103. package/dist/src/mcp-tools/swarm-tools.d.ts.map +1 -1
  104. package/dist/src/mcp-tools/swarm-tools.js +6 -4
  105. package/dist/src/mcp-tools/swarm-tools.js.map +1 -1
  106. package/dist/src/mcp-tools/system-tools.d.ts.map +1 -1
  107. package/dist/src/mcp-tools/system-tools.js +4 -4
  108. package/dist/src/mcp-tools/system-tools.js.map +1 -1
  109. package/dist/src/mcp-tools/types.d.ts +20 -0
  110. package/dist/src/mcp-tools/types.d.ts.map +1 -1
  111. package/dist/src/mcp-tools/types.js +36 -1
  112. package/dist/src/mcp-tools/types.js.map +1 -1
  113. package/dist/src/memory/hnsw-operations.d.ts +13 -1
  114. package/dist/src/memory/hnsw-operations.d.ts.map +1 -1
  115. package/dist/src/memory/hnsw-operations.js +66 -14
  116. package/dist/src/memory/hnsw-operations.js.map +1 -1
  117. package/dist/src/memory/intelligence.d.ts.map +1 -1
  118. package/dist/src/memory/intelligence.js +99 -3
  119. package/dist/src/memory/intelligence.js.map +1 -1
  120. package/dist/src/memory/memory-bridge.d.ts +7 -0
  121. package/dist/src/memory/memory-bridge.d.ts.map +1 -1
  122. package/dist/src/memory/memory-bridge.js +20 -0
  123. package/dist/src/memory/memory-bridge.js.map +1 -1
  124. package/dist/src/orgrt/broker.d.ts +24 -0
  125. package/dist/src/orgrt/broker.d.ts.map +1 -0
  126. package/dist/src/orgrt/broker.js +68 -0
  127. package/dist/src/orgrt/broker.js.map +1 -0
  128. package/dist/src/orgrt/daemon.d.ts +30 -0
  129. package/dist/src/orgrt/daemon.d.ts.map +1 -1
  130. package/dist/src/orgrt/daemon.js +96 -7
  131. package/dist/src/orgrt/daemon.js.map +1 -1
  132. package/dist/src/orgrt/forwarder.d.ts +10 -5
  133. package/dist/src/orgrt/forwarder.d.ts.map +1 -1
  134. package/dist/src/orgrt/forwarder.js +105 -8
  135. package/dist/src/orgrt/forwarder.js.map +1 -1
  136. package/dist/src/orgrt/live.html +56 -0
  137. package/dist/src/orgrt/provider.d.ts.map +1 -1
  138. package/dist/src/orgrt/provider.js +1 -0
  139. package/dist/src/orgrt/provider.js.map +1 -1
  140. package/dist/src/orgrt/scheduler.d.ts +13 -0
  141. package/dist/src/orgrt/scheduler.d.ts.map +1 -0
  142. package/dist/src/orgrt/scheduler.js +48 -0
  143. package/dist/src/orgrt/scheduler.js.map +1 -0
  144. package/dist/src/orgrt/server.d.ts +8 -0
  145. package/dist/src/orgrt/server.d.ts.map +1 -0
  146. package/dist/src/orgrt/server.js +72 -0
  147. package/dist/src/orgrt/server.js.map +1 -0
  148. package/dist/src/orgrt/test-loop.d.ts +12 -0
  149. package/dist/src/orgrt/test-loop.d.ts.map +1 -0
  150. package/dist/src/orgrt/test-loop.js +108 -0
  151. package/dist/src/orgrt/test-loop.js.map +1 -0
  152. package/dist/src/output.d.ts.map +1 -1
  153. package/dist/src/output.js +12 -5
  154. package/dist/src/output.js.map +1 -1
  155. package/dist/src/parser.d.ts +32 -0
  156. package/dist/src/parser.d.ts.map +1 -1
  157. package/dist/src/parser.js +130 -5
  158. package/dist/src/parser.js.map +1 -1
  159. package/dist/src/routing/embed-worker.js +13 -1
  160. package/dist/src/routing/embed-worker.js.map +1 -1
  161. package/dist/src/routing/route-layer-factory.d.ts.map +1 -1
  162. package/dist/src/routing/route-layer-factory.js +31 -0
  163. package/dist/src/routing/route-layer-factory.js.map +1 -1
  164. package/dist/src/services/config-file-manager.d.ts +21 -0
  165. package/dist/src/services/config-file-manager.d.ts.map +1 -1
  166. package/dist/src/services/config-file-manager.js +60 -7
  167. package/dist/src/services/config-file-manager.js.map +1 -1
  168. package/dist/src/services/crash-reporter.d.ts.map +1 -1
  169. package/dist/src/services/crash-reporter.js +2 -1
  170. package/dist/src/services/crash-reporter.js.map +1 -1
  171. package/dist/src/ui/dashboard.html +40 -40
  172. package/dist/src/ui/orgs.html +110 -11
  173. package/dist/src/ui/server.mjs +304 -133
  174. package/dist/src/utils/input-guards.d.ts +9 -0
  175. package/dist/src/utils/input-guards.d.ts.map +1 -1
  176. package/dist/src/utils/input-guards.js +39 -5
  177. package/dist/src/utils/input-guards.js.map +1 -1
  178. package/dist/tsconfig.tsbuildinfo +1 -1
  179. package/package.json +6 -2
@@ -1 +1 @@
1
- {"version":3,"file":"monograph.js","sourceRoot":"","sources":["../../../src/commands/monograph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"monograph.js","sourceRoot":"","sources":["../../../src/commands/monograph.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  import type { Command } from '../types.js';
2
- declare const orgCommand: Command;
2
+ /** Remove a lingering stopfile so a fresh `org run` doesn't self-terminate. */
3
+ export declare const clearStopfile: (cwd: string, name: string) => void;
4
+ export declare const orgCommand: Command;
3
5
  export default orgCommand;
4
6
  //# sourceMappingURL=org.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"org.d.ts","sourceRoot":"","sources":["../../../src/commands/org.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAiD,MAAM,aAAa,CAAC;AAK1F,QAAA,MAAM,UAAU,EAAE,OA8HjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"org.d.ts","sourceRoot":"","sources":["../../../src/commands/org.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;AA8B1E,+EAA+E;AAC/E,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM,EAAE,MAAM,MAAM,KAAG,IAEzD,CAAC;AAgOF,eAAO,MAAM,UAAU,EAAE,OAwCxB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,144 +1,321 @@
1
+ // packages/@monomind/cli/src/commands/org.ts
2
+ import { readFileSync, existsSync, unlinkSync, rmSync, readdirSync } from 'node:fs';
3
+ import { join, resolve } from 'node:path';
1
4
  import { output } from '../output.js';
2
- import { existsSync, unlinkSync, rmSync, readdirSync, readFileSync } from 'fs';
3
- import { join, resolve } from 'path';
4
- const orgCommand = {
5
- name: 'org',
6
- description: 'Manage monomind organisations',
7
- examples: [
8
- { command: 'monomind org list', description: 'List all orgs in the project' },
9
- { command: 'monomind org delete my-org', description: 'Delete an org (with confirmation)' },
10
- { command: 'monomind org delete my-org --yes', description: 'Delete without confirmation' },
11
- { command: 'monomind org mark-complete my-org', description: 'Manually close a STALE run (crashed boss recovery)' },
12
- ],
13
- action: async (context) => {
14
- const args = context.args ?? [];
15
- const sub = args[0];
16
- if (!sub || sub === 'help') {
17
- output.info('Usage: monomind org <subcommand>');
18
- output.info('');
19
- output.info('Subcommands:');
20
- output.info(' list List all orgs in the current project');
21
- output.info(' delete <name> Delete an org and all its data');
22
- output.info(' mark-complete <name> Manually close a stale/crashed run');
23
- return { success: true };
24
- }
25
- if (sub === 'mark-complete') {
26
- const orgName = args[1];
27
- if (!orgName || !/^[a-z0-9][a-z0-9_-]*$/i.test(orgName)) {
28
- output.error('Usage: monomind org mark-complete <name>');
29
- return { success: false, message: 'valid org name required' };
30
- }
31
- const cwd = resolve(context.cwd || process.cwd());
32
- let ctrlUrl = 'http://localhost:4242';
33
- try {
34
- const ctl = JSON.parse(readFileSync(join(cwd, '.monomind', 'control.json'), 'utf8'));
35
- if (ctl.url)
36
- ctrlUrl = ctl.url;
37
- }
38
- catch { /* default */ }
5
+ import { OrgDaemon } from '../orgrt/daemon.js';
6
+ import { startOrgServer } from '../orgrt/server.js';
7
+ import { ORG_DIR } from '../orgrt/types.js';
8
+ const log = (text) => { console.log(text); };
9
+ /** Org names are used to build filesystem paths under .monomind/orgs — reject
10
+ * anything that isn't a plain identifier to prevent path traversal (e.g.
11
+ * `monomind org stop '../../../../tmp/x'`). */
12
+ const ORG_NAME_RE = /^[a-z0-9][a-z0-9_-]*$/i;
13
+ function validateOrgName(name) {
14
+ if (!name)
15
+ return { ok: false, result: { success: false, message: 'org name required' } };
16
+ if (!ORG_NAME_RE.test(name)) {
17
+ log(output.error(`Invalid org name: ${name}`));
18
+ return { ok: false, result: { success: false, message: 'invalid org name' } };
19
+ }
20
+ return { ok: true, name };
21
+ }
22
+ /** Config filenames for real orgs under orgsDir — excludes org-internal
23
+ * artifact files (state/goals/threads/etc) that share the .json extension. */
24
+ const ORG_ARTIFACT_SUFFIXES = ['-state', '-goals', '-threads', '-activity', '-approvals', '-members', '-secrets', '-budgets'];
25
+ function listOrgConfigFiles(orgsDir) {
26
+ return readdirSync(orgsDir)
27
+ .filter(f => f.endsWith('.json') && !ORG_ARTIFACT_SUFFIXES.some(suf => f.includes(suf)));
28
+ }
29
+ /** Remove a lingering stopfile so a fresh `org run` doesn't self-terminate. */
30
+ export const clearStopfile = (cwd, name) => {
31
+ rmSync(join(cwd, ORG_DIR, name, 'stop'), { force: true });
32
+ };
33
+ const runAction = async (ctx) => {
34
+ if (!ctx.args[0])
35
+ return { success: false, message: 'org name required: monomind org run <name> [--task "..."] [--serve] [--port N]' };
36
+ const validated = validateOrgName(ctx.args[0]);
37
+ if (!validated.ok)
38
+ return validated.result;
39
+ const name = validated.name;
40
+ const crossProcess = ctx.flags['crossProcess'] !== false;
41
+ const daemon = new OrgDaemon(ctx.cwd, { crossProcess });
42
+ let srv;
43
+ if (ctx.flags['serve'] !== false) {
44
+ const port = Number(ctx.flags['port'] ?? 4243);
45
+ srv = await startOrgServer(daemon, port);
46
+ log(output.info(`org live view: http://localhost:${srv.port}`));
47
+ if (crossProcess)
48
+ daemon.setInboxUrl(`http://127.0.0.1:${srv.port}`);
49
+ }
50
+ const running = await daemon.startOrg(name, ctx.flags['task']);
51
+ log(output.info(`org ${name} running (${running.def.roles.length} agents, run ${running.run}) — Ctrl-C or "monomind org stop ${name}" to stop`));
52
+ // stopfile poll lets `org stop` work from another terminal;
53
+ // clear any stale stopfile from a previous run before polling
54
+ clearStopfile(ctx.cwd, name);
55
+ const stopfile = join(ctx.cwd, ORG_DIR, name, 'stop');
56
+ await new Promise(resolvePromise => {
57
+ const iv = setInterval(() => { if (existsSync(stopfile)) {
58
+ clearInterval(iv);
59
+ resolvePromise();
60
+ } }, 2000);
61
+ process.once('SIGINT', () => { clearInterval(iv); resolvePromise(); });
62
+ process.once('SIGTERM', () => { clearInterval(iv); resolvePromise(); });
63
+ });
64
+ clearStopfile(ctx.cwd, name);
65
+ await daemon.stopAll();
66
+ srv?.close();
67
+ return { success: true, message: `org ${name} stopped` };
68
+ };
69
+ const stopAction = async (ctx) => {
70
+ const validated = validateOrgName(ctx.args[0]);
71
+ if (!validated.ok)
72
+ return validated.result;
73
+ const name = validated.name;
74
+ const { writeFileSync, mkdirSync } = await import('node:fs');
75
+ mkdirSync(join(ctx.cwd, ORG_DIR, name), { recursive: true });
76
+ writeFileSync(join(ctx.cwd, ORG_DIR, name, 'stop'), new Date().toISOString());
77
+ return { success: true, message: `stop requested for ${name} (daemon exits within 2s)` };
78
+ };
79
+ const statusAction = async (ctx) => {
80
+ const name = ctx.args[0];
81
+ const orgDir = join(ctx.cwd, ORG_DIR);
82
+ const targets = name ? [name] : (existsSync(orgDir)
83
+ ? listOrgConfigFiles(orgDir).map(f => f.replace(/\.json$/, ''))
84
+ : []);
85
+ for (const t of targets) {
86
+ const rt = join(orgDir, t, 'runtime.json');
87
+ let state = { status: 'never run' };
88
+ if (existsSync(rt)) {
39
89
  try {
40
- const res = await fetch(`${ctrlUrl}/api/orgs/${encodeURIComponent(orgName)}/mark-complete`, { method: 'POST' });
41
- const body = await res.json().catch(() => ({}));
42
- if (!res.ok) {
43
- output.error(`mark-complete failed (${res.status}): ${body.error || 'unknown error'}`);
44
- return { success: false, message: 'server rejected mark-complete' };
45
- }
46
- output.success(`Run marked complete for org "${orgName}"${body.runId ? ` (run ${body.runId})` : ''}.`);
47
- return { success: true };
90
+ state = JSON.parse(readFileSync(rt, 'utf8'));
48
91
  }
49
92
  catch (err) {
50
- output.error(`Dashboard server unreachable at ${ctrlUrl} is it running? (${err instanceof Error ? err.message : 'error'})`);
51
- return { success: false, message: 'server unreachable' };
93
+ log(output.warning(`${t}: could not read runtime.json (${err instanceof Error ? err.message : 'corrupt/truncated file'})`));
94
+ continue;
52
95
  }
53
96
  }
54
- if (sub === 'list') {
55
- const cwd = context.cwd || process.cwd();
56
- const orgsDir = join(cwd, '.monomind', 'orgs');
57
- if (!existsSync(orgsDir)) {
58
- output.info('No orgs directory found. Create an org first with /mastermind:createorg');
59
- return { success: true };
60
- }
61
- const configs = readdirSync(orgsDir)
62
- .filter(f => f.endsWith('.json') && !f.includes('-state') && !f.includes('-goals')
63
- && !f.includes('-threads') && !f.includes('-activity') && !f.includes('-approvals')
64
- && !f.includes('-members') && !f.includes('-secrets') && !f.includes('-budgets'));
65
- if (!configs.length) {
66
- output.info('No orgs found.');
67
- return { success: true };
68
- }
69
- output.info(`Found ${configs.length} org(s):`);
70
- for (const f of configs)
71
- output.info(` • ${f.replace('.json', '')}`);
72
- return { success: true };
97
+ log(output.info(`${t}: ${state.status}${state.run ? ` (run ${state.run}, pid ${state.pid})` : ''}`));
98
+ }
99
+ return { success: true };
100
+ };
101
+ const serveAction = async (ctx) => {
102
+ const crossProcess = ctx.flags['crossProcess'] !== false;
103
+ const daemon = new OrgDaemon(ctx.cwd, { crossProcess });
104
+ const srv = await startOrgServer(daemon, Number(ctx.flags['port'] ?? 4243));
105
+ log(output.info(`org daemon serving on http://localhost:${srv.port} Ctrl-C to stop`));
106
+ if (crossProcess)
107
+ daemon.setInboxUrl(`http://127.0.0.1:${srv.port}`);
108
+ // schedule orgs whose definition declares an interval (e.g. "15m", "2h")
109
+ const { OrgScheduler, parseSchedule } = await import('../orgrt/scheduler.js');
110
+ const sched = new OrgScheduler(async (name, intervalMs) => {
111
+ try {
112
+ await daemon.startOrg(name);
113
+ // Scheduled iterations are time-bounded: agents' `done` promises only
114
+ // resolve after stopOrg closes the mailboxes, so waiting on them alone
115
+ // deadlocks. Race against a max-run timeout, then ALWAYS stopOrg
116
+ // (idempotent — it resolves `done` and flushes).
117
+ const org = daemon.getOrg(name);
118
+ const allDone = org
119
+ ? Promise.allSettled([...org.agents.values()].map(a => a.done))
120
+ : Promise.resolve([]);
121
+ const maxRun = org?.def?.run_config?.max_run;
122
+ const maxMs = parseSchedule(maxRun) ?? Math.min(intervalMs, 600_000); // cap: schedule interval or 10 min
123
+ let timer;
124
+ await Promise.race([allDone, new Promise(r => {
125
+ timer = setTimeout(r, maxMs);
126
+ timer.unref?.();
127
+ })]);
128
+ if (timer)
129
+ clearTimeout(timer);
73
130
  }
74
- if (sub === 'delete') {
75
- const orgName = args[1];
76
- if (!orgName) {
77
- output.error('Usage: monomind org delete <name>');
78
- return { success: false, message: 'org name required' };
79
- }
80
- if (!/^[a-z0-9][a-z0-9_-]*$/i.test(orgName)) {
81
- output.error(`Invalid org name: ${orgName}`);
82
- return { success: false, message: 'invalid org name' };
83
- }
84
- const confirmed = args.includes('--yes') || args.includes('-y');
85
- if (!confirmed) {
86
- output.warning(`This will permanently delete org "${orgName}" and all its data.`);
87
- output.warning('Pass --yes to confirm.');
88
- return { success: false, message: 'confirmation required' };
89
- }
90
- const cwd = resolve(context.cwd || process.cwd());
91
- const orgsDir = join(cwd, '.monomind', 'orgs');
92
- const configFile = join(orgsDir, `${orgName}.json`);
93
- if (!existsSync(configFile)) {
94
- output.error(`Org not found: ${orgName}`);
95
- return { success: false, message: 'org not found' };
96
- }
97
- const suffixes = ['', '-state', '-goals', '-routines', '-approvals', '-activity',
98
- '-issues', '-members', '-projects', '-workspaces', '-worktrees', '-environments',
99
- '-plugins', '-adapters', '-budgets', '-threads', '-secrets', '-join-requests',
100
- '-bootstrap', '-project-workspaces', '-approval-comments', '-skills'];
101
- let removed = 0;
102
- for (const suf of suffixes) {
103
- for (const ext of ['.json', '.jsonl']) {
104
- const f = join(orgsDir, `${orgName}${suf}${ext}`);
105
- try {
106
- if (existsSync(f)) {
107
- unlinkSync(f);
108
- removed++;
109
- }
110
- }
111
- catch (_) { }
112
- }
113
- }
114
- // Remove stop file
115
- try {
116
- unlinkSync(join(orgsDir, '.stops', `${orgName}.stop`));
117
- }
118
- catch (_) { }
119
- // Remove org subdirectory
120
- const orgSubDir = join(orgsDir, orgName);
121
- try {
122
- if (existsSync(orgSubDir))
123
- rmSync(orgSubDir, { recursive: true, force: true });
124
- }
125
- catch (_) { }
126
- // Remove loop prompt file
131
+ catch (err) {
132
+ console.error(`org ${name}: scheduled run failed:`, err);
133
+ }
134
+ finally {
135
+ await daemon.stopOrg(name).catch(err => console.error(`org ${name}: stop failed:`, err));
136
+ }
137
+ });
138
+ const orgDir = join(ctx.cwd, ORG_DIR);
139
+ if (existsSync(orgDir)) {
140
+ for (const f of readdirSync(orgDir).filter(f => f.endsWith('.json'))) {
127
141
  try {
128
- unlinkSync(join(cwd, '.monomind', 'loops', `${orgName}.md`));
142
+ const def = JSON.parse(readFileSync(join(orgDir, f), 'utf8'));
143
+ const ms = parseSchedule(def.schedule);
144
+ if (ms) {
145
+ // register by filename stem — that's what startOrg loads
146
+ const stem = f.replace(/\.json$/, '');
147
+ if (def.name && def.name !== stem)
148
+ log(output.warning(`org file ${f}: def.name "${def.name}" differs from filename — scheduling as "${stem}"`));
149
+ sched.add(stem, ms);
150
+ log(output.info(`scheduled org ${stem} every ${Math.round(ms / 60_000)}m`));
151
+ }
129
152
  }
130
- catch (_) { }
131
- // Remove run prompt file
153
+ catch { /* skip unparseable org file */ }
154
+ }
155
+ }
156
+ await new Promise(r => { process.once('SIGINT', () => r()); process.once('SIGTERM', () => r()); });
157
+ sched.stop();
158
+ await daemon.stopAll();
159
+ srv.close();
160
+ return { success: true };
161
+ };
162
+ const testLoopAction = async (ctx) => {
163
+ // non-literal specifier: test-loop.ts lands in a later task; keeps tsc clean until then
164
+ const testLoopModule = '../orgrt/test-loop.js';
165
+ const { runTestLoop } = await import(testLoopModule);
166
+ const n = Number(ctx.flags['times'] ?? ctx.flags['n'] ?? 5);
167
+ const report = await runTestLoop(ctx.cwd, n);
168
+ log(output.info(report.summary));
169
+ return { success: report.failed === 0, message: report.summary };
170
+ };
171
+ // ---- legacy management subcommands (list / delete / mark-complete) ----
172
+ const listAction = async (ctx) => {
173
+ const orgsDir = join(ctx.cwd || process.cwd(), ORG_DIR);
174
+ if (!existsSync(orgsDir)) {
175
+ log(output.info('No orgs directory found. Create an org first with /mastermind:createorg'));
176
+ return { success: true };
177
+ }
178
+ const configs = listOrgConfigFiles(orgsDir);
179
+ if (!configs.length) {
180
+ log(output.info('No orgs found.'));
181
+ return { success: true };
182
+ }
183
+ log(output.info(`Found ${configs.length} org(s):`));
184
+ for (const f of configs)
185
+ log(output.info(` • ${f.replace('.json', '')}`));
186
+ return { success: true };
187
+ };
188
+ const deleteAction = async (ctx) => {
189
+ const orgName = ctx.args[0];
190
+ if (!orgName) {
191
+ log(output.error('Usage: monomind org delete <name>'));
192
+ return { success: false, message: 'org name required' };
193
+ }
194
+ if (!/^[a-z0-9][a-z0-9_-]*$/i.test(orgName)) {
195
+ log(output.error(`Invalid org name: ${orgName}`));
196
+ return { success: false, message: 'invalid org name' };
197
+ }
198
+ const confirmed = ctx.flags['yes'] === true || ctx.args.includes('--yes') || ctx.args.includes('-y');
199
+ if (!confirmed) {
200
+ log(output.warning(`This will permanently delete org "${orgName}" and all its data.`));
201
+ log(output.warning('Pass --yes to confirm.'));
202
+ return { success: false, message: 'confirmation required' };
203
+ }
204
+ const cwd = resolve(ctx.cwd || process.cwd());
205
+ const orgsDir = join(cwd, ORG_DIR);
206
+ const configFile = join(orgsDir, `${orgName}.json`);
207
+ if (!existsSync(configFile)) {
208
+ log(output.error(`Org not found: ${orgName}`));
209
+ return { success: false, message: 'org not found' };
210
+ }
211
+ const suffixes = ['', '-state', '-goals', '-routines', '-approvals', '-activity',
212
+ '-issues', '-members', '-projects', '-workspaces', '-worktrees', '-environments',
213
+ '-plugins', '-adapters', '-budgets', '-threads', '-secrets', '-join-requests',
214
+ '-bootstrap', '-project-workspaces', '-approval-comments', '-skills'];
215
+ let removed = 0;
216
+ for (const suf of suffixes) {
217
+ for (const ext of ['.json', '.jsonl']) {
218
+ const f = join(orgsDir, `${orgName}${suf}${ext}`);
132
219
  try {
133
- unlinkSync(join(cwd, '.monomind', 'orgs', `${orgName}-run.md`));
220
+ if (existsSync(f)) {
221
+ unlinkSync(f);
222
+ removed++;
223
+ }
134
224
  }
135
- catch (_) { }
136
- output.success(`Org "${orgName}" deleted (${removed} file(s) removed).`);
137
- return { success: true };
225
+ catch { /* ignore */ }
138
226
  }
139
- output.error(`Unknown subcommand: ${sub}. Run "monomind org help" for usage.`);
140
- return { success: false, message: `unknown subcommand: ${sub}` };
141
- },
227
+ }
228
+ try {
229
+ unlinkSync(join(orgsDir, '.stops', `${orgName}.stop`));
230
+ }
231
+ catch { /* ignore */ }
232
+ const orgSubDir = join(orgsDir, orgName);
233
+ try {
234
+ if (existsSync(orgSubDir))
235
+ rmSync(orgSubDir, { recursive: true, force: true });
236
+ }
237
+ catch { /* ignore */ }
238
+ try {
239
+ unlinkSync(join(cwd, '.monomind', 'loops', `${orgName}.md`));
240
+ }
241
+ catch { /* ignore */ }
242
+ try {
243
+ unlinkSync(join(orgsDir, `${orgName}-run.md`));
244
+ }
245
+ catch { /* ignore */ }
246
+ log(output.success(`Org "${orgName}" deleted (${removed} file(s) removed).`));
247
+ return { success: true };
248
+ };
249
+ const markCompleteAction = async (ctx) => {
250
+ const orgName = ctx.args[0];
251
+ if (!orgName || !/^[a-z0-9][a-z0-9_-]*$/i.test(orgName)) {
252
+ log(output.error('Usage: monomind org mark-complete <name>'));
253
+ return { success: false, message: 'valid org name required' };
254
+ }
255
+ const cwd = resolve(ctx.cwd || process.cwd());
256
+ let ctrlUrl = 'http://localhost:4242';
257
+ try {
258
+ const ctl = JSON.parse(readFileSync(join(cwd, '.monomind', 'control.json'), 'utf8'));
259
+ if (ctl.url)
260
+ ctrlUrl = ctl.url;
261
+ }
262
+ catch { /* default */ }
263
+ try {
264
+ const res = await fetch(`${ctrlUrl}/api/orgs/${encodeURIComponent(orgName)}/mark-complete`, { method: 'POST' });
265
+ const body = await res.json().catch(() => ({}));
266
+ if (!res.ok) {
267
+ log(output.error(`mark-complete failed (${res.status}): ${body.error || 'unknown error'}`));
268
+ return { success: false, message: 'server rejected mark-complete' };
269
+ }
270
+ const runId = body.runId;
271
+ log(output.success(`Run marked complete for org "${orgName}"${runId ? ` (run ${runId})` : ''}.`));
272
+ return { success: true };
273
+ }
274
+ catch (err) {
275
+ log(output.error(`Dashboard server unreachable at ${ctrlUrl} — is it running? (${err instanceof Error ? err.message : 'error'})`));
276
+ return { success: false, message: 'server unreachable' };
277
+ }
278
+ };
279
+ export const orgCommand = {
280
+ name: 'org',
281
+ description: 'SDK-based org runtime — run agent organizations as a controlled daemon',
282
+ subcommands: [
283
+ {
284
+ name: 'run', description: 'Start an org (foreground daemon)',
285
+ options: [
286
+ { name: 'task', description: 'Override the org goal for this run', type: 'string' },
287
+ { name: 'serve', description: 'Serve the live dashboard (default true)', type: 'boolean', default: true },
288
+ { name: 'port', description: 'Live dashboard port', type: 'number', default: 4243 },
289
+ { name: 'cross-process', description: 'Discover and message orgs hosted by other monomind processes on this machine (default true)', type: 'boolean', default: true },
290
+ ],
291
+ examples: [{ command: 'monomind org run growth --task "weekly report"', description: 'Run the growth org once with a task' }],
292
+ action: runAction,
293
+ },
294
+ { name: 'stop', description: 'Request a running org daemon to stop', action: stopAction },
295
+ { name: 'status', description: 'Show runtime state of orgs', action: statusAction },
296
+ {
297
+ name: 'serve', description: 'Start the daemon server only (hosts scheduled orgs)',
298
+ options: [
299
+ { name: 'port', description: 'Port', type: 'number', default: 4243 },
300
+ { name: 'cross-process', description: 'Discover and message orgs hosted by other monomind processes on this machine (default true)', type: 'boolean', default: true },
301
+ ],
302
+ action: serveAction,
303
+ },
304
+ {
305
+ name: 'test-loop', description: 'Run the org e2e verification loop N times',
306
+ options: [{ name: 'times', short: 'n', description: 'Iterations', type: 'number', default: 5 }],
307
+ action: testLoopAction,
308
+ },
309
+ { name: 'list', description: 'List all orgs in the current project', action: listAction },
310
+ {
311
+ name: 'delete', description: 'Delete an org and all its data',
312
+ options: [{ name: 'yes', short: 'y', description: 'Skip confirmation', type: 'boolean' }],
313
+ action: deleteAction,
314
+ },
315
+ { name: 'mark-complete', description: 'Manually close a stale/crashed run', action: markCompleteAction },
316
+ ],
317
+ examples: [{ command: 'monomind org run my-org', description: 'Run an org under full daemon control' }],
318
+ action: async () => ({ success: false, message: 'usage: monomind org <run|stop|status|serve|test-loop|list|delete|mark-complete>' }),
142
319
  };
143
320
  export default orgCommand;
144
321
  //# sourceMappingURL=org.js.map