monomind 1.15.6 → 1.16.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 (96) hide show
  1. package/.claude/agents/github/repo-architect.md +1 -1
  2. package/.claude/agents/specialists/integration-architect.md +6 -6
  3. package/.claude/commands/hive-mind/hive-mind-init.md +1 -1
  4. package/.claude/commands/hive-mind/hive-mind-memory.md +1 -1
  5. package/.claude/commands/mastermind/brain.md +11 -11
  6. package/.claude/commands/mastermind/master.md +4 -4
  7. package/.claude/commands/mastermind/memory.md +6 -6
  8. package/.claude/commands/memory/README.md +4 -4
  9. package/.claude/commands/truth/start.md +3 -3
  10. package/.claude/helpers/extras-registry.json +2 -2
  11. package/.claude/helpers/skill-registry.json +26 -26
  12. package/.claude/helpers/statusline.cjs +8 -8
  13. package/.claude/skills/agentic-jujutsu/SKILL.md +3 -3
  14. package/.claude/skills/mastermind/_protocol.md +8 -8
  15. package/README.md +6 -6
  16. package/package.json +2 -2
  17. package/packages/@monomind/cli/README.md +6 -6
  18. package/packages/@monomind/cli/dist/src/__tests__/browse-analyzer.test.js +18 -1
  19. package/packages/@monomind/cli/dist/src/commands/agent.js +2 -2
  20. package/packages/@monomind/cli/dist/src/commands/autopilot.js +1 -1
  21. package/packages/@monomind/cli/dist/src/commands/completions.js +2 -21
  22. package/packages/@monomind/cli/dist/src/commands/config.js +1 -1
  23. package/packages/@monomind/cli/dist/src/commands/hive-mind.js +1 -1
  24. package/packages/@monomind/cli/dist/src/commands/hooks-coverage-commands.js +31 -31
  25. package/packages/@monomind/cli/dist/src/commands/hooks-routing-commands.js +1 -1
  26. package/packages/@monomind/cli/dist/src/commands/hooks.js +1 -1
  27. package/packages/@monomind/cli/dist/src/commands/index.d.ts +0 -1
  28. package/packages/@monomind/cli/dist/src/commands/index.js +0 -4
  29. package/packages/@monomind/cli/dist/src/commands/init.js +8 -8
  30. package/packages/@monomind/cli/dist/src/commands/memory.d.ts +1 -1
  31. package/packages/@monomind/cli/dist/src/commands/memory.js +138 -28
  32. package/packages/@monomind/cli/dist/src/commands/migrate.js +2 -2
  33. package/packages/@monomind/cli/dist/src/commands/neural.js +1 -1
  34. package/packages/@monomind/cli/dist/src/commands/swarm.js +1 -1
  35. package/packages/@monomind/cli/dist/src/config-adapter.js +8 -8
  36. package/packages/@monomind/cli/dist/src/index.js +1 -1
  37. package/packages/@monomind/cli/dist/src/init/claudemd-generator.js +2 -2
  38. package/packages/@monomind/cli/dist/src/init/executor.js +16 -16
  39. package/packages/@monomind/cli/dist/src/init/shared-instructions-generator.d.ts +1 -1
  40. package/packages/@monomind/cli/dist/src/init/shared-instructions-generator.js +1 -1
  41. package/packages/@monomind/cli/dist/src/init/statusline-generator.d.ts +1 -1
  42. package/packages/@monomind/cli/dist/src/init/statusline-generator.js +8 -8
  43. package/packages/@monomind/cli/dist/src/init/types.d.ts +3 -3
  44. package/packages/@monomind/cli/dist/src/init/types.js +3 -3
  45. package/packages/@monomind/cli/dist/src/mcp-client.js +1 -8
  46. package/packages/@monomind/cli/dist/src/mcp-tools/autopilot-tools.js +3 -3
  47. package/packages/@monomind/cli/dist/src/mcp-tools/daa-tools.js +13 -13
  48. package/packages/@monomind/cli/dist/src/mcp-tools/guidance-tools.js +4 -4
  49. package/packages/@monomind/cli/dist/src/mcp-tools/hive-mind-tools.js +4 -4
  50. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.js +1 -0
  51. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-routing.js +23 -23
  52. package/packages/@monomind/cli/dist/src/mcp-tools/index.d.ts +0 -1
  53. package/packages/@monomind/cli/dist/src/mcp-tools/index.js +0 -2
  54. package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.d.ts +22 -6
  55. package/packages/@monomind/cli/dist/src/mcp-tools/memory-tools.js +553 -505
  56. package/packages/@monomind/cli/dist/src/mcp-tools/progress-tools.js +1 -1
  57. package/packages/@monomind/cli/dist/src/mcp-tools/system-tools.js +5 -5
  58. package/packages/@monomind/cli/dist/src/mcp-tools/transfer-tools.d.ts +1 -1
  59. package/packages/@monomind/cli/dist/src/mcp-tools/transfer-tools.js +1 -156
  60. package/packages/@monomind/cli/dist/src/memory/embedding-operations.js +3 -3
  61. package/packages/@monomind/cli/dist/src/memory/hnsw-operations.js +5 -5
  62. package/packages/@monomind/cli/dist/src/memory/intelligence.js +2 -2
  63. package/packages/@monomind/cli/dist/src/memory/memory-bridge.d.ts +86 -234
  64. package/packages/@monomind/cli/dist/src/memory/memory-bridge.js +455 -1702
  65. package/packages/@monomind/cli/dist/src/memory/memory-crud.js +3 -3
  66. package/packages/@monomind/cli/dist/src/memory/memory-initializer.d.ts +1 -1
  67. package/packages/@monomind/cli/dist/src/memory/memory-initializer.js +5 -5
  68. package/packages/@monomind/cli/dist/src/memory/memory-read.js +4 -4
  69. package/packages/@monomind/cli/dist/src/suggest.js +0 -1
  70. package/packages/@monomind/cli/dist/src/types.d.ts +1 -1
  71. package/packages/@monomind/cli/dist/src/ui/dashboard.html +41 -5
  72. package/packages/@monomind/cli/dist/src/ui/orgs.html +91 -5
  73. package/packages/@monomind/cli/dist/src/ui/server.mjs +44 -0
  74. package/packages/@monomind/cli/dist/src/update/validator.js +1 -3
  75. package/packages/@monomind/cli/package.json +4 -4
  76. package/scripts/verify-appliance.sh +1 -1
  77. package/packages/@monomind/cli/dist/src/commands/plugins.d.ts +0 -11
  78. package/packages/@monomind/cli/dist/src/commands/plugins.js +0 -799
  79. package/packages/@monomind/cli/dist/src/plugins/manager.d.ts +0 -133
  80. package/packages/@monomind/cli/dist/src/plugins/manager.js +0 -498
  81. package/packages/@monomind/cli/dist/src/plugins/store/discovery.d.ts +0 -88
  82. package/packages/@monomind/cli/dist/src/plugins/store/discovery.js +0 -650
  83. package/packages/@monomind/cli/dist/src/plugins/store/index.d.ts +0 -76
  84. package/packages/@monomind/cli/dist/src/plugins/store/index.js +0 -141
  85. package/packages/@monomind/cli/dist/src/plugins/store/search.d.ts +0 -46
  86. package/packages/@monomind/cli/dist/src/plugins/store/search.js +0 -231
  87. package/packages/@monomind/cli/dist/src/plugins/store/types.d.ts +0 -274
  88. package/packages/@monomind/cli/dist/src/plugins/store/types.js +0 -7
  89. package/packages/@monomind/cli/dist/src/plugins/tests/demo-plugin-store.d.ts +0 -7
  90. package/packages/@monomind/cli/dist/src/plugins/tests/demo-plugin-store.js +0 -126
  91. package/packages/@monomind/cli/dist/src/plugins/tests/standalone-test.d.ts +0 -12
  92. package/packages/@monomind/cli/dist/src/plugins/tests/standalone-test.js +0 -188
  93. package/packages/@monomind/cli/dist/src/plugins/tests/test-plugin-store.d.ts +0 -7
  94. package/packages/@monomind/cli/dist/src/plugins/tests/test-plugin-store.js +0 -206
  95. package/packages/@monomind/cli/dist/src/services/registry-api.d.ts +0 -58
  96. package/packages/@monomind/cli/dist/src/services/registry-api.js +0 -199
@@ -66,7 +66,7 @@ flowchart TD
66
66
  R["Reviewer"]
67
67
  M["Growth Marketer"]
68
68
  BOARD[("Shared\nTask Board")]
69
- MEM[("AgentDB\nMemory")]
69
+ MEM[("LanceDB\nMemory")]
70
70
 
71
71
  U --> CO --> RO --> BOSS
72
72
  BOSS -->|spawns| W
@@ -126,7 +126,7 @@ Type "go" to save, or describe changes.
126
126
  | **Boss agent** | Coordinator type, no supervisor — owns the goal |
127
127
  | **Role agents** | Spawned on demand, specialized by task type |
128
128
  | **Task board** | Todo → Doing → Done, shared across all agents |
129
- | **Memory** | All output stored in org-scoped AgentDB namespace |
129
+ | **Memory** | All output stored in org-scoped LanceDB namespace |
130
130
  | **Checkpoint** | State saved every 30 min — survives crashes and restarts |
131
131
  | **Governance** | `auto` (free), `board` (approve sensitive), `strict` (approve all external actions) |
132
132
 
@@ -221,13 +221,13 @@ Open Claude Code. You now have 80+ slash commands available:
221
221
 
222
222
  ## 🧠 Memory That Persists
223
223
 
224
- Every session, every agent, every org writes to **AgentDB** — a hybrid SQLite + HNSW vector store that survives across sessions. The next time you run anything, Monomind already knows what was built, what failed, and which patterns work.
224
+ Every session, every agent, every org writes to **LanceDB** — a hybrid SQLite + HNSW vector store that survives across sessions. The next time you run anything, Monomind already knows what was built, what failed, and which patterns work.
225
225
 
226
226
  ```mermaid
227
227
  graph TD
228
228
  L0["L0 - In-flight\nCurrent session drawers\nephemeral"]
229
229
  L1["L1 - Working\nCross-session memory\nBM25 K1=1.5, B=0.75"]
230
- L2["L2 - Long-term\nAgentDB + HNSW index\nSemantic search"]
230
+ L2["L2 - Long-term\nLanceDB + HNSW index\nSemantic search"]
231
231
  L3["L3 - Shared\nCross-agent namespace\nFederated swarm reads"]
232
232
 
233
233
  L0 -->|promoted| L1 --> L2 --> L3
@@ -275,7 +275,7 @@ flowchart LR
275
275
  H --> I["route\nlearn\nbuild-agents"]
276
276
  H --> T["teammate-idle\ntask-completed"]
277
277
 
278
- I --> DB[("AgentDB\npatterns.json")]
278
+ I --> DB[("LanceDB\npatterns.json")]
279
279
  DB -->|next session| CE
280
280
  ```
281
281
 
@@ -358,7 +358,7 @@ graph TD
358
358
  CC <-->|"23 tools: monograph, memory, swarm"| MCP
359
359
  MCP <--> D
360
360
 
361
- D --> ADB[("AgentDB\nSQLite + HNSW")]
361
+ D --> ADB[("LanceDB\nSQLite + HNSW")]
362
362
  D --> MG[("Monograph\ncode graph")]
363
363
  D --> HK["Hooks\n22 event types"]
364
364
  D --> SW["Swarm\n6 topologies\n5 consensus algos"]
@@ -38,7 +38,24 @@ function mockPage(url = 'https://linkedin.com/feed', title = 'LinkedIn') {
38
38
  describe('analyzePageForAction', () => {
39
39
  let analyzePageForAction;
40
40
  beforeEach(async () => {
41
- mockCreate.mockClear();
41
+ mockCreate.mockResolvedValue({
42
+ content: [{
43
+ type: 'text',
44
+ text: JSON.stringify({
45
+ id: 'linkedin:comment_post',
46
+ platform: 'linkedin',
47
+ name: 'Comment on Post',
48
+ params: ['post_url', 'text'],
49
+ steps: [
50
+ { type: 'navigate', url: '{{params.post_url}}' },
51
+ { type: 'find', selectors: ['.comment-box'], as: 'box' },
52
+ { type: 'click', target: '{{box}}' },
53
+ { type: 'type', target: '{{box}}', text: '{{params.text}}', humanDelay: true },
54
+ { type: 'wait', condition: 'network_idle', timeout: 3000 },
55
+ ],
56
+ }),
57
+ }],
58
+ });
42
59
  const mod = await import('@monoes/monobrowse');
43
60
  analyzePageForAction = mod.analyzePageForAction;
44
61
  });
@@ -53,7 +53,7 @@ const AGENT_TYPES = [
53
53
  { value: 'optimizer', label: 'Optimizer', hint: 'Performance optimization and bottleneck analysis' },
54
54
  { value: 'security-architect', label: 'Security Architect', hint: 'Security architecture and threat modeling' },
55
55
  { value: 'security-auditor', label: 'Security Auditor', hint: 'CVE remediation and security testing' },
56
- { value: 'memory-specialist', label: 'Memory Specialist', hint: 'AgentDB unification (150x-12,500x faster)' },
56
+ { value: 'memory-specialist', label: 'Memory Specialist', hint: 'LanceDB ANN search (150x-12,500x faster)' },
57
57
  { value: 'swarm-specialist', label: 'Swarm Specialist', hint: 'Unified coordination engine' },
58
58
  { value: 'performance-engineer', label: 'Performance Engineer', hint: '2.49x-7.47x optimization targets' },
59
59
  { value: 'core-architect', label: 'Core Architect', hint: 'Domain-driven design restructure' },
@@ -918,7 +918,7 @@ function getAgentCapabilities(type) {
918
918
  architect: ['system-design', 'pattern-analysis', 'scalability', 'documentation'],
919
919
  coordinator: ['task-orchestration', 'agent-management', 'workflow-control'],
920
920
  'security-architect': ['threat-modeling', 'security-patterns', 'compliance', 'audit'],
921
- 'memory-specialist': ['vector-search', 'agentdb', 'caching', 'optimization'],
921
+ 'memory-specialist': ['vector-search', 'lancedb', 'caching', 'optimization'],
922
922
  'performance-engineer': ['benchmarking', 'profiling', 'optimization', 'monitoring']
923
923
  };
924
924
  return capabilities[type] || ['general'];
@@ -221,7 +221,7 @@ const learnCommand = {
221
221
  action: async (ctx) => {
222
222
  const learning = await tryLoadLearning();
223
223
  if (!learning) {
224
- output.writeln('Learning not available (AgentDB not initialized). Autopilot still works for task completion tracking.');
224
+ output.writeln('Learning not available (memory backend not initialized). Autopilot still works for task completion tracking.');
225
225
  return { success: true };
226
226
  }
227
227
  const metrics = await learning.getMetrics();
@@ -9,7 +9,7 @@ import { output } from '../output.js';
9
9
  const TOP_LEVEL_COMMANDS = [
10
10
  'swarm', 'agent', 'task', 'session', 'config', 'memory', 'workflow',
11
11
  'hive-mind', 'hooks', 'daemon', 'neural', 'security', 'performance',
12
- 'providers', 'plugins', 'deployment', 'claims', 'embeddings',
12
+ 'providers', 'deployment', 'claims', 'embeddings',
13
13
  'doctor', 'completions', 'help', 'version'
14
14
  ];
15
15
  // Swarm subcommands
@@ -81,10 +81,6 @@ _monomind_completions() {
81
81
  COMPREPLY=( $(compgen -W "benchmark profile metrics optimize bottleneck" -- "\${cur}") )
82
82
  return 0
83
83
  ;;
84
- plugins)
85
- COMPREPLY=( $(compgen -W "list install uninstall toggle info create" -- "\${cur}") )
86
- return 0
87
- ;;
88
84
  deployment|deploy)
89
85
  COMPREPLY=( $(compgen -W "deploy status rollback history environments logs" -- "\${cur}") )
90
86
  return 0
@@ -138,7 +134,7 @@ _monomind() {
138
134
  'task:Task creation and management'
139
135
  'session:Session management'
140
136
  'config:Configuration management'
141
- 'memory:Memory operations with AgentDB'
137
+ 'memory:Memory operations with LanceDB'
142
138
  'workflow:Workflow automation'
143
139
  'hive-mind:Queen-led consensus coordination'
144
140
  'hooks:Self-learning automation hooks'
@@ -147,7 +143,6 @@ _monomind() {
147
143
  'security:Security scanning and CVE detection'
148
144
  'performance:Performance profiling'
149
145
  'providers:AI provider management'
150
- 'plugins:Plugin management'
151
146
  'deployment:Deployment management'
152
147
  'claims:Claims-based authorization'
153
148
  'embeddings:Vector embeddings'
@@ -273,16 +268,6 @@ _monomind() {
273
268
  'bottleneck:Find bottlenecks'
274
269
  )
275
270
  ;;
276
- plugins)
277
- subcommands=(
278
- 'list:List plugins'
279
- 'install:Install plugin'
280
- 'uninstall:Remove plugin'
281
- 'toggle:Enable/disable'
282
- 'info:Plugin details'
283
- 'create:Scaffold plugin'
284
- )
285
- ;;
286
271
  deployment|deploy)
287
272
  subcommands=(
288
273
  'deploy:Deploy to environment'
@@ -379,9 +364,6 @@ complete -c monomind -n "__fish_seen_subcommand_from security" -a "scan cve thre
379
364
  # Performance subcommands
380
365
  complete -c monomind -n "__fish_seen_subcommand_from performance" -a "benchmark profile metrics optimize bottleneck"
381
366
 
382
- # Plugins subcommands
383
- complete -c monomind -n "__fish_seen_subcommand_from plugins" -a "list install uninstall toggle info create"
384
-
385
367
  # Deployment subcommands
386
368
  complete -c monomind -n "__fish_seen_subcommand_from deployment deploy" -a "deploy status rollback history environments logs"
387
369
 
@@ -419,7 +401,6 @@ $script:SubCommands = @{
419
401
  'neural' = @('train', 'status', 'patterns', 'predict', 'optimize')
420
402
  'security' = @('scan', 'cve', 'threats', 'audit', 'secrets')
421
403
  'performance' = @('benchmark', 'profile', 'metrics', 'optimize', 'bottleneck')
422
- 'plugins' = @('list', 'install', 'uninstall', 'toggle', 'info', 'create')
423
404
  'deployment' = @('deploy', 'status', 'rollback', 'history', 'environments', 'logs')
424
405
  'deploy' = @('deploy', 'status', 'rollback', 'history', 'environments', 'logs')
425
406
  'claims' = @('list', 'check', 'grant', 'revoke', 'roles', 'policies')
@@ -146,7 +146,7 @@ const setCommand = {
146
146
  ],
147
147
  examples: [
148
148
  { command: 'monomind config set swarm.maxAgents 20', description: 'Set max agents' },
149
- { command: 'monomind config set -k memory.backend -v agentdb', description: 'Set memory backend' }
149
+ { command: 'monomind config set -k memory.backend -v lancedb', description: 'Set memory backend' }
150
150
  ],
151
151
  action: async (ctx) => {
152
152
  const key = (ctx.flags.key || ctx.args[0] || '').slice(0, 256);
@@ -370,7 +370,7 @@ const initCommand = {
370
370
  },
371
371
  {
372
372
  name: 'memory-backend',
373
- description: 'Memory backend (agentdb, sqlite, hybrid)',
373
+ description: 'Memory backend (lancedb, sqlite, hybrid)',
374
374
  type: 'string',
375
375
  default: 'hybrid'
376
376
  }
@@ -1049,8 +1049,8 @@ export const statuslineCommand = {
1049
1049
  }
1050
1050
  catch { /* ignore */ }
1051
1051
  }
1052
- // Get AgentDB stats (matching statusline-generator.ts paths)
1053
- const agentdbStats = { vectorCount: 0, dbSizeKB: 0, hasHnsw: false };
1052
+ // Get memory backend stats
1053
+ const memoryStats = { vectorCount: 0, dbSizeKB: 0, hasHnsw: false };
1054
1054
  // Check for direct database files first
1055
1055
  const dbPaths = [
1056
1056
  path.join(process.cwd(), '.swarm', 'memory.db'),
@@ -1058,30 +1058,30 @@ export const statuslineCommand = {
1058
1058
  path.join(process.cwd(), '.claude', 'memory.db'),
1059
1059
  path.join(process.cwd(), 'data', 'memory.db'),
1060
1060
  path.join(process.cwd(), 'memory.db'),
1061
- path.join(process.cwd(), '.agentdb', 'memory.db'),
1062
- path.join(process.cwd(), '.monomind', 'memory', 'agentdb.db'),
1061
+ path.join(process.cwd(), ".swarm", "lancedb"),
1062
+ path.join(process.cwd(), ".monomind", "memory", "lancedb"),
1063
1063
  ];
1064
1064
  for (const dbPath of dbPaths) {
1065
1065
  if (fs.existsSync(dbPath)) {
1066
1066
  try {
1067
1067
  const stats = fs.statSync(dbPath);
1068
- agentdbStats.dbSizeKB = Math.round(stats.size / 1024);
1069
- agentdbStats.vectorCount = Math.floor(agentdbStats.dbSizeKB / 2);
1070
- agentdbStats.hasHnsw = agentdbStats.vectorCount > 100;
1068
+ memoryStats.dbSizeKB = Math.round(stats.size / 1024);
1069
+ memoryStats.vectorCount = Math.floor(memoryStats.dbSizeKB / 2);
1070
+ memoryStats.hasHnsw = memoryStats.vectorCount > 100;
1071
1071
  break;
1072
1072
  }
1073
1073
  catch { /* ignore */ }
1074
1074
  }
1075
1075
  }
1076
- // Check for AgentDB directories if no direct db found
1077
- if (agentdbStats.vectorCount === 0) {
1078
- const agentdbDirs = [
1079
- path.join(process.cwd(), '.monomind', 'agentdb'),
1080
- path.join(process.cwd(), '.swarm', 'agentdb'),
1081
- path.join(process.cwd(), 'data', 'agentdb'),
1082
- path.join(process.cwd(), '.agentdb'),
1076
+ // Check for LanceDB directories if no direct db found
1077
+ if (memoryStats.vectorCount === 0) {
1078
+ const lancedbDirs = [
1079
+ path.join(process.cwd(), ".monomind", "lancedb"),
1080
+ path.join(process.cwd(), ".swarm", "lancedb"),
1081
+ path.join(process.cwd(), "data", "lancedb"),
1082
+ path.join(process.cwd(), ".swarm", "lancedb"),
1083
1083
  ];
1084
- for (const dir of agentdbDirs) {
1084
+ for (const dir of lancedbDirs) {
1085
1085
  if (fs.existsSync(dir)) {
1086
1086
  try {
1087
1087
  const files = fs.readdirSync(dir);
@@ -1089,12 +1089,12 @@ export const statuslineCommand = {
1089
1089
  if (f.endsWith('.db') || f.endsWith('.sqlite')) {
1090
1090
  const filePath = path.join(dir, f);
1091
1091
  const fileStat = fs.statSync(filePath);
1092
- agentdbStats.dbSizeKB += Math.round(fileStat.size / 1024);
1092
+ memoryStats.dbSizeKB += Math.round(fileStat.size / 1024);
1093
1093
  }
1094
1094
  }
1095
- agentdbStats.vectorCount = Math.floor(agentdbStats.dbSizeKB / 2);
1096
- agentdbStats.hasHnsw = agentdbStats.vectorCount > 100;
1097
- if (agentdbStats.vectorCount > 0)
1095
+ memoryStats.vectorCount = Math.floor(memoryStats.dbSizeKB / 2);
1096
+ memoryStats.hasHnsw = memoryStats.vectorCount > 100;
1097
+ if (memoryStats.vectorCount > 0)
1098
1098
  break;
1099
1099
  }
1100
1100
  catch { /* ignore */ }
@@ -1109,14 +1109,14 @@ export const statuslineCommand = {
1109
1109
  ];
1110
1110
  for (const hnswPath of hnswPaths) {
1111
1111
  if (fs.existsSync(hnswPath)) {
1112
- agentdbStats.hasHnsw = true;
1112
+ memoryStats.hasHnsw = true;
1113
1113
  try {
1114
1114
  const hnswFiles = fs.readdirSync(hnswPath);
1115
1115
  const indexFile = hnswFiles.find(f => f.endsWith('.index'));
1116
1116
  if (indexFile) {
1117
1117
  const indexStat = fs.statSync(path.join(hnswPath, indexFile));
1118
1118
  const hnswVectors = Math.floor(indexStat.size / 512);
1119
- agentdbStats.vectorCount = Math.max(agentdbStats.vectorCount, hnswVectors);
1119
+ memoryStats.vectorCount = Math.max(memoryStats.vectorCount, hnswVectors);
1120
1120
  }
1121
1121
  }
1122
1122
  catch { /* ignore */ }
@@ -1125,15 +1125,15 @@ export const statuslineCommand = {
1125
1125
  }
1126
1126
  // Check for vectors.json file
1127
1127
  const vectorsPath = path.join(process.cwd(), '.monomind', 'vectors.json');
1128
- if (fs.existsSync(vectorsPath) && agentdbStats.vectorCount === 0) {
1128
+ if (fs.existsSync(vectorsPath) && memoryStats.vectorCount === 0) {
1129
1129
  try {
1130
1130
  if (fs.statSync(vectorsPath).size <= 8_388_608) {
1131
1131
  const data = JSON.parse(fs.readFileSync(vectorsPath, 'utf-8'));
1132
1132
  if (Array.isArray(data)) {
1133
- agentdbStats.vectorCount = data.length;
1133
+ memoryStats.vectorCount = data.length;
1134
1134
  }
1135
1135
  else if (data.vectors) {
1136
- agentdbStats.vectorCount = Object.keys(data.vectors).length;
1136
+ memoryStats.vectorCount = Object.keys(data.vectors).length;
1137
1137
  }
1138
1138
  }
1139
1139
  }
@@ -1169,8 +1169,8 @@ export const statuslineCommand = {
1169
1169
  const domainsColor = progress.domainsCompleted >= 3 ? c.brightGreen : progress.domainsCompleted > 0 ? c.yellow : c.red;
1170
1170
  // Dynamic perf indicator based on patterns/HNSW
1171
1171
  let perfIndicator = `${c.dim}⚡ HNSW: idle${c.reset}`;
1172
- if (agentdbStats.hasHnsw && agentdbStats.vectorCount > 0) {
1173
- perfIndicator = `${c.brightGreen}⚡ HNSW ${agentdbStats.vectorCount.toLocaleString()} vec${c.reset}`;
1172
+ if (memoryStats.hasHnsw && memoryStats.vectorCount > 0) {
1173
+ perfIndicator = `${c.brightGreen}⚡ HNSW ${memoryStats.vectorCount.toLocaleString()} vec${c.reset}`;
1174
1174
  }
1175
1175
  else if (progress.patternsLearned > 0) {
1176
1176
  const patternsK = progress.patternsLearned >= 1000 ? `${(progress.patternsLearned / 1000).toFixed(1)}k` : String(progress.patternsLearned);
@@ -1195,13 +1195,13 @@ export const statuslineCommand = {
1195
1195
  `${c.cyan}ADRs${c.reset} ${c.dim}●0/0${c.reset} ${c.dim}│${c.reset} ` +
1196
1196
  `${c.cyan}DDD${c.reset} ${dddColor}●${String(progress.dddProgress).padStart(3)}%${c.reset} ${c.dim}│${c.reset} ` +
1197
1197
  `${c.cyan}Security${c.reset} ${securityColor}●${security.status}${c.reset}`;
1198
- const vectorColor = agentdbStats.vectorCount > 0 ? c.brightGreen : c.dim;
1198
+ const vectorColor = memoryStats.vectorCount > 0 ? c.brightGreen : c.dim;
1199
1199
  const testColor = testStats.testFiles > 0 ? c.brightGreen : c.dim;
1200
1200
  const mcpColor = mcpStats.enabled > 0 ? c.brightGreen : c.dim;
1201
- const sizeDisplay = agentdbStats.dbSizeKB >= 1024 ? `${(agentdbStats.dbSizeKB / 1024).toFixed(1)}MB` : `${agentdbStats.dbSizeKB}KB`;
1202
- const hnswIndicator = agentdbStats.hasHnsw ? `${c.brightGreen}⚡${c.reset}` : '';
1203
- const line4 = `${c.brightCyan}📊 AgentDB${c.reset} ` +
1204
- `${c.cyan}Vectors${c.reset} ${vectorColor}●${agentdbStats.vectorCount}${hnswIndicator}${c.reset} ${c.dim}│${c.reset} ` +
1201
+ const sizeDisplay = memoryStats.dbSizeKB >= 1024 ? `${(memoryStats.dbSizeKB / 1024).toFixed(1)}MB` : `${memoryStats.dbSizeKB}KB`;
1202
+ const hnswIndicator = memoryStats.hasHnsw ? `${c.brightGreen}⚡${c.reset}` : '';
1203
+ const line4 = `${c.brightCyan}📊 LanceDB${c.reset} ` +
1204
+ `${c.cyan}Vectors${c.reset} ${vectorColor}●${memoryStats.vectorCount}${hnswIndicator}${c.reset} ${c.dim}│${c.reset} ` +
1205
1205
  `${c.cyan}Size${c.reset} ${c.brightWhite}${sizeDisplay}${c.reset} ${c.dim}│${c.reset} ` +
1206
1206
  `${c.cyan}Tests${c.reset} ${testColor}●${testStats.testFiles}${c.reset} ${c.dim}(${testStats.testCases} cases)${c.reset} ${c.dim}│${c.reset} ` +
1207
1207
  `${c.cyan}MCP${c.reset} ${mcpColor}●${mcpStats.enabled}/${mcpStats.total}${c.reset}`;
@@ -623,7 +623,7 @@ export const transferFromProjectCommand = {
623
623
  // Parent transfer command combining all transfer methods
624
624
  export const transferCommand = {
625
625
  name: 'transfer',
626
- description: 'Transfer patterns and plugins via IPFS-based decentralized registry',
626
+ description: 'Transfer patterns via IPFS-based decentralized registry',
627
627
  subcommands: [storeCommand, transferFromProjectCommand],
628
628
  examples: [
629
629
  { command: 'monomind hooks transfer store list', description: 'List patterns from registry' },
@@ -498,7 +498,7 @@ export const hooksCommand = {
498
498
  output.printList([
499
499
  '🧠 Trajectory + outcome logging',
500
500
  '🎯 Keyword routing + route-outcome measurement',
501
- '🔍 AgentDB integration (pure-JS HNSW search)',
501
+ '🔍 LanceDB integration (ANN vector search)',
502
502
  '🎯 32.3% token reduction',
503
503
  '👥 Agent Teams integration (auto task assignment)'
504
504
  ]);
@@ -43,7 +43,6 @@ export declare function getNeuralCommand(): Promise<Command | undefined>;
43
43
  export declare function getSecurityCommand(): Promise<Command | undefined>;
44
44
  export declare function getPerformanceCommand(): Promise<Command | undefined>;
45
45
  export declare function getProvidersCommand(): Promise<Command | undefined>;
46
- export declare function getPluginsCommand(): Promise<Command | undefined>;
47
46
  export declare function getDeploymentCommand(): Promise<Command | undefined>;
48
47
  export declare function getClaimsCommand(): Promise<Command | undefined>;
49
48
  export declare function getCompletionsCommand(): Promise<Command | undefined>;
@@ -36,7 +36,6 @@ const commandLoaders = {
36
36
  security: () => import('./security.js'),
37
37
  performance: () => import('./performance.js'),
38
38
  providers: () => import('./providers.js'),
39
- plugins: () => import('./plugins.js'),
40
39
  deployment: () => import('./deployment.js'),
41
40
  claims: () => import('./claims.js'),
42
41
  // P0 Commands
@@ -133,7 +132,6 @@ import { analyzeCommand } from './analyze.js';
133
132
  import { routeCommand } from './route.js';
134
133
  import { progressCommand } from './progress.js';
135
134
  import { providersCommand } from './providers.js';
136
- import { pluginsCommand } from './plugins.js';
137
135
  import { deploymentCommand } from './deployment.js';
138
136
  import { claimsCommand } from './claims.js';
139
137
  import { issuesCommand } from './issues.js';
@@ -217,7 +215,6 @@ export async function getNeuralCommand() { return loadCommand('neural'); }
217
215
  export async function getSecurityCommand() { return loadCommand('security'); }
218
216
  export async function getPerformanceCommand() { return loadCommand('performance'); }
219
217
  export async function getProvidersCommand() { return loadCommand('providers'); }
220
- export async function getPluginsCommand() { return loadCommand('plugins'); }
221
218
  export async function getDeploymentCommand() { return loadCommand('deployment'); }
222
219
  export async function getClaimsCommand() { return loadCommand('claims'); }
223
220
  export async function getCompletionsCommand() { return loadCommand('completions'); }
@@ -304,7 +301,6 @@ export const commandsByCategory = {
304
301
  ],
305
302
  management: [
306
303
  providersCommand,
307
- pluginsCommand,
308
304
  deploymentCommand,
309
305
  claimsCommand,
310
306
  issuesCommand,
@@ -346,12 +346,12 @@ const wizardCommand = {
346
346
  message: 'Select skill sets:',
347
347
  options: [
348
348
  { value: 'core', label: 'Core', hint: 'Swarm, memory, SPARC skills', selected: true },
349
- { value: 'agentdb', label: 'AgentDB', hint: 'Vector database skills', selected: true },
349
+ { value: 'memory', label: 'Memory (LanceDB)', hint: 'Vector database skills', selected: true },
350
350
  { value: 'github', label: 'GitHub', hint: 'GitHub integration skills', selected: true },
351
351
  ],
352
352
  });
353
353
  options.skills.core = skillSets.includes('core');
354
- options.skills.agentdb = skillSets.includes('agentdb');
354
+ options.skills.memory = skillSets.includes('memory');
355
355
  options.skills.github = skillSets.includes('github');
356
356
  }
357
357
  // Hooks selection
@@ -401,15 +401,15 @@ const wizardCommand = {
401
401
  const memoryBackend = await select({
402
402
  message: 'Select memory backend:',
403
403
  options: [
404
- { value: 'hybrid', label: 'Hybrid', hint: 'SQLite + AgentDB (recommended)' },
405
- { value: 'agentdb', label: 'AgentDB', hint: '150x faster vector search' },
404
+ { value: 'hybrid', label: 'Hybrid', hint: 'SQLite + LanceDB (recommended)' },
405
+ { value: 'lancedb', label: 'LanceDB', hint: '150x faster vector search' },
406
406
  { value: 'sqlite', label: 'SQLite', hint: 'Standard SQL storage' },
407
407
  { value: 'memory', label: 'In-Memory', hint: 'Fast but non-persistent' },
408
408
  ],
409
409
  });
410
410
  options.runtime.memoryBackend = memoryBackend;
411
411
  // HNSW indexing
412
- if (memoryBackend === 'agentdb' || memoryBackend === 'hybrid') {
412
+ if (memoryBackend === 'lancedb' || memoryBackend === 'hybrid') {
413
413
  const enableHNSW = await confirm({
414
414
  message: 'Enable HNSW indexing for faster vector search?',
415
415
  default: true,
@@ -423,7 +423,7 @@ const wizardCommand = {
423
423
  });
424
424
  options.runtime.enableNeural = enableNeural;
425
425
  // ADR-049: Self-Learning Memory capabilities
426
- if (memoryBackend === 'agentdb' || memoryBackend === 'hybrid') {
426
+ if (memoryBackend === 'lancedb' || memoryBackend === 'hybrid') {
427
427
  const enableSelfLearning = await confirm({
428
428
  message: 'Enable self-learning memory? (LearningBridge + Knowledge Graph + Agent Scopes)',
429
429
  default: true,
@@ -582,7 +582,7 @@ const skillsCommand = {
582
582
  options: [
583
583
  { name: 'all', description: 'Install all skills', type: 'boolean', default: false },
584
584
  { name: 'core', description: 'Install core skills', type: 'boolean', default: true },
585
- { name: 'agentdb', description: 'Install AgentDB skills', type: 'boolean', default: false },
585
+ { name: 'memory', description: 'Install memory skills', type: 'boolean', default: false },
586
586
  { name: 'github', description: 'Install GitHub skills', type: 'boolean', default: false },
587
587
  ],
588
588
  action: async (ctx) => {
@@ -605,7 +605,7 @@ const skillsCommand = {
605
605
  skills: {
606
606
  all: ctx.flags.all,
607
607
  core: ctx.flags.core,
608
- agentdb: ctx.flags.agentdb,
608
+ memory: ctx.flags.memory,
609
609
  github: ctx.flags.github,
610
610
  browser: false,
611
611
  advanced: false,
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * CLI Memory Command
3
- * Memory operations for AgentDB integration
3
+ * Memory operations for LanceDB integration
4
4
  */
5
5
  import type { Command } from '../types.js';
6
6
  export declare const memoryCommand: Command;