oh-my-claude-sisyphus 3.4.1 → 3.4.3

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 (135) hide show
  1. package/commands/cancel-ultraqa.md +1 -1
  2. package/dist/__tests__/analytics/analytics-summary.test.d.ts +2 -0
  3. package/dist/__tests__/analytics/analytics-summary.test.d.ts.map +1 -0
  4. package/dist/__tests__/analytics/analytics-summary.test.js +267 -0
  5. package/dist/__tests__/analytics/analytics-summary.test.js.map +1 -0
  6. package/dist/__tests__/analytics/backfill-dedup.test.d.ts +2 -0
  7. package/dist/__tests__/analytics/backfill-dedup.test.d.ts.map +1 -0
  8. package/dist/__tests__/analytics/backfill-dedup.test.js +179 -0
  9. package/dist/__tests__/analytics/backfill-dedup.test.js.map +1 -0
  10. package/dist/__tests__/analytics/backfill-engine.test.d.ts +2 -0
  11. package/dist/__tests__/analytics/backfill-engine.test.d.ts.map +1 -0
  12. package/dist/__tests__/analytics/backfill-engine.test.js +362 -0
  13. package/dist/__tests__/analytics/backfill-engine.test.js.map +1 -0
  14. package/dist/__tests__/analytics/cost-estimator.test.d.ts +2 -0
  15. package/dist/__tests__/analytics/cost-estimator.test.d.ts.map +1 -0
  16. package/dist/__tests__/analytics/cost-estimator.test.js +212 -0
  17. package/dist/__tests__/analytics/cost-estimator.test.js.map +1 -0
  18. package/dist/__tests__/analytics/output-estimator.test.d.ts +2 -0
  19. package/dist/__tests__/analytics/output-estimator.test.d.ts.map +1 -0
  20. package/dist/__tests__/analytics/output-estimator.test.js +106 -0
  21. package/dist/__tests__/analytics/output-estimator.test.js.map +1 -0
  22. package/dist/__tests__/analytics/token-extractor.test.d.ts +2 -0
  23. package/dist/__tests__/analytics/token-extractor.test.d.ts.map +1 -0
  24. package/dist/__tests__/analytics/token-extractor.test.js +121 -0
  25. package/dist/__tests__/analytics/token-extractor.test.js.map +1 -0
  26. package/dist/__tests__/analytics/transcript-parser.test.d.ts +2 -0
  27. package/dist/__tests__/analytics/transcript-parser.test.d.ts.map +1 -0
  28. package/dist/__tests__/analytics/transcript-parser.test.js +285 -0
  29. package/dist/__tests__/analytics/transcript-parser.test.js.map +1 -0
  30. package/dist/__tests__/analytics/transcript-scanner.test.d.ts +2 -0
  31. package/dist/__tests__/analytics/transcript-scanner.test.d.ts.map +1 -0
  32. package/dist/__tests__/analytics/transcript-scanner.test.js +401 -0
  33. package/dist/__tests__/analytics/transcript-scanner.test.js.map +1 -0
  34. package/dist/__tests__/analytics/transcript-token-extractor.test.d.ts +2 -0
  35. package/dist/__tests__/analytics/transcript-token-extractor.test.d.ts.map +1 -0
  36. package/dist/__tests__/analytics/transcript-token-extractor.test.js +175 -0
  37. package/dist/__tests__/analytics/transcript-token-extractor.test.js.map +1 -0
  38. package/dist/__tests__/hud/auto-tracking.integration.test.d.ts +2 -0
  39. package/dist/__tests__/hud/auto-tracking.integration.test.d.ts.map +1 -0
  40. package/dist/__tests__/hud/auto-tracking.integration.test.js +12 -0
  41. package/dist/__tests__/hud/auto-tracking.integration.test.js.map +1 -0
  42. package/dist/analytics/analytics-summary.d.ts +47 -0
  43. package/dist/analytics/analytics-summary.d.ts.map +1 -0
  44. package/dist/analytics/analytics-summary.js +170 -0
  45. package/dist/analytics/analytics-summary.js.map +1 -0
  46. package/dist/analytics/backfill-dedup.d.ts +49 -0
  47. package/dist/analytics/backfill-dedup.d.ts.map +1 -0
  48. package/dist/analytics/backfill-dedup.js +118 -0
  49. package/dist/analytics/backfill-dedup.js.map +1 -0
  50. package/dist/analytics/backfill-engine.d.ts +59 -0
  51. package/dist/analytics/backfill-engine.d.ts.map +1 -0
  52. package/dist/analytics/backfill-engine.js +163 -0
  53. package/dist/analytics/backfill-engine.js.map +1 -0
  54. package/dist/analytics/index.d.ts +8 -0
  55. package/dist/analytics/index.d.ts.map +1 -1
  56. package/dist/analytics/index.js +10 -0
  57. package/dist/analytics/index.js.map +1 -1
  58. package/dist/analytics/output-estimator.d.ts +26 -0
  59. package/dist/analytics/output-estimator.d.ts.map +1 -0
  60. package/dist/analytics/output-estimator.js +61 -0
  61. package/dist/analytics/output-estimator.js.map +1 -0
  62. package/dist/analytics/token-extractor.d.ts +31 -0
  63. package/dist/analytics/token-extractor.d.ts.map +1 -0
  64. package/dist/analytics/token-extractor.js +57 -0
  65. package/dist/analytics/token-extractor.js.map +1 -0
  66. package/dist/analytics/token-tracker.d.ts +7 -1
  67. package/dist/analytics/token-tracker.d.ts.map +1 -1
  68. package/dist/analytics/token-tracker.js +81 -0
  69. package/dist/analytics/token-tracker.js.map +1 -1
  70. package/dist/analytics/transcript-parser.d.ts +42 -0
  71. package/dist/analytics/transcript-parser.d.ts.map +1 -0
  72. package/dist/analytics/transcript-parser.js +90 -0
  73. package/dist/analytics/transcript-parser.js.map +1 -0
  74. package/dist/analytics/transcript-scanner.d.ts +50 -0
  75. package/dist/analytics/transcript-scanner.d.ts.map +1 -0
  76. package/dist/analytics/transcript-scanner.js +149 -0
  77. package/dist/analytics/transcript-scanner.js.map +1 -0
  78. package/dist/analytics/transcript-token-extractor.d.ts +19 -0
  79. package/dist/analytics/transcript-token-extractor.d.ts.map +1 -0
  80. package/dist/analytics/transcript-token-extractor.js +89 -0
  81. package/dist/analytics/transcript-token-extractor.js.map +1 -0
  82. package/dist/analytics/types.d.ts +52 -0
  83. package/dist/analytics/types.d.ts.map +1 -1
  84. package/dist/analytics/types.js.map +1 -1
  85. package/dist/cli/analytics.js +26 -1
  86. package/dist/cli/analytics.js.map +1 -1
  87. package/dist/cli/commands/backfill.d.ts +15 -0
  88. package/dist/cli/commands/backfill.d.ts.map +1 -0
  89. package/dist/cli/commands/backfill.js +146 -0
  90. package/dist/cli/commands/backfill.js.map +1 -0
  91. package/dist/cli/commands/stats.d.ts +1 -0
  92. package/dist/cli/commands/stats.d.ts.map +1 -1
  93. package/dist/cli/commands/stats.js +67 -31
  94. package/dist/cli/commands/stats.js.map +1 -1
  95. package/dist/cli/components/CostDashboard.d.ts +15 -0
  96. package/dist/cli/components/CostDashboard.d.ts.map +1 -0
  97. package/dist/cli/components/CostDashboard.js +15 -0
  98. package/dist/cli/components/CostDashboard.js.map +1 -0
  99. package/dist/cli/components/LiveStats.d.ts +16 -0
  100. package/dist/cli/components/LiveStats.d.ts.map +1 -0
  101. package/dist/cli/components/LiveStats.js +16 -0
  102. package/dist/cli/components/LiveStats.js.map +1 -0
  103. package/dist/cli/components/SessionBrowser.d.ts +14 -0
  104. package/dist/cli/components/SessionBrowser.d.ts.map +1 -0
  105. package/dist/cli/components/SessionBrowser.js +14 -0
  106. package/dist/cli/components/SessionBrowser.js.map +1 -0
  107. package/dist/cli/index.js +159 -3
  108. package/dist/cli/index.js.map +1 -1
  109. package/dist/cli/tui.d.ts +21 -0
  110. package/dist/cli/tui.d.ts.map +1 -0
  111. package/dist/cli/tui.js +21 -0
  112. package/dist/cli/tui.js.map +1 -0
  113. package/dist/hud/analytics-display.d.ts +16 -0
  114. package/dist/hud/analytics-display.d.ts.map +1 -1
  115. package/dist/hud/analytics-display.js +42 -0
  116. package/dist/hud/analytics-display.js.map +1 -1
  117. package/dist/hud/index.js +90 -3
  118. package/dist/hud/index.js.map +1 -1
  119. package/dist/hud/render.d.ts.map +1 -1
  120. package/dist/hud/render.js +27 -1
  121. package/dist/hud/render.js.map +1 -1
  122. package/dist/hud/types.d.ts +2 -0
  123. package/dist/hud/types.d.ts.map +1 -1
  124. package/dist/hud/types.js.map +1 -1
  125. package/docs/ANALYTICS-SYSTEM.md +150 -0
  126. package/docs/FULL-README.md +2 -2
  127. package/hooks/keyword-detector.sh +1 -1
  128. package/package.json +1 -1
  129. package/scripts/keyword-detector.mjs +1 -1
  130. package/scripts/persistent-mode.mjs +1 -1
  131. package/scripts/test-mutual-exclusion.ts +4 -4
  132. package/scripts/test-remember-tags.ts +6 -6
  133. package/scripts/test-session-injection.ts +4 -4
  134. package/skills/cancel-ultraqa/SKILL.md +1 -1
  135. package/skills/omc-setup/SKILL.md +30 -5
@@ -2,12 +2,14 @@
2
2
  * OMC HUD - Analytics Display
3
3
  *
4
4
  * Display components for token tracking and cost analytics in the HUD.
5
+ * Now uses SessionHealth as the source of truth instead of TokenTracker.
5
6
  */
6
7
  /**
7
8
  * Get analytics display data for the current session.
8
9
  * Safe to call even if analytics modules are not initialized.
9
10
  *
10
11
  * @returns Analytics display data with safe defaults
12
+ * @deprecated Use SessionHealth directly for HUD rendering
11
13
  */
12
14
  export async function getAnalyticsDisplay() {
13
15
  try {
@@ -76,6 +78,7 @@ function formatTokenCount(tokens) {
76
78
  }
77
79
  /**
78
80
  * Render analytics as a single-line string for HUD display.
81
+ * @deprecated Use renderSessionHealthAnalytics instead
79
82
  */
80
83
  export function renderAnalyticsLine(analytics) {
81
84
  const costIndicator = analytics.costColor === 'green' ? '●' :
@@ -102,4 +105,43 @@ export async function getSessionInfo() {
102
105
  return 'Session info unavailable';
103
106
  }
104
107
  }
108
+ /**
109
+ * Render analytics from SessionHealth (no longer calls TokenTracker directly)
110
+ */
111
+ export function renderSessionHealthAnalytics(sessionHealth) {
112
+ if (!sessionHealth.sessionCost) {
113
+ return ''; // No analytics available
114
+ }
115
+ const costIndicator = sessionHealth.health === 'critical' ? '🔴' :
116
+ sessionHealth.health === 'warning' ? '🟡' : '🟢';
117
+ const costPrefix = sessionHealth.isEstimated ? '~' : '';
118
+ const cost = `${costPrefix}$${sessionHealth.sessionCost.toFixed(4)}`;
119
+ const tokens = formatTokenCount(sessionHealth.totalTokens ?? 0);
120
+ const cacheRate = sessionHealth.cacheHitRate?.toFixed(1) ?? '0.0';
121
+ const costHour = sessionHealth.costPerHour ? `$${sessionHealth.costPerHour.toFixed(2)}/h` : '';
122
+ return `${costIndicator} ${cost} | ${tokens} | Cache: ${cacheRate}% | ${costHour}`;
123
+ }
124
+ /**
125
+ * Render budget warning if cost exceeds thresholds
126
+ */
127
+ export function renderBudgetWarning(sessionHealth) {
128
+ const cost = sessionHealth.sessionCost ?? 0;
129
+ if (cost > 5.0) {
130
+ return `⚠️ BUDGET ALERT: Session cost ${cost.toFixed(2)} exceeds $5.00`;
131
+ }
132
+ else if (cost > 2.0) {
133
+ return `⚡ Budget notice: Session cost ${cost.toFixed(2)} approaching limit`;
134
+ }
135
+ return '';
136
+ }
137
+ /**
138
+ * Render cache efficiency meter
139
+ */
140
+ export function renderCacheEfficiency(sessionHealth) {
141
+ const rate = sessionHealth.cacheHitRate ?? 0;
142
+ const barLength = 20;
143
+ const filled = Math.round((rate / 100) * barLength);
144
+ const bar = '█'.repeat(filled) + '░'.repeat(barLength - filled);
145
+ return `Cache: ${bar} ${rate.toFixed(1)}%`;
146
+ }
105
147
  //# sourceMappingURL=analytics-display.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"analytics-display.js","sourceRoot":"","sources":["../../src/hud/analytics-display.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analytics-display.js","sourceRoot":"","sources":["../../src/hud/analytics-display.ts"],"names":[],"mappings":"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"}
package/dist/hud/index.js CHANGED
@@ -11,10 +11,51 @@ import { readHudState, readHudConfig, getRunningTasks, initializeHUDState } from
11
11
  import { readRalphStateForHud, readUltraworkStateForHud, readPrdStateForHud, readAutopilotStateForHud, } from './omc-state.js';
12
12
  import { getUsage } from './usage-api.js';
13
13
  import { render } from './render.js';
14
+ import { extractTokens, createSnapshot } from '../analytics/token-extractor.js';
15
+ import { extractSessionId } from '../analytics/output-estimator.js';
16
+ import { getTokenTracker } from '../analytics/token-tracker.js';
17
+ // Persistent token snapshot for delta calculations
18
+ let previousSnapshot = null;
19
+ /**
20
+ * Record token usage to analytics tracker.
21
+ * Silent failure - doesn't break HUD rendering.
22
+ */
23
+ async function recordTokenUsage(stdin, transcriptData) {
24
+ try {
25
+ // Get model name from stdin
26
+ const modelName = getModelName(stdin);
27
+ // Get running agents from transcript
28
+ const runningAgents = transcriptData.agents?.filter((a) => a.status === 'running') ?? [];
29
+ const agentName = runningAgents.length > 0 ? runningAgents[0].name : undefined;
30
+ // Extract tokens (delta from previous)
31
+ const extracted = extractTokens(stdin, previousSnapshot, modelName, agentName);
32
+ // Only record if there's actual token usage
33
+ if (extracted.inputTokens > 0 || extracted.cacheCreationTokens > 0) {
34
+ // Get session ID
35
+ const sessionId = extractSessionId(stdin.transcript_path);
36
+ // Get tracker and record
37
+ const tracker = getTokenTracker(sessionId);
38
+ await tracker.recordTokenUsage({
39
+ agentName: extracted.agentName,
40
+ modelName: extracted.modelName,
41
+ inputTokens: extracted.inputTokens,
42
+ outputTokens: extracted.outputTokens,
43
+ cacheCreationTokens: extracted.cacheCreationTokens,
44
+ cacheReadTokens: extracted.cacheReadTokens
45
+ });
46
+ }
47
+ // Update snapshot for next render
48
+ previousSnapshot = createSnapshot(stdin);
49
+ }
50
+ catch (error) {
51
+ // Silent failure - don't break HUD rendering
52
+ // console.error('[Analytics] Token recording failed:', error);
53
+ }
54
+ }
14
55
  /**
15
56
  * Calculate session health from session start time and context usage.
16
57
  */
17
- function calculateSessionHealth(sessionStart, contextPercent) {
58
+ async function calculateSessionHealth(sessionStart, contextPercent, transcriptPath) {
18
59
  if (!sessionStart)
19
60
  return null;
20
61
  const durationMs = Date.now() - sessionStart.getTime();
@@ -26,7 +67,51 @@ function calculateSessionHealth(sessionStart, contextPercent) {
26
67
  else if (durationMinutes > 60 || contextPercent > 70) {
27
68
  health = 'warning';
28
69
  }
29
- return { durationMinutes, messageCount: 0, health };
70
+ // Populate analytics if transcript path available
71
+ let sessionCost;
72
+ let totalTokens;
73
+ let cacheHitRate;
74
+ let topAgents;
75
+ let costPerHour;
76
+ let isEstimated = true;
77
+ if (transcriptPath) {
78
+ try {
79
+ const { loadAnalyticsFast } = await import('../analytics/analytics-summary.js');
80
+ const { extractSessionId } = await import('../analytics/output-estimator.js');
81
+ const sessionId = extractSessionId(transcriptPath);
82
+ const analytics = await loadAnalyticsFast(sessionId);
83
+ if (analytics) {
84
+ sessionCost = analytics.totals.estimatedCost;
85
+ totalTokens = analytics.totals.inputTokens + analytics.totals.outputTokens;
86
+ cacheHitRate = analytics.cacheHitRate;
87
+ topAgents = analytics.topAgents;
88
+ // Calculate cost per hour
89
+ const hours = durationMs / (1000 * 60 * 60);
90
+ costPerHour = hours > 0 ? sessionCost / hours : 0;
91
+ // Adjust health based on cost (Budget warnings)
92
+ if (sessionCost > 5.0) {
93
+ health = 'critical';
94
+ }
95
+ else if (sessionCost > 2.0 && health !== 'critical') {
96
+ health = 'warning';
97
+ }
98
+ }
99
+ }
100
+ catch (error) {
101
+ // Analytics not available - ignore
102
+ }
103
+ }
104
+ return {
105
+ durationMinutes,
106
+ messageCount: 0,
107
+ health,
108
+ sessionCost,
109
+ totalTokens,
110
+ cacheHitRate,
111
+ topAgents,
112
+ costPerHour,
113
+ isEstimated
114
+ };
30
115
  }
31
116
  /**
32
117
  * Main HUD entry point
@@ -45,6 +130,8 @@ async function main() {
45
130
  const cwd = stdin.cwd || process.cwd();
46
131
  // Parse transcript for agents and todos
47
132
  const transcriptData = await parseTranscript(stdin.transcript_path);
133
+ // Record token usage (auto-tracking)
134
+ await recordTokenUsage(stdin, transcriptData);
48
135
  // Read OMC state files
49
136
  const ralph = readRalphStateForHud(cwd);
50
137
  const ultrawork = readUltraworkStateForHud(cwd);
@@ -75,7 +162,7 @@ async function main() {
75
162
  rateLimits,
76
163
  pendingPermission: transcriptData.pendingPermission || null,
77
164
  thinkingState: transcriptData.thinkingState || null,
78
- sessionHealth: calculateSessionHealth(transcriptData.sessionStart, getContextPercent(stdin))
165
+ sessionHealth: await calculateSessionHealth(transcriptData.sessionStart, getContextPercent(stdin), stdin.transcript_path)
79
166
  };
80
167
  // Render and output
81
168
  const output = await render(context, config);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hud/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hud/index.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC9F,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAsB,MAAM,iCAAiC,CAAC;AACpG,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,mDAAmD;AACnD,IAAI,gBAAgB,GAAyB,IAAI,CAAC;AAElD;;;GAGG;AACH,KAAK,UAAU,gBAAgB,CAC7B,KAAU,EACV,cAAmB;IAEnB,IAAI,CAAC;QACH,4BAA4B;QAC5B,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAEtC,qCAAqC;QACrC,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;QAC9F,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAE/E,uCAAuC;QACvC,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAE/E,4CAA4C;QAC5C,IAAI,SAAS,CAAC,WAAW,GAAG,CAAC,IAAI,SAAS,CAAC,mBAAmB,GAAG,CAAC,EAAE,CAAC;YACnE,iBAAiB;YACjB,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAE1D,yBAAyB;YACzB,MAAM,OAAO,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;YAC3C,MAAM,OAAO,CAAC,gBAAgB,CAAC;gBAC7B,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC9B,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC9B,WAAW,EAAE,SAAS,CAAC,WAAW;gBAClC,YAAY,EAAE,SAAS,CAAC,YAAY;gBACpC,mBAAmB,EAAE,SAAS,CAAC,mBAAmB;gBAClD,eAAe,EAAE,SAAS,CAAC,eAAe;aAC3C,CAAC,CAAC;QACL,CAAC;QAED,kCAAkC;QAClC,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,6CAA6C;QAC7C,+DAA+D;IACjE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,sBAAsB,CACnC,YAA8B,EAC9B,cAAsB,EACtB,cAAuB;IAEvB,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IAE/B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,OAAO,EAAE,CAAC;IACvD,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,CAAC;IAExD,IAAI,MAAM,GAA4B,SAAS,CAAC;IAChD,IAAI,eAAe,GAAG,GAAG,IAAI,cAAc,GAAG,EAAE,EAAE,CAAC;QACjD,MAAM,GAAG,UAAU,CAAC;IACtB,CAAC;SAAM,IAAI,eAAe,GAAG,EAAE,IAAI,cAAc,GAAG,EAAE,EAAE,CAAC;QACvD,MAAM,GAAG,SAAS,CAAC;IACrB,CAAC;IAED,kDAAkD;IAClD,IAAI,WAA+B,CAAC;IACpC,IAAI,WAA+B,CAAC;IACpC,IAAI,YAAgC,CAAC;IACrC,IAAI,SAA6D,CAAC;IAClE,IAAI,WAA+B,CAAC;IACpC,IAAI,WAAW,GAAG,IAAI,CAAC;IAEvB,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,mCAAmC,CAAC,CAAC;YAChF,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,kCAAkC,CAAC,CAAC;YAE9E,MAAM,SAAS,GAAG,gBAAgB,CAAC,cAAc,CAAC,CAAC;YACnD,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAErD,IAAI,SAAS,EAAE,CAAC;gBACd,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC;gBAC7C,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC;gBAC3E,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;gBACtC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;gBAEhC,0BAA0B;gBAC1B,MAAM,KAAK,GAAG,UAAU,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;gBAC5C,WAAW,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAElD,gDAAgD;gBAChD,IAAI,WAAW,GAAG,GAAG,EAAE,CAAC;oBACtB,MAAM,GAAG,UAAU,CAAC;gBACtB,CAAC;qBAAM,IAAI,WAAW,GAAG,GAAG,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;oBACtD,MAAM,GAAG,SAAS,CAAC;gBACrB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,mCAAmC;QACrC,CAAC;IACH,CAAC;IAED,OAAO;QACL,eAAe;QACf,YAAY,EAAE,CAAC;QACf,MAAM;QACN,WAAW;QACX,WAAW;QACX,YAAY;QACZ,SAAS;QACT,WAAW;QACX,WAAW;KACZ,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,IAAI;IACjB,IAAI,CAAC;QACH,sDAAsD;QACtD,MAAM,kBAAkB,EAAE,CAAC;QAE3B,8BAA8B;QAC9B,MAAM,KAAK,GAAG,MAAM,SAAS,EAAE,CAAC;QAEhC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,2BAA2B;YAC3B,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAEvC,wCAAwC;QACxC,MAAM,cAAc,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAEpE,qCAAqC;QACrC,MAAM,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAE9C,uBAAuB;QACvB,MAAM,KAAK,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;QAEhD,sCAAsC;QACtC,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,eAAe,GAAG,QAAQ,EAAE,eAAe,IAAI,EAAE,CAAC;QAExD,qBAAqB;QACrB,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;QAE/B,kDAAkD;QAClD,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,KAAK,KAAK;YACrD,CAAC,CAAC,MAAM,QAAQ,EAAE;YAClB,CAAC,CAAC,IAAI,CAAC;QAET,uBAAuB;QACvB,MAAM,OAAO,GAAqB;YAChC,cAAc,EAAE,iBAAiB,CAAC,KAAK,CAAC;YACxC,SAAS,EAAE,YAAY,CAAC,KAAK,CAAC;YAC9B,KAAK;YACL,SAAS;YACT,GAAG;YACH,SAAS;YACT,YAAY,EAAE,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC;YACzE,KAAK,EAAE,cAAc,CAAC,KAAK;YAC3B,eAAe,EAAE,eAAe,CAAC,QAAQ,CAAC;YAC1C,GAAG;YACH,SAAS,EAAE,cAAc,CAAC,kBAAkB,IAAI,IAAI;YACpD,UAAU;YACV,iBAAiB,EAAE,cAAc,CAAC,iBAAiB,IAAI,IAAI;YAC3D,aAAa,EAAE,cAAc,CAAC,aAAa,IAAI,IAAI;YACnD,aAAa,EAAE,MAAM,sBAAsB,CACzC,cAAc,CAAC,YAAY,EAC3B,iBAAiB,CAAC,KAAK,CAAC,EACxB,KAAK,CAAC,eAAe,CACtB;SACF,CAAC;QAEF,oBAAoB;QACpB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAE7C,iEAAiE;QACjE,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,8BAA8B;QAC9B,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC;AAED,WAAW;AACX,IAAI,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/hud/render.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAgB9D;;GAEG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAqJ1F"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/hud/render.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAuB9D;;GAEG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CA+K1F"}
@@ -16,7 +16,7 @@ import { renderPermission } from './elements/permission.js';
16
16
  import { renderThinking } from './elements/thinking.js';
17
17
  import { renderSession } from './elements/session.js';
18
18
  import { renderAutopilot } from './elements/autopilot.js';
19
- import { getAnalyticsDisplay, renderAnalyticsLine, getSessionInfo } from './analytics-display.js';
19
+ import { getAnalyticsDisplay, renderAnalyticsLine, getSessionInfo, renderSessionHealthAnalytics, renderBudgetWarning, renderCacheEfficiency } from './analytics-display.js';
20
20
  /**
21
21
  * Render the complete statusline (single or multi-line)
22
22
  */
@@ -30,6 +30,18 @@ export async function render(context, config) {
30
30
  const sessionInfo = await getSessionInfo();
31
31
  // Render analytics-focused layout
32
32
  const lines = [sessionInfo, renderAnalyticsLine(analytics)];
33
+ // Add SessionHealth analytics if available
34
+ if (context.sessionHealth?.sessionCost) {
35
+ const healthAnalytics = renderSessionHealthAnalytics(context.sessionHealth);
36
+ if (healthAnalytics)
37
+ lines.push(healthAnalytics);
38
+ const cacheEfficiency = renderCacheEfficiency(context.sessionHealth);
39
+ if (cacheEfficiency)
40
+ lines.push(cacheEfficiency);
41
+ const budgetWarning = renderBudgetWarning(context.sessionHealth);
42
+ if (budgetWarning)
43
+ lines.push(budgetWarning);
44
+ }
33
45
  // Add agents if available
34
46
  if (context.activeAgents.length > 0) {
35
47
  const agents = renderAgentsByFormat(context.activeAgents, enabledElements.agentsFormat || 'codes');
@@ -73,6 +85,14 @@ export async function render(context, config) {
73
85
  const session = renderSession(context.sessionHealth);
74
86
  if (session)
75
87
  elements.push(session);
88
+ // Add analytics inline if available
89
+ const analytics = renderSessionHealthAnalytics(context.sessionHealth);
90
+ if (analytics)
91
+ elements.push(analytics);
92
+ // Add budget warning to detail lines if needed
93
+ const warning = renderBudgetWarning(context.sessionHealth);
94
+ if (warning)
95
+ detailLines.push(warning);
76
96
  }
77
97
  // Ralph loop state
78
98
  if (enabledElements.ralph && context.ralph) {
@@ -149,6 +169,12 @@ export async function render(context, config) {
149
169
  try {
150
170
  const analytics = await getAnalyticsDisplay();
151
171
  detailLines.push(renderAnalyticsLine(analytics));
172
+ // Also add cache efficiency if SessionHealth available
173
+ if (context.sessionHealth?.cacheHitRate !== undefined) {
174
+ const cacheEfficiency = renderCacheEfficiency(context.sessionHealth);
175
+ if (cacheEfficiency)
176
+ detailLines.push(cacheEfficiency);
177
+ }
152
178
  }
153
179
  catch {
154
180
  // Analytics not available, skip
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/hud/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/hud/render.ts"],"names":[],"mappings":"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"}
@@ -79,6 +79,8 @@ export interface SessionHealth {
79
79
  agent: string;
80
80
  cost: number;
81
81
  }>;
82
+ costPerHour?: number;
83
+ isEstimated?: boolean;
82
84
  }
83
85
  export interface TranscriptData {
84
86
  agents: ActiveAgent[];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hud/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hud/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/hud/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/hud/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,150 @@
1
+ # OMC Analytics System
2
+
3
+ ## Overview
4
+
5
+ Automatic token tracking and cost estimation for Claude API usage in oh-my-claudecode.
6
+
7
+ ## Features
8
+
9
+ - **Automatic Token Tracking**: Zero manual recording - tracks every HUD render
10
+ - **Cost Estimation**: Model-specific pricing with cache economics
11
+ - **Session Management**: Track costs across multiple sessions
12
+ - **Beautiful CLI**: Enhanced analytics visualization
13
+ - **HUD Integration**: Real-time cost display in statusline
14
+
15
+ ## Architecture
16
+
17
+ ```
18
+ StatuslineStdin → TokenExtractor → TokenTracker → Analytics Summary
19
+
20
+ HUD Display
21
+
22
+ CLI Reports
23
+ ```
24
+
25
+ ## Auto-Tracking
26
+
27
+ Token usage is automatically captured on every HUD render:
28
+
29
+ 1. **TokenExtractor** parses StatuslineStdin for token data
30
+ 2. **Delta Calculation** computes change from previous render
31
+ 3. **Agent Correlation** associates tokens with running agents
32
+ 4. **TokenTracker** records usage to JSONL log
33
+ 5. **Summary Files** provide fast <10ms session loading
34
+
35
+ ## Output Token Estimation
36
+
37
+ Since StatuslineStdin only provides input tokens, output tokens are estimated:
38
+
39
+ - **Haiku**: 30% of input tokens
40
+ - **Sonnet**: 40% of input tokens
41
+ - **Opus**: 50% of input tokens
42
+
43
+ All costs displayed with "~" prefix to indicate estimation.
44
+
45
+ ## HUD Integration
46
+
47
+ Real-time analytics in statusline:
48
+
49
+ - Session cost and tokens
50
+ - Cost per hour
51
+ - Cache efficiency
52
+ - Budget warnings (>$2 warning, >$5 critical)
53
+
54
+ Use `analytics` preset for detailed display.
55
+
56
+ ## CLI Usage
57
+
58
+ ```bash
59
+ # View everything (default dashboard)
60
+ omc
61
+
62
+ # View current session stats
63
+ omc stats
64
+
65
+ # Cost reports
66
+ omc cost daily
67
+ omc cost weekly
68
+ omc cost monthly
69
+
70
+ # Session history
71
+ omc sessions
72
+
73
+ # Agent breakdown
74
+ omc agents
75
+
76
+ # Export data
77
+ omc export cost csv ./costs.csv
78
+ ```
79
+
80
+ ## Performance
81
+
82
+ - **HUD Render**: <100ms total (including analytics)
83
+ - **Token Extraction**: <5ms per render
84
+ - **Summary Loading**: <10ms (mtime-cached)
85
+ - **CLI Startup**: <500ms
86
+
87
+ ## Files
88
+
89
+ - `src/analytics/token-extractor.ts` - Token extraction
90
+ - `src/analytics/output-estimator.ts` - Output estimation & session ID
91
+ - `src/analytics/analytics-summary.ts` - Fast summary loading
92
+ - `src/hud/index.ts` - Auto-recording integration
93
+ - `.omc/state/token-tracking.jsonl` - Append-only token log
94
+ - `.omc/state/analytics-summary-{sessionId}.json` - Cached summaries
95
+
96
+ ## Offline Transcript Analysis
97
+
98
+ ### Overview
99
+
100
+ The analytics system can analyze historical Claude Code session transcripts from `~/.claude/projects/` to backfill token usage data.
101
+
102
+ ### The `omc backfill` Command
103
+
104
+ Extracts actual token usage from Claude Code transcripts and adds them to the analytics database.
105
+
106
+ ```bash
107
+ omc backfill [options]
108
+ ```
109
+
110
+ #### Options
111
+
112
+ | Option | Description |
113
+ |--------|-------------|
114
+ | `--project <glob>` | Filter to specific project paths |
115
+ | `--from <date>` | Only process transcripts modified after date (ISO format) |
116
+ | `--to <date>` | Only process transcripts modified before date |
117
+ | `--dry-run` | Preview without writing to database |
118
+ | `--reset` | Clear deduplication index and re-process all |
119
+ | `--verbose` | Show detailed per-file progress |
120
+ | `--json` | Output as JSON |
121
+
122
+ #### Examples
123
+
124
+ ```bash
125
+ # Preview all available transcripts
126
+ omc backfill --dry-run
127
+
128
+ # Backfill specific project
129
+ omc backfill --project "*VibeQuant*"
130
+
131
+ # Backfill recent transcripts only
132
+ omc backfill --from "2026-01-01"
133
+
134
+ # Re-process everything
135
+ omc backfill --reset
136
+ ```
137
+
138
+ ### Auto-Backfill
139
+
140
+ The `omc` CLI automatically runs a silent backfill on startup if more than 24 hours have passed since the last backfill. This ensures your analytics stay up-to-date without manual intervention.
141
+
142
+ ### Data Sources
143
+
144
+ - **Transcript Location**: `~/.claude/projects/<encoded-path>/<uuid>.jsonl`
145
+ - **Token Data**: Actual `output_tokens` from API responses (not estimates)
146
+ - **Agent Detection**: Extracted from `tool_use` blocks with Task tool
147
+
148
+ ### Deduplication
149
+
150
+ Entries are deduplicated using a hash of `sessionId + timestamp + model`. Safe to run multiple times.
@@ -10,7 +10,7 @@
10
10
 
11
11
  # oh-my-claudecode
12
12
 
13
- [![Version](https://img.shields.io/badge/version-3.4.1-ff6b6b)](https://github.com/Yeachan-Heo/oh-my-claudecode)
13
+ [![Version](https://img.shields.io/badge/version-3.4.2-ff6b6b)](https://github.com/Yeachan-Heo/oh-my-claudecode)
14
14
  [![npm version](https://img.shields.io/npm/v/oh-my-claude-sisyphus?color=cb3837)](https://www.npmjs.com/package/oh-my-claudecode)
15
15
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
16
16
  [![Node.js](https://img.shields.io/badge/Node.js-20+-339933?logo=node.js&logoColor=white)](https://nodejs.org/)
@@ -143,7 +143,7 @@ Background agent resumption with context preservation via `resumeSession()`.
143
143
 
144
144
  ---
145
145
 
146
- ## NEW in 3.4.1: Parallel Execution & Advanced Workflows
146
+ ## NEW in 3.4.2: Parallel Execution & Advanced Workflows
147
147
 
148
148
  **Game-changing features:** Ultrapilot, swarm orchestration, and pipeline workflows for 3-5x faster execution.
149
149
 
@@ -48,7 +48,7 @@ PROMPT_LOWER=$(echo "$PROMPT_NO_CODE" | tr '[:upper:]' '[:lower:]')
48
48
  # Check for ultrawork keywords (highest priority)
49
49
  if echo "$PROMPT_LOWER" | grep -qE '\b(ultrawork|ulw|uw)\b'; then
50
50
  # Create persistent ultrawork state
51
- mkdir -p "$DIRECTORY/.sisyphus" 2>/dev/null
51
+ mkdir -p "$DIRECTORY/.omc" 2>/dev/null
52
52
  mkdir -p "$HOME/.claude" 2>/dev/null
53
53
 
54
54
  # Escape prompt for JSON
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-claude-sisyphus",
3
- "version": "3.4.1",
3
+ "version": "3.4.3",
4
4
  "description": "Multi-agent orchestration system for Claude Code - Inspired by oh-my-opencode",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -137,7 +137,7 @@ function activateUltraworkState(directory, prompt) {
137
137
  last_checked_at: new Date().toISOString()
138
138
  };
139
139
 
140
- // Write to local .sisyphus directory
140
+ // Write to local .omc directory
141
141
  const localDir = join(directory, '.omc');
142
142
  if (!existsSync(localDir)) {
143
143
  try { mkdirSync(localDir, { recursive: true }); } catch {}
@@ -55,7 +55,7 @@ function writeJsonFile(path, data) {
55
55
 
56
56
  // Read PRD and get status
57
57
  function getPrdStatus(projectDir) {
58
- // Check both root and .sisyphus for prd.json
58
+ // Check both root and .omc for prd.json
59
59
  const paths = [
60
60
  join(projectDir, 'prd.json'),
61
61
  join(projectDir, '.omc', 'prd.json')
@@ -18,10 +18,10 @@ function printTest(testName: string, passed: boolean) {
18
18
  async function runTests() {
19
19
  console.log('\n=== Testing Mutual Exclusion Between UltraQA and Ralph Loop ===\n');
20
20
 
21
- // Create temp directory with .sisyphus subfolder
22
- const tempDir = mkdtempSync(join(tmpdir(), 'sisyphus-test-'));
23
- const sisyphusDir = join(tempDir, '.sisyphus');
24
- mkdirSync(sisyphusDir, { recursive: true });
21
+ // Create temp directory with .omc subfolder
22
+ const tempDir = mkdtempSync(join(tmpdir(), 'omc-test-'));
23
+ const omcDir = join(tempDir, '.omc');
24
+ mkdirSync(omcDir, { recursive: true });
25
25
 
26
26
  console.log(`Using temp directory: ${tempDir}\n`);
27
27
 
@@ -5,8 +5,8 @@ import { spawn } from 'child_process';
5
5
 
6
6
  // Create test directory
7
7
  const testDir = join(tmpdir(), `remember-tag-test-${Date.now()}`);
8
- const sisyphusDir = join(testDir, '.sisyphus');
9
- mkdirSync(sisyphusDir, { recursive: true });
8
+ const omcDir = join(testDir, '.omc');
9
+ mkdirSync(omcDir, { recursive: true });
10
10
 
11
11
  console.log('Testing remember tag processing in post-tool-verifier.mjs\n');
12
12
 
@@ -50,7 +50,7 @@ try {
50
50
 
51
51
  await runHook(input1);
52
52
 
53
- const notepadPath = join(sisyphusDir, 'notepad.md');
53
+ const notepadPath = join(omcDir, 'notepad.md');
54
54
  if (existsSync(notepadPath)) {
55
55
  const content = readFileSync(notepadPath, 'utf-8');
56
56
  if (content.includes('pnpm') && content.includes('Working Memory')) {
@@ -78,7 +78,7 @@ try {
78
78
 
79
79
  await runHook(input2);
80
80
 
81
- const notepadPath = join(sisyphusDir, 'notepad.md');
81
+ const notepadPath = join(omcDir, 'notepad.md');
82
82
  const content = readFileSync(notepadPath, 'utf-8');
83
83
  if (content.includes('API endpoint') && content.includes('Priority Context')) {
84
84
  console.log('✓ PASS: Priority remember tag saved to Priority Context\n');
@@ -95,7 +95,7 @@ console.log('Test 3: Non-Task tool should not process tags');
95
95
  try {
96
96
  // Clean up first
97
97
  rmSync(testDir, { recursive: true });
98
- mkdirSync(sisyphusDir, { recursive: true });
98
+ mkdirSync(omcDir, { recursive: true });
99
99
 
100
100
  const input3 = {
101
101
  toolName: 'Bash',
@@ -106,7 +106,7 @@ try {
106
106
 
107
107
  await runHook(input3);
108
108
 
109
- const notepadPath = join(sisyphusDir, 'notepad.md');
109
+ const notepadPath = join(omcDir, 'notepad.md');
110
110
  if (!existsSync(notepadPath)) {
111
111
  console.log('✓ PASS: Bash tool did not trigger remember tag processing\n');
112
112
  } else {