crewly 1.3.17 → 1.3.18

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.
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-output.utils.d.ts","sourceRoot":"","sources":["../../../../../backend/src/utils/terminal-output.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;;;;;GAUG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,CAAC;AAgB1B;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAqD3D;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGpF;AAED;;;GAGG;AACH,qBAAa,oBAAoB;IAChC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAEjC;;OAEG;gBACS,OAAO,GAAE,MAAW;IAIhC;;;;;OAKG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAclC,+BAA+B;IAC/B,KAAK,IAAI,IAAI;IAIb,uCAAuC;IACvC,IAAI,IAAI,IAAI,MAAM,CAEjB;CACD"}
1
+ {"version":3,"file":"terminal-output.utils.d.ts","sourceRoot":"","sources":["../../../../../backend/src/utils/terminal-output.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;;;;;GAUG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,CAAC;AA0C1B;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA4D3D;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGpF;AAED;;;GAGG;AACH,qBAAa,oBAAoB;IAChC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAEjC;;OAEG;gBACS,OAAO,GAAE,MAAW;IAIhC;;;;;OAKG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAclC,+BAA+B;IAC/B,KAAK,IAAI,IAAI;IAIb,uCAAuC;IACvC,IAAI,IAAI,IAAI,MAAM,CAEjB;CACD"}
@@ -25,10 +25,35 @@ const SPINNER_CHARS = '⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏';
25
25
  const PROGRESS_CHARS = '▀▄▌▐█░▒▓';
26
26
  /** TUI status lines that should be stripped from chat replies */
27
27
  const TUI_STATUS_LINES = [
28
+ // Claude Code TUI
28
29
  'Configure terminal keybindings',
29
30
  'Press Escape to interrupt',
30
31
  'Thinking…',
31
32
  '⏺ ',
33
+ // Gemini CLI TUI
34
+ 'Use ripgrep for faster file',
35
+ 'Type your message or @path/to/file',
36
+ 'esc to cancel',
37
+ 'Press Ctrl+O to show more lines',
38
+ 'of the last response',
39
+ 'press tab twice for more',
40
+ ];
41
+ /**
42
+ * Regex patterns for Gemini CLI TUI artifacts that may appear inline
43
+ * (not as complete lines but embedded within content).
44
+ */
45
+ const TUI_INLINE_PATTERNS = [
46
+ // ORDER MATTERS: parenthesized groups first, then their inner fragments
47
+ // "esc to cancel" captures the whole (...) group including timer and Ctrl+O inside
48
+ /\(esc to cancel[^)]*\)/g,
49
+ // Timer countdowns: "11s)", "12s)", etc. from Gemini CLI status bar
50
+ /\b\d{1,3}s\)\s*/g,
51
+ // Gemini CLI prompt bullets: "• Type your message..."
52
+ /•\s*Type your message[^\n]*/g,
53
+ // "Press Ctrl+O..." fragments inline
54
+ /Press Ctrl\+O[^\n]*/g,
55
+ // "Use ripgrep..." fragments inline
56
+ /Use ripgrep for faster file[^\n]*/g,
32
57
  ];
33
58
  /**
34
59
  * Clean raw PTY/terminal output for sending as a Google Chat reply.
@@ -84,10 +109,17 @@ export function cleanGoogleChatResponse(raw) {
84
109
  if (trimmed.startsWith(status))
85
110
  return false;
86
111
  }
112
+ // Also filter lines that are ONLY TUI artifacts (e.g. just a timer like "11s)")
113
+ if (/^\d{1,3}s\)\s*$/.test(trimmed))
114
+ return false;
87
115
  return true;
88
116
  });
89
117
  cleaned = filteredLines.join('\n');
90
- // Step 6: Collapse excessive blank lines (3+ 2)
118
+ // Step 6: Remove inline TUI artifacts (Gemini CLI status fragments embedded in content)
119
+ for (const pattern of TUI_INLINE_PATTERNS) {
120
+ cleaned = cleaned.replace(pattern, '');
121
+ }
122
+ // Step 7: Collapse excessive blank lines (3+ → 2)
91
123
  cleaned = cleaned.replace(/\n{3,}/g, '\n\n');
92
124
  return cleaned.trim();
93
125
  }
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-output.utils.js","sourceRoot":"","sources":["../../../../../backend/src/utils/terminal-output.utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-output.utils.js","sourceRoot":"","sources":["../../../../../backend/src/utils/terminal-output.utils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-output.utils.d.ts","sourceRoot":"","sources":["../../../../../backend/src/utils/terminal-output.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;;;;;GAUG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,CAAC;AAgB1B;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAqD3D;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGpF;AAED;;;GAGG;AACH,qBAAa,oBAAoB;IAChC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAEjC;;OAEG;gBACS,OAAO,GAAE,MAAW;IAIhC;;;;;OAKG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAclC,+BAA+B;IAC/B,KAAK,IAAI,IAAI;IAIb,uCAAuC;IACvC,IAAI,IAAI,IAAI,MAAM,CAEjB;CACD"}
1
+ {"version":3,"file":"terminal-output.utils.d.ts","sourceRoot":"","sources":["../../../../../backend/src/utils/terminal-output.utils.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;;;;;GAUG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,CAAC;AA0C1B;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA4D3D;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGpF;AAED;;;GAGG;AACH,qBAAa,oBAAoB;IAChC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAEjC;;OAEG;gBACS,OAAO,GAAE,MAAW;IAIhC;;;;;OAKG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAclC,+BAA+B;IAC/B,KAAK,IAAI,IAAI;IAIb,uCAAuC;IACvC,IAAI,IAAI,IAAI,MAAM,CAEjB;CACD"}
@@ -25,10 +25,35 @@ const SPINNER_CHARS = '⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏';
25
25
  const PROGRESS_CHARS = '▀▄▌▐█░▒▓';
26
26
  /** TUI status lines that should be stripped from chat replies */
27
27
  const TUI_STATUS_LINES = [
28
+ // Claude Code TUI
28
29
  'Configure terminal keybindings',
29
30
  'Press Escape to interrupt',
30
31
  'Thinking…',
31
32
  '⏺ ',
33
+ // Gemini CLI TUI
34
+ 'Use ripgrep for faster file',
35
+ 'Type your message or @path/to/file',
36
+ 'esc to cancel',
37
+ 'Press Ctrl+O to show more lines',
38
+ 'of the last response',
39
+ 'press tab twice for more',
40
+ ];
41
+ /**
42
+ * Regex patterns for Gemini CLI TUI artifacts that may appear inline
43
+ * (not as complete lines but embedded within content).
44
+ */
45
+ const TUI_INLINE_PATTERNS = [
46
+ // ORDER MATTERS: parenthesized groups first, then their inner fragments
47
+ // "esc to cancel" captures the whole (...) group including timer and Ctrl+O inside
48
+ /\(esc to cancel[^)]*\)/g,
49
+ // Timer countdowns: "11s)", "12s)", etc. from Gemini CLI status bar
50
+ /\b\d{1,3}s\)\s*/g,
51
+ // Gemini CLI prompt bullets: "• Type your message..."
52
+ /•\s*Type your message[^\n]*/g,
53
+ // "Press Ctrl+O..." fragments inline
54
+ /Press Ctrl\+O[^\n]*/g,
55
+ // "Use ripgrep..." fragments inline
56
+ /Use ripgrep for faster file[^\n]*/g,
32
57
  ];
33
58
  /**
34
59
  * Clean raw PTY/terminal output for sending as a Google Chat reply.
@@ -84,10 +109,17 @@ export function cleanGoogleChatResponse(raw) {
84
109
  if (trimmed.startsWith(status))
85
110
  return false;
86
111
  }
112
+ // Also filter lines that are ONLY TUI artifacts (e.g. just a timer like "11s)")
113
+ if (/^\d{1,3}s\)\s*$/.test(trimmed))
114
+ return false;
87
115
  return true;
88
116
  });
89
117
  cleaned = filteredLines.join('\n');
90
- // Step 6: Collapse excessive blank lines (3+ 2)
118
+ // Step 6: Remove inline TUI artifacts (Gemini CLI status fragments embedded in content)
119
+ for (const pattern of TUI_INLINE_PATTERNS) {
120
+ cleaned = cleaned.replace(pattern, '');
121
+ }
122
+ // Step 7: Collapse excessive blank lines (3+ → 2)
91
123
  cleaned = cleaned.replace(/\n{3,}/g, '\n\n');
92
124
  return cleaned.trim();
93
125
  }
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-output.utils.js","sourceRoot":"","sources":["../../../../../backend/src/utils/terminal-output.utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-output.utils.js","sourceRoot":"","sources":["../../../../../backend/src/utils/terminal-output.utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "crewly",
3
- "version": "1.3.17",
3
+ "version": "1.3.18",
4
4
  "type": "module",
5
5
  "description": "Multi-agent orchestration platform for AI coding teams — coordinates Claude Code, Gemini CLI, and Codex agents with a real-time web dashboard",
6
6
  "main": "dist/cli/cli/src/index.js",