@triedotdev/mcp 1.0.89 → 1.0.91

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 (63) hide show
  1. package/dist/{agent-smith-KIFP2XG3.js → agent-smith-Q52DFQET.js} +5 -5
  2. package/dist/{agent-smith-runner-Z73W5DR5.js → agent-smith-runner-BMT3FN7T.js} +5 -5
  3. package/dist/{chunk-3HTPH3P2.js → chunk-3EZ2ETKG.js} +6 -6
  4. package/dist/{chunk-TBL3FWWG.js → chunk-6OJRG7MM.js} +9 -9
  5. package/dist/{chunk-GMKPXL4Q.js → chunk-74NPKTZV.js} +2 -2
  6. package/dist/{chunk-BBEFK56U.js → chunk-7IEGGW4L.js} +29 -14
  7. package/dist/chunk-7IEGGW4L.js.map +1 -0
  8. package/dist/{chunk-MIL54SAF.js → chunk-D25EIBPO.js} +14 -2
  9. package/dist/{chunk-MIL54SAF.js.map → chunk-D25EIBPO.js.map} +1 -1
  10. package/dist/{chunk-FCMAQSV7.js → chunk-FK3DUQ5T.js} +2 -2
  11. package/dist/{chunk-SH2JIQLB.js → chunk-IYMJTY27.js} +2 -2
  12. package/dist/{chunk-A44W6SZJ.js → chunk-LAGXOPXN.js} +20 -19
  13. package/dist/chunk-LAGXOPXN.js.map +1 -0
  14. package/dist/{chunk-JG2TAVAO.js → chunk-LP4MVJDW.js} +48 -4
  15. package/dist/chunk-LP4MVJDW.js.map +1 -0
  16. package/dist/{chunk-D35TI7NY.js → chunk-LT7MKIXU.js} +2 -2
  17. package/dist/{chunk-PFWGEHIA.js → chunk-NMGINYYX.js} +4 -4
  18. package/dist/{chunk-OXZKSR6J.js → chunk-P6XMIUD7.js} +8 -8
  19. package/dist/{chunk-G4DUCCMT.js → chunk-PSVRO76R.js} +17 -11
  20. package/dist/chunk-PSVRO76R.js.map +1 -0
  21. package/dist/{chunk-D5VEUZLP.js → chunk-RDOJCRKJ.js} +2 -2
  22. package/dist/{chunk-QH5XB4K6.js → chunk-SJFJ6GLR.js} +2 -2
  23. package/dist/{chunk-CFE7FZU7.js → chunk-T5UOH56R.js} +3 -3
  24. package/dist/{chunk-F3WW4FY2.js → chunk-XEQRB4XX.js} +4 -4
  25. package/dist/cli/create-agent.js +3 -3
  26. package/dist/cli/main.js +45 -24
  27. package/dist/cli/main.js.map +1 -1
  28. package/dist/cli/yolo-daemon.js +15 -15
  29. package/dist/{goal-manager-7D3GUJVV.js → goal-manager-ESJCJXFS.js} +6 -6
  30. package/dist/guardian-agent-IXG3YWFP.js +21 -0
  31. package/dist/index.js +28 -27
  32. package/dist/index.js.map +1 -1
  33. package/dist/{issue-store-WTXCQZEA.js → issue-store-JZ2LCQEG.js} +8 -4
  34. package/dist/progress-PH6NNWZM.js +18 -0
  35. package/dist/{vibe-code-signatures-X26VXSZ4.js → vibe-code-signatures-MHFK5KXF.js} +3 -3
  36. package/dist/{vulnerability-signatures-BER2HRDC.js → vulnerability-signatures-DRIYDFG3.js} +3 -3
  37. package/dist/vulnerability-signatures-DRIYDFG3.js.map +1 -0
  38. package/dist/workers/agent-worker.js +8 -8
  39. package/package.json +1 -1
  40. package/dist/chunk-A44W6SZJ.js.map +0 -1
  41. package/dist/chunk-BBEFK56U.js.map +0 -1
  42. package/dist/chunk-G4DUCCMT.js.map +0 -1
  43. package/dist/chunk-JG2TAVAO.js.map +0 -1
  44. package/dist/guardian-agent-QBYV2JLR.js +0 -21
  45. /package/dist/{agent-smith-KIFP2XG3.js.map → agent-smith-Q52DFQET.js.map} +0 -0
  46. /package/dist/{agent-smith-runner-Z73W5DR5.js.map → agent-smith-runner-BMT3FN7T.js.map} +0 -0
  47. /package/dist/{chunk-3HTPH3P2.js.map → chunk-3EZ2ETKG.js.map} +0 -0
  48. /package/dist/{chunk-TBL3FWWG.js.map → chunk-6OJRG7MM.js.map} +0 -0
  49. /package/dist/{chunk-GMKPXL4Q.js.map → chunk-74NPKTZV.js.map} +0 -0
  50. /package/dist/{chunk-FCMAQSV7.js.map → chunk-FK3DUQ5T.js.map} +0 -0
  51. /package/dist/{chunk-SH2JIQLB.js.map → chunk-IYMJTY27.js.map} +0 -0
  52. /package/dist/{chunk-D35TI7NY.js.map → chunk-LT7MKIXU.js.map} +0 -0
  53. /package/dist/{chunk-PFWGEHIA.js.map → chunk-NMGINYYX.js.map} +0 -0
  54. /package/dist/{chunk-OXZKSR6J.js.map → chunk-P6XMIUD7.js.map} +0 -0
  55. /package/dist/{chunk-D5VEUZLP.js.map → chunk-RDOJCRKJ.js.map} +0 -0
  56. /package/dist/{chunk-QH5XB4K6.js.map → chunk-SJFJ6GLR.js.map} +0 -0
  57. /package/dist/{chunk-CFE7FZU7.js.map → chunk-T5UOH56R.js.map} +0 -0
  58. /package/dist/{chunk-F3WW4FY2.js.map → chunk-XEQRB4XX.js.map} +0 -0
  59. /package/dist/{goal-manager-7D3GUJVV.js.map → goal-manager-ESJCJXFS.js.map} +0 -0
  60. /package/dist/{guardian-agent-QBYV2JLR.js.map → guardian-agent-IXG3YWFP.js.map} +0 -0
  61. /package/dist/{issue-store-WTXCQZEA.js.map → issue-store-JZ2LCQEG.js.map} +0 -0
  62. /package/dist/{vibe-code-signatures-X26VXSZ4.js.map → progress-PH6NNWZM.js.map} +0 -0
  63. /package/dist/{vulnerability-signatures-BER2HRDC.js.map → vibe-code-signatures-MHFK5KXF.js.map} +0 -0
@@ -161,11 +161,23 @@ var AgentProgressReporter = class {
161
161
  return this.issueCount;
162
162
  }
163
163
  };
164
+ var globalReporter = null;
165
+ function getProgressReporter(options) {
166
+ if (!globalReporter) {
167
+ globalReporter = new ProgressReporter(options);
168
+ }
169
+ return globalReporter;
170
+ }
171
+ function resetProgressReporter() {
172
+ globalReporter = null;
173
+ }
164
174
 
165
175
  export {
166
176
  setInteractiveMode,
167
177
  isInteractiveMode,
168
178
  ProgressReporter,
169
- AgentProgressReporter
179
+ AgentProgressReporter,
180
+ getProgressReporter,
181
+ resetProgressReporter
170
182
  };
171
- //# sourceMappingURL=chunk-MIL54SAF.js.map
183
+ //# sourceMappingURL=chunk-D25EIBPO.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/utils/progress.ts"],"sourcesContent":["/**\n * Progress Reporter for Trie Agent\n * \n * Provides real-time feedback to users as the agent works.\n * Uses console.error because MCP clients display stderr to users.\n */\n\n/**\n * Global interactive mode flag\n * When enabled, suppresses all console output (handled by InteractiveDashboard instead)\n */\nlet _interactiveMode = false;\n\n/**\n * Enable or disable interactive mode\n * When enabled, all console output from ProgressReporter and AgentProgressReporter is suppressed\n */\nexport function setInteractiveMode(enabled: boolean): void {\n _interactiveMode = enabled;\n}\n\n/**\n * Check if interactive mode is enabled\n */\nexport function isInteractiveMode(): boolean {\n return _interactiveMode;\n}\n\nexport type ProgressPhase = \n | 'init'\n | 'discovery'\n | 'reading'\n | 'analyzing'\n | 'ai-review'\n | 'prioritizing'\n | 'complete';\n\nexport interface ProgressCallback {\n (phase: ProgressPhase, message: string, detail?: string): void;\n}\n\n/**\n * Progress Reporter - streams status updates to the user\n */\nexport class ProgressReporter {\n private currentPhase: ProgressPhase = 'init';\n private startTime: number = Date.now();\n private phaseStartTime: number = Date.now();\n private verbose: boolean;\n\n constructor(options: { verbose?: boolean } = {}) {\n this.verbose = options.verbose ?? true;\n }\n\n /**\n * Report a status update\n */\n report(message: string, detail?: string): void {\n if (!this.verbose || _interactiveMode) return;\n \n const prefix = this.getPhaseIcon(this.currentPhase);\n const fullMessage = detail ? `${message}: ${detail}` : message;\n console.error(`${prefix} ${fullMessage}`);\n }\n\n /**\n * Start a new phase\n */\n startPhase(phase: ProgressPhase, message: string): void {\n this.currentPhase = phase;\n this.phaseStartTime = Date.now();\n this.report(message);\n }\n\n /**\n * Update within current phase\n */\n update(message: string, detail?: string): void {\n this.report(message, detail);\n }\n\n /**\n * Report progress on a file\n */\n file(action: string, filePath: string): void {\n // Show just the filename for cleaner output\n const fileName = filePath.split('/').pop() || filePath;\n this.report(action, fileName);\n }\n\n /**\n * Report an AI analysis step\n */\n ai(action: string, context?: string): void {\n if (_interactiveMode) return;\n const prefix = '[AI]';\n const message = context ? `${action}: ${context}` : action;\n console.error(`${prefix} ${message}`);\n }\n\n /**\n * Report a finding\n */\n finding(severity: 'critical' | 'serious' | 'moderate' | 'low', message: string): void {\n if (_interactiveMode) return;\n const labels = {\n critical: '[CRITICAL]',\n serious: '[SERIOUS]',\n moderate: '[MODERATE]',\n low: '[LOW]'\n };\n console.error(` ${labels[severity]} ${message}`);\n }\n\n /**\n * Complete current phase\n */\n completePhase(summary: string): void {\n const elapsed = Date.now() - this.phaseStartTime;\n this.report(`Done: ${summary}`, `(${elapsed}ms)`);\n }\n\n /**\n * Complete the entire operation\n */\n complete(summary: string): void {\n if (_interactiveMode) return;\n const totalElapsed = Date.now() - this.startTime;\n console.error('');\n console.error(`----------------------------------------`);\n console.error(`[COMPLETE] ${summary}`);\n console.error(` Total time: ${(totalElapsed / 1000).toFixed(2)}s`);\n console.error(`----------------------------------------`);\n console.error('');\n }\n\n /**\n * Report an error\n */\n error(message: string, detail?: string): void {\n if (_interactiveMode) return;\n const fullMessage = detail ? `${message}: ${detail}` : message;\n console.error(`[ERROR] ${fullMessage}`);\n }\n\n /**\n * Report a warning\n */\n warn(message: string, detail?: string): void {\n if (_interactiveMode) return;\n const fullMessage = detail ? `${message}: ${detail}` : message;\n console.error(`[WARN] ${fullMessage}`);\n }\n\n /**\n * Get icon for current phase\n */\n private getPhaseIcon(phase: ProgressPhase): string {\n const icons: Record<ProgressPhase, string> = {\n 'init': '>>',\n 'discovery': '>>',\n 'reading': '>>',\n 'analyzing': '>>',\n 'ai-review': '[AI]',\n 'prioritizing': '>>',\n 'complete': '[OK]'\n };\n return icons[phase] || '>>';\n }\n\n /**\n * Create a sub-reporter for a specific agent\n */\n forAgent(agentName: string): AgentProgressReporter {\n return new AgentProgressReporter(agentName, this.verbose);\n }\n}\n\n/**\n * Progress reporter scoped to a specific agent\n */\nexport class AgentProgressReporter {\n private agentName: string;\n private verbose: boolean;\n private issueCount: number = 0;\n\n constructor(agentName: string, verbose: boolean = true) {\n this.agentName = agentName;\n this.verbose = verbose;\n }\n\n start(): void {\n if (!this.verbose || _interactiveMode) return;\n console.error(`\\n[SCOUT] ${this.agentName.toUpperCase()} starting...`);\n }\n\n analyzing(file: string): void {\n if (!this.verbose || _interactiveMode) return;\n const fileName = file.split('/').pop() || file;\n console.error(` Analyzing ${fileName}...`);\n }\n\n aiReview(context: string): void {\n if (!this.verbose || _interactiveMode) return;\n console.error(` [AI] reviewing: ${context}`);\n }\n\n found(severity: string, issue: string): void {\n this.issueCount++;\n if (!this.verbose || _interactiveMode) return;\n const label = severity === 'critical' ? '[CRITICAL]' : \n severity === 'serious' ? '[SERIOUS]' : \n severity === 'moderate' ? '[MODERATE]' : '[LOW]';\n console.error(` ${label} Found: ${issue}`);\n }\n\n complete(summary?: string): void {\n if (!this.verbose || _interactiveMode) return;\n const msg = summary || `Found ${this.issueCount} issues`;\n console.error(` Done: ${this.agentName}: ${msg}`);\n }\n\n getIssueCount(): number {\n return this.issueCount;\n }\n}\n\n/**\n * Global singleton for easy access\n */\nlet globalReporter: ProgressReporter | null = null;\n\nexport function getProgressReporter(options?: { verbose?: boolean }): ProgressReporter {\n if (!globalReporter) {\n globalReporter = new ProgressReporter(options);\n }\n return globalReporter;\n}\n\nexport function resetProgressReporter(): void {\n globalReporter = null;\n}\n"],"mappings":";AAWA,IAAI,mBAAmB;AAMhB,SAAS,mBAAmB,SAAwB;AACzD,qBAAmB;AACrB;AAKO,SAAS,oBAA6B;AAC3C,SAAO;AACT;AAkBO,IAAM,mBAAN,MAAuB;AAAA,EACpB,eAA8B;AAAA,EAC9B,YAAoB,KAAK,IAAI;AAAA,EAC7B,iBAAyB,KAAK,IAAI;AAAA,EAClC;AAAA,EAER,YAAY,UAAiC,CAAC,GAAG;AAC/C,SAAK,UAAU,QAAQ,WAAW;AAAA,EACpC;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,SAAiB,QAAuB;AAC7C,QAAI,CAAC,KAAK,WAAW,iBAAkB;AAEvC,UAAM,SAAS,KAAK,aAAa,KAAK,YAAY;AAClD,UAAM,cAAc,SAAS,GAAG,OAAO,KAAK,MAAM,KAAK;AACvD,YAAQ,MAAM,GAAG,MAAM,IAAI,WAAW,EAAE;AAAA,EAC1C;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW,OAAsB,SAAuB;AACtD,SAAK,eAAe;AACpB,SAAK,iBAAiB,KAAK,IAAI;AAC/B,SAAK,OAAO,OAAO;AAAA,EACrB;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,SAAiB,QAAuB;AAC7C,SAAK,OAAO,SAAS,MAAM;AAAA,EAC7B;AAAA;AAAA;AAAA;AAAA,EAKA,KAAK,QAAgB,UAAwB;AAE3C,UAAM,WAAW,SAAS,MAAM,GAAG,EAAE,IAAI,KAAK;AAC9C,SAAK,OAAO,QAAQ,QAAQ;AAAA,EAC9B;AAAA;AAAA;AAAA;AAAA,EAKA,GAAG,QAAgB,SAAwB;AACzC,QAAI,iBAAkB;AACtB,UAAM,SAAS;AACf,UAAM,UAAU,UAAU,GAAG,MAAM,KAAK,OAAO,KAAK;AACpD,YAAQ,MAAM,GAAG,MAAM,IAAI,OAAO,EAAE;AAAA,EACtC;AAAA;AAAA;AAAA;AAAA,EAKA,QAAQ,UAAuD,SAAuB;AACpF,QAAI,iBAAkB;AACtB,UAAM,SAAS;AAAA,MACb,UAAU;AAAA,MACV,SAAS;AAAA,MACT,UAAU;AAAA,MACV,KAAK;AAAA,IACP;AACA,YAAQ,MAAM,MAAM,OAAO,QAAQ,CAAC,IAAI,OAAO,EAAE;AAAA,EACnD;AAAA;AAAA;AAAA;AAAA,EAKA,cAAc,SAAuB;AACnC,UAAM,UAAU,KAAK,IAAI,IAAI,KAAK;AAClC,SAAK,OAAO,SAAS,OAAO,IAAI,IAAI,OAAO,KAAK;AAAA,EAClD;AAAA;AAAA;AAAA;AAAA,EAKA,SAAS,SAAuB;AAC9B,QAAI,iBAAkB;AACtB,UAAM,eAAe,KAAK,IAAI,IAAI,KAAK;AACvC,YAAQ,MAAM,EAAE;AAChB,YAAQ,MAAM,0CAA0C;AACxD,YAAQ,MAAM,cAAc,OAAO,EAAE;AACrC,YAAQ,MAAM,mBAAmB,eAAe,KAAM,QAAQ,CAAC,CAAC,GAAG;AACnE,YAAQ,MAAM,0CAA0C;AACxD,YAAQ,MAAM,EAAE;AAAA,EAClB;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,SAAiB,QAAuB;AAC5C,QAAI,iBAAkB;AACtB,UAAM,cAAc,SAAS,GAAG,OAAO,KAAK,MAAM,KAAK;AACvD,YAAQ,MAAM,WAAW,WAAW,EAAE;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA,EAKA,KAAK,SAAiB,QAAuB;AAC3C,QAAI,iBAAkB;AACtB,UAAM,cAAc,SAAS,GAAG,OAAO,KAAK,MAAM,KAAK;AACvD,YAAQ,MAAM,UAAU,WAAW,EAAE;AAAA,EACvC;AAAA;AAAA;AAAA;AAAA,EAKQ,aAAa,OAA8B;AACjD,UAAM,QAAuC;AAAA,MAC3C,QAAQ;AAAA,MACR,aAAa;AAAA,MACb,WAAW;AAAA,MACX,aAAa;AAAA,MACb,aAAa;AAAA,MACb,gBAAgB;AAAA,MAChB,YAAY;AAAA,IACd;AACA,WAAO,MAAM,KAAK,KAAK;AAAA,EACzB;AAAA;AAAA;AAAA;AAAA,EAKA,SAAS,WAA0C;AACjD,WAAO,IAAI,sBAAsB,WAAW,KAAK,OAAO;AAAA,EAC1D;AACF;AAKO,IAAM,wBAAN,MAA4B;AAAA,EACzB;AAAA,EACA;AAAA,EACA,aAAqB;AAAA,EAE7B,YAAY,WAAmB,UAAmB,MAAM;AACtD,SAAK,YAAY;AACjB,SAAK,UAAU;AAAA,EACjB;AAAA,EAEA,QAAc;AACZ,QAAI,CAAC,KAAK,WAAW,iBAAkB;AACvC,YAAQ,MAAM;AAAA,UAAa,KAAK,UAAU,YAAY,CAAC,cAAc;AAAA,EACvE;AAAA,EAEA,UAAU,MAAoB;AAC5B,QAAI,CAAC,KAAK,WAAW,iBAAkB;AACvC,UAAM,WAAW,KAAK,MAAM,GAAG,EAAE,IAAI,KAAK;AAC1C,YAAQ,MAAM,gBAAgB,QAAQ,KAAK;AAAA,EAC7C;AAAA,EAEA,SAAS,SAAuB;AAC9B,QAAI,CAAC,KAAK,WAAW,iBAAkB;AACvC,YAAQ,MAAM,sBAAsB,OAAO,EAAE;AAAA,EAC/C;AAAA,EAEA,MAAM,UAAkB,OAAqB;AAC3C,SAAK;AACL,QAAI,CAAC,KAAK,WAAW,iBAAkB;AACvC,UAAM,QAAQ,aAAa,aAAa,eAC3B,aAAa,YAAY,cACzB,aAAa,aAAa,eAAe;AACtD,YAAQ,MAAM,MAAM,KAAK,WAAW,KAAK,EAAE;AAAA,EAC7C;AAAA,EAEA,SAAS,SAAwB;AAC/B,QAAI,CAAC,KAAK,WAAW,iBAAkB;AACvC,UAAM,MAAM,WAAW,SAAS,KAAK,UAAU;AAC/C,YAAQ,MAAM,YAAY,KAAK,SAAS,KAAK,GAAG,EAAE;AAAA,EACpD;AAAA,EAEA,gBAAwB;AACtB,WAAO,KAAK;AAAA,EACd;AACF;","names":[]}
1
+ {"version":3,"sources":["../src/utils/progress.ts"],"sourcesContent":["/**\n * Progress Reporter for Trie Agent\n * \n * Provides real-time feedback to users as the agent works.\n * Uses console.error because MCP clients display stderr to users.\n */\n\n/**\n * Global interactive mode flag\n * When enabled, suppresses all console output (handled by InteractiveDashboard instead)\n */\nlet _interactiveMode = false;\n\n/**\n * Enable or disable interactive mode\n * When enabled, all console output from ProgressReporter and AgentProgressReporter is suppressed\n */\nexport function setInteractiveMode(enabled: boolean): void {\n _interactiveMode = enabled;\n}\n\n/**\n * Check if interactive mode is enabled\n */\nexport function isInteractiveMode(): boolean {\n return _interactiveMode;\n}\n\nexport type ProgressPhase = \n | 'init'\n | 'discovery'\n | 'reading'\n | 'analyzing'\n | 'ai-review'\n | 'prioritizing'\n | 'complete';\n\nexport interface ProgressCallback {\n (phase: ProgressPhase, message: string, detail?: string): void;\n}\n\n/**\n * Progress Reporter - streams status updates to the user\n */\nexport class ProgressReporter {\n private currentPhase: ProgressPhase = 'init';\n private startTime: number = Date.now();\n private phaseStartTime: number = Date.now();\n private verbose: boolean;\n\n constructor(options: { verbose?: boolean } = {}) {\n this.verbose = options.verbose ?? true;\n }\n\n /**\n * Report a status update\n */\n report(message: string, detail?: string): void {\n if (!this.verbose || _interactiveMode) return;\n \n const prefix = this.getPhaseIcon(this.currentPhase);\n const fullMessage = detail ? `${message}: ${detail}` : message;\n console.error(`${prefix} ${fullMessage}`);\n }\n\n /**\n * Start a new phase\n */\n startPhase(phase: ProgressPhase, message: string): void {\n this.currentPhase = phase;\n this.phaseStartTime = Date.now();\n this.report(message);\n }\n\n /**\n * Update within current phase\n */\n update(message: string, detail?: string): void {\n this.report(message, detail);\n }\n\n /**\n * Report progress on a file\n */\n file(action: string, filePath: string): void {\n // Show just the filename for cleaner output\n const fileName = filePath.split('/').pop() || filePath;\n this.report(action, fileName);\n }\n\n /**\n * Report an AI analysis step\n */\n ai(action: string, context?: string): void {\n if (_interactiveMode) return;\n const prefix = '[AI]';\n const message = context ? `${action}: ${context}` : action;\n console.error(`${prefix} ${message}`);\n }\n\n /**\n * Report a finding\n */\n finding(severity: 'critical' | 'serious' | 'moderate' | 'low', message: string): void {\n if (_interactiveMode) return;\n const labels = {\n critical: '[CRITICAL]',\n serious: '[SERIOUS]',\n moderate: '[MODERATE]',\n low: '[LOW]'\n };\n console.error(` ${labels[severity]} ${message}`);\n }\n\n /**\n * Complete current phase\n */\n completePhase(summary: string): void {\n const elapsed = Date.now() - this.phaseStartTime;\n this.report(`Done: ${summary}`, `(${elapsed}ms)`);\n }\n\n /**\n * Complete the entire operation\n */\n complete(summary: string): void {\n if (_interactiveMode) return;\n const totalElapsed = Date.now() - this.startTime;\n console.error('');\n console.error(`----------------------------------------`);\n console.error(`[COMPLETE] ${summary}`);\n console.error(` Total time: ${(totalElapsed / 1000).toFixed(2)}s`);\n console.error(`----------------------------------------`);\n console.error('');\n }\n\n /**\n * Report an error\n */\n error(message: string, detail?: string): void {\n if (_interactiveMode) return;\n const fullMessage = detail ? `${message}: ${detail}` : message;\n console.error(`[ERROR] ${fullMessage}`);\n }\n\n /**\n * Report a warning\n */\n warn(message: string, detail?: string): void {\n if (_interactiveMode) return;\n const fullMessage = detail ? `${message}: ${detail}` : message;\n console.error(`[WARN] ${fullMessage}`);\n }\n\n /**\n * Get icon for current phase\n */\n private getPhaseIcon(phase: ProgressPhase): string {\n const icons: Record<ProgressPhase, string> = {\n 'init': '>>',\n 'discovery': '>>',\n 'reading': '>>',\n 'analyzing': '>>',\n 'ai-review': '[AI]',\n 'prioritizing': '>>',\n 'complete': '[OK]'\n };\n return icons[phase] || '>>';\n }\n\n /**\n * Create a sub-reporter for a specific agent\n */\n forAgent(agentName: string): AgentProgressReporter {\n return new AgentProgressReporter(agentName, this.verbose);\n }\n}\n\n/**\n * Progress reporter scoped to a specific agent\n */\nexport class AgentProgressReporter {\n private agentName: string;\n private verbose: boolean;\n private issueCount: number = 0;\n\n constructor(agentName: string, verbose: boolean = true) {\n this.agentName = agentName;\n this.verbose = verbose;\n }\n\n start(): void {\n if (!this.verbose || _interactiveMode) return;\n console.error(`\\n[SCOUT] ${this.agentName.toUpperCase()} starting...`);\n }\n\n analyzing(file: string): void {\n if (!this.verbose || _interactiveMode) return;\n const fileName = file.split('/').pop() || file;\n console.error(` Analyzing ${fileName}...`);\n }\n\n aiReview(context: string): void {\n if (!this.verbose || _interactiveMode) return;\n console.error(` [AI] reviewing: ${context}`);\n }\n\n found(severity: string, issue: string): void {\n this.issueCount++;\n if (!this.verbose || _interactiveMode) return;\n const label = severity === 'critical' ? '[CRITICAL]' : \n severity === 'serious' ? '[SERIOUS]' : \n severity === 'moderate' ? '[MODERATE]' : '[LOW]';\n console.error(` ${label} Found: ${issue}`);\n }\n\n complete(summary?: string): void {\n if (!this.verbose || _interactiveMode) return;\n const msg = summary || `Found ${this.issueCount} issues`;\n console.error(` Done: ${this.agentName}: ${msg}`);\n }\n\n getIssueCount(): number {\n return this.issueCount;\n }\n}\n\n/**\n * Global singleton for easy access\n */\nlet globalReporter: ProgressReporter | null = null;\n\nexport function getProgressReporter(options?: { verbose?: boolean }): ProgressReporter {\n if (!globalReporter) {\n globalReporter = new ProgressReporter(options);\n }\n return globalReporter;\n}\n\nexport function resetProgressReporter(): void {\n globalReporter = null;\n}\n"],"mappings":"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","names":[]}
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-6NLHFIYA.js";
4
4
  import {
5
5
  isInteractiveMode
6
- } from "./chunk-MIL54SAF.js";
6
+ } from "./chunk-D25EIBPO.js";
7
7
 
8
8
  // src/trie/vulnerability-signatures.ts
9
9
  var ALWAYS_EXCLUDED_FILES = [
@@ -929,4 +929,4 @@ export {
929
929
  scanForVulnerabilities,
930
930
  getVulnerabilityStats
931
931
  };
932
- //# sourceMappingURL=chunk-FCMAQSV7.js.map
932
+ //# sourceMappingURL=chunk-FK3DUQ5T.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-6NLHFIYA.js";
4
4
  import {
5
5
  isInteractiveMode
6
- } from "./chunk-MIL54SAF.js";
6
+ } from "./chunk-D25EIBPO.js";
7
7
 
8
8
  // src/trie/vibe-code-signatures.ts
9
9
  var VIBE_CODE_PATTERNS = [
@@ -929,4 +929,4 @@ export {
929
929
  scanForVibeCodeIssues,
930
930
  getVibeCodeStats
931
931
  };
932
- //# sourceMappingURL=chunk-SH2JIQLB.js.map
932
+ //# sourceMappingURL=chunk-IYMJTY27.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  SlackIntegration,
3
3
  getGuardian
4
- } from "./chunk-G4DUCCMT.js";
4
+ } from "./chunk-PSVRO76R.js";
5
5
  import {
6
6
  Executor,
7
7
  Triager,
@@ -15,15 +15,15 @@ import {
15
15
  isTrieInitialized,
16
16
  loadConfig,
17
17
  loadSavedPatterns
18
- } from "./chunk-3HTPH3P2.js";
18
+ } from "./chunk-3EZ2ETKG.js";
19
19
  import {
20
20
  getVulnerabilityStats,
21
21
  getVulnerabilityTrie,
22
22
  scanForVulnerabilities
23
- } from "./chunk-FCMAQSV7.js";
23
+ } from "./chunk-FK3DUQ5T.js";
24
24
  import {
25
25
  getGuardianState
26
- } from "./chunk-CFE7FZU7.js";
26
+ } from "./chunk-T5UOH56R.js";
27
27
  import {
28
28
  createSkillFromFile,
29
29
  getSkillRegistry,
@@ -34,34 +34,34 @@ import {
34
34
  removeGlobalSkill,
35
35
  runShellCommand,
36
36
  updateContextAfterScan
37
- } from "./chunk-BBEFK56U.js";
37
+ } from "./chunk-7IEGGW4L.js";
38
38
  import {
39
39
  findCrossProjectPatterns
40
- } from "./chunk-D35TI7NY.js";
40
+ } from "./chunk-LT7MKIXU.js";
41
+ import {
42
+ atomicWriteJSON,
43
+ getMemoryStats,
44
+ getRecentIssues,
45
+ searchIssues
46
+ } from "./chunk-LP4MVJDW.js";
41
47
  import {
42
48
  Trie
43
49
  } from "./chunk-6NLHFIYA.js";
44
50
  import {
45
51
  getOutputManager
46
- } from "./chunk-F3WW4FY2.js";
52
+ } from "./chunk-XEQRB4XX.js";
47
53
  import {
48
54
  isAIAvailable
49
- } from "./chunk-GMKPXL4Q.js";
50
- import {
51
- atomicWriteJSON,
52
- getMemoryStats,
53
- getRecentIssues,
54
- searchIssues
55
- } from "./chunk-JG2TAVAO.js";
55
+ } from "./chunk-74NPKTZV.js";
56
56
  import {
57
57
  getTrieDirectory,
58
58
  getWorkingDirectory
59
- } from "./chunk-D5VEUZLP.js";
59
+ } from "./chunk-RDOJCRKJ.js";
60
60
  import {
61
61
  ProgressReporter,
62
62
  isInteractiveMode,
63
63
  setInteractiveMode
64
- } from "./chunk-MIL54SAF.js";
64
+ } from "./chunk-D25EIBPO.js";
65
65
 
66
66
  // src/utils/streaming.ts
67
67
  var shouldSuppressConsole = () => isInteractiveMode();
@@ -3393,7 +3393,7 @@ var InteractiveDashboard = class {
3393
3393
  */
3394
3394
  async measureSemanticGoalBaseline(description, workDir) {
3395
3395
  try {
3396
- const { searchIssues: searchIssues2 } = await import("./issue-store-WTXCQZEA.js");
3396
+ const { searchIssues: searchIssues2 } = await import("./issue-store-JZ2LCQEG.js");
3397
3397
  const issues = await searchIssues2("", {
3398
3398
  workDir,
3399
3399
  limit: 1e3,
@@ -9538,7 +9538,8 @@ var TrieScanTool = class {
9538
9538
  agentResults,
9539
9539
  validFiles.length,
9540
9540
  contextSignals,
9541
- Date.now() - startTime
9541
+ Date.now() - startTime,
9542
+ validFiles
9542
9543
  );
9543
9544
  let userConfig;
9544
9545
  if (config.user?.name) {
@@ -10016,4 +10017,4 @@ export {
10016
10017
  InteractiveDashboard,
10017
10018
  TrieScanTool
10018
10019
  };
10019
- //# sourceMappingURL=chunk-A44W6SZJ.js.map
10020
+ //# sourceMappingURL=chunk-LAGXOPXN.js.map