@askexenow/exe-os 0.9.51 → 0.9.53

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.
package/dist/bin/cli.js CHANGED
@@ -31754,6 +31754,27 @@ function diagnoseClaudeMcpConfig(homeDir = os21.homedir(), cwd2 = process.cwd(),
31754
31754
  fix: "Use one source of truth per MCP server name; remove or rename duplicates."
31755
31755
  });
31756
31756
  }
31757
+ const alwaysLoadServers = [];
31758
+ for (const [name, config] of Object.entries(claudeJson?.mcpServers ?? {})) {
31759
+ if (config && typeof config === "object" && config.alwaysLoad === true) {
31760
+ alwaysLoadServers.push(`${name} (global)`);
31761
+ }
31762
+ }
31763
+ for (const [projectPath, projectConfig] of applicableProjects) {
31764
+ for (const [name, config] of Object.entries(projectConfig.mcpServers ?? {})) {
31765
+ if (config && typeof config === "object" && config.alwaysLoad === true) {
31766
+ alwaysLoadServers.push(`${name} (${projectPath})`);
31767
+ }
31768
+ }
31769
+ }
31770
+ if (alwaysLoadServers.length > 0) {
31771
+ issues.push({
31772
+ severity: "warn",
31773
+ code: "always-load-mcp-present",
31774
+ message: `alwaysLoad:true is set on MCP server(s): ${alwaysLoadServers.join(", ")}. Field reports from Claude Code 2.1.x show this can make servers appear Connected while tools do not inject in interactive sessions.`,
31775
+ fix: "Back up ~/.claude.json, remove alwaysLoad:true from affected MCP entries, restart Claude Code, and compare ToolSearch + /mcp. exe-os will not remove this automatically because it is customer-owned config."
31776
+ });
31777
+ }
31757
31778
  for (const server of mcpJsonServers) {
31758
31779
  for (const [projectPath, projectConfig] of applicableProjects) {
31759
31780
  if (!projectConfig.mcpServers?.[server.name]) continue;
@@ -13283,6 +13283,7 @@ var READ_TOOLS = [
13283
13283
  "recall_my_memory",
13284
13284
  "list_tasks",
13285
13285
  "get_session_context",
13286
+ "get_memory_by_id",
13286
13287
  "list_reminders",
13287
13288
  "query_conversations"
13288
13289
  ];
@@ -10550,6 +10550,7 @@ var READ_TOOLS = [
10550
10550
  "recall_my_memory",
10551
10551
  "list_tasks",
10552
10552
  "get_session_context",
10553
+ "get_memory_by_id",
10553
10554
  "list_reminders",
10554
10555
  "query_conversations"
10555
10556
  ];
@@ -10890,7 +10891,7 @@ function buildExecAssistantTools() {
10890
10891
  },
10891
10892
  {
10892
10893
  name: "recall_my_memory",
10893
- description: "Search your own past memories using semantic search.",
10894
+ description: "Search your own past memories using semantic search. Returns memory IDs; use get_memory_by_id for full long records.",
10894
10895
  input_schema: {
10895
10896
  type: "object",
10896
10897
  properties: {
@@ -10899,11 +10900,23 @@ function buildExecAssistantTools() {
10899
10900
  type: "string",
10900
10901
  description: "Filter by project name"
10901
10902
  },
10902
- limit: { type: "number", description: "Max results (default 10)" }
10903
+ limit: { type: "number", description: "Max results (default 10)" },
10904
+ body_chars: { type: "number", description: "Max characters per memory body, up to 50000" }
10903
10905
  },
10904
10906
  required: ["query"]
10905
10907
  }
10906
10908
  },
10909
+ {
10910
+ name: "get_memory_by_id",
10911
+ description: "Fetch one memory by ID with the full untruncated raw_text body.",
10912
+ input_schema: {
10913
+ type: "object",
10914
+ properties: {
10915
+ id: { type: "string", description: "Memory UUID from recall_my_memory" }
10916
+ },
10917
+ required: ["id"]
10918
+ }
10919
+ },
10907
10920
  {
10908
10921
  name: "list_tasks",
10909
10922
  description: "List tasks across the organization.",
package/dist/index.js CHANGED
@@ -13305,6 +13305,7 @@ var READ_TOOLS = [
13305
13305
  "recall_my_memory",
13306
13306
  "list_tasks",
13307
13307
  "get_session_context",
13308
+ "get_memory_by_id",
13308
13309
  "list_reminders",
13309
13310
  "query_conversations"
13310
13311
  ];
@@ -13645,7 +13646,7 @@ function buildExecAssistantTools() {
13645
13646
  },
13646
13647
  {
13647
13648
  name: "recall_my_memory",
13648
- description: "Search your own past memories using semantic search.",
13649
+ description: "Search your own past memories using semantic search. Returns memory IDs; use get_memory_by_id for full long records.",
13649
13650
  input_schema: {
13650
13651
  type: "object",
13651
13652
  properties: {
@@ -13654,11 +13655,23 @@ function buildExecAssistantTools() {
13654
13655
  type: "string",
13655
13656
  description: "Filter by project name"
13656
13657
  },
13657
- limit: { type: "number", description: "Max results (default 10)" }
13658
+ limit: { type: "number", description: "Max results (default 10)" },
13659
+ body_chars: { type: "number", description: "Max characters per memory body, up to 50000" }
13658
13660
  },
13659
13661
  required: ["query"]
13660
13662
  }
13661
13663
  },
13664
+ {
13665
+ name: "get_memory_by_id",
13666
+ description: "Fetch one memory by ID with the full untruncated raw_text body.",
13667
+ input_schema: {
13668
+ type: "object",
13669
+ properties: {
13670
+ id: { type: "string", description: "Memory UUID from recall_my_memory" }
13671
+ },
13672
+ required: ["id"]
13673
+ }
13674
+ },
13662
13675
  {
13663
13676
  name: "list_tasks",
13664
13677
  description: "List tasks across the organization.",