@zhin.js/agent 0.1.20 → 0.1.22

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 (143) hide show
  1. package/README.md +37 -23
  2. package/lib/agent-prompt/format.d.ts +6 -0
  3. package/lib/agent-prompt/format.d.ts.map +1 -0
  4. package/lib/agent-prompt/format.js +40 -0
  5. package/lib/agent-prompt/format.js.map +1 -0
  6. package/lib/agent-prompt/index.d.ts +5 -0
  7. package/lib/agent-prompt/index.d.ts.map +1 -0
  8. package/lib/agent-prompt/index.js +4 -0
  9. package/lib/agent-prompt/index.js.map +1 -0
  10. package/lib/agent-prompt/registry.d.ts +7 -0
  11. package/lib/agent-prompt/registry.d.ts.map +1 -0
  12. package/lib/agent-prompt/registry.js +23 -0
  13. package/lib/agent-prompt/registry.js.map +1 -0
  14. package/lib/agent-prompt/resolver.d.ts +12 -0
  15. package/lib/agent-prompt/resolver.d.ts.map +1 -0
  16. package/lib/agent-prompt/resolver.js +71 -0
  17. package/lib/agent-prompt/resolver.js.map +1 -0
  18. package/lib/builtin/run-deferred-task-tool.d.ts +20 -0
  19. package/lib/builtin/run-deferred-task-tool.d.ts.map +1 -0
  20. package/lib/builtin/run-deferred-task-tool.js +39 -0
  21. package/lib/builtin/run-deferred-task-tool.js.map +1 -0
  22. package/lib/builtin/tool-search-tool.d.ts +19 -0
  23. package/lib/builtin/tool-search-tool.d.ts.map +1 -0
  24. package/lib/builtin/tool-search-tool.js +54 -0
  25. package/lib/builtin/tool-search-tool.js.map +1 -0
  26. package/lib/builtin-tools.d.ts +1 -1
  27. package/lib/builtin-tools.d.ts.map +1 -1
  28. package/lib/builtin-tools.js +1 -5
  29. package/lib/builtin-tools.js.map +1 -1
  30. package/lib/cron-engine.d.ts.map +1 -1
  31. package/lib/cron-engine.js +3 -3
  32. package/lib/cron-engine.js.map +1 -1
  33. package/lib/deferred-worker-runner.d.ts +30 -0
  34. package/lib/deferred-worker-runner.d.ts.map +1 -0
  35. package/lib/deferred-worker-runner.js +159 -0
  36. package/lib/deferred-worker-runner.js.map +1 -0
  37. package/lib/deferred-worker-tool-load.d.ts +6 -0
  38. package/lib/deferred-worker-tool-load.d.ts.map +1 -0
  39. package/lib/deferred-worker-tool-load.js +5 -0
  40. package/lib/deferred-worker-tool-load.js.map +1 -0
  41. package/lib/hooks.d.ts +13 -0
  42. package/lib/hooks.d.ts.map +1 -1
  43. package/lib/hooks.js.map +1 -1
  44. package/lib/index.d.ts +3 -3
  45. package/lib/index.d.ts.map +1 -1
  46. package/lib/index.js +2 -3
  47. package/lib/index.js.map +1 -1
  48. package/lib/init/create-zhin-agent.d.ts.map +1 -1
  49. package/lib/init/create-zhin-agent.js +9 -7
  50. package/lib/init/create-zhin-agent.js.map +1 -1
  51. package/lib/init/register-ai-service.d.ts.map +1 -1
  52. package/lib/init/register-ai-service.js +5 -5
  53. package/lib/init/register-ai-service.js.map +1 -1
  54. package/lib/init/register-ai-trigger.d.ts.map +1 -1
  55. package/lib/init/register-ai-trigger.js +25 -9
  56. package/lib/init/register-ai-trigger.js.map +1 -1
  57. package/lib/init/register-builtin-tools.d.ts.map +1 -1
  58. package/lib/init/register-builtin-tools.js +33 -29
  59. package/lib/init/register-builtin-tools.js.map +1 -1
  60. package/lib/init/register-mcp-from-config.d.ts +2 -0
  61. package/lib/init/register-mcp-from-config.d.ts.map +1 -0
  62. package/lib/init/register-mcp-from-config.js +85 -0
  63. package/lib/init/register-mcp-from-config.js.map +1 -0
  64. package/lib/init/register-mcp-memory-default.d.ts +2 -0
  65. package/lib/init/register-mcp-memory-default.d.ts.map +1 -0
  66. package/lib/init/register-mcp-memory-default.js +34 -0
  67. package/lib/init/register-mcp-memory-default.js.map +1 -0
  68. package/lib/init.d.ts.map +1 -1
  69. package/lib/init.js +4 -0
  70. package/lib/init.js.map +1 -1
  71. package/lib/mcp-client/index.d.ts +1 -2
  72. package/lib/mcp-client/index.d.ts.map +1 -1
  73. package/lib/mcp-client/index.js +1 -2
  74. package/lib/mcp-client/index.js.map +1 -1
  75. package/lib/orchestrator/mcp-lifecycle.d.ts +6 -0
  76. package/lib/orchestrator/mcp-lifecycle.d.ts.map +1 -0
  77. package/lib/orchestrator/mcp-lifecycle.js +7 -0
  78. package/lib/orchestrator/mcp-lifecycle.js.map +1 -0
  79. package/lib/orchestrator/mcp-registry.d.ts +5 -1
  80. package/lib/orchestrator/mcp-registry.d.ts.map +1 -1
  81. package/lib/orchestrator/mcp-registry.js +36 -20
  82. package/lib/orchestrator/mcp-registry.js.map +1 -1
  83. package/lib/orchestrator/owner-confirm-orchestration.d.ts +4 -1
  84. package/lib/orchestrator/owner-confirm-orchestration.d.ts.map +1 -1
  85. package/lib/orchestrator/owner-confirm-orchestration.js.map +1 -1
  86. package/lib/orchestrator/tool-selection.d.ts +2 -0
  87. package/lib/orchestrator/tool-selection.d.ts.map +1 -1
  88. package/lib/orchestrator/tool-selection.js +40 -4
  89. package/lib/orchestrator/tool-selection.js.map +1 -1
  90. package/lib/reserved-tools.js +2 -2
  91. package/lib/reserved-tools.js.map +1 -1
  92. package/lib/security/bash-tool-context.d.ts +17 -2
  93. package/lib/security/bash-tool-context.d.ts.map +1 -1
  94. package/lib/security/bash-tool-context.js +9 -3
  95. package/lib/security/bash-tool-context.js.map +1 -1
  96. package/lib/security/exec-policy.d.ts.map +1 -1
  97. package/lib/security/exec-policy.js +4 -1
  98. package/lib/security/exec-policy.js.map +1 -1
  99. package/lib/subagent.d.ts +7 -1
  100. package/lib/subagent.d.ts.map +1 -1
  101. package/lib/subagent.js +22 -8
  102. package/lib/subagent.js.map +1 -1
  103. package/lib/utils/config-env.d.ts +5 -0
  104. package/lib/utils/config-env.d.ts.map +1 -0
  105. package/lib/utils/config-env.js +34 -0
  106. package/lib/utils/config-env.js.map +1 -0
  107. package/lib/zhin-agent/config.d.ts +23 -0
  108. package/lib/zhin-agent/config.d.ts.map +1 -1
  109. package/lib/zhin-agent/config.js +20 -0
  110. package/lib/zhin-agent/config.js.map +1 -1
  111. package/lib/zhin-agent/index.d.ts +21 -0
  112. package/lib/zhin-agent/index.d.ts.map +1 -1
  113. package/lib/zhin-agent/index.js +257 -35
  114. package/lib/zhin-agent/index.js.map +1 -1
  115. package/lib/zhin-agent/prompt.d.ts +6 -0
  116. package/lib/zhin-agent/prompt.d.ts.map +1 -1
  117. package/lib/zhin-agent/prompt.js +70 -15
  118. package/lib/zhin-agent/prompt.js.map +1 -1
  119. package/lib/zhin-agent/tool-catalog.d.ts +15 -0
  120. package/lib/zhin-agent/tool-catalog.d.ts.map +1 -0
  121. package/lib/zhin-agent/tool-catalog.js +52 -0
  122. package/lib/zhin-agent/tool-catalog.js.map +1 -0
  123. package/lib/zhin-agent/tool-runtime.d.ts +3 -1
  124. package/lib/zhin-agent/tool-runtime.d.ts.map +1 -1
  125. package/lib/zhin-agent/tool-runtime.js +14 -0
  126. package/lib/zhin-agent/tool-runtime.js.map +1 -1
  127. package/lib/zhin-agent/tool-search-orchestrator.d.ts +23 -0
  128. package/lib/zhin-agent/tool-search-orchestrator.d.ts.map +1 -0
  129. package/lib/zhin-agent/tool-search-orchestrator.js +86 -0
  130. package/lib/zhin-agent/tool-search-orchestrator.js.map +1 -0
  131. package/lib/zhin-agent/turn-metrics.d.ts +20 -0
  132. package/lib/zhin-agent/turn-metrics.d.ts.map +1 -0
  133. package/lib/zhin-agent/turn-metrics.js +28 -0
  134. package/lib/zhin-agent/turn-metrics.js.map +1 -0
  135. package/package.json +14 -4
  136. package/lib/builtin/read-memory-tool.d.ts +0 -14
  137. package/lib/builtin/read-memory-tool.d.ts.map +0 -1
  138. package/lib/builtin/read-memory-tool.js +0 -49
  139. package/lib/builtin/read-memory-tool.js.map +0 -1
  140. package/lib/builtin/write-memory-tool.d.ts +0 -14
  141. package/lib/builtin/write-memory-tool.d.ts.map +0 -1
  142. package/lib/builtin/write-memory-tool.js +0 -50
  143. package/lib/builtin/write-memory-tool.js.map +0 -1
@@ -2,10 +2,12 @@
2
2
  * Register AI trigger handler via the core MessageDispatcher inbound pipeline.
3
3
  */
4
4
  import './types.js';
5
- import { getPlugin, shouldTriggerAI, inferSenderPermissions, parseRichMediaContent, mergeAITriggerConfig } from '@zhin.js/core';
5
+ import { getPlugin, inferSenderPermissions, mergeAITriggerConfig, parseRichMediaContent, shouldTriggerAI } from '@zhin.js/core';
6
6
  import { extractMediaParts } from './message-media.js';
7
7
  import { renderOutput } from './output-renderer.js';
8
8
  import { canAccessTool } from '../orchestrator/tool-selection.js';
9
+ import { formatCompactLog, truncatePreview } from '@zhin.js/logger';
10
+ import { formatAiHandlerCompleteLog } from '../zhin-agent/turn-metrics.js';
9
11
  export function registerAITrigger(refs) {
10
12
  const plugin = getPlugin();
11
13
  const { useContext, root, logger } = plugin;
@@ -13,7 +15,7 @@ export function registerAITrigger(refs) {
13
15
  const rawConfig = ai.getTriggerConfig();
14
16
  const triggerConfig = mergeAITriggerConfig(rawConfig);
15
17
  if (!triggerConfig.enabled) {
16
- logger.info('AI Trigger is disabled');
18
+ logger.info(formatCompactLog('AI Handler', { disabled: true }));
17
19
  return;
18
20
  }
19
21
  const dispatcherSvc = root.inject('dispatcher');
@@ -60,7 +62,10 @@ export function registerAITrigger(refs) {
60
62
  else {
61
63
  externalTools = externalTools.filter(t => canAccessTool(t, toolContext));
62
64
  }
63
- logger.debug(`[AI Handler] 工具收集: ${externalTools.length} 个, ${(performance.now() - tCollect).toFixed(0)}ms`);
65
+ logger.debug(formatCompactLog('AI Handler', {
66
+ tools: externalTools.length,
67
+ collect_ms: Math.round(performance.now() - tCollect),
68
+ }));
64
69
  try {
65
70
  // 每轮 LLM 调用在 Agent 内部已有 turnTimeout(来自 triggerConfig.timeout),
66
71
  // 这里不再设置全局超时,避免多轮工具调用被不合理地截断。
@@ -73,7 +78,7 @@ export function registerAITrigger(refs) {
73
78
  const onChunk = (_chunk, _full) => {
74
79
  if (!firstChunkMs) {
75
80
  firstChunkMs = performance.now() - t0;
76
- logger.debug(`[AI Handler] token: ${firstChunkMs.toFixed(0)}ms`);
81
+ logger.debug(formatCompactLog('AI Handler', { first_token_ms: Math.round(firstChunkMs) }));
77
82
  }
78
83
  };
79
84
  if (mediaParts.length > 0) {
@@ -89,23 +94,34 @@ export function registerAITrigger(refs) {
89
94
  const responseText = renderOutput(elements);
90
95
  if (responseText)
91
96
  await replyOutbound(parseRichMediaContent(responseText));
92
- logger.info(`[AI Handler] 总耗时: ${(performance.now() - t0).toFixed(0)}ms`);
97
+ const totalMs = performance.now() - t0;
98
+ const turnMetrics = refs.zhinAgent.getLastTurnMetrics();
99
+ if (turnMetrics) {
100
+ logger.info(formatAiHandlerCompleteLog(turnMetrics, totalMs));
101
+ }
102
+ else {
103
+ logger.info(formatCompactLog('AI Handler', { total_ms: Math.round(totalMs), usage: 'n/a' }));
104
+ }
93
105
  }
94
106
  catch (error) {
95
107
  const msg = error instanceof Error ? error.message : String(error);
96
- logger.warn(`[AI Handler] 失败 (${(performance.now() - t0).toFixed(0)}ms): ${msg}`);
108
+ logger.warn(formatCompactLog('AI Handler', {
109
+ total_ms: Math.round(performance.now() - t0),
110
+ ok: false,
111
+ error: truncatePreview(msg, 120),
112
+ }));
97
113
  await replyOutbound(triggerConfig.errorTemplate.replace('{error}', msg));
98
114
  }
99
115
  };
100
116
  const dispatcher = root.inject('dispatcher');
101
117
  if (!dispatcher || typeof dispatcher.setAIHandler !== 'function') {
102
- logger.warn('AI Trigger skipped: MessageDispatcher is not available');
118
+ logger.warn(formatCompactLog('AI Handler', { error: 'no_dispatcher' }));
103
119
  return;
104
120
  }
105
121
  dispatcher.setAITriggerMatcher((message) => shouldTriggerAI(message, triggerConfig));
106
122
  dispatcher.setAIHandler(handleAIMessage);
107
- logger.debug('AI Handler registered via MessageDispatcher');
108
- return () => { logger.info('AI Handler unregistered'); };
123
+ logger.debug(formatCompactLog('AI Handler', { hook: 'on' }));
124
+ return () => { logger.debug(formatCompactLog('AI Handler', { hook: 'off' })); };
109
125
  });
110
126
  }
111
127
  //# sourceMappingURL=register-ai-trigger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"register-ai-trigger.js","sourceRoot":"","sources":["../../src/init/register-ai-trigger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register-ai-trigger.js","sourceRoot":"","sources":["../../src/init/register-ai-trigger.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"register-builtin-tools.d.ts","sourceRoot":"","sources":["../../src/init/register-builtin-tools.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAsU9D"}
1
+ {"version":3,"file":"register-builtin-tools.d.ts","sourceRoot":"","sources":["../../src/init/register-builtin-tools.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CA0U9D"}
@@ -5,7 +5,7 @@
5
5
  import * as fs from 'fs';
6
6
  import * as os from 'os';
7
7
  import * as path from 'path';
8
- import { getPlugin, isZhinTool } from '@zhin.js/core';
8
+ import { formatCompact, getPlugin, isZhinTool } from '@zhin.js/core';
9
9
  import { createBuiltinTools } from '../builtin-tools.js';
10
10
  import { collectPluginSkillSearchRoots } from '../discovery/utils.js';
11
11
  import { discoverWorkspaceSkills, loadAlwaysSkillsContent, buildSkillsSummaryXML } from '../discovery/skills.js';
@@ -46,7 +46,6 @@ export function registerBuiltinTools(refs) {
46
46
  const plain = tool.toTool();
47
47
  disposers.push(toolService.addTool({ ...plain, source: 'builtin' }, root.name));
48
48
  }
49
- logger.info(`Registered ${builtinTools.length} built-in + ${cronTools.length} cron tools`);
50
49
  let skillWatchers = [];
51
50
  let skillReloadDebounce = null;
52
51
  let toolReloadDebounce = null;
@@ -90,13 +89,14 @@ export function registerBuiltinTools(refs) {
90
89
  async function syncWorkspaceSkills() {
91
90
  const orchestrator = root.inject?.('agent');
92
91
  if (!orchestrator)
93
- return 0;
92
+ return { count: 0, pluginTools: '' };
94
93
  // Remove previously discovered skills
95
94
  for (const existing of orchestrator.skills.getAll()) {
96
95
  orchestrator.skills.remove(existing.name);
97
96
  }
98
97
  skillToolNames.clear();
99
98
  const skills = await discoverWorkspaceSkills(root);
99
+ const pluginToolCounts = [];
100
100
  if (skills.length > 0) {
101
101
  for (const s of skills) {
102
102
  const ownerName = s.ownerPlugin || root.name;
@@ -115,7 +115,8 @@ export function registerBuiltinTools(refs) {
115
115
  always: s.always,
116
116
  }, undefined, ownerName);
117
117
  if (associatedTools.length) {
118
- logger.info(`[注册] ${associatedTools.length} 工具${s.platforms?.length ? ', 平台: ' + s.platforms.join(',') : ', 通用'}`);
118
+ const label = s.platforms?.length ? s.platforms.join('+') : 'generic';
119
+ pluginToolCounts.push(`${label}:${associatedTools.length}`);
119
120
  }
120
121
  }
121
122
  }
@@ -126,7 +127,7 @@ export function registerBuiltinTools(refs) {
126
127
  refs.zhinAgent.setActiveSkillsContext(alwaysContent);
127
128
  refs.zhinAgent.setSkillsSummaryXML(skillsXml);
128
129
  }
129
- return skills.length;
130
+ return { count: skills.length, pluginTools: pluginToolCounts.join(',') };
130
131
  }
131
132
  // 文件化 Tool 的 disposer(用于热重载时移除旧 tool)
132
133
  let toolFileDisposers = [];
@@ -209,32 +210,29 @@ export function registerBuiltinTools(refs) {
209
210
  return added;
210
211
  }
211
212
  (async () => {
213
+ let skillCount = 0;
214
+ let toolCount = 0;
215
+ let agentCount = 0;
216
+ let pluginTools = '';
212
217
  // Step 1: discover workspace skills
213
218
  try {
214
- const count = await syncWorkspaceSkills();
215
- if (count > 0) {
216
- logger.info(`Registered ${count} workspace skills`);
217
- }
219
+ const skillsResult = await syncWorkspaceSkills();
220
+ skillCount = skillsResult.count;
221
+ pluginTools = skillsResult.pluginTools;
218
222
  }
219
223
  catch (e) {
220
- logger.warn(`Failed to discover workspace skills: ${e.message}`);
224
+ logger.warn(formatCompact({ error: e.message }));
221
225
  }
222
226
  // Step 1b: discover *.tool.md file-based tools
223
227
  try {
224
- const toolCount = await syncWorkspaceTools();
225
- if (toolCount > 0) {
226
- logger.info(`Registered ${toolCount} workspace file-based tools`);
227
- }
228
+ toolCount = await syncWorkspaceTools();
228
229
  }
229
230
  catch (e) {
230
- logger.warn(`Failed to discover workspace tools: ${e.message}`);
231
+ logger.warn(formatCompact({ error: e.message }));
231
232
  }
232
233
  // Step 1c: discover *.agent.md agent presets
233
234
  try {
234
- const agentCount = await syncWorkspaceAgents();
235
- if (agentCount > 0) {
236
- logger.info(`Registered ${agentCount} workspace agent presets`);
237
- }
235
+ agentCount = await syncWorkspaceAgents();
238
236
  }
239
237
  catch (e) {
240
238
  logger.debug(`Failed to discover workspace agents: ${e.message}`);
@@ -255,9 +253,6 @@ export function registerBuiltinTools(refs) {
255
253
  const agentsFile = contextFiles.find(f => f.path === 'AGENTS.md');
256
254
  if (agentsFile)
257
255
  loadedFiles.push('AGENTS.md');
258
- if (loadedFiles.length > 0) {
259
- logger.info(`Loaded bootstrap: ${loadedFiles.join(', ')} → agent prompt`);
260
- }
261
256
  if (refs.zhinAgent && contextFiles.length > 0) {
262
257
  const contextSection = buildBootstrapContextSection(contextFiles);
263
258
  refs.zhinAgent.setBootstrapContext(contextSection);
@@ -266,6 +261,15 @@ export function registerBuiltinTools(refs) {
266
261
  catch (e) {
267
262
  logger.debug(`Bootstrap files not loaded: ${e.message}`);
268
263
  }
264
+ logger.info(formatCompact({
265
+ builtin: builtinTools.length,
266
+ cron: cronTools.length,
267
+ skills: skillCount,
268
+ workspace_tools: toolCount,
269
+ agents: agentCount,
270
+ plugin_tools: pluginTools || undefined,
271
+ bootstrap: loadedFiles.length ? loadedFiles.join(',') : undefined,
272
+ }));
269
273
  // Trigger agent:bootstrap hook
270
274
  const orchestrator2 = root.inject?.('agent');
271
275
  await triggerAIHook(createAIHookEvent('agent', 'bootstrap', undefined, {
@@ -286,10 +290,10 @@ export function registerBuiltinTools(refs) {
286
290
  try {
287
291
  const count = await syncWorkspaceTools();
288
292
  if (count >= 0)
289
- logger.info(`[Tool热重载] 已更新,工作区文件化Tool: ${count}`);
293
+ logger.debug(formatCompact({ reload: count }));
290
294
  }
291
295
  catch (e) {
292
- logger.warn(`[Tool热重载] 失败: ${e.message}`);
296
+ logger.warn(formatCompact({ reload: 'fail', error: e.message }));
293
297
  }
294
298
  }, 400);
295
299
  };
@@ -312,13 +316,13 @@ export function registerBuiltinTools(refs) {
312
316
  skillReloadDebounce = setTimeout(async () => {
313
317
  skillReloadDebounce = null;
314
318
  try {
315
- const count = await syncWorkspaceSkills();
316
- await triggerAIHook(createAIHookEvent('agent', 'skills-reloaded', undefined, { skillCount: count }));
317
- if (count >= 0)
318
- logger.info(`[技能热重载] 已更新,工作区技能: ${count}`);
319
+ const skills = await syncWorkspaceSkills();
320
+ await triggerAIHook(createAIHookEvent('agent', 'skills-reloaded', undefined, { skillCount: skills.count }));
321
+ if (skills.count >= 0)
322
+ logger.debug(formatCompact({ skills: skills.count }));
319
323
  }
320
324
  catch (e) {
321
- logger.warn(`[技能热重载] 失败: ${e.message}`);
325
+ logger.warn(formatCompact({ reload: 'fail', error: e.message }));
322
326
  }
323
327
  }, 400);
324
328
  };
@@ -1 +1 @@
1
- {"version":3,"file":"register-builtin-tools.js","sourceRoot":"","sources":["../../src/init/register-builtin-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register-builtin-tools.js","sourceRoot":"","sources":["../../src/init/register-builtin-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function registerMcpFromConfig(): void;
2
+ //# sourceMappingURL=register-mcp-from-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-mcp-from-config.d.ts","sourceRoot":"","sources":["../../src/init/register-mcp-from-config.ts"],"names":[],"mappings":"AAoDA,wBAAgB,qBAAqB,IAAI,IAAI,CAoC5C"}
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Register MCP server entries from zhin.config ai.mcpServers (global/common scope).
3
+ */
4
+ import { getPlugin } from '@zhin.js/core';
5
+ import { formatCompact } from '@zhin.js/logger';
6
+ import { resolveConfigEnvString } from '../utils/config-env.js';
7
+ function resolveHeaders(headers) {
8
+ if (!headers)
9
+ return undefined;
10
+ const out = {};
11
+ for (const [k, v] of Object.entries(headers)) {
12
+ out[k] = resolveConfigEnvString(String(v)) ?? String(v);
13
+ }
14
+ return out;
15
+ }
16
+ function resolveEnvRecord(env) {
17
+ if (!env)
18
+ return undefined;
19
+ const out = {};
20
+ for (const [k, v] of Object.entries(env)) {
21
+ out[k] = resolveConfigEnvString(String(v)) ?? String(v);
22
+ }
23
+ return out;
24
+ }
25
+ function validateMcpServerEntry(raw) {
26
+ if (!raw || typeof raw.name !== 'string' || !raw.name.trim())
27
+ return null;
28
+ const transport = raw.transport;
29
+ if (transport !== 'stdio' && transport !== 'streamable-http' && transport !== 'sse')
30
+ return null;
31
+ const url = resolveConfigEnvString(raw.url);
32
+ const command = resolveConfigEnvString(raw.command);
33
+ if (transport === 'stdio') {
34
+ if (!command?.trim())
35
+ return null;
36
+ }
37
+ else if (!url?.trim()) {
38
+ return null;
39
+ }
40
+ return {
41
+ name: raw.name.trim(),
42
+ transport,
43
+ url,
44
+ command,
45
+ args: raw.args?.map(a => resolveConfigEnvString(String(a)) ?? String(a)),
46
+ env: resolveEnvRecord(raw.env),
47
+ headers: resolveHeaders(raw.headers),
48
+ };
49
+ }
50
+ export function registerMcpFromConfig() {
51
+ const plugin = getPlugin();
52
+ const { useContext, root, logger } = plugin;
53
+ useContext('ai', (ai) => {
54
+ if (!ai?.isReady?.())
55
+ return;
56
+ const orchestrator = root.inject('agent');
57
+ if (!orchestrator) {
58
+ logger.warn(formatCompact({ error: 'no_orchestrator' }));
59
+ return;
60
+ }
61
+ const configService = root.inject('config');
62
+ const appConfig = configService?.getPrimary() || {};
63
+ const servers = appConfig.ai?.mcpServers;
64
+ if (!servers?.length)
65
+ return;
66
+ let registered = 0;
67
+ for (const raw of servers) {
68
+ const entry = validateMcpServerEntry(raw);
69
+ if (!entry) {
70
+ logger.warn(formatCompact({ error: 'invalid_entry', preview: JSON.stringify(raw) }));
71
+ continue;
72
+ }
73
+ if (orchestrator.mcps.has(entry.name)) {
74
+ logger.warn(formatCompact({ error: 'duplicate', name: entry.name }));
75
+ continue;
76
+ }
77
+ orchestrator.addMcp(entry, {}, 'config');
78
+ registered++;
79
+ }
80
+ if (registered > 0) {
81
+ logger.debug(formatCompact({ count: registered, source: 'ai.mcpServers' }));
82
+ }
83
+ });
84
+ }
85
+ //# sourceMappingURL=register-mcp-from-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-mcp-from-config.js","sourceRoot":"","sources":["../../src/init/register-mcp-from-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function registerMcpMemoryDefault(): void;
2
+ //# sourceMappingURL=register-mcp-memory-default.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-mcp-memory-default.d.ts","sourceRoot":"","sources":["../../src/init/register-mcp-memory-default.ts"],"names":[],"mappings":"AAUA,wBAAgB,wBAAwB,IAAI,IAAI,CA8B/C"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Register default @modelcontextprotocol/server-memory MCP (knowledge graph).
3
+ * Registered only when ai.memoryMcp === true (default off). Skipped if name "memory" already registered.
4
+ */
5
+ import * as path from 'node:path';
6
+ import { formatCompact, getPlugin } from '@zhin.js/core';
7
+ import { getDataDir } from '../discovery/utils.js';
8
+ export function registerMcpMemoryDefault() {
9
+ const plugin = getPlugin();
10
+ const { useContext, root, logger } = plugin;
11
+ useContext('ai', (ai) => {
12
+ if (!ai?.isReady?.())
13
+ return;
14
+ const orchestrator = root.inject('agent');
15
+ if (!orchestrator)
16
+ return;
17
+ const configService = root.inject('config');
18
+ const appConfig = configService?.getPrimary() || {};
19
+ if (appConfig.ai?.memoryMcp !== true)
20
+ return;
21
+ if (orchestrator.mcps.has('memory'))
22
+ return;
23
+ const memoryPath = path.join(getDataDir(), 'knowledge-graph.jsonl');
24
+ orchestrator.addMcp({
25
+ name: 'memory',
26
+ transport: 'stdio',
27
+ command: 'npx',
28
+ args: ['-y', '@modelcontextprotocol/server-memory'],
29
+ env: { MEMORY_FILE_PATH: memoryPath },
30
+ }, {}, 'agent-default');
31
+ logger.debug(formatCompact({ name: 'memory', source: 'agent-default', path: memoryPath }));
32
+ });
33
+ }
34
+ //# sourceMappingURL=register-mcp-memory-default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register-mcp-memory-default.js","sourceRoot":"","sources":["../../src/init/register-mcp-memory-default.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGnD,MAAM,UAAU,wBAAwB;IACtC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAE5C,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE;QACtB,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE;YAAE,OAAO;QAE7B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAkC,CAAC;QAC3E,IAAI,CAAC,YAAY;YAAE,OAAO;QAE1B,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,aAAa,EAAE,UAAU,EAAqB,IAAI,EAAE,CAAC;QACvE,IAAI,SAAS,CAAC,EAAE,EAAE,SAAS,KAAK,IAAI;YAAE,OAAO;QAE7C,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO;QAE5C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,uBAAuB,CAAC,CAAC;QACpE,YAAY,CAAC,MAAM,CACjB;YACE,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,OAAO;YAClB,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,CAAC,IAAI,EAAE,qCAAqC,CAAC;YACnD,GAAG,EAAE,EAAE,gBAAgB,EAAE,UAAU,EAAE;SACtC,EACD,EAAE,EACF,eAAe,CAChB,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,aAAa,CAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;IAC9F,CAAC,CAAC,CAAC;AACL,CAAC"}
package/lib/init.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,iBAAiB,CAAC;AAczB;;;;;;;;GAQG;AACH,wBAAgB,eAAe,IAAI,IAAI,CActC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,iBAAiB,CAAC;AAgBzB;;;;;;;;GAQG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAgBtC"}
package/lib/init.js CHANGED
@@ -16,6 +16,8 @@
16
16
  import './init/types.js';
17
17
  import { createRefs } from './init/shared-refs.js';
18
18
  import { registerOrchestrator } from './init/register-orchestrator.js';
19
+ import { registerMcpFromConfig } from './init/register-mcp-from-config.js';
20
+ import { registerMcpMemoryDefault } from './init/register-mcp-memory-default.js';
19
21
  import { registerToolService } from './init/register-tool-service.js';
20
22
  import { registerDbModels } from './init/register-db-models.js';
21
23
  import { registerAIService } from './init/register-ai-service.js';
@@ -38,6 +40,8 @@ import { registerBuiltinTools } from './init/register-builtin-tools.js';
38
40
  export function initAgentModule() {
39
41
  const refs = createRefs();
40
42
  registerOrchestrator();
43
+ registerMcpFromConfig();
44
+ registerMcpMemoryDefault();
41
45
  registerToolService();
42
46
  registerDbModels();
43
47
  registerAIService(refs);
package/lib/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,IAAI,GAAG,UAAU,EAAE,CAAC;IAE1B,oBAAoB,EAAE,CAAC;IACvB,mBAAmB,EAAE,CAAC;IACtB,gBAAgB,EAAE,CAAC;IACnB,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACxB,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC7B,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACxB,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACxB,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC9B,uBAAuB,EAAE,CAAC;IAC1B,4BAA4B,EAAE,CAAC;IAC/B,oBAAoB,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAExE;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,IAAI,GAAG,UAAU,EAAE,CAAC;IAE1B,oBAAoB,EAAE,CAAC;IACvB,qBAAqB,EAAE,CAAC;IACxB,wBAAwB,EAAE,CAAC;IAC3B,mBAAmB,EAAE,CAAC;IACtB,gBAAgB,EAAE,CAAC;IACnB,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACxB,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC7B,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACxB,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACxB,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC9B,uBAAuB,EAAE,CAAC;IAC1B,4BAA4B,EAAE,CAAC;IAC/B,oBAAoB,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC"}
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * McpClientManager — manages all MCP client connections.
3
3
  *
4
- * Works with McpRegistry to auto-connect/disconnect and
5
- * bridge tools into the ToolRegistry.
4
+ * Used by McpRegistry for connect/disconnect; tools are merged in ZhinAgent via getAllMcpTools.
6
5
  */
7
6
  import type { AgentTool } from '@zhin.js/ai';
8
7
  import type { McpServerEntry, McpResource, McpPrompt } from '../orchestrator/types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp-client/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA0C;IAEhE,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAU5D,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQvC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAMpC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS;IAI5D,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIlC,WAAW,IAAI,SAAS,EAAE;IAQ1B,eAAe,IAAI,WAAW,EAAE;IAQhC,aAAa,IAAI,SAAS,EAAE;IAQ5B,IAAI,cAAc,IAAI,MAAM,CAM3B;CACF;AAED,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACrF,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp-client/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA0C;IAEhE,OAAO,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAU5D,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQvC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAMpC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS;IAI5D,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIlC,WAAW,IAAI,SAAS,EAAE;IAQ1B,eAAe,IAAI,WAAW,EAAE;IAQhC,aAAa,IAAI,SAAS,EAAE;IAQ5B,IAAI,cAAc,IAAI,MAAM,CAM3B;CACF;AAED,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACrF,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
@@ -1,8 +1,7 @@
1
1
  /**
2
2
  * McpClientManager — manages all MCP client connections.
3
3
  *
4
- * Works with McpRegistry to auto-connect/disconnect and
5
- * bridge tools into the ToolRegistry.
4
+ * Used by McpRegistry for connect/disconnect; tools are merged in ZhinAgent via getAllMcpTools.
6
5
  */
7
6
  import { McpClientConnection } from './connection.js';
8
7
  export class McpClientManager {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp-client/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp-client/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * MCP connection lifecycle helpers for ZhinAgent turns.
3
+ */
4
+ import type { McpRegistry } from './mcp-registry.js';
5
+ export declare function ensureMcpConnections(mcps: McpRegistry): Promise<void>;
6
+ //# sourceMappingURL=mcp-lifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-lifecycle.d.ts","sourceRoot":"","sources":["../../src/orchestrator/mcp-lifecycle.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3E"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * MCP connection lifecycle helpers for ZhinAgent turns.
3
+ */
4
+ export async function ensureMcpConnections(mcps) {
5
+ await mcps.ensureConnected();
6
+ }
7
+ //# sourceMappingURL=mcp-lifecycle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-lifecycle.js","sourceRoot":"","sources":["../../src/orchestrator/mcp-lifecycle.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,IAAiB;IAC1D,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;AAC/B,CAAC"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import type { AgentTool } from '@zhin.js/ai';
8
8
  import { ResourceRegistry } from './resource-registry.js';
9
- import type { McpServerEntry, McpResource, McpPrompt } from './types.js';
9
+ import type { McpServerEntry, McpResource, McpPrompt, ResourceScope } from './types.js';
10
10
  export interface McpConnection {
11
11
  name: string;
12
12
  connected: boolean;
@@ -15,8 +15,11 @@ export interface McpConnection {
15
15
  prompts: McpPrompt[];
16
16
  }
17
17
  export declare class McpRegistry extends ResourceRegistry<McpServerEntry> {
18
+ private readonly manager;
18
19
  private readonly connections;
19
20
  connect(name: string): Promise<McpConnection>;
21
+ /** Lazy-connect all registered servers; per-server failures are logged, not thrown. */
22
+ ensureConnected(): Promise<void>;
20
23
  disconnect(name: string): void;
21
24
  getConnection(name: string): McpConnection | undefined;
22
25
  getToolsFromServer(name: string): AgentTool[];
@@ -24,6 +27,7 @@ export declare class McpRegistry extends ResourceRegistry<McpServerEntry> {
24
27
  getPromptsFromServer(name: string): McpPrompt[];
25
28
  getAllMcpTools(): AgentTool[];
26
29
  isConnected(name: string): boolean;
30
+ remove(name: string, scope?: ResourceScope): boolean;
27
31
  dispose(): void;
28
32
  }
29
33
  //# sourceMappingURL=mcp-registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-registry.d.ts","sourceRoot":"","sources":["../../src/orchestrator/mcp-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEzE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,SAAS,EAAE,WAAW,EAAE,CAAC;IACzB,OAAO,EAAE,SAAS,EAAE,CAAC;CACtB;AAED,qBAAa,WAAY,SAAQ,gBAAgB,CAAC,cAAc,CAAC;IAC/D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoC;IAE1D,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA2BnD,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAO9B,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAItD,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE;IAI7C,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,EAAE;IAInD,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE;IAI/C,cAAc,IAAI,SAAS,EAAE;IAQ7B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIzB,OAAO,IAAI,IAAI;CAMzB"}
1
+ {"version":3,"file":"mcp-registry.d.ts","sourceRoot":"","sources":["../../src/orchestrator/mcp-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAIxF,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,SAAS,EAAE,WAAW,EAAE,CAAC;IACzB,OAAO,EAAE,SAAS,EAAE,CAAC;CACtB;AAED,qBAAa,WAAY,SAAQ,gBAAgB,CAAC,cAAc,CAAC;IAC/D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoC;IAE1D,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAmBnD,uFAAuF;IACjF,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAetC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK9B,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAItD,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE;IAI7C,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,EAAE;IAInD,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE;IAI/C,cAAc,IAAI,SAAS,EAAE;IAQ7B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIzB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,aAAa,GAAG,OAAO;IAMpD,OAAO,IAAI,IAAI;CAKzB"}