@litmers/cursorflow-orchestrator 0.2.2 → 0.2.5

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 (95) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +8 -11
  3. package/dist/cli/complete.d.ts +7 -0
  4. package/dist/cli/complete.js +304 -0
  5. package/dist/cli/complete.js.map +1 -0
  6. package/dist/cli/index.js +0 -6
  7. package/dist/cli/index.js.map +1 -1
  8. package/dist/cli/logs.js +51 -61
  9. package/dist/cli/logs.js.map +1 -1
  10. package/dist/cli/monitor.js +74 -46
  11. package/dist/cli/monitor.js.map +1 -1
  12. package/dist/cli/resume.js +2 -2
  13. package/dist/cli/resume.js.map +1 -1
  14. package/dist/cli/signal.js +33 -29
  15. package/dist/cli/signal.js.map +1 -1
  16. package/dist/core/auto-recovery.d.ts +2 -117
  17. package/dist/core/auto-recovery.js +4 -487
  18. package/dist/core/auto-recovery.js.map +1 -1
  19. package/dist/core/failure-policy.d.ts +0 -52
  20. package/dist/core/failure-policy.js +7 -174
  21. package/dist/core/failure-policy.js.map +1 -1
  22. package/dist/core/git-lifecycle-manager.js +2 -2
  23. package/dist/core/git-lifecycle-manager.js.map +1 -1
  24. package/dist/core/git-pipeline-coordinator.js +25 -25
  25. package/dist/core/git-pipeline-coordinator.js.map +1 -1
  26. package/dist/core/intervention.d.ts +0 -6
  27. package/dist/core/intervention.js +1 -17
  28. package/dist/core/intervention.js.map +1 -1
  29. package/dist/core/orchestrator.js +18 -10
  30. package/dist/core/orchestrator.js.map +1 -1
  31. package/dist/core/runner/agent.js +18 -15
  32. package/dist/core/runner/agent.js.map +1 -1
  33. package/dist/core/runner/pipeline.js +3 -3
  34. package/dist/core/runner/pipeline.js.map +1 -1
  35. package/dist/core/stall-detection.js +9 -7
  36. package/dist/core/stall-detection.js.map +1 -1
  37. package/dist/hooks/data-accessor.js +2 -2
  38. package/dist/hooks/data-accessor.js.map +1 -1
  39. package/dist/services/logging/buffer.d.ts +1 -2
  40. package/dist/services/logging/buffer.js +22 -63
  41. package/dist/services/logging/buffer.js.map +1 -1
  42. package/dist/services/logging/formatter.d.ts +4 -0
  43. package/dist/services/logging/formatter.js +201 -33
  44. package/dist/services/logging/formatter.js.map +1 -1
  45. package/dist/services/logging/paths.d.ts +0 -3
  46. package/dist/services/logging/paths.js +0 -3
  47. package/dist/services/logging/paths.js.map +1 -1
  48. package/dist/types/config.d.ts +1 -9
  49. package/dist/types/logging.d.ts +1 -1
  50. package/dist/utils/config.js +2 -6
  51. package/dist/utils/config.js.map +1 -1
  52. package/dist/utils/enhanced-logger.d.ts +17 -37
  53. package/dist/utils/enhanced-logger.js +237 -267
  54. package/dist/utils/enhanced-logger.js.map +1 -1
  55. package/dist/utils/logger.js +17 -4
  56. package/dist/utils/logger.js.map +1 -1
  57. package/dist/utils/repro-thinking-logs.js +4 -4
  58. package/dist/utils/repro-thinking-logs.js.map +1 -1
  59. package/package.json +3 -14
  60. package/scripts/monitor-lanes.sh +5 -5
  61. package/scripts/stream-logs.sh +1 -1
  62. package/scripts/test-log-parser.ts +8 -42
  63. package/src/cli/complete.ts +305 -0
  64. package/src/cli/index.ts +0 -6
  65. package/src/cli/logs.ts +46 -60
  66. package/src/cli/monitor.ts +82 -48
  67. package/src/cli/resume.ts +1 -1
  68. package/src/cli/signal.ts +38 -34
  69. package/src/core/auto-recovery.ts +13 -595
  70. package/src/core/failure-policy.ts +7 -228
  71. package/src/core/git-lifecycle-manager.ts +2 -2
  72. package/src/core/git-pipeline-coordinator.ts +25 -25
  73. package/src/core/intervention.ts +0 -18
  74. package/src/core/orchestrator.ts +20 -10
  75. package/src/core/runner/agent.ts +21 -16
  76. package/src/core/runner/pipeline.ts +3 -3
  77. package/src/core/stall-detection.ts +11 -9
  78. package/src/hooks/data-accessor.ts +2 -2
  79. package/src/services/logging/buffer.ts +20 -68
  80. package/src/services/logging/formatter.ts +199 -32
  81. package/src/services/logging/paths.ts +0 -3
  82. package/src/types/config.ts +1 -13
  83. package/src/types/logging.ts +2 -0
  84. package/src/utils/config.ts +2 -6
  85. package/src/utils/enhanced-logger.ts +239 -290
  86. package/src/utils/logger.ts +18 -3
  87. package/src/utils/repro-thinking-logs.ts +4 -4
  88. package/dist/cli/prepare.d.ts +0 -7
  89. package/dist/cli/prepare.js +0 -690
  90. package/dist/cli/prepare.js.map +0 -1
  91. package/dist/utils/log-formatter.d.ts +0 -26
  92. package/dist/utils/log-formatter.js +0 -274
  93. package/dist/utils/log-formatter.js.map +0 -1
  94. package/src/cli/prepare.ts +0 -777
  95. package/src/utils/log-formatter.ts +0 -287
@@ -1 +0,0 @@
1
- {"version":3,"file":"prepare.js","sourceRoot":"","sources":["../../src/cli/prepare.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- /**
2
- * Utility for formatting log messages for console display
3
- *
4
- * Format: [HH:MM:SS] [MAIN] or [SUB:<id>] ICON TYPE content
5
- * (labels are padded to keep alignment consistent)
6
- *
7
- * Rules:
8
- * - Box format only for: user, assistant, system, result
9
- * - Compact format for: tool, tool_result, thinking (gray/dim)
10
- * - Tool names simplified: ShellToolCall → Shell
11
- * - Lane labels fixed 20 chars: [1-1-backend ]
12
- */
13
- import { ParsedMessage } from './enhanced-logger';
14
- /**
15
- * Format a single parsed message into a human-readable string (compact or multi-line)
16
- */
17
- export declare function formatMessageForConsole(msg: ParsedMessage, options?: {
18
- includeTimestamp?: boolean;
19
- laneLabel?: string;
20
- compact?: boolean;
21
- context?: string;
22
- }): string;
23
- /**
24
- * Detect and format a message that might be a raw JSON string from cursor-agent
25
- */
26
- export declare function formatPotentialJsonMessage(message: string): string;
@@ -1,274 +0,0 @@
1
- "use strict";
2
- /**
3
- * Utility for formatting log messages for console display
4
- *
5
- * Format: [HH:MM:SS] [MAIN] or [SUB:<id>] ICON TYPE content
6
- * (labels are padded to keep alignment consistent)
7
- *
8
- * Rules:
9
- * - Box format only for: user, assistant, system, result
10
- * - Compact format for: tool, tool_result, thinking (gray/dim)
11
- * - Tool names simplified: ShellToolCall → Shell
12
- * - Lane labels fixed 20 chars: [1-1-backend ]
13
- */
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.formatMessageForConsole = formatMessageForConsole;
16
- exports.formatPotentialJsonMessage = formatPotentialJsonMessage;
17
- const log_constants_1 = require("./log-constants");
18
- const enhanced_logger_1 = require("./enhanced-logger");
19
- // Types that should use box format
20
- const BOX_TYPES = new Set(['user', 'assistant', 'system', 'result']);
21
- /**
22
- * Simplify tool names (ShellToolCall → Shell, etc.)
23
- */
24
- function simplifyToolName(name) {
25
- // Remove common suffixes
26
- return name
27
- .replace(/ToolCall$/i, '')
28
- .replace(/Tool$/i, '')
29
- .replace(/^run_terminal_cmd$/i, 'shell')
30
- .replace(/^search_replace$/i, 'edit');
31
- }
32
- /**
33
- * Format a single parsed message into a human-readable string (compact or multi-line)
34
- */
35
- function formatMessageForConsole(msg, options = {}) {
36
- const { includeTimestamp = true, laneLabel = '', compact = false, context = '' } = options;
37
- const ts = includeTimestamp ? new Date(msg.timestamp).toLocaleTimeString('en-US', { hour12: false }) : '';
38
- const tsPrefix = ts ? `${log_constants_1.COLORS.gray}[${ts}]${log_constants_1.COLORS.reset} ` : '';
39
- // Handle context (e.g. from logger.info) - keep labels compact
40
- // Format: [1-1-refactor] without fixed width padding
41
- let effectiveLaneLabel = laneLabel || (context ? `[${context.substring(0, 12)}]` : '');
42
- // Compact label with color
43
- const labelPrefix = effectiveLaneLabel ? `${log_constants_1.COLORS.magenta}${effectiveLaneLabel}${log_constants_1.COLORS.reset} ` : '';
44
- let typePrefix = '';
45
- let content = msg.content;
46
- // Determine if we should use box format
47
- // Box format only for: user, assistant, system, result (and only when not compact)
48
- const useBox = !compact && BOX_TYPES.has(msg.type);
49
- // Clean up wrapped prompts for user messages to hide internal instructions
50
- if (msg.type === 'user') {
51
- const contextMarker = '### 🛠 Environment & Context';
52
- const instructionsMarker = '### 📝 Final Instructions';
53
- if (content.includes(contextMarker)) {
54
- const parts = content.split('---\n');
55
- if (parts.length >= 3) {
56
- content = parts[1].trim();
57
- }
58
- else {
59
- content = content.split(contextMarker).pop() || content;
60
- content = content.split(instructionsMarker)[0] || content;
61
- content = content.replace(/^.*---\n/s, '').trim();
62
- }
63
- }
64
- }
65
- // For thinking: collapse multiple newlines into single space
66
- if (msg.type === 'thinking') {
67
- content = content.replace(/\n\s*\n/g, ' ').replace(/\n/g, ' ').trim();
68
- }
69
- switch (msg.type) {
70
- case 'user':
71
- typePrefix = `${log_constants_1.COLORS.cyan}🧑 USER${log_constants_1.COLORS.reset}`;
72
- if (!useBox)
73
- content = content.replace(/\n/g, ' ').substring(0, 100) + (content.length > 100 ? '...' : '');
74
- break;
75
- case 'assistant':
76
- typePrefix = `${log_constants_1.COLORS.green}🤖 ASST${log_constants_1.COLORS.reset}`;
77
- if (!useBox)
78
- content = content.replace(/\n/g, ' ').substring(0, 100) + (content.length > 100 ? '...' : '');
79
- break;
80
- case 'tool':
81
- // Tool calls are always compact and gray
82
- typePrefix = `${log_constants_1.COLORS.gray}🔧 TOOL${log_constants_1.COLORS.reset}`;
83
- const toolMatch = content.match(/\[Tool: ([^\]]+)\] (.*)/);
84
- if (toolMatch) {
85
- const [, rawName, args] = toolMatch;
86
- const name = simplifyToolName(rawName);
87
- try {
88
- const parsedArgs = JSON.parse(args);
89
- let argStr = '';
90
- if (rawName === 'read_file' && parsedArgs.target_file) {
91
- argStr = parsedArgs.target_file;
92
- }
93
- else if (rawName === 'run_terminal_cmd' && parsedArgs.command) {
94
- argStr = parsedArgs.command;
95
- }
96
- else if (rawName === 'write' && parsedArgs.file_path) {
97
- argStr = parsedArgs.file_path;
98
- }
99
- else if (rawName === 'search_replace' && parsedArgs.file_path) {
100
- argStr = parsedArgs.file_path;
101
- }
102
- else {
103
- const keys = Object.keys(parsedArgs);
104
- if (keys.length > 0) {
105
- argStr = String(parsedArgs[keys[0]]).substring(0, 50);
106
- }
107
- }
108
- content = `${log_constants_1.COLORS.gray}${name}${log_constants_1.COLORS.reset}(${log_constants_1.COLORS.gray}${argStr}${log_constants_1.COLORS.reset})`;
109
- }
110
- catch {
111
- content = `${log_constants_1.COLORS.gray}${name}${log_constants_1.COLORS.reset}: ${args}`;
112
- }
113
- }
114
- break;
115
- case 'tool_result':
116
- // Tool results are always compact and gray
117
- typePrefix = `${log_constants_1.COLORS.gray}📄 RESL${log_constants_1.COLORS.reset}`;
118
- const resMatch = content.match(/\[Tool Result: ([^\]]+)\]/);
119
- if (resMatch) {
120
- const simpleName = simplifyToolName(resMatch[1]);
121
- content = `${log_constants_1.COLORS.gray}${simpleName} OK${log_constants_1.COLORS.reset}`;
122
- }
123
- else {
124
- content = `${log_constants_1.COLORS.gray}result${log_constants_1.COLORS.reset}`;
125
- }
126
- break;
127
- case 'result':
128
- case 'success':
129
- typePrefix = `${log_constants_1.COLORS.green}✅ DONE${log_constants_1.COLORS.reset}`;
130
- break;
131
- case 'system':
132
- typePrefix = `${log_constants_1.COLORS.gray}⚙️ SYS${log_constants_1.COLORS.reset}`;
133
- break;
134
- case 'thinking':
135
- // Thinking is always compact and gray
136
- typePrefix = `${log_constants_1.COLORS.gray}🤔 THNK${log_constants_1.COLORS.reset}`;
137
- content = `${log_constants_1.COLORS.gray}${content.substring(0, 100)}${content.length > 100 ? '...' : ''}${log_constants_1.COLORS.reset}`;
138
- break;
139
- case 'info':
140
- typePrefix = `${log_constants_1.COLORS.cyan}ℹ️ INFO${log_constants_1.COLORS.reset}`;
141
- break;
142
- case 'warn':
143
- typePrefix = `${log_constants_1.COLORS.yellow}⚠️ WARN${log_constants_1.COLORS.reset}`;
144
- break;
145
- case 'error':
146
- typePrefix = `${log_constants_1.COLORS.red}❌ ERR${log_constants_1.COLORS.reset}`;
147
- break;
148
- case 'raw':
149
- // Raw type means the content is already fully formatted - return as-is
150
- return content;
151
- }
152
- if (!typePrefix)
153
- return `${tsPrefix}${labelPrefix}${content}`;
154
- // Avoid double prefixes (e.g. INFO INFO)
155
- const plainTypePrefix = (0, enhanced_logger_1.stripAnsi)(typePrefix).replace(/[^\x00-\x7F]/g, '').trim(); // "INFO", "DONE", etc.
156
- const plainContent = (0, enhanced_logger_1.stripAnsi)(content);
157
- if (plainContent.includes(` ${plainTypePrefix} `) || plainContent.startsWith(`${plainTypePrefix} `)) {
158
- // If content already has the prefix, try to strip it from content or just use content as is
159
- // For simplicity, if it's already there, we can just skip adding our typePrefix
160
- // but we still want the colors. This is tricky.
161
- // Usually it's better to just return the content if it looks already formatted.
162
- }
163
- // A better way: if content starts with an emoji that matches our type, skip typePrefix
164
- const emojiMap = {
165
- 'info': 'ℹ️',
166
- 'success': '✅',
167
- 'result': '✅',
168
- 'warn': '⚠️',
169
- 'error': '❌',
170
- 'tool': '🔧',
171
- 'thinking': '🤔',
172
- 'user': '🧑',
173
- 'assistant': '🤖'
174
- };
175
- const targetEmoji = emojiMap[msg.type];
176
- if (targetEmoji && plainContent.trim().startsWith(targetEmoji)) {
177
- return `${tsPrefix}${labelPrefix}${content}`;
178
- }
179
- // Handle separator lines - if content is just a repeat of ━ or ─, extend it
180
- const separatorMatch = content.match(/^([━─=]+)$/);
181
- if (separatorMatch) {
182
- const char = separatorMatch[1][0];
183
- // Use a fixed width for now (80 is a good standard)
184
- // In a real terminal we could use process.stdout.columns
185
- const targetWidth = 80;
186
- content = char.repeat(targetWidth);
187
- }
188
- // Compact format (single line)
189
- if (!useBox) {
190
- return `${tsPrefix}${labelPrefix}${typePrefix.padEnd(12)} ${content}`;
191
- }
192
- // Multi-line box format (only for user, assistant, system, result)
193
- // Emoji width is 2, so we need to account for that in indent calculation
194
- const lines = content.split('\n');
195
- const fullPrefix = `${tsPrefix}${labelPrefix}`;
196
- const strippedPrefix = (0, enhanced_logger_1.stripAnsi)(typePrefix);
197
- // Count emojis (they take 2 terminal columns but 1-2 chars in string)
198
- const emojiCount = (strippedPrefix.match(/[\u{1F300}-\u{1F9FF}]|[\u{2600}-\u{26FF}]|[\u{2700}-\u{27BF}]|[\u{1F600}-\u{1F64F}]|[\u{1F680}-\u{1F6FF}]|[\u{1F1E0}-\u{1F1FF}]|[\u{2300}-\u{23FF}]|[\u{2B50}-\u{2B55}]|[\u{231A}-\u{231B}]|[\u{23E9}-\u{23F3}]|[\u{23F8}-\u{23FA}]|✅|❌|⚙️|ℹ️|⚠️|🔧|📄|🤔|🧑|🤖/gu) || []).length;
199
- const visualWidth = strippedPrefix.length + emojiCount; // emoji adds 1 extra width
200
- const boxWidth = 80;
201
- const header = `${typePrefix}┌${'─'.repeat(boxWidth)}`;
202
- let result = `${fullPrefix}${header}\n`;
203
- const indent = ' '.repeat(visualWidth);
204
- for (const line of lines) {
205
- result += `${fullPrefix}${indent}│ ${line}\n`;
206
- }
207
- result += `${fullPrefix}${indent}└${'─'.repeat(boxWidth)}`;
208
- return result;
209
- }
210
- /**
211
- * Detect and format a message that might be a raw JSON string from cursor-agent
212
- */
213
- function formatPotentialJsonMessage(message) {
214
- const trimmed = message.trim();
215
- if (!trimmed.startsWith('{') || !trimmed.endsWith('}')) {
216
- return message;
217
- }
218
- try {
219
- const json = JSON.parse(trimmed);
220
- if (!json.type)
221
- return message;
222
- // Convert JSON to a ParsedMessage-like structure for formatting
223
- let content;
224
- let type;
225
- if (json.type === 'thinking' && json.text) {
226
- content = json.text;
227
- type = 'thinking';
228
- }
229
- else if (json.type === 'assistant' && json.message?.content) {
230
- content = json.message.content
231
- .filter((c) => c.type === 'text')
232
- .map((c) => c.text)
233
- .join('');
234
- type = 'assistant';
235
- }
236
- else if (json.type === 'user' && json.message?.content) {
237
- content = json.message.content
238
- .filter((c) => c.type === 'text')
239
- .map((c) => c.text)
240
- .join('');
241
- type = 'user';
242
- }
243
- else if (json.type === 'tool_call' && json.subtype === 'started') {
244
- const rawToolName = Object.keys(json.tool_call)[0] || 'unknown';
245
- const args = json.tool_call[rawToolName]?.args || {};
246
- // Tool name will be simplified in formatMessageForConsole
247
- content = `[Tool: ${rawToolName}] ${JSON.stringify(args)}`;
248
- type = 'tool';
249
- }
250
- else if (json.type === 'tool_call' && json.subtype === 'completed') {
251
- const rawToolName = Object.keys(json.tool_call)[0] || 'unknown';
252
- content = `[Tool Result: ${rawToolName}]`;
253
- type = 'tool_result';
254
- }
255
- else if (json.type === 'result') {
256
- content = json.result || 'Task completed';
257
- type = 'result';
258
- }
259
- else {
260
- // Unknown type, return as is
261
- return message;
262
- }
263
- return formatMessageForConsole({
264
- type: type,
265
- role: type,
266
- content,
267
- timestamp: json.timestamp_ms || Date.now()
268
- }, { includeTimestamp: false, compact: true });
269
- }
270
- catch {
271
- return message;
272
- }
273
- }
274
- //# sourceMappingURL=log-formatter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"log-formatter.js","sourceRoot":"","sources":["../../src/utils/log-formatter.ts"],"names":[],"mappings":"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"}