@triedotdev/mcp 1.0.65 → 1.0.67

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 (67) hide show
  1. package/dist/{agent-smith-ILGLKYRT.js → agent-smith-XGYNJUCJ.js} +5 -5
  2. package/dist/{agent-smith-runner-NWJGTREO.js → agent-smith-runner-QHYGVRNR.js} +65 -65
  3. package/dist/agent-smith-runner-QHYGVRNR.js.map +1 -0
  4. package/dist/{chunk-TSHZQKCM.js → chunk-2KLYR5GW.js} +4 -4
  5. package/dist/chunk-2KLYR5GW.js.map +1 -0
  6. package/dist/{chunk-JP4U3OMW.js → chunk-4H6HAVYQ.js} +3 -3
  7. package/dist/{chunk-7KHT2NKR.js → chunk-6TSYRIQS.js} +2 -2
  8. package/dist/{chunk-DQ4FYOHV.js → chunk-6XMLAP65.js} +414 -200
  9. package/dist/chunk-6XMLAP65.js.map +1 -0
  10. package/dist/{chunk-KOFQ47YW.js → chunk-CM7EHNQK.js} +6 -6
  11. package/dist/chunk-CM7EHNQK.js.map +1 -0
  12. package/dist/{chunk-PBOVCPKE.js → chunk-CMZTFDNC.js} +41 -41
  13. package/dist/chunk-CMZTFDNC.js.map +1 -0
  14. package/dist/{chunk-H5MDUTL3.js → chunk-E2ASFZMF.js} +15 -15
  15. package/dist/chunk-E2ASFZMF.js.map +1 -0
  16. package/dist/{chunk-NM35UECE.js → chunk-EWQF6INU.js} +6 -6
  17. package/dist/chunk-EWQF6INU.js.map +1 -0
  18. package/dist/{chunk-ULOW5HSH.js → chunk-FCMAQSV7.js} +3 -3
  19. package/dist/{chunk-ULOW5HSH.js.map → chunk-FCMAQSV7.js.map} +1 -1
  20. package/dist/{chunk-D3DMONAJ.js → chunk-HWJJIAR7.js} +138 -11
  21. package/dist/chunk-HWJJIAR7.js.map +1 -0
  22. package/dist/{chunk-RAZUNSBI.js → chunk-MIL54SAF.js} +2 -2
  23. package/dist/{chunk-RAZUNSBI.js.map → chunk-MIL54SAF.js.map} +1 -1
  24. package/dist/{chunk-4YSLDGBL.js → chunk-O7WFJC2P.js} +5 -5
  25. package/dist/chunk-O7WFJC2P.js.map +1 -0
  26. package/dist/{chunk-GWSNINKX.js → chunk-PH4HZEAM.js} +2 -2
  27. package/dist/{chunk-3RQPPRM3.js → chunk-PSYXALLF.js} +13 -13
  28. package/dist/chunk-PSYXALLF.js.map +1 -0
  29. package/dist/{chunk-MVUCBUBR.js → chunk-SH2JIQLB.js} +3 -3
  30. package/dist/{chunk-MVUCBUBR.js.map → chunk-SH2JIQLB.js.map} +1 -1
  31. package/dist/{chunk-AQCAMIQQ.js → chunk-Z7N7KDK3.js} +4 -4
  32. package/dist/{chunk-AQCAMIQQ.js.map → chunk-Z7N7KDK3.js.map} +1 -1
  33. package/dist/cli/create-agent.js +18 -18
  34. package/dist/cli/create-agent.js.map +1 -1
  35. package/dist/cli/main.js +31 -31
  36. package/dist/cli/main.js.map +1 -1
  37. package/dist/cli/yolo-daemon.js +17 -17
  38. package/dist/cli/yolo-daemon.js.map +1 -1
  39. package/dist/{goal-manager-KFBOAP4X.js → goal-manager-B673YUZF.js} +6 -6
  40. package/dist/guardian-agent-FYZ5F3DA.js +17 -0
  41. package/dist/index.js +77 -77
  42. package/dist/index.js.map +1 -1
  43. package/dist/{issue-store-QRDF3X55.js → issue-store-SHQZICED.js} +4 -4
  44. package/dist/{vibe-code-signatures-TGMQXYGO.js → vibe-code-signatures-X26VXSZ4.js} +3 -3
  45. package/dist/{vulnerability-signatures-GOVD4Q24.js → vulnerability-signatures-BER2HRDC.js} +3 -3
  46. package/dist/workers/agent-worker.js +8 -8
  47. package/package.json +1 -1
  48. package/dist/agent-smith-runner-NWJGTREO.js.map +0 -1
  49. package/dist/chunk-3RQPPRM3.js.map +0 -1
  50. package/dist/chunk-4YSLDGBL.js.map +0 -1
  51. package/dist/chunk-D3DMONAJ.js.map +0 -1
  52. package/dist/chunk-DQ4FYOHV.js.map +0 -1
  53. package/dist/chunk-H5MDUTL3.js.map +0 -1
  54. package/dist/chunk-KOFQ47YW.js.map +0 -1
  55. package/dist/chunk-NM35UECE.js.map +0 -1
  56. package/dist/chunk-PBOVCPKE.js.map +0 -1
  57. package/dist/chunk-TSHZQKCM.js.map +0 -1
  58. package/dist/guardian-agent-PULK546O.js +0 -17
  59. /package/dist/{agent-smith-ILGLKYRT.js.map → agent-smith-XGYNJUCJ.js.map} +0 -0
  60. /package/dist/{chunk-JP4U3OMW.js.map → chunk-4H6HAVYQ.js.map} +0 -0
  61. /package/dist/{chunk-7KHT2NKR.js.map → chunk-6TSYRIQS.js.map} +0 -0
  62. /package/dist/{chunk-GWSNINKX.js.map → chunk-PH4HZEAM.js.map} +0 -0
  63. /package/dist/{goal-manager-KFBOAP4X.js.map → goal-manager-B673YUZF.js.map} +0 -0
  64. /package/dist/{guardian-agent-PULK546O.js.map → guardian-agent-FYZ5F3DA.js.map} +0 -0
  65. /package/dist/{issue-store-QRDF3X55.js.map → issue-store-SHQZICED.js.map} +0 -0
  66. /package/dist/{vibe-code-signatures-TGMQXYGO.js.map → vibe-code-signatures-X26VXSZ4.js.map} +0 -0
  67. /package/dist/{vulnerability-signatures-GOVD4Q24.js.map → vulnerability-signatures-BER2HRDC.js.map} +0 -0
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  listCustomAgents,
4
4
  loadAgentConfig,
5
5
  parseDocument
6
- } from "./chunk-GWSNINKX.js";
6
+ } from "./chunk-PH4HZEAM.js";
7
7
  import {
8
8
  ContextGraph,
9
9
  IncidentIndex,
@@ -24,20 +24,20 @@ import {
24
24
  reasonAboutChangesHumanReadable,
25
25
  saveCheckpoint,
26
26
  trackIssueOccurrence
27
- } from "./chunk-JP4U3OMW.js";
27
+ } from "./chunk-4H6HAVYQ.js";
28
28
  import {
29
29
  InteractiveDashboard,
30
30
  StreamingManager,
31
31
  TrieScanTool,
32
32
  loadConfig
33
- } from "./chunk-DQ4FYOHV.js";
34
- import "./chunk-ULOW5HSH.js";
35
- import "./chunk-PBOVCPKE.js";
36
- import "./chunk-D3DMONAJ.js";
33
+ } from "./chunk-6XMLAP65.js";
34
+ import "./chunk-FCMAQSV7.js";
35
+ import "./chunk-CMZTFDNC.js";
36
+ import "./chunk-HWJJIAR7.js";
37
37
  import {
38
38
  isTrieInitialized
39
- } from "./chunk-3RQPPRM3.js";
40
- import "./chunk-4YSLDGBL.js";
39
+ } from "./chunk-PSYXALLF.js";
40
+ import "./chunk-O7WFJC2P.js";
41
41
  import {
42
42
  CRITICAL_REVIEW_CHECKLIST,
43
43
  SuperReviewerSkill,
@@ -53,32 +53,32 @@ import {
53
53
  loadProjectInfo,
54
54
  projectInfoExists,
55
55
  updateProjectSection
56
- } from "./chunk-H5MDUTL3.js";
56
+ } from "./chunk-E2ASFZMF.js";
57
57
  import {
58
58
  findCrossProjectPatterns,
59
59
  getGlobalMemoryStats,
60
60
  listTrackedProjects,
61
61
  searchGlobalPatterns
62
- } from "./chunk-7KHT2NKR.js";
63
- import "./chunk-MVUCBUBR.js";
62
+ } from "./chunk-6TSYRIQS.js";
63
+ import "./chunk-SH2JIQLB.js";
64
64
  import "./chunk-6NLHFIYA.js";
65
65
  import {
66
66
  getOutputManager
67
- } from "./chunk-NM35UECE.js";
68
- import "./chunk-AQCAMIQQ.js";
67
+ } from "./chunk-EWQF6INU.js";
68
+ import "./chunk-Z7N7KDK3.js";
69
69
  import {
70
70
  findSimilarIssues,
71
71
  getMemoryStats,
72
72
  getRecentIssues,
73
73
  markIssueResolved,
74
74
  searchIssues
75
- } from "./chunk-TSHZQKCM.js";
75
+ } from "./chunk-2KLYR5GW.js";
76
76
  import {
77
77
  getWorkingDirectory
78
- } from "./chunk-KOFQ47YW.js";
78
+ } from "./chunk-CM7EHNQK.js";
79
79
  import {
80
80
  isInteractiveMode
81
- } from "./chunk-RAZUNSBI.js";
81
+ } from "./chunk-MIL54SAF.js";
82
82
  import "./chunk-DGUM43GV.js";
83
83
 
84
84
  // src/server/mcp-server.ts
@@ -727,7 +727,7 @@ For each file, I will:
727
727
  {{/if}}
728
728
 
729
729
  {{#if potentialIssue}}
730
- ### \u26A0\uFE0F Potential Issue
730
+ ### Potential Issue
731
731
 
732
732
  **Issue:** {{issueDescription}}
733
733
  **Scenario:** {{issueScenario}}
@@ -785,7 +785,7 @@ Focus on the MOST COMMON issues with AI-generated code:
785
785
  - Hardcoded URLs (localhost in production)
786
786
 
787
787
  Remember: These are often first-time coders. Be helpful, not condescending.`,
788
- analysis: `## \u{1F3AF} Vibe Check - AI Code Review
788
+ analysis: `## Vibe Check - AI Code Review
789
789
 
790
790
  Review this AI-generated code for common issues:
791
791
 
@@ -1126,7 +1126,7 @@ var TrieFixTool = class {
1126
1126
  continue;
1127
1127
  }
1128
1128
  if (pendingFix.confidence < 0.8 && !autoApprove) {
1129
- results.push(`\u26A0\uFE0F Issue ${id}: Confidence too low (${(pendingFix.confidence * 100).toFixed(0)}%) - use autoApprove:true to override`);
1129
+ results.push(`[!] Issue ${id}: Confidence too low (${(pendingFix.confidence * 100).toFixed(0)}%) - use autoApprove:true to override`);
1130
1130
  continue;
1131
1131
  }
1132
1132
  if (dryRun) {
@@ -1488,7 +1488,7 @@ ${"\u2501".repeat(60)}
1488
1488
  output += `${"\u2501".repeat(60)}
1489
1489
 
1490
1490
  `;
1491
- output += `## \u{1F4C2} Source
1491
+ output += `## Source
1492
1492
 
1493
1493
  `;
1494
1494
  output += `- **File:** \`${filePath}\`
@@ -1679,7 +1679,7 @@ ${"\u2501".repeat(60)}
1679
1679
  let output = `
1680
1680
  ${"\u2501".repeat(60)}
1681
1681
  `;
1682
- output += `\u26A0\uFE0F RISK ASSESSMENT
1682
+ output += `RISK ASSESSMENT
1683
1683
  `;
1684
1684
  output += `${"\u2501".repeat(60)}
1685
1685
 
@@ -1688,7 +1688,7 @@ ${"\u2501".repeat(60)}
1688
1688
  const code = await readFile2(resolvedPath, "utf-8");
1689
1689
  const filePath = relative2(workDir, resolvedPath);
1690
1690
  const riskIndicators = this.detectRiskIndicators(code);
1691
- output += `## \u{1F4C2} Target
1691
+ output += `## Target
1692
1692
 
1693
1693
  `;
1694
1694
  output += `- **File:** \`${filePath}\`
@@ -1697,7 +1697,7 @@ ${"\u2501".repeat(60)}
1697
1697
 
1698
1698
  `;
1699
1699
  if (riskIndicators.length > 0) {
1700
- output += `## \u{1F6A8} Risk Indicators Found
1700
+ output += `## Risk Indicators Found
1701
1701
 
1702
1702
  `;
1703
1703
  for (const indicator of riskIndicators) {
@@ -1750,14 +1750,14 @@ ${"\u2500".repeat(60)}
1750
1750
  detectRiskIndicators(code) {
1751
1751
  const indicators = [];
1752
1752
  const checks = [
1753
- { pattern: /delete|drop|truncate/i, message: "\u26A0\uFE0F Destructive operations detected" },
1754
- { pattern: /password|secret|key|token/i, message: "\u{1F510} Credential handling detected" },
1755
- { pattern: /exec|eval|spawn/i, message: "\u{1F489} Code execution patterns detected" },
1756
- { pattern: /SELECT.*FROM|INSERT|UPDATE|DELETE/i, message: "\u{1F5C4}\uFE0F Direct database operations" },
1757
- { pattern: /fetch|axios|request|http/i, message: "\u{1F310} External API calls detected" },
1758
- { pattern: /process\.env/i, message: "\u2699\uFE0F Environment variable usage" },
1759
- { pattern: /fs\.|writeFile|readFile/i, message: "\u{1F4C1} File system operations" },
1760
- { pattern: /setTimeout|setInterval/i, message: "\u23F0 Async timing operations" },
1753
+ { pattern: /delete|drop|truncate/i, message: "[!] Destructive operations detected" },
1754
+ { pattern: /password|secret|key|token/i, message: "[SEC] Credential handling detected" },
1755
+ { pattern: /exec|eval|spawn/i, message: "[EXEC] Code execution patterns detected" },
1756
+ { pattern: /SELECT.*FROM|INSERT|UPDATE|DELETE/i, message: "[DB] Direct database operations" },
1757
+ { pattern: /fetch|axios|request|http/i, message: "[API] External API calls detected" },
1758
+ { pattern: /process\.env/i, message: "[ENV] Environment variable usage" },
1759
+ { pattern: /fs\.|writeFile|readFile/i, message: "[FS] File system operations" },
1760
+ { pattern: /setTimeout|setInterval/i, message: "[TIMER] Async timing operations" },
1761
1761
  { pattern: /try\s*{/i, message: "\u{1F6E1}\uFE0F Error handling present" },
1762
1762
  { pattern: /catch\s*\(/i, message: "\u{1F6E1}\uFE0F Exception handling present" }
1763
1763
  ];
@@ -1967,7 +1967,7 @@ ${"\u2501".repeat(60)}
1967
1967
  for (const file of files) {
1968
1968
  const resolvedPath = isAbsolute3(file) ? file : resolve3(workDir, file);
1969
1969
  if (!existsSync3(resolvedPath)) {
1970
- output += `\u26A0\uFE0F File not found: ${file}
1970
+ output += `[!] File not found: ${file}
1971
1971
  `;
1972
1972
  continue;
1973
1973
  }
@@ -2051,7 +2051,7 @@ ${"\u2501".repeat(60)}
2051
2051
  for (const file of files) {
2052
2052
  const resolvedPath = isAbsolute3(file) ? file : resolve3(workDir, file);
2053
2053
  if (!existsSync3(resolvedPath)) {
2054
- output += `\u26A0\uFE0F File not found: ${file}
2054
+ output += `[!] File not found: ${file}
2055
2055
  `;
2056
2056
  continue;
2057
2057
  }
@@ -2133,7 +2133,7 @@ ${"\u2501".repeat(60)}
2133
2133
  for (const file of files) {
2134
2134
  const resolvedPath = isAbsolute3(file) ? file : resolve3(workDir, file);
2135
2135
  if (!existsSync3(resolvedPath)) {
2136
- output += `\u26A0\uFE0F File not found: ${file}
2136
+ output += `[!] File not found: ${file}
2137
2137
  `;
2138
2138
  continue;
2139
2139
  }
@@ -2166,7 +2166,7 @@ ${"\u2501".repeat(60)}
2166
2166
  let output = `
2167
2167
  ${"\u2501".repeat(60)}
2168
2168
  `;
2169
- output += `\u{1F3C3} RUN TESTS
2169
+ output += `RUN TESTS
2170
2170
  `;
2171
2171
  output += `${"\u2501".repeat(60)}
2172
2172
 
@@ -2781,7 +2781,7 @@ Found ${newIssues} issues in changed files!`);
2781
2781
  this.maybeNudge(files, resultText);
2782
2782
  } catch (error) {
2783
2783
  if (!isInteractiveMode()) {
2784
- console.error(`\u274C Scan error: ${error}`);
2784
+ console.error(`Scan error: ${error}`);
2785
2785
  }
2786
2786
  }
2787
2787
  }
@@ -2962,7 +2962,7 @@ Use \`trie_watch start\` to begin autonomous scanning.`
2962
2962
  ).join("\n");
2963
2963
  let agencyStatus = "";
2964
2964
  try {
2965
- const { getGuardian } = await import("./guardian-agent-PULK546O.js");
2965
+ const { getGuardian } = await import("./guardian-agent-FYZ5F3DA.js");
2966
2966
  const guardian = getGuardian(getWorkingDirectory(void 0, true));
2967
2967
  await guardian.initialize();
2968
2968
  const status = await guardian.getAgencyStatus();
@@ -3368,7 +3368,7 @@ var TrieAgentTool = class {
3368
3368
  return {
3369
3369
  content: [{
3370
3370
  type: "text",
3371
- text: `\u274C Skill not found: ${agent}
3371
+ text: `Skill not found: ${agent}
3372
3372
 
3373
3373
  Available skills:
3374
3374
  ${this.agentRegistry.getSkillNames().map((n) => `- ${n}`).join("\n")}`
@@ -3379,7 +3379,7 @@ ${this.agentRegistry.getSkillNames().map((n) => `- ${n}`).join("\n")}`
3379
3379
  let filesToScan = files || [];
3380
3380
  if (!filesToScan.length) {
3381
3381
  console.error(`
3382
- \u{1F50D} Discovering files in: ${workDir}`);
3382
+ Discovering files in: ${workDir}`);
3383
3383
  filesToScan = await this.discoverFiles(workDir);
3384
3384
  console.error(` Found ${filesToScan.length} files
3385
3385
  `);
@@ -3393,7 +3393,7 @@ ${this.agentRegistry.getSkillNames().map((n) => `- ${n}`).join("\n")}`
3393
3393
  return {
3394
3394
  content: [{
3395
3395
  type: "text",
3396
- text: `\u274C No valid files found to scan.`
3396
+ text: `No valid files found to scan.`
3397
3397
  }]
3398
3398
  };
3399
3399
  }
@@ -3407,10 +3407,10 @@ ${this.agentRegistry.getSkillNames().map((n) => `- ${n}`).join("\n")}`
3407
3407
  async runSkillScan(agentInstance, files, startTime, _outputMode) {
3408
3408
  console.error(`
3409
3409
  \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501`);
3410
- console.error(`\u{1F50D} Running ${agentInstance.name.toUpperCase()} analysis`);
3410
+ console.error(`Running ${agentInstance.name.toUpperCase()} analysis`);
3411
3411
  console.error(`\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501
3412
3412
  `);
3413
- console.error(`\u{1F4C4} ${agentInstance.description}`);
3413
+ console.error(`${agentInstance.description}`);
3414
3414
  console.error(`\u{1F4C2} Scanning ${files.length} files...`);
3415
3415
  console.error(` (Pattern detection + AI enhancement if API key is set)
3416
3416
  `);
@@ -3427,7 +3427,7 @@ ${this.agentRegistry.getSkillNames().map((n) => `- ${n}`).join("\n")}`
3427
3427
  return {
3428
3428
  content: [{
3429
3429
  type: "text",
3430
- text: `\u274C Skill error: ${error instanceof Error ? error.message : String(error)}`
3430
+ text: `Skill error: ${error instanceof Error ? error.message : String(error)}`
3431
3431
  }]
3432
3432
  };
3433
3433
  }
@@ -3449,7 +3449,7 @@ ${this.agentRegistry.getSkillNames().map((n) => `- ${n}`).join("\n")}`
3449
3449
  const skills = this.agentRegistry.getSkillDescriptions();
3450
3450
  const skillList = skills.map((a) => {
3451
3451
  const command = this.getSkillCommand(a.name);
3452
- return `| \`${command}\` | \u{1F50D}\u{1F916} ${a.name} | ${a.description} |`;
3452
+ return `| \`${command}\` | [PATTERN+AI] ${a.name} | ${a.description} |`;
3453
3453
  }).join("\n");
3454
3454
  return {
3455
3455
  content: [{
@@ -3460,7 +3460,7 @@ ${this.agentRegistry.getSkillNames().map((n) => `- ${n}`).join("\n")}`
3460
3460
  |---------|-------|-------------|
3461
3461
  ${skillList}
3462
3462
 
3463
- **Legend:** \u{1F50D}\u{1F916} = Pattern detection + AI enhancement (if ANTHROPIC_API_KEY is set)
3463
+ **Legend:** [PATTERN+AI] = Pattern detection + AI enhancement (if ANTHROPIC_API_KEY is set)
3464
3464
 
3465
3465
  ## Usage
3466
3466
 
@@ -3527,7 +3527,7 @@ trie_scan # Full scan with smart triaging
3527
3527
 
3528
3528
  `;
3529
3529
  if (issues.length === 0) {
3530
- output += `## \u2705 No Issues Found
3530
+ output += `## No Issues Found
3531
3531
 
3532
3532
  `;
3533
3533
  output += `Your code passed all ${agentName} checks.
@@ -3535,13 +3535,13 @@ trie_scan # Full scan with smart triaging
3535
3535
  `;
3536
3536
  return output;
3537
3537
  }
3538
- output += `## \u{1F3AF} ${issues.length} Issues Found
3538
+ output += `## ${issues.length} Issues Found
3539
3539
 
3540
3540
  `;
3541
- if (critical > 0) output += `\u{1F534} ${critical} Critical `;
3542
- if (serious > 0) output += `\u{1F7E0} ${serious} Serious `;
3543
- if (moderate > 0) output += `\u{1F7E1} ${moderate} Moderate `;
3544
- if (low > 0) output += `\u{1F535} ${low} Low`;
3541
+ if (critical > 0) output += `[!] ${critical} Critical `;
3542
+ if (serious > 0) output += `[!] ${serious} Serious `;
3543
+ if (moderate > 0) output += `[~] ${moderate} Moderate `;
3544
+ if (low > 0) output += `[-] ${low} Low`;
3545
3545
  output += `
3546
3546
 
3547
3547
  `;
@@ -3553,14 +3553,14 @@ trie_scan # Full scan with smart triaging
3553
3553
  return (a.line || 0) - (b.line || 0);
3554
3554
  });
3555
3555
  for (const issue of sorted) {
3556
- const icon = { critical: "\u{1F534}", serious: "\u{1F7E0}", moderate: "\u{1F7E1}", low: "\u{1F535}" }[issue.severity];
3556
+ const icon = { critical: "[!]", serious: "[!]", moderate: "[~]", low: "[-]" }[issue.severity];
3557
3557
  output += `---
3558
3558
 
3559
3559
  `;
3560
3560
  output += `${icon} **${issue.issue}**
3561
3561
 
3562
3562
  `;
3563
- output += `\u{1F4CD} \`${issue.file}:${issue.line || "?"}\`
3563
+ output += `\`${issue.file}:${issue.line || "?"}\`
3564
3564
 
3565
3565
  `;
3566
3566
  const snippet = await this.getCodeSnippet(issue.file, issue.line);
@@ -3579,7 +3579,7 @@ ${snippet}
3579
3579
  if (issue.regulation) output += `Regulation: ${issue.regulation}
3580
3580
  `;
3581
3581
  output += `<details>
3582
- <summary>\u{1F4AC} Prompt to fix this</summary>
3582
+ <summary>Prompt to fix this</summary>
3583
3583
 
3584
3584
  `;
3585
3585
  output += `\`\`\`
@@ -3620,20 +3620,20 @@ ${issue.fix}
3620
3620
  }
3621
3621
  getSkillEmoji(agentName) {
3622
3622
  const emojis = {
3623
- "security": "\u{1F512}",
3624
- "privacy": "\u{1F464}",
3625
- "legal": "\u2696\uFE0F",
3626
- "accessibility": "\u267F",
3627
- "design-engineer": "\u{1F3A8}",
3628
- "software-architect": "\u{1F3D7}\uFE0F",
3629
- "bug-finding": "\u{1F41B}",
3630
- "user-testing": "\u{1F3AF}",
3631
- "typecheck": "\u{1F4DD}",
3632
- "devops": "\u2699\uFE0F",
3633
- "comprehension": "\u{1F4D6}",
3634
- "test": "\u{1F9EA}"
3623
+ "security": "[SEC]",
3624
+ "privacy": "[PRIV]",
3625
+ "legal": "[LEGAL]",
3626
+ "accessibility": "[A11Y]",
3627
+ "design-engineer": "[DESIGN]",
3628
+ "software-architect": "[ARCH]",
3629
+ "bug-finding": "[BUG]",
3630
+ "user-testing": "[TEST]",
3631
+ "typecheck": "[TYPE]",
3632
+ "devops": "[OPS]",
3633
+ "comprehension": "[DOC]",
3634
+ "test": "[TEST]"
3635
3635
  };
3636
- return emojis[agentName] || "\u{1F916}";
3636
+ return emojis[agentName] || "[?]";
3637
3637
  }
3638
3638
  async discoverFiles(dir, maxFiles = 200) {
3639
3639
  const files = [];
@@ -4243,7 +4243,7 @@ var TriePRReviewTool = class {
4243
4243
  return {
4244
4244
  content: [{
4245
4245
  type: "text",
4246
- text: `\u274C ${prInfo.error}
4246
+ text: `${prInfo.error}
4247
4247
 
4248
4248
  Usage:
4249
4249
  - \`pr_review 12345\` \u2014 review specific PR
@@ -4257,7 +4257,7 @@ Usage:
4257
4257
  return {
4258
4258
  content: [{
4259
4259
  type: "text",
4260
- text: `\u2139\uFE0F No changes found to review.`
4260
+ text: `No changes found to review.`
4261
4261
  }]
4262
4262
  };
4263
4263
  }
@@ -4286,7 +4286,7 @@ Usage:
4286
4286
  return {
4287
4287
  content: [{
4288
4288
  type: "text",
4289
- text: `\u274C Error: ${error instanceof Error ? error.message : String(error)}`
4289
+ text: `Error: ${error instanceof Error ? error.message : String(error)}`
4290
4290
  }]
4291
4291
  };
4292
4292
  }
@@ -4535,7 +4535,7 @@ Usage:
4535
4535
  ---
4536
4536
 
4537
4537
  `;
4538
- prompt += `## \u{1F3AF} Critical Review Mindset
4538
+ prompt += `## Critical Review Mindset
4539
4539
 
4540
4540
  `;
4541
4541
  prompt += `As we go through each file, I'll actively look for:
@@ -5841,7 +5841,7 @@ var ToolRegistry = class {
5841
5841
  { name: "privacy", desc: "PII handling, GDPR/HIPAA compliance, data encryption" },
5842
5842
  { name: "legal", desc: "GDPR, CCPA, consent patterns, data retention compliance" },
5843
5843
  { name: "accessibility", desc: "WCAG 2.1 compliance, keyboard nav, screen readers, color contrast" },
5844
- { name: "design", desc: "\u{1F3A8} Awwwards-level polish, design systems, motion design, creative CSS" },
5844
+ { name: "design", desc: "Awwwards-level polish, design systems, motion design, creative CSS" },
5845
5845
  { name: "architecture", desc: "code organization, SOLID principles, N+1 queries, scalability" },
5846
5846
  { name: "bugs", desc: "null safety, edge cases, common bugs, async issues" },
5847
5847
  { name: "ux", desc: "simulate happy path, security tester, confused user, impatient user" },
@@ -6455,8 +6455,8 @@ This information is automatically available to Claude Code, Cursor, and other AI
6455
6455
  }
6456
6456
  }
6457
6457
  async getSignaturesResource(uri) {
6458
- const { getVulnerabilityStats } = await import("./vulnerability-signatures-GOVD4Q24.js");
6459
- const { getVibeCodeStats } = await import("./vibe-code-signatures-TGMQXYGO.js");
6458
+ const { getVulnerabilityStats } = await import("./vulnerability-signatures-BER2HRDC.js");
6459
+ const { getVibeCodeStats } = await import("./vibe-code-signatures-X26VXSZ4.js");
6460
6460
  const vulnStats = getVulnerabilityStats();
6461
6461
  const vibeStats = getVibeCodeStats();
6462
6462
  return {
@@ -6764,7 +6764,7 @@ Try:
6764
6764
  url = `http://localhost:${options.port}`;
6765
6765
  } else {
6766
6766
  if (!isInteractiveMode()) {
6767
- console.error("\u{1F50D} Visual QA: Auto-detecting running dev server...");
6767
+ console.error("Visual QA: Auto-detecting running dev server...");
6768
6768
  }
6769
6769
  const port = await findOpenPort();
6770
6770
  if (!port) {
@@ -7189,7 +7189,7 @@ npx playwright install chromium
7189
7189
  };
7190
7190
  }
7191
7191
  async handleAgentSmith(smithArgs) {
7192
- const { AgentSmithSkill } = await import("./agent-smith-ILGLKYRT.js");
7192
+ const { AgentSmithSkill } = await import("./agent-smith-XGYNJUCJ.js");
7193
7193
  if (smithArgs.clear_memory) {
7194
7194
  const smith = new AgentSmithSkill();
7195
7195
  const result = await smith.clearMemory();
@@ -7217,7 +7217,7 @@ npx playwright install chromium
7217
7217
  }]
7218
7218
  };
7219
7219
  }
7220
- const agentSmithRunner = await import("./agent-smith-runner-NWJGTREO.js");
7220
+ const agentSmithRunner = await import("./agent-smith-runner-QHYGVRNR.js");
7221
7221
  return await agentSmithRunner.runAgentSmith(smithArgs);
7222
7222
  }
7223
7223
  };