@triedotdev/mcp 1.0.73 → 1.0.75

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 (34) hide show
  1. package/README.md +60 -5
  2. package/dist/{chunk-COXK23KW.js → chunk-35FAFFHE.js} +2 -2
  3. package/dist/{chunk-E2ASFZMF.js → chunk-3RKY55HZ.js} +3 -3
  4. package/dist/{chunk-BN5DLROX.js → chunk-53URTRWH.js} +2 -2
  5. package/dist/{chunk-2KLYR5GW.js → chunk-6QKDEGWR.js} +83 -5
  6. package/dist/chunk-6QKDEGWR.js.map +1 -0
  7. package/dist/{chunk-BHIKY5PW.js → chunk-AIC4HOOQ.js} +3 -3
  8. package/dist/{chunk-3AKE4M4Z.js → chunk-LNLLZQWH.js} +4 -4
  9. package/dist/{chunk-6TSYRIQS.js → chunk-P6VLSYXN.js} +59 -5
  10. package/dist/chunk-P6VLSYXN.js.map +1 -0
  11. package/dist/{chunk-LWT7XFDD.js → chunk-RRDDAD5N.js} +6 -6
  12. package/dist/{chunk-OAICCSDL.js → chunk-UPKBO5EM.js} +8 -8
  13. package/dist/cli/main.js +102 -7
  14. package/dist/cli/main.js.map +1 -1
  15. package/dist/cli/yolo-daemon.js +8 -8
  16. package/dist/{goal-manager-5FLR7IS2.js → goal-manager-NI4LJ2SX.js} +4 -4
  17. package/dist/{guardian-agent-QFREM3AR.js → guardian-agent-R5HX7UWJ.js} +6 -6
  18. package/dist/index.js +131 -21
  19. package/dist/index.js.map +1 -1
  20. package/dist/{issue-store-SHQZICED.js → issue-store-MULGOF6B.js} +4 -2
  21. package/dist/workers/agent-worker.js +3 -3
  22. package/package.json +1 -1
  23. package/dist/chunk-2KLYR5GW.js.map +0 -1
  24. package/dist/chunk-6TSYRIQS.js.map +0 -1
  25. /package/dist/{chunk-COXK23KW.js.map → chunk-35FAFFHE.js.map} +0 -0
  26. /package/dist/{chunk-E2ASFZMF.js.map → chunk-3RKY55HZ.js.map} +0 -0
  27. /package/dist/{chunk-BN5DLROX.js.map → chunk-53URTRWH.js.map} +0 -0
  28. /package/dist/{chunk-BHIKY5PW.js.map → chunk-AIC4HOOQ.js.map} +0 -0
  29. /package/dist/{chunk-3AKE4M4Z.js.map → chunk-LNLLZQWH.js.map} +0 -0
  30. /package/dist/{chunk-LWT7XFDD.js.map → chunk-RRDDAD5N.js.map} +0 -0
  31. /package/dist/{chunk-OAICCSDL.js.map → chunk-UPKBO5EM.js.map} +0 -0
  32. /package/dist/{goal-manager-5FLR7IS2.js.map → goal-manager-NI4LJ2SX.js.map} +0 -0
  33. /package/dist/{guardian-agent-QFREM3AR.js.map → guardian-agent-R5HX7UWJ.js.map} +0 -0
  34. /package/dist/{issue-store-SHQZICED.js.map → issue-store-MULGOF6B.js.map} +0 -0
@@ -3,21 +3,21 @@ import {
3
3
  InteractiveDashboard,
4
4
  StreamingManager,
5
5
  TrieScanTool
6
- } from "../chunk-OAICCSDL.js";
6
+ } from "../chunk-UPKBO5EM.js";
7
7
  import "../chunk-FCMAQSV7.js";
8
- import "../chunk-LWT7XFDD.js";
9
- import "../chunk-BHIKY5PW.js";
8
+ import "../chunk-RRDDAD5N.js";
9
+ import "../chunk-AIC4HOOQ.js";
10
10
  import {
11
11
  isTrieInitialized
12
- } from "../chunk-3AKE4M4Z.js";
13
- import "../chunk-COXK23KW.js";
14
- import "../chunk-E2ASFZMF.js";
15
- import "../chunk-6TSYRIQS.js";
12
+ } from "../chunk-LNLLZQWH.js";
13
+ import "../chunk-35FAFFHE.js";
14
+ import "../chunk-3RKY55HZ.js";
15
+ import "../chunk-P6VLSYXN.js";
16
16
  import "../chunk-SH2JIQLB.js";
17
17
  import "../chunk-6NLHFIYA.js";
18
18
  import "../chunk-EWQF6INU.js";
19
19
  import "../chunk-Z7N7KDK3.js";
20
- import "../chunk-2KLYR5GW.js";
20
+ import "../chunk-6QKDEGWR.js";
21
21
  import {
22
22
  getWorkingDirectory
23
23
  } from "../chunk-CM7EHNQK.js";
@@ -4,9 +4,9 @@ import {
4
4
  calculateAdaptiveScanFrequency,
5
5
  clearGoalManagers,
6
6
  getGoalManager
7
- } from "./chunk-BHIKY5PW.js";
8
- import "./chunk-COXK23KW.js";
9
- import "./chunk-2KLYR5GW.js";
7
+ } from "./chunk-AIC4HOOQ.js";
8
+ import "./chunk-35FAFFHE.js";
9
+ import "./chunk-6QKDEGWR.js";
10
10
  import "./chunk-CM7EHNQK.js";
11
11
  import "./chunk-MIL54SAF.js";
12
12
  import "./chunk-DGUM43GV.js";
@@ -17,4 +17,4 @@ export {
17
17
  clearGoalManagers,
18
18
  getGoalManager
19
19
  };
20
- //# sourceMappingURL=goal-manager-5FLR7IS2.js.map
20
+ //# sourceMappingURL=goal-manager-NI4LJ2SX.js.map
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  GuardianAgent,
3
3
  getGuardian
4
- } from "./chunk-LWT7XFDD.js";
5
- import "./chunk-BHIKY5PW.js";
6
- import "./chunk-COXK23KW.js";
7
- import "./chunk-6TSYRIQS.js";
4
+ } from "./chunk-RRDDAD5N.js";
5
+ import "./chunk-AIC4HOOQ.js";
6
+ import "./chunk-35FAFFHE.js";
7
+ import "./chunk-P6VLSYXN.js";
8
8
  import "./chunk-Z7N7KDK3.js";
9
- import "./chunk-2KLYR5GW.js";
9
+ import "./chunk-6QKDEGWR.js";
10
10
  import "./chunk-CM7EHNQK.js";
11
11
  import "./chunk-MIL54SAF.js";
12
12
  import "./chunk-DGUM43GV.js";
@@ -14,4 +14,4 @@ export {
14
14
  GuardianAgent,
15
15
  getGuardian
16
16
  };
17
- //# sourceMappingURL=guardian-agent-QFREM3AR.js.map
17
+ //# sourceMappingURL=guardian-agent-R5HX7UWJ.js.map
package/dist/index.js CHANGED
@@ -24,20 +24,20 @@ import {
24
24
  reasonAboutChangesHumanReadable,
25
25
  saveCheckpoint,
26
26
  trackIssueOccurrence
27
- } from "./chunk-BN5DLROX.js";
27
+ } from "./chunk-53URTRWH.js";
28
28
  import {
29
29
  InteractiveDashboard,
30
30
  StreamingManager,
31
31
  TrieScanTool,
32
32
  loadConfig
33
- } from "./chunk-OAICCSDL.js";
33
+ } from "./chunk-UPKBO5EM.js";
34
34
  import "./chunk-FCMAQSV7.js";
35
- import "./chunk-LWT7XFDD.js";
36
- import "./chunk-BHIKY5PW.js";
35
+ import "./chunk-RRDDAD5N.js";
36
+ import "./chunk-AIC4HOOQ.js";
37
37
  import {
38
38
  isTrieInitialized
39
- } from "./chunk-3AKE4M4Z.js";
40
- import "./chunk-COXK23KW.js";
39
+ } from "./chunk-LNLLZQWH.js";
40
+ import "./chunk-35FAFFHE.js";
41
41
  import {
42
42
  CRITICAL_REVIEW_CHECKLIST,
43
43
  SuperReviewerSkill,
@@ -53,13 +53,13 @@ import {
53
53
  loadProjectInfo,
54
54
  projectInfoExists,
55
55
  updateProjectSection
56
- } from "./chunk-E2ASFZMF.js";
56
+ } from "./chunk-3RKY55HZ.js";
57
57
  import {
58
58
  findCrossProjectPatterns,
59
59
  getGlobalMemoryStats,
60
60
  listTrackedProjects,
61
61
  searchGlobalPatterns
62
- } from "./chunk-6TSYRIQS.js";
62
+ } from "./chunk-P6VLSYXN.js";
63
63
  import "./chunk-SH2JIQLB.js";
64
64
  import "./chunk-6NLHFIYA.js";
65
65
  import {
@@ -71,8 +71,9 @@ import {
71
71
  getMemoryStats,
72
72
  getRecentIssues,
73
73
  markIssueResolved,
74
+ purgeIssues,
74
75
  searchIssues
75
- } from "./chunk-2KLYR5GW.js";
76
+ } from "./chunk-6QKDEGWR.js";
76
77
  import {
77
78
  getWorkingDirectory
78
79
  } from "./chunk-CM7EHNQK.js";
@@ -2962,7 +2963,7 @@ Use \`trie_watch start\` to begin autonomous scanning.`
2962
2963
  ).join("\n");
2963
2964
  let agencyStatus = "";
2964
2965
  try {
2965
- const { getGuardian } = await import("./guardian-agent-QFREM3AR.js");
2966
+ const { getGuardian } = await import("./guardian-agent-R5HX7UWJ.js");
2966
2967
  const guardian = getGuardian(getWorkingDirectory(void 0, true));
2967
2968
  await guardian.initialize();
2968
2969
  const status = await guardian.getAgencyStatus();
@@ -4917,22 +4918,38 @@ var TrieMemorySearchTool = class {
4917
4918
  async execute(params) {
4918
4919
  const action = params.action || "search";
4919
4920
  const workDir = params.directory || getWorkingDirectory(void 0, true);
4921
+ let resultText;
4920
4922
  switch (action) {
4921
4923
  case "search":
4922
- return await this.handleSearch(params, workDir);
4924
+ resultText = await this.handleSearch(params, workDir);
4925
+ break;
4923
4926
  case "stats":
4924
- return await this.handleStats(workDir);
4927
+ resultText = await this.handleStats(workDir);
4928
+ break;
4925
4929
  case "recent":
4926
- return await this.handleRecent(params, workDir);
4930
+ resultText = await this.handleRecent(params, workDir);
4931
+ break;
4927
4932
  case "similar":
4928
- return await this.handleSimilar(params, workDir);
4933
+ resultText = await this.handleSimilar(params, workDir);
4934
+ break;
4929
4935
  case "resolve":
4930
- return await this.handleResolve(params, workDir);
4936
+ resultText = await this.handleResolve(params, workDir);
4937
+ break;
4931
4938
  case "global":
4932
- return await this.handleGlobal(params);
4939
+ resultText = await this.handleGlobal(params);
4940
+ break;
4941
+ case "purge":
4942
+ resultText = await this.handlePurge(params, workDir);
4943
+ break;
4933
4944
  default:
4934
- return "Unknown action. Use: search, stats, recent, similar, resolve, or global";
4945
+ resultText = "Unknown action. Use: search, stats, recent, similar, resolve, global, or purge";
4935
4946
  }
4947
+ return {
4948
+ content: [{
4949
+ type: "text",
4950
+ text: resultText
4951
+ }]
4952
+ };
4936
4953
  }
4937
4954
  async handleSearch(params, workDir) {
4938
4955
  if (!params.query) {
@@ -4988,8 +5005,44 @@ var TrieMemorySearchTool = class {
4988
5005
  `- **Total Issues:** ${stats.totalIssues}`,
4989
5006
  `- **Resolved:** ${stats.resolvedCount}`
4990
5007
  ];
5008
+ const cap = stats.capacityInfo;
5009
+ if (cap.isAtCap) {
5010
+ lines.push(
5011
+ "",
5012
+ "### \u26A0\uFE0F CAPACITY WARNING",
5013
+ "",
5014
+ `**Memory is at maximum capacity (${cap.current}/${cap.max} issues, ${cap.percentFull}%)**`,
5015
+ "",
5016
+ "Trie caps issue storage at 1,000 for performance. New issues are being deduplicated",
5017
+ "and old issues are being automatically compacted into summaries.",
5018
+ "",
5019
+ "**Options to free up space:**",
5020
+ "- `trie memory purge smart` - Remove resolved and old low-priority issues (recommended)",
5021
+ "- `trie memory purge resolved` - Remove all resolved issues",
5022
+ "- `trie memory purge old` - Remove issues older than 90 days",
5023
+ "- `trie memory purge all` - Clear all issues (keeps summaries)"
5024
+ );
5025
+ } else if (cap.percentFull >= 80) {
5026
+ lines.push(
5027
+ "",
5028
+ `### \u2139\uFE0F Memory Usage: ${cap.percentFull}% (${cap.current}/${cap.max})`,
5029
+ "",
5030
+ `You're approaching the storage cap. Consider running \`trie memory purge smart\` to free up space.`
5031
+ );
5032
+ } else {
5033
+ lines.push(`- **Memory Usage:** ${cap.percentFull}% (${cap.current}/${cap.max})`);
5034
+ }
5035
+ if (stats.deduplicationStats.duplicatesAvoided > 0) {
5036
+ lines.push(
5037
+ "",
5038
+ "### Deduplication",
5039
+ "",
5040
+ `- **Unique Patterns:** ${stats.deduplicationStats.uniquePatterns}`,
5041
+ `- **Duplicates Avoided:** ${stats.deduplicationStats.duplicatesAvoided}`
5042
+ );
5043
+ }
4991
5044
  if (stats.oldestIssue) {
4992
- lines.push(`- **Date Range:** ${stats.oldestIssue.split("T")[0]} to ${stats.newestIssue?.split("T")[0]}`);
5045
+ lines.push("", `- **Date Range:** ${stats.oldestIssue.split("T")[0]} to ${stats.newestIssue?.split("T")[0]}`);
4993
5046
  }
4994
5047
  lines.push("", "### By Severity", "");
4995
5048
  for (const [severity, count] of Object.entries(stats.issuesBySeverity)) {
@@ -5138,6 +5191,54 @@ var TrieMemorySearchTool = class {
5138
5191
  }
5139
5192
  return lines.join("\n");
5140
5193
  }
5194
+ async handlePurge(params, workDir) {
5195
+ const strategy = params.purgeStrategy || "smart";
5196
+ const options = { workDir };
5197
+ if (params.daysOld !== void 0) {
5198
+ options.daysOld = params.daysOld;
5199
+ }
5200
+ const result = await purgeIssues(strategy, options);
5201
+ const lines = [
5202
+ "# Memory Purge Complete",
5203
+ "",
5204
+ `**Strategy:** ${strategy}`,
5205
+ `**Removed:** ${result.removed} issues`,
5206
+ `**Remaining:** ${result.remaining} issues`,
5207
+ ""
5208
+ ];
5209
+ switch (strategy) {
5210
+ case "smart":
5211
+ lines.push(
5212
+ "**What was removed:**",
5213
+ "- Resolved issues older than 30 days",
5214
+ "- Low-priority issues (info/low severity) older than 30 days",
5215
+ "",
5216
+ "**What was kept:**",
5217
+ "- All critical and high severity issues",
5218
+ "- All unresolved issues",
5219
+ "- All issues from the last 30 days"
5220
+ );
5221
+ break;
5222
+ case "resolved":
5223
+ lines.push("**Removed all resolved issues.**", "**Kept all unresolved issues.**");
5224
+ break;
5225
+ case "old":
5226
+ lines.push(
5227
+ `**Removed all issues older than ${params.daysOld || 90} days.**`,
5228
+ `**Kept all recent issues.**`
5229
+ );
5230
+ break;
5231
+ case "all":
5232
+ lines.push(
5233
+ "**Cleared all issues from active memory.**",
5234
+ "",
5235
+ "Historical summaries are preserved in compacted-summaries.json."
5236
+ );
5237
+ break;
5238
+ }
5239
+ lines.push("", "**Note:** Compacted historical summaries were preserved for trend analysis.");
5240
+ return lines.join("\n");
5241
+ }
5141
5242
  };
5142
5243
 
5143
5244
  // src/tools/checkpoint.ts
@@ -5764,14 +5865,14 @@ var ToolRegistry = class {
5764
5865
  },
5765
5866
  {
5766
5867
  name: "trie_memory",
5767
- description: "Search and manage issue memory. Find similar issues, view stats, search across projects.",
5868
+ description: "Search and manage issue memory. Find similar issues, view stats, search across projects, and purge old issues.",
5768
5869
  inputSchema: {
5769
5870
  type: "object",
5770
5871
  properties: {
5771
5872
  action: {
5772
5873
  type: "string",
5773
- enum: ["search", "stats", "recent", "similar", "resolve", "global"],
5774
- description: "Action: search (find issues), stats (show statistics), recent (recent issues), similar (find similar), resolve (mark resolved), global (cross-project)"
5874
+ enum: ["search", "stats", "recent", "similar", "resolve", "global", "purge"],
5875
+ description: "Action: search (find issues), stats (show statistics), recent (recent issues), similar (find similar), resolve (mark resolved), global (cross-project), purge (free up memory)"
5775
5876
  },
5776
5877
  query: {
5777
5878
  type: "string",
@@ -5801,6 +5902,15 @@ var ToolRegistry = class {
5801
5902
  directory: {
5802
5903
  type: "string",
5803
5904
  description: "Project directory (defaults to current workspace)"
5905
+ },
5906
+ purgeStrategy: {
5907
+ type: "string",
5908
+ enum: ["smart", "resolved", "old", "all"],
5909
+ description: "Purge strategy: smart (remove resolved & old low-priority), resolved (all resolved), old (older than daysOld), all (clear all)"
5910
+ },
5911
+ daysOld: {
5912
+ type: "number",
5913
+ description: "Days threshold for old purge strategy (default 90)"
5804
5914
  }
5805
5915
  }
5806
5916
  },