@monoes/monomindcli 2.7.6 → 2.7.8

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 (129) hide show
  1. package/.claude/agents/core/coder.md +9 -0
  2. package/.claude/agents/core/coordinator.md +62 -0
  3. package/.claude/agents/core/planner.md +9 -0
  4. package/.claude/agents/core/reviewer.md +9 -0
  5. package/.claude/agents/core/tester.md +8 -0
  6. package/.claude/helpers/handlers/gates-handler.cjs +180 -47
  7. package/.claude/helpers/handlers/route-handler.cjs +32 -3
  8. package/.claude/helpers/hook-handler.cjs +55 -3
  9. package/.claude/helpers/intelligence.cjs +3 -1
  10. package/.claude/helpers/statusline.cjs +27 -3
  11. package/.claude/helpers/utils/monograph.cjs +104 -18
  12. package/.claude/settings.json +1 -1
  13. package/.claude/skills/monodesign/scripts/live-server.mjs +38 -1
  14. package/dist/src/browser/dashboard/server.d.ts.map +1 -1
  15. package/dist/src/browser/dashboard/server.js +6 -1
  16. package/dist/src/browser/dashboard/server.js.map +1 -1
  17. package/dist/src/capabilities/index.d.ts +0 -1
  18. package/dist/src/capabilities/index.d.ts.map +1 -1
  19. package/dist/src/capabilities/index.js +8 -1
  20. package/dist/src/capabilities/index.js.map +1 -1
  21. package/dist/src/commands/agent-lifecycle.d.ts.map +1 -1
  22. package/dist/src/commands/agent-lifecycle.js +5 -1
  23. package/dist/src/commands/agent-lifecycle.js.map +1 -1
  24. package/dist/src/commands/agent-ops.d.ts.map +1 -1
  25. package/dist/src/commands/agent-ops.js +32 -2
  26. package/dist/src/commands/agent-ops.js.map +1 -1
  27. package/dist/src/commands/browse-workflow.d.ts.map +1 -1
  28. package/dist/src/commands/browse-workflow.js +30 -0
  29. package/dist/src/commands/browse-workflow.js.map +1 -1
  30. package/dist/src/commands/doctor-project-checks.d.ts.map +1 -1
  31. package/dist/src/commands/doctor-project-checks.js +8 -1
  32. package/dist/src/commands/doctor-project-checks.js.map +1 -1
  33. package/dist/src/commands/guidance.d.ts.map +1 -1
  34. package/dist/src/commands/guidance.js +8 -2
  35. package/dist/src/commands/guidance.js.map +1 -1
  36. package/dist/src/commands/hooks-extended-commands.d.ts.map +1 -1
  37. package/dist/src/commands/hooks-extended-commands.js +10 -2
  38. package/dist/src/commands/hooks-extended-commands.js.map +1 -1
  39. package/dist/src/commands/init.d.ts.map +1 -1
  40. package/dist/src/commands/init.js +18 -4
  41. package/dist/src/commands/init.js.map +1 -1
  42. package/dist/src/commands/memory-crud.d.ts.map +1 -1
  43. package/dist/src/commands/memory-crud.js +40 -3
  44. package/dist/src/commands/memory-crud.js.map +1 -1
  45. package/dist/src/commands/org-observe.d.ts.map +1 -1
  46. package/dist/src/commands/org-observe.js +67 -13
  47. package/dist/src/commands/org-observe.js.map +1 -1
  48. package/dist/src/commands/org.d.ts +11 -0
  49. package/dist/src/commands/org.d.ts.map +1 -1
  50. package/dist/src/commands/org.js +162 -15
  51. package/dist/src/commands/org.js.map +1 -1
  52. package/dist/src/commands/performance.d.ts.map +1 -1
  53. package/dist/src/commands/performance.js +31 -5
  54. package/dist/src/commands/performance.js.map +1 -1
  55. package/dist/src/commands/security-misc.d.ts.map +1 -1
  56. package/dist/src/commands/security-misc.js +18 -3
  57. package/dist/src/commands/security-misc.js.map +1 -1
  58. package/dist/src/commands/security-scan.d.ts +30 -1
  59. package/dist/src/commands/security-scan.d.ts.map +1 -1
  60. package/dist/src/commands/security-scan.js +182 -69
  61. package/dist/src/commands/security-scan.js.map +1 -1
  62. package/dist/src/commands/swarm.d.ts.map +1 -1
  63. package/dist/src/commands/swarm.js +41 -14
  64. package/dist/src/commands/swarm.js.map +1 -1
  65. package/dist/src/consensus/audit-writer.d.ts.map +1 -1
  66. package/dist/src/consensus/audit-writer.js +11 -10
  67. package/dist/src/consensus/audit-writer.js.map +1 -1
  68. package/dist/src/init/executor.d.ts.map +1 -1
  69. package/dist/src/init/executor.js +138 -22
  70. package/dist/src/init/executor.js.map +1 -1
  71. package/dist/src/init/settings-generator.d.ts.map +1 -1
  72. package/dist/src/init/settings-generator.js +4 -1
  73. package/dist/src/init/settings-generator.js.map +1 -1
  74. package/dist/src/knowledge/document-pipeline.d.ts +17 -0
  75. package/dist/src/knowledge/document-pipeline.d.ts.map +1 -1
  76. package/dist/src/knowledge/document-pipeline.js +62 -3
  77. package/dist/src/knowledge/document-pipeline.js.map +1 -1
  78. package/dist/src/mcp-client.d.ts.map +1 -1
  79. package/dist/src/mcp-client.js +78 -0
  80. package/dist/src/mcp-client.js.map +1 -1
  81. package/dist/src/mcp-tools/embeddings-tools.d.ts.map +1 -1
  82. package/dist/src/mcp-tools/embeddings-tools.js +16 -8
  83. package/dist/src/mcp-tools/embeddings-tools.js.map +1 -1
  84. package/dist/src/mcp-tools/knowledge-tools.d.ts.map +1 -1
  85. package/dist/src/mcp-tools/knowledge-tools.js +27 -13
  86. package/dist/src/mcp-tools/knowledge-tools.js.map +1 -1
  87. package/dist/src/memory/memory-bridge.d.ts +5 -1
  88. package/dist/src/memory/memory-bridge.d.ts.map +1 -1
  89. package/dist/src/memory/memory-bridge.js +26 -3
  90. package/dist/src/memory/memory-bridge.js.map +1 -1
  91. package/dist/src/memory/memory-read.d.ts +9 -0
  92. package/dist/src/memory/memory-read.d.ts.map +1 -1
  93. package/dist/src/memory/memory-read.js +13 -2
  94. package/dist/src/memory/memory-read.js.map +1 -1
  95. package/dist/src/monovector/diff-classifier.d.ts.map +1 -1
  96. package/dist/src/monovector/diff-classifier.js +25 -6
  97. package/dist/src/monovector/diff-classifier.js.map +1 -1
  98. package/dist/src/orgrt/daemon.d.ts +21 -1
  99. package/dist/src/orgrt/daemon.d.ts.map +1 -1
  100. package/dist/src/orgrt/daemon.js +82 -11
  101. package/dist/src/orgrt/daemon.js.map +1 -1
  102. package/dist/src/orgrt/inbox.d.ts.map +1 -1
  103. package/dist/src/orgrt/inbox.js +53 -20
  104. package/dist/src/orgrt/inbox.js.map +1 -1
  105. package/dist/src/parser.d.ts +4 -2
  106. package/dist/src/parser.d.ts.map +1 -1
  107. package/dist/src/parser.js +61 -25
  108. package/dist/src/parser.js.map +1 -1
  109. package/dist/src/routing/route-layer-factory.d.ts +15 -0
  110. package/dist/src/routing/route-layer-factory.d.ts.map +1 -1
  111. package/dist/src/routing/route-layer-factory.js +44 -2
  112. package/dist/src/routing/route-layer-factory.js.map +1 -1
  113. package/dist/src/services/config-file-manager.d.ts +10 -2
  114. package/dist/src/services/config-file-manager.d.ts.map +1 -1
  115. package/dist/src/services/config-file-manager.js +10 -2
  116. package/dist/src/services/config-file-manager.js.map +1 -1
  117. package/dist/src/ui/collector.mjs +43 -3
  118. package/dist/src/ui/dashboard.html +27 -8
  119. package/dist/src/ui/server.mjs +144 -14
  120. package/dist/tsconfig.tsbuildinfo +1 -1
  121. package/package.json +7 -6
  122. package/dist/src/capabilities/watcher.d.ts +0 -18
  123. package/dist/src/capabilities/watcher.d.ts.map +0 -1
  124. package/dist/src/capabilities/watcher.js +0 -107
  125. package/dist/src/capabilities/watcher.js.map +0 -1
  126. package/dist/src/config-adapter.d.ts +0 -16
  127. package/dist/src/config-adapter.d.ts.map +0 -1
  128. package/dist/src/config-adapter.js +0 -220
  129. package/dist/src/config-adapter.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@monoes/monomindcli",
3
- "version": "2.7.6",
3
+ "version": "2.7.8",
4
4
  "type": "module",
5
5
  "description": "CLI engine for Monomind \u2014 an open-source MCP server that extends Claude Code with a codebase knowledge graph (tree-sitter + SQLite), persistent memory, multi-agent task coordination, and session hooks. MIT licensed, fully local.",
6
6
  "main": "dist/src/index.js",
@@ -81,24 +81,25 @@
81
81
  "README.md"
82
82
  ],
83
83
  "scripts": {
84
- "prebuild": "rm -rf dist",
84
+ "prebuild": "rm -rf dist tsconfig.tsbuildinfo",
85
85
  "build": "tsc && mkdir -p dist/src/browser/dashboard && cp src/browser/dashboard/ui.html dist/src/browser/dashboard/ui.html && mkdir -p dist/src/ui && cp src/ui/dashboard.html src/ui/server.mjs src/ui/collector.mjs src/ui/orgs.html src/ui/orgs-files.js src/ui/sse-manager.mjs src/ui/mastermind-diagram-fallback.html dist/src/ui/ && rm -rf dist/src/ui/data && cp -r src/ui/data dist/src/ui/data",
86
86
  "build:loose": "tsc --noEmitOnError false || true && mkdir -p dist/src/browser/dashboard && cp src/browser/dashboard/ui.html dist/src/browser/dashboard/ui.html && mkdir -p dist/src/ui && cp src/ui/dashboard.html src/ui/server.mjs src/ui/collector.mjs src/ui/orgs.html src/ui/orgs-files.js src/ui/sse-manager.mjs src/ui/mastermind-diagram-fallback.html dist/src/ui/ && rm -rf dist/src/ui/data && cp -r src/ui/data dist/src/ui/data",
87
87
  "test": "vitest run",
88
88
  "test:coverage": "vitest run --coverage",
89
89
  "test:pattern-store": "npx tsx src/transfer/store/tests/standalone-test.ts",
90
- "prepublishOnly": "node ../../@monoes/monodesign/scripts/sync-skill.mjs && cp ../../../README.md ./README.md",
90
+ "prepublishOnly": "node ../../@monoes/monodesign/scripts/sync-skill.mjs && cp ../../../README.md ./README.md && npm run build",
91
91
  "release": "npm version prerelease --preid=alpha && npm run publish:all",
92
92
  "publish:all": "./scripts/publish.sh"
93
93
  },
94
94
  "devDependencies": {
95
+ "tsx": "^4.21.0",
95
96
  "typescript": "^7.0.2",
96
97
  "vitest": "^4.1.4"
97
98
  },
98
99
  "dependencies": {
99
100
  "@anthropic-ai/claude-agent-sdk": "^0.3.207",
100
101
  "@monoes/monobrowse": "^1.0.6",
101
- "@monoes/monodesign": "^1.2.0",
102
+ "@monoes/monodesign": "^1.2.1",
102
103
  "@monoes/monograph": "^1.5.4",
103
104
  "@noble/ed25519": "^2.1.0",
104
105
  "mammoth": "^1.12.0",
@@ -110,9 +111,9 @@
110
111
  "optionalDependencies": {
111
112
  "@huggingface/transformers": "^3.8.1",
112
113
  "@monoes/hooks": "^1.0.0",
113
- "@monoes/mcp": "^1.0.0",
114
+ "@monoes/mcp": "^1.0.1",
114
115
  "@monoes/memory": "^1.0.10",
115
- "@monoes/routing": "^1.0.0",
116
+ "@monoes/routing": "^1.0.1",
116
117
  "monofence-ai": "*",
117
118
  "sql.js": "^1.14.1"
118
119
  },
@@ -1,18 +0,0 @@
1
- import { EventEmitter } from 'events';
2
- export interface WatcherOptions {
3
- useGit?: boolean;
4
- debounceMs?: number;
5
- ignore?: string[];
6
- }
7
- export declare class FileWatcher extends EventEmitter {
8
- private watcher;
9
- private debounceTimers;
10
- private _mode;
11
- private debounceMs;
12
- private knownFiles;
13
- get mode(): 'git' | 'fs';
14
- start(root: string, options?: WatcherOptions): Promise<void>;
15
- private seedKnownFiles;
16
- stop(): Promise<void>;
17
- }
18
- //# sourceMappingURL=watcher.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../../../src/capabilities/watcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAItC,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAID,qBAAa,WAAY,SAAQ,YAAY;IAC3C,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,cAAc,CAAqC;IAC3D,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,UAAU,CAAO;IACzB,OAAO,CAAC,UAAU,CAAqB;IAEvC,IAAI,IAAI,IAAI,KAAK,GAAG,IAAI,CAEvB;IAEK,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA2DjE;IAED,OAAO,CAAC,cAAc;IAoBhB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAW1B;CACF"}
@@ -1,107 +0,0 @@
1
- import { EventEmitter } from 'events';
2
- import fs from 'fs';
3
- import path from 'path';
4
- const DEFAULT_IGNORE = new Set(['node_modules', '.git', '.monomind', '__pycache__', 'dist', 'build']);
5
- export class FileWatcher extends EventEmitter {
6
- watcher = null;
7
- debounceTimers = new Map();
8
- _mode = 'fs';
9
- debounceMs = 300;
10
- knownFiles = new Set();
11
- get mode() {
12
- return this._mode;
13
- }
14
- async start(root, options) {
15
- // Guard against double-start: close previous watcher to prevent fd leak
16
- if (this.watcher) {
17
- this.watcher.close();
18
- this.watcher = null;
19
- }
20
- const gitExists = fs.existsSync(path.join(root, '.git'));
21
- const useGit = options?.useGit ?? gitExists;
22
- this._mode = useGit ? 'git' : 'fs';
23
- this.debounceMs = options?.debounceMs ?? 300;
24
- const ignore = new Set([...DEFAULT_IGNORE, ...(options?.ignore ?? [])]);
25
- const isIgnored = (filename) => filename.split(path.sep).some(p => ignore.has(p) || p.startsWith('.'));
26
- // Seed known files so pre-existing files are treated as changes, not adds.
27
- this.seedKnownFiles(root, root, isIgnored);
28
- this.watcher = fs.watch(root, { recursive: true }, (_eventType, filename) => {
29
- if (!filename)
30
- return;
31
- // Skip ignored directories
32
- if (isIgnored(filename))
33
- return;
34
- const fullPath = path.resolve(root, filename);
35
- // Prevent symlink traversal: reject paths that escape root
36
- if (!fullPath.startsWith(root + path.sep) && fullPath !== root)
37
- return;
38
- // Debounce rapid events on the same file
39
- const existing = this.debounceTimers.get(filename);
40
- if (existing)
41
- clearTimeout(existing);
42
- this.debounceTimers.set(filename, setTimeout(() => {
43
- this.debounceTimers.delete(filename);
44
- try {
45
- if (fs.existsSync(fullPath)) {
46
- const stat = fs.statSync(fullPath);
47
- if (stat.isFile()) {
48
- // fs.watch's eventType ('rename' vs 'change') is unreliable across
49
- // platforms (e.g. macOS reports 'rename' for in-place modifications),
50
- // so track previously-seen files to distinguish add vs change.
51
- if (this.knownFiles.has(fullPath)) {
52
- this.emit('change', fullPath);
53
- }
54
- else {
55
- this.knownFiles.add(fullPath);
56
- this.emit('add', fullPath);
57
- }
58
- }
59
- }
60
- else if (this.knownFiles.has(fullPath)) {
61
- this.knownFiles.delete(fullPath);
62
- this.emit('remove', fullPath);
63
- }
64
- }
65
- catch {
66
- // file may have been deleted between check and stat
67
- }
68
- }, this.debounceMs));
69
- });
70
- }
71
- seedKnownFiles(root, dir, isIgnored) {
72
- let entries;
73
- try {
74
- entries = fs.readdirSync(dir, { withFileTypes: true });
75
- }
76
- catch {
77
- return;
78
- }
79
- for (const entry of entries) {
80
- const fullPath = path.join(dir, entry.name);
81
- const rel = path.relative(root, fullPath);
82
- if (isIgnored(rel))
83
- continue;
84
- if (entry.isSymbolicLink())
85
- continue;
86
- if (entry.isDirectory()) {
87
- this.seedKnownFiles(root, fullPath, isIgnored);
88
- }
89
- else if (entry.isFile()) {
90
- this.knownFiles.add(fullPath);
91
- }
92
- }
93
- }
94
- async stop() {
95
- if (this.watcher) {
96
- this.watcher.close();
97
- this.watcher = null;
98
- }
99
- for (const timer of this.debounceTimers.values()) {
100
- clearTimeout(timer);
101
- }
102
- this.debounceTimers.clear();
103
- this.knownFiles.clear();
104
- this.removeAllListeners();
105
- }
106
- }
107
- //# sourceMappingURL=watcher.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"watcher.js","sourceRoot":"","sources":["../../../src/capabilities/watcher.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- /**
2
- * Configuration Adapter
3
- * Converts between SystemConfig and MonomindConfig types
4
- */
5
- type SystemConfig = any;
6
- import type { MonomindConfig } from './types.js';
7
- /**
8
- * Convert SystemConfig to MonomindConfig (CLI-specific format)
9
- */
10
- export declare function systemConfigToMonomindConfig(systemConfig: SystemConfig): MonomindConfig;
11
- /**
12
- * Convert MonomindConfig to SystemConfig
13
- */
14
- export declare function configToSystemConfig(config: MonomindConfig): Partial<SystemConfig>;
15
- export {};
16
- //# sourceMappingURL=config-adapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-adapter.d.ts","sourceRoot":"","sources":["../../src/config-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,KAAK,YAAY,GAAG,GAAG,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAoBjD;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,YAAY,EAAE,YAAY,GAAG,cAAc,CAkEvF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,CAoFlF"}
@@ -1,220 +0,0 @@
1
- /**
2
- * Configuration Adapter
3
- * Converts between SystemConfig and MonomindConfig types
4
- */
5
- // Share fallback values with config-file-manager.ts's own DEFAULT_CONFIG so
6
- // a config that round-trips through this adapter doesn't silently diverge
7
- // from what `monomind config create`/`reset` would produce (e.g. maxAgents
8
- // 8 vs a separately-hardcoded 15, hooks.enabled true vs false).
9
- import { DEFAULT_CONFIG } from './services/config-file-manager.js';
10
- // structuredClone so nested arrays/objects (e.g. hooks.hooks) returned by
11
- // systemConfigToMonomindConfig() below are never the live DEFAULT_CONFIG
12
- // reference — matches config-file-manager.ts's own cloneDefaultConfig() fix,
13
- // which this file's direct DEFAULT_CONFIG import would otherwise bypass.
14
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
15
- const AGENTS_DEFAULTS = structuredClone(DEFAULT_CONFIG.agents);
16
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
17
- const SWARM_DEFAULTS = structuredClone(DEFAULT_CONFIG.swarm);
18
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
19
- const CLI_DEFAULTS = structuredClone(DEFAULT_CONFIG.cli);
20
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
21
- const HOOKS_DEFAULTS = structuredClone(DEFAULT_CONFIG.hooks);
22
- /**
23
- * Convert SystemConfig to MonomindConfig (CLI-specific format)
24
- */
25
- export function systemConfigToMonomindConfig(systemConfig) {
26
- return {
27
- version: '3.0.0',
28
- projectRoot: systemConfig.orchestrator?.session?.dataDir || process.cwd(),
29
- // Agent configuration
30
- agents: {
31
- defaultType: systemConfig.agents?.defaultType ?? AGENTS_DEFAULTS.defaultType,
32
- autoSpawn: systemConfig.agents?.autoSpawn ?? AGENTS_DEFAULTS.autoSpawn,
33
- maxConcurrent: systemConfig.orchestrator?.lifecycle?.maxConcurrentAgents ?? AGENTS_DEFAULTS.maxConcurrent,
34
- timeout: systemConfig.orchestrator?.lifecycle?.spawnTimeout ?? AGENTS_DEFAULTS.timeout,
35
- providers: [],
36
- },
37
- // Swarm configuration
38
- swarm: {
39
- topology: normalizeTopology(systemConfig.swarm?.topology),
40
- maxAgents: systemConfig.swarm?.maxAgents ?? SWARM_DEFAULTS.maxAgents,
41
- autoScale: systemConfig.swarm?.autoScale?.enabled ?? SWARM_DEFAULTS.autoScale,
42
- coordinationStrategy: systemConfig.swarm?.coordination?.consensusRequired ? 'consensus' : 'leader',
43
- healthCheckInterval: systemConfig.swarm?.coordination?.timeoutMs ?? SWARM_DEFAULTS.healthCheckInterval,
44
- },
45
- // Memory configuration
46
- memory: {
47
- backend: normalizeMemoryBackend(systemConfig.memory?.type),
48
- persistPath: systemConfig.memory?.path || './data/memory',
49
- cacheSize: systemConfig.memory?.maxSize ?? 1000000,
50
- enableHNSW: systemConfig.memory?.lancedb?.indexType === 'hnsw',
51
- vectorDimension: systemConfig.memory?.lancedb?.dimensions ?? 384,
52
- },
53
- // MCP configuration
54
- mcp: {
55
- serverHost: systemConfig.mcp?.transport?.host || 'localhost',
56
- serverPort: systemConfig.mcp?.transport?.port ?? 3000,
57
- autoStart: false, // Not in SystemConfig
58
- transportType: systemConfig.mcp?.transport?.type || 'stdio',
59
- tools: [], // Not in SystemConfig
60
- },
61
- // CLI preferences — read from SystemConfig.cli when present, falling
62
- // back to the shared DEFAULT_CONFIG.cli values (not separately
63
- // hardcoded numbers that could silently drop user-configured values).
64
- cli: {
65
- colorOutput: systemConfig.cli?.colorOutput ?? CLI_DEFAULTS.colorOutput,
66
- interactive: systemConfig.cli?.interactive ?? CLI_DEFAULTS.interactive,
67
- verbosity: systemConfig.cli?.verbosity ?? CLI_DEFAULTS.verbosity,
68
- outputFormat: systemConfig.cli?.outputFormat ?? CLI_DEFAULTS.outputFormat,
69
- progressStyle: systemConfig.cli?.progressStyle ?? CLI_DEFAULTS.progressStyle,
70
- },
71
- // Hooks configuration — likewise read from SystemConfig.hooks when
72
- // present, falling back to the shared DEFAULT_CONFIG.hooks values.
73
- hooks: {
74
- enabled: systemConfig.hooks?.enabled ?? HOOKS_DEFAULTS.enabled,
75
- autoExecute: systemConfig.hooks?.autoExecute ?? HOOKS_DEFAULTS.autoExecute,
76
- hooks: systemConfig.hooks?.hooks ?? HOOKS_DEFAULTS.hooks,
77
- },
78
- // Neural pattern-learning configuration
79
- neural: {
80
- enabled: systemConfig.neural?.enabled ?? true,
81
- disableNative: systemConfig.neural?.disableNative ?? false,
82
- },
83
- };
84
- }
85
- /**
86
- * Convert MonomindConfig to SystemConfig
87
- */
88
- export function configToSystemConfig(config) {
89
- return {
90
- orchestrator: {
91
- lifecycle: {
92
- maxConcurrentAgents: config.agents.maxConcurrent,
93
- spawnTimeout: config.agents.timeout,
94
- terminateTimeout: 10000,
95
- maxSpawnRetries: 3,
96
- },
97
- session: {
98
- dataDir: config.projectRoot,
99
- persistSessions: true,
100
- sessionRetentionMs: 3600000,
101
- },
102
- health: {
103
- checkInterval: config.swarm.healthCheckInterval,
104
- historyLimit: 100,
105
- degradedThreshold: 1,
106
- unhealthyThreshold: 2,
107
- },
108
- },
109
- swarm: {
110
- topology: denormalizeTopology(config.swarm.topology),
111
- maxAgents: config.swarm.maxAgents,
112
- autoScale: {
113
- enabled: config.swarm.autoScale,
114
- minAgents: 1,
115
- maxAgents: config.swarm.maxAgents,
116
- scaleUpThreshold: 0.8,
117
- scaleDownThreshold: 0.3,
118
- },
119
- coordination: {
120
- consensusRequired: config.swarm.coordinationStrategy === 'consensus',
121
- timeoutMs: config.swarm.healthCheckInterval,
122
- retryPolicy: {
123
- maxRetries: 3,
124
- backoffMs: 500,
125
- },
126
- },
127
- communication: {
128
- protocol: 'events',
129
- batchSize: 10,
130
- flushIntervalMs: 100,
131
- },
132
- },
133
- memory: {
134
- type: denormalizeMemoryBackend(config.memory.backend),
135
- path: config.memory.persistPath,
136
- maxSize: config.memory.cacheSize,
137
- lancedb: {
138
- dimensions: config.memory.vectorDimension,
139
- indexType: config.memory.enableHNSW ? 'hnsw' : 'flat',
140
- nProbes: 20,
141
- },
142
- },
143
- mcp: {
144
- name: 'monomind',
145
- version: '3.0.0',
146
- transport: {
147
- type: config.mcp.transportType,
148
- host: config.mcp.serverHost,
149
- port: config.mcp.serverPort,
150
- },
151
- capabilities: {
152
- tools: true,
153
- resources: true,
154
- prompts: true,
155
- logging: true,
156
- },
157
- },
158
- // Neural pattern-learning configuration — only emit when present
159
- ...(config.neural
160
- ? {
161
- neural: {
162
- enabled: config.neural.enabled ?? true,
163
- disableNative: config.neural.disableNative ?? false,
164
- },
165
- }
166
- : {}),
167
- };
168
- }
169
- /**
170
- * Normalize topology from SystemConfig to MonomindConfig
171
- */
172
- function normalizeTopology(topology) {
173
- switch (topology) {
174
- case 'hierarchical':
175
- case 'mesh':
176
- case 'ring':
177
- case 'star':
178
- case 'hybrid':
179
- case 'hierarchical-mesh':
180
- return topology;
181
- case 'adaptive':
182
- return 'hybrid';
183
- default:
184
- return 'hierarchical';
185
- }
186
- }
187
- /**
188
- * Denormalize topology from MonomindConfig to SystemConfig
189
- */
190
- function denormalizeTopology(topology) {
191
- if (topology === 'hybrid') {
192
- return 'hierarchical-mesh';
193
- }
194
- return topology;
195
- }
196
- /**
197
- * Normalize memory backend from SystemConfig to MonomindConfig
198
- */
199
- function normalizeMemoryBackend(backend) {
200
- switch (backend) {
201
- case 'memory':
202
- case 'sqlite':
203
- case 'lancedb':
204
- case 'hybrid':
205
- return backend;
206
- case 'agentdb':
207
- return 'lancedb'; // legacy alias
208
- case 'redis':
209
- return 'memory';
210
- default:
211
- return 'hybrid';
212
- }
213
- }
214
- /**
215
- * Denormalize memory backend from MonomindConfig to SystemConfig
216
- */
217
- function denormalizeMemoryBackend(backend) {
218
- return backend;
219
- }
220
- //# sourceMappingURL=config-adapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-adapter.js","sourceRoot":"","sources":["../../src/config-adapter.ts"],"names":[],"mappings":"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"}