@proletariat/cli 0.3.111 → 0.3.113

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 (70) hide show
  1. package/dist/commands/gateway/connect.d.ts +33 -0
  2. package/dist/commands/gateway/connect.js +130 -0
  3. package/dist/commands/gateway/connect.js.map +1 -0
  4. package/dist/commands/gateway/disconnect.d.ts +21 -0
  5. package/dist/commands/gateway/disconnect.js +69 -0
  6. package/dist/commands/gateway/disconnect.js.map +1 -0
  7. package/dist/commands/gateway/start.d.ts +23 -0
  8. package/dist/commands/gateway/start.js +133 -0
  9. package/dist/commands/gateway/start.js.map +1 -0
  10. package/dist/commands/gateway/status.d.ts +16 -0
  11. package/dist/commands/gateway/status.js +76 -0
  12. package/dist/commands/gateway/status.js.map +1 -0
  13. package/dist/commands/gateway/test.d.ts +22 -0
  14. package/dist/commands/gateway/test.js +83 -0
  15. package/dist/commands/gateway/test.js.map +1 -0
  16. package/dist/commands/orchestrate/index.js +11 -2
  17. package/dist/commands/orchestrate/index.js.map +1 -1
  18. package/dist/commands/pr/merge.js +44 -80
  19. package/dist/commands/pr/merge.js.map +1 -1
  20. package/dist/commands/reconcile.d.ts +29 -0
  21. package/dist/commands/reconcile.js +140 -0
  22. package/dist/commands/reconcile.js.map +1 -0
  23. package/dist/commands/work/ship.js +131 -61
  24. package/dist/commands/work/ship.js.map +1 -1
  25. package/dist/commands/work/start.js +30 -0
  26. package/dist/commands/work/start.js.map +1 -1
  27. package/dist/lib/events/events.d.ts +19 -0
  28. package/dist/lib/execution/prompt-watcher.d.ts +120 -0
  29. package/dist/lib/execution/prompt-watcher.js +222 -0
  30. package/dist/lib/execution/prompt-watcher.js.map +1 -0
  31. package/dist/lib/execution/spawner.js +31 -0
  32. package/dist/lib/execution/spawner.js.map +1 -1
  33. package/dist/lib/gateway/channel-factory.d.ts +13 -0
  34. package/dist/lib/gateway/channel-factory.js +37 -0
  35. package/dist/lib/gateway/channel-factory.js.map +1 -0
  36. package/dist/lib/gateway/channels/telegram.d.ts +115 -0
  37. package/dist/lib/gateway/channels/telegram.js +215 -0
  38. package/dist/lib/gateway/channels/telegram.js.map +1 -0
  39. package/dist/lib/gateway/router.d.ts +84 -0
  40. package/dist/lib/gateway/router.js +140 -0
  41. package/dist/lib/gateway/router.js.map +1 -0
  42. package/dist/lib/gateway/session-poker.d.ts +35 -0
  43. package/dist/lib/gateway/session-poker.js +85 -0
  44. package/dist/lib/gateway/session-poker.js.map +1 -0
  45. package/dist/lib/gateway/types.d.ts +124 -0
  46. package/dist/lib/gateway/types.js +17 -0
  47. package/dist/lib/gateway/types.js.map +1 -0
  48. package/dist/lib/machine-db.d.ts +87 -0
  49. package/dist/lib/machine-db.js +135 -0
  50. package/dist/lib/machine-db.js.map +1 -1
  51. package/dist/lib/orchestrate/index.d.ts +1 -1
  52. package/dist/lib/orchestrate/index.js +1 -1
  53. package/dist/lib/orchestrate/index.js.map +1 -1
  54. package/dist/lib/orchestrate/llm-agent.d.ts +7 -0
  55. package/dist/lib/orchestrate/llm-agent.js +48 -1
  56. package/dist/lib/orchestrate/llm-agent.js.map +1 -1
  57. package/dist/lib/pr/index.d.ts +43 -2
  58. package/dist/lib/pr/index.js +141 -4
  59. package/dist/lib/pr/index.js.map +1 -1
  60. package/dist/lib/reconcile/core.d.ts +62 -0
  61. package/dist/lib/reconcile/core.js +137 -0
  62. package/dist/lib/reconcile/core.js.map +1 -0
  63. package/dist/lib/reconcile/index.d.ts +59 -0
  64. package/dist/lib/reconcile/index.js +499 -0
  65. package/dist/lib/reconcile/index.js.map +1 -0
  66. package/dist/lib/reconcile/types.d.ts +150 -0
  67. package/dist/lib/reconcile/types.js +16 -0
  68. package/dist/lib/reconcile/types.js.map +1 -0
  69. package/oclif.manifest.json +1021 -679
  70. package/package.json +1 -1
@@ -0,0 +1,120 @@
1
+ /**
2
+ * Prompt Watcher — Auto-dismiss third-party plugin onboarding prompts
3
+ *
4
+ * Monitors tmux pane output during the first N seconds after agent spawn
5
+ * to detect and auto-dismiss known interactive prompts (e.g. Vercel plugin
6
+ * telemetry, Claude Code sensitive-file write permission).
7
+ *
8
+ * PRLT-1281: Prevents agents from getting stuck on plugin first-run dialogs.
9
+ */
10
+ /** Policy for what to do when a prompt is matched. */
11
+ export type DismissAction = 'decline' | 'approve_always' | 'approve' | 'escalate';
12
+ /** A known prompt pattern and its auto-dismiss response. */
13
+ export interface PromptPattern {
14
+ /** Human-readable name for logging. */
15
+ name: string;
16
+ /** Required header text that must appear in the pane output. */
17
+ headerMatch: string;
18
+ /** The cursor marker that indicates an interactive menu is active. */
19
+ cursorMarker: string;
20
+ /** What action to take when matched. */
21
+ action: DismissAction;
22
+ /**
23
+ * The option text to select. For numbered menus, this is matched against
24
+ * the menu items to find the correct number key to send.
25
+ */
26
+ preferredOption: string;
27
+ /**
28
+ * Fallback option text if preferredOption is not found in the menu.
29
+ * Used for "Always allow" → fallback to "Yes" scenarios.
30
+ */
31
+ fallbackOption?: string;
32
+ }
33
+ /** Result of a prompt dismissal attempt. */
34
+ export interface DismissResult {
35
+ /** The pattern that matched. */
36
+ pattern: PromptPattern;
37
+ /** The actual text that was matched in the pane output. */
38
+ matchedText: string;
39
+ /** The answer that was sent. */
40
+ selectedAnswer: string;
41
+ /** Whether the dismissal was successful (keystroke sent without error). */
42
+ success: boolean;
43
+ /** Error message if dismissal failed. */
44
+ error?: string;
45
+ }
46
+ /** Result of an escalation (unknown prompt detected). */
47
+ export interface EscalationResult {
48
+ /** The pane content that triggered escalation. */
49
+ paneContent: string;
50
+ /** Why escalation was triggered. */
51
+ reason: string;
52
+ }
53
+ /** Callback for logging auto-dismiss events. */
54
+ export type DismissLogger = (result: DismissResult) => void;
55
+ /** Callback for escalating unknown prompts. */
56
+ export type EscalationHandler = (result: EscalationResult) => void;
57
+ /**
58
+ * Registry of known plugin onboarding prompts.
59
+ * Start narrow (exact strings) and broaden as more prompts are cataloged.
60
+ */
61
+ export declare const KNOWN_PROMPT_PATTERNS: PromptPattern[];
62
+ /**
63
+ * Check if pane output contains a genuine interactive prompt.
64
+ * Requires BOTH the header text AND the cursor marker to be present,
65
+ * preventing false positives from normal numbered lists in output.
66
+ */
67
+ export declare function detectPrompt(paneContent: string): {
68
+ pattern: PromptPattern;
69
+ matchedText: string;
70
+ } | null;
71
+ /**
72
+ * Check if pane output contains an unknown interactive prompt.
73
+ * An unknown prompt has the cursor marker (❯) with a numbered list
74
+ * but does NOT match any known pattern's header text.
75
+ *
76
+ * We look for lines that start with the cursor marker followed by a number,
77
+ * indicating an active numbered menu that we don't recognize.
78
+ */
79
+ export declare function detectUnknownPrompt(paneContent: string): boolean;
80
+ /**
81
+ * Find the menu option number for a given option text.
82
+ * Parses numbered menu items like " 2. No thanks" and returns the number key.
83
+ */
84
+ export declare function findMenuOptionKey(paneContent: string, optionText: string): string | null;
85
+ /**
86
+ * Determine the key to send for a given prompt pattern match.
87
+ * Returns the number key for the preferred (or fallback) option.
88
+ */
89
+ export declare function resolveKeyToSend(paneContent: string, pattern: PromptPattern): {
90
+ key: string;
91
+ optionText: string;
92
+ } | null;
93
+ /**
94
+ * Send a menu selection keystroke to a tmux session.
95
+ * Sends the number key followed by Enter to select the option.
96
+ */
97
+ export declare function sendMenuSelection(sessionId: string, key: string, containerId?: string): void;
98
+ export interface PromptWatcherOptions {
99
+ /** How long to watch for prompts (ms). Default: 60000 (60s). */
100
+ watchDurationMs?: number;
101
+ /** How often to poll pane output (ms). Default: 3000 (3s). */
102
+ pollIntervalMs?: number;
103
+ /** Number of scrollback lines to capture. Default: 50. */
104
+ captureLines?: number;
105
+ /** Container ID for container-based sessions. */
106
+ containerId?: string;
107
+ /** Callback for logging auto-dismiss events. */
108
+ onDismiss?: DismissLogger;
109
+ /** Callback for escalating unknown prompts. */
110
+ onEscalate?: EscalationHandler;
111
+ /** Logging function. */
112
+ log?: (msg: string) => void;
113
+ }
114
+ /**
115
+ * Start watching a tmux session for interactive prompts.
116
+ * Runs in the background (non-blocking) for the configured duration.
117
+ *
118
+ * Returns a cleanup function to stop watching early.
119
+ */
120
+ export declare function startPromptWatcher(sessionId: string, options?: PromptWatcherOptions): () => void;
@@ -0,0 +1,222 @@
1
+ /**
2
+ * Prompt Watcher — Auto-dismiss third-party plugin onboarding prompts
3
+ *
4
+ * Monitors tmux pane output during the first N seconds after agent spawn
5
+ * to detect and auto-dismiss known interactive prompts (e.g. Vercel plugin
6
+ * telemetry, Claude Code sensitive-file write permission).
7
+ *
8
+ * PRLT-1281: Prevents agents from getting stuck on plugin first-run dialogs.
9
+ */
10
+ import { execSync } from 'node:child_process';
11
+ import { captureTmuxPane } from './session-utils.js';
12
+ // =============================================================================
13
+ // Known Prompt Patterns
14
+ // =============================================================================
15
+ /**
16
+ * Registry of known plugin onboarding prompts.
17
+ * Start narrow (exact strings) and broaden as more prompts are cataloged.
18
+ */
19
+ export const KNOWN_PROMPT_PATTERNS = [
20
+ {
21
+ name: 'vercel-plugin-telemetry',
22
+ headerMatch: 'The Vercel plugin collects anonymous usage data',
23
+ cursorMarker: '❯',
24
+ action: 'decline',
25
+ preferredOption: 'No thanks',
26
+ },
27
+ {
28
+ name: 'claude-sensitive-file-permission',
29
+ headerMatch: 'Claude requested permissions to edit',
30
+ cursorMarker: '❯',
31
+ action: 'approve_always',
32
+ preferredOption: 'Yes, and always allow access to .claude/',
33
+ fallbackOption: 'Yes',
34
+ },
35
+ ];
36
+ // =============================================================================
37
+ // Pattern Matching
38
+ // =============================================================================
39
+ /**
40
+ * Check if pane output contains a genuine interactive prompt.
41
+ * Requires BOTH the header text AND the cursor marker to be present,
42
+ * preventing false positives from normal numbered lists in output.
43
+ */
44
+ export function detectPrompt(paneContent) {
45
+ for (const pattern of KNOWN_PROMPT_PATTERNS) {
46
+ if (paneContent.includes(pattern.headerMatch) &&
47
+ paneContent.includes(pattern.cursorMarker)) {
48
+ return { pattern, matchedText: pattern.headerMatch };
49
+ }
50
+ }
51
+ return null;
52
+ }
53
+ /**
54
+ * Check if pane output contains an unknown interactive prompt.
55
+ * An unknown prompt has the cursor marker (❯) with a numbered list
56
+ * but does NOT match any known pattern's header text.
57
+ *
58
+ * We look for lines that start with the cursor marker followed by a number,
59
+ * indicating an active numbered menu that we don't recognize.
60
+ */
61
+ export function detectUnknownPrompt(paneContent) {
62
+ // Must have the interactive cursor marker
63
+ if (!paneContent.includes('❯'))
64
+ return false;
65
+ // Must have numbered menu items (e.g. "❯ 1." or " 2.")
66
+ const hasNumberedMenu = /❯\s+\d+\./m.test(paneContent) && /\s+\d+\.\s+\S/m.test(paneContent);
67
+ if (!hasNumberedMenu)
68
+ return false;
69
+ // Must NOT match any known pattern (those are handled by detectPrompt)
70
+ const knownMatch = detectPrompt(paneContent);
71
+ if (knownMatch)
72
+ return false;
73
+ return true;
74
+ }
75
+ /**
76
+ * Find the menu option number for a given option text.
77
+ * Parses numbered menu items like " 2. No thanks" and returns the number key.
78
+ */
79
+ export function findMenuOptionKey(paneContent, optionText) {
80
+ // Match lines like "❯ 1. Share prompts" or " 2. No thanks"
81
+ const menuLineRegex = /[❯\s]+(\d+)\.\s+(.+)/g;
82
+ let match;
83
+ while ((match = menuLineRegex.exec(paneContent)) !== null) {
84
+ const [, number, text] = match;
85
+ if (text.trim().toLowerCase().startsWith(optionText.toLowerCase())) {
86
+ return number;
87
+ }
88
+ }
89
+ return null;
90
+ }
91
+ /**
92
+ * Determine the key to send for a given prompt pattern match.
93
+ * Returns the number key for the preferred (or fallback) option.
94
+ */
95
+ export function resolveKeyToSend(paneContent, pattern) {
96
+ // Try preferred option first
97
+ const preferredKey = findMenuOptionKey(paneContent, pattern.preferredOption);
98
+ if (preferredKey) {
99
+ return { key: preferredKey, optionText: pattern.preferredOption };
100
+ }
101
+ // Try fallback option
102
+ if (pattern.fallbackOption) {
103
+ const fallbackKey = findMenuOptionKey(paneContent, pattern.fallbackOption);
104
+ if (fallbackKey) {
105
+ return { key: fallbackKey, optionText: pattern.fallbackOption };
106
+ }
107
+ }
108
+ return null;
109
+ }
110
+ // =============================================================================
111
+ // Keystroke Sending
112
+ // =============================================================================
113
+ /**
114
+ * Send a menu selection keystroke to a tmux session.
115
+ * Sends the number key followed by Enter to select the option.
116
+ */
117
+ export function sendMenuSelection(sessionId, key, containerId) {
118
+ const sendKeyCmd = `tmux send-keys -t "${sessionId}" "${key}"`;
119
+ const sendEnterCmd = `tmux send-keys -t "${sessionId}" Enter`;
120
+ if (containerId) {
121
+ execSync(`docker exec ${containerId} bash -c '${sendKeyCmd}'`, { encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'], timeout: 10000 });
122
+ execSync('sleep 0.2', { stdio: ['pipe', 'pipe', 'pipe'] });
123
+ execSync(`docker exec ${containerId} bash -c '${sendEnterCmd}'`, { encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'], timeout: 10000 });
124
+ }
125
+ else {
126
+ execSync(sendKeyCmd, {
127
+ encoding: 'utf-8',
128
+ stdio: ['pipe', 'pipe', 'pipe'],
129
+ timeout: 5000,
130
+ });
131
+ execSync('sleep 0.2', { stdio: ['pipe', 'pipe', 'pipe'] });
132
+ execSync(sendEnterCmd, {
133
+ encoding: 'utf-8',
134
+ stdio: ['pipe', 'pipe', 'pipe'],
135
+ timeout: 5000,
136
+ });
137
+ }
138
+ }
139
+ /**
140
+ * Start watching a tmux session for interactive prompts.
141
+ * Runs in the background (non-blocking) for the configured duration.
142
+ *
143
+ * Returns a cleanup function to stop watching early.
144
+ */
145
+ export function startPromptWatcher(sessionId, options = {}) {
146
+ const { watchDurationMs = 60_000, pollIntervalMs = 3_000, captureLines = 50, containerId, onDismiss, onEscalate, log = () => { }, } = options;
147
+ let stopped = false;
148
+ // Track patterns already handled to avoid re-sending keystrokes
149
+ const dismissedPatterns = new Set();
150
+ let escalated = false;
151
+ const poll = () => {
152
+ if (stopped)
153
+ return;
154
+ try {
155
+ const paneContent = captureTmuxPane(sessionId, captureLines, containerId);
156
+ if (!paneContent)
157
+ return;
158
+ // Check for known prompts first
159
+ const detection = detectPrompt(paneContent);
160
+ if (detection && !dismissedPatterns.has(detection.pattern.name)) {
161
+ const { pattern, matchedText } = detection;
162
+ // Resolve which key to send
163
+ const resolution = resolveKeyToSend(paneContent, pattern);
164
+ if (resolution) {
165
+ log(`[prompt-watcher] Auto-dismissing "${pattern.name}" with option "${resolution.optionText}"`);
166
+ try {
167
+ sendMenuSelection(sessionId, resolution.key, containerId);
168
+ dismissedPatterns.add(pattern.name);
169
+ const result = {
170
+ pattern,
171
+ matchedText,
172
+ selectedAnswer: resolution.optionText,
173
+ success: true,
174
+ };
175
+ onDismiss?.(result);
176
+ }
177
+ catch (error) {
178
+ const result = {
179
+ pattern,
180
+ matchedText,
181
+ selectedAnswer: resolution.optionText,
182
+ success: false,
183
+ error: error instanceof Error ? error.message : String(error),
184
+ };
185
+ onDismiss?.(result);
186
+ log(`[prompt-watcher] Failed to dismiss "${pattern.name}": ${result.error}`);
187
+ }
188
+ }
189
+ return; // Don't check for unknown prompts in the same poll cycle
190
+ }
191
+ // Check for unknown prompts (escalate, don't auto-answer)
192
+ if (!escalated && detectUnknownPrompt(paneContent)) {
193
+ escalated = true;
194
+ log('[prompt-watcher] Unknown interactive prompt detected — escalating');
195
+ onEscalate?.({
196
+ paneContent,
197
+ reason: 'Unknown interactive prompt with numbered menu detected during startup window',
198
+ });
199
+ }
200
+ }
201
+ catch {
202
+ // Polling errors are non-fatal — session may have ended
203
+ }
204
+ };
205
+ // Start polling
206
+ const intervalId = setInterval(poll, pollIntervalMs);
207
+ // Run first check immediately
208
+ poll();
209
+ // Auto-stop after watch duration
210
+ const timeoutId = setTimeout(() => {
211
+ stopped = true;
212
+ clearInterval(intervalId);
213
+ log(`[prompt-watcher] Watch period ended for session "${sessionId}"`);
214
+ }, watchDurationMs);
215
+ // Return cleanup function
216
+ return () => {
217
+ stopped = true;
218
+ clearInterval(intervalId);
219
+ clearTimeout(timeoutId);
220
+ };
221
+ }
222
+ //# sourceMappingURL=prompt-watcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-watcher.js","sourceRoot":"","sources":["../../../src/lib/execution/prompt-watcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AA2DpD,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAoB;IACpD;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EAAE,iDAAiD;QAC9D,YAAY,EAAE,GAAG;QACjB,MAAM,EAAE,SAAS;QACjB,eAAe,EAAE,WAAW;KAC7B;IACD;QACE,IAAI,EAAE,kCAAkC;QACxC,WAAW,EAAE,sCAAsC;QACnD,YAAY,EAAE,GAAG;QACjB,MAAM,EAAE,gBAAgB;QACxB,eAAe,EAAE,0CAA0C;QAC3D,cAAc,EAAE,KAAK;KACtB;CACF,CAAA;AAED,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,WAAmB;IAC9C,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;QAC5C,IACE,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC;YACzC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,EAC1C,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAA;QACtD,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,WAAmB;IACrD,0CAA0C;IAC1C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAA;IAE5C,wDAAwD;IACxD,MAAM,eAAe,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC5F,IAAI,CAAC,eAAe;QAAE,OAAO,KAAK,CAAA;IAElC,uEAAuE;IACvE,MAAM,UAAU,GAAG,YAAY,CAAC,WAAW,CAAC,CAAA;IAC5C,IAAI,UAAU;QAAE,OAAO,KAAK,CAAA;IAE5B,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,WAAmB,EAAE,UAAkB;IACvE,4DAA4D;IAC5D,MAAM,aAAa,GAAG,uBAAuB,CAAA;IAC7C,IAAI,KAAK,CAAA;IACT,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC1D,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,KAAK,CAAA;QAC9B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YACnE,OAAO,MAAM,CAAA;QACf,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,WAAmB,EAAE,OAAsB;IAC1E,6BAA6B;IAC7B,MAAM,YAAY,GAAG,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAC5E,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,CAAC,eAAe,EAAE,CAAA;IACnE,CAAC;IAED,sBAAsB;IACtB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC3B,MAAM,WAAW,GAAG,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;QAC1E,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,cAAc,EAAE,CAAA;QACjE,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,gFAAgF;AAChF,oBAAoB;AACpB,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,SAAiB,EAAE,GAAW,EAAE,WAAoB;IACpF,MAAM,UAAU,GAAG,sBAAsB,SAAS,MAAM,GAAG,GAAG,CAAA;IAC9D,MAAM,YAAY,GAAG,sBAAsB,SAAS,SAAS,CAAA;IAE7D,IAAI,WAAW,EAAE,CAAC;QAChB,QAAQ,CACN,eAAe,WAAW,aAAa,UAAU,GAAG,EACpD,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CACvE,CAAA;QACD,QAAQ,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;QAC1D,QAAQ,CACN,eAAe,WAAW,aAAa,YAAY,GAAG,EACtD,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CACvE,CAAA;IACH,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,UAAU,EAAE;YACnB,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC/B,OAAO,EAAE,IAAI;SACd,CAAC,CAAA;QACF,QAAQ,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;QAC1D,QAAQ,CAAC,YAAY,EAAE;YACrB,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC/B,OAAO,EAAE,IAAI;SACd,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAuBD;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAAiB,EACjB,UAAgC,EAAE;IAElC,MAAM,EACJ,eAAe,GAAG,MAAM,EACxB,cAAc,GAAG,KAAK,EACtB,YAAY,GAAG,EAAE,EACjB,WAAW,EACX,SAAS,EACT,UAAU,EACV,GAAG,GAAG,GAAG,EAAE,GAAE,CAAC,GACf,GAAG,OAAO,CAAA;IAEX,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,gEAAgE;IAChE,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAA;IAC3C,IAAI,SAAS,GAAG,KAAK,CAAA;IAErB,MAAM,IAAI,GAAG,GAAS,EAAE;QACtB,IAAI,OAAO;YAAE,OAAM;QAEnB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,eAAe,CAAC,SAAS,EAAE,YAAY,EAAE,WAAW,CAAC,CAAA;YACzE,IAAI,CAAC,WAAW;gBAAE,OAAM;YAExB,gCAAgC;YAChC,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,CAAA;YAC3C,IAAI,SAAS,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,SAAS,CAAA;gBAE1C,4BAA4B;gBAC5B,MAAM,UAAU,GAAG,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;gBACzD,IAAI,UAAU,EAAE,CAAC;oBACf,GAAG,CAAC,qCAAqC,OAAO,CAAC,IAAI,kBAAkB,UAAU,CAAC,UAAU,GAAG,CAAC,CAAA;oBAEhG,IAAI,CAAC;wBACH,iBAAiB,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,EAAE,WAAW,CAAC,CAAA;wBACzD,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;wBAEnC,MAAM,MAAM,GAAkB;4BAC5B,OAAO;4BACP,WAAW;4BACX,cAAc,EAAE,UAAU,CAAC,UAAU;4BACrC,OAAO,EAAE,IAAI;yBACd,CAAA;wBACD,SAAS,EAAE,CAAC,MAAM,CAAC,CAAA;oBACrB,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,MAAM,MAAM,GAAkB;4BAC5B,OAAO;4BACP,WAAW;4BACX,cAAc,EAAE,UAAU,CAAC,UAAU;4BACrC,OAAO,EAAE,KAAK;4BACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;yBAC9D,CAAA;wBACD,SAAS,EAAE,CAAC,MAAM,CAAC,CAAA;wBACnB,GAAG,CAAC,uCAAuC,OAAO,CAAC,IAAI,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;oBAC9E,CAAC;gBACH,CAAC;gBAED,OAAM,CAAC,yDAAyD;YAClE,CAAC;YAED,0DAA0D;YAC1D,IAAI,CAAC,SAAS,IAAI,mBAAmB,CAAC,WAAW,CAAC,EAAE,CAAC;gBACnD,SAAS,GAAG,IAAI,CAAA;gBAChB,GAAG,CAAC,mEAAmE,CAAC,CAAA;gBACxE,UAAU,EAAE,CAAC;oBACX,WAAW;oBACX,MAAM,EAAE,8EAA8E;iBACvF,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,wDAAwD;QAC1D,CAAC;IACH,CAAC,CAAA;IAED,gBAAgB;IAChB,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;IAEpD,8BAA8B;IAC9B,IAAI,EAAE,CAAA;IAEN,iCAAiC;IACjC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;QAChC,OAAO,GAAG,IAAI,CAAA;QACd,aAAa,CAAC,UAAU,CAAC,CAAA;QACzB,GAAG,CAAC,oDAAoD,SAAS,GAAG,CAAC,CAAA;IACvE,CAAC,EAAE,eAAe,CAAC,CAAA;IAEnB,0BAA0B;IAC1B,OAAO,GAAG,EAAE;QACV,OAAO,GAAG,IAAI,CAAA;QACd,aAAa,CAAC,UAAU,CAAC,CAAA;QACzB,YAAY,CAAC,SAAS,CAAC,CAAA;IACzB,CAAC,CAAA;AACH,CAAC"}
@@ -22,6 +22,8 @@ import { ExternalExecutionMappingStore } from '../external-issues/mapping-store.
22
22
  import { TicketRefStore } from './ticket-refs.js';
23
23
  import { resolveTicketProvider } from '../providers/resolver.js';
24
24
  import { copyMediaToAgentWorkspace } from '../media/index.js';
25
+ import { startPromptWatcher } from './prompt-watcher.js';
26
+ import { getEventBus } from '../events/event-bus.js';
25
27
  import { generateBranchName, DEFAULT_EXECUTION_CONFIG, normalizeEnvironment, } from './types.js';
26
28
  // =============================================================================
27
29
  // Git Utilities
@@ -592,6 +594,35 @@ export async function spawnAgentForTicket(ticket, agentName, storage, executionS
592
594
  lastSpawnedAt: new Date(),
593
595
  });
594
596
  }
597
+ // PRLT-1281: Start prompt watcher to auto-dismiss plugin onboarding prompts.
598
+ // Watches pane output for the first 60s after spawn and auto-answers known
599
+ // interactive prompts (e.g. Vercel telemetry, ~/.claude/ permission dialogs).
600
+ if (result.sessionId) {
601
+ const eventBus = getEventBus();
602
+ startPromptWatcher(result.sessionId, {
603
+ containerId: result.containerId,
604
+ log,
605
+ onDismiss: (dismissResult) => {
606
+ eventBus.emit('prompt:auto_dismissed', {
607
+ sessionId: result.sessionId,
608
+ patternName: dismissResult.pattern.name,
609
+ matchedText: dismissResult.matchedText,
610
+ selectedAnswer: dismissResult.selectedAnswer,
611
+ success: dismissResult.success,
612
+ error: dismissResult.error,
613
+ timestamp: new Date(),
614
+ });
615
+ },
616
+ onEscalate: (escalation) => {
617
+ eventBus.emit('prompt:escalated', {
618
+ sessionId: result.sessionId,
619
+ paneContent: escalation.paneContent,
620
+ reason: escalation.reason,
621
+ timestamp: new Date(),
622
+ });
623
+ },
624
+ });
625
+ }
595
626
  return {
596
627
  success: true,
597
628
  executionId: execution.id,
@@ -1 +1 @@
1
- {"version":3,"file":"spawner.js","sourceRoot":"","sources":["../../../src/lib/execution/spawner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spawner.js","sourceRoot":"","sources":["../../../src/lib/execution/spawner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Channel factory (PRLT-1255)
3
+ *
4
+ * Single place that knows how to decode a persisted MessagingChannelRecord
5
+ * into a live MessagingChannel instance. Commands and the gateway daemon
6
+ * call this so they never import individual adapters directly.
7
+ *
8
+ * To add Slack/Discord/WhatsApp later: import the new adapter and add a
9
+ * case to `buildChannelFromRecord`. No other file needs to change.
10
+ */
11
+ import type { MessagingChannelRecord } from '../machine-db.js';
12
+ import type { MessagingChannel } from './types.js';
13
+ export declare function buildChannelFromRecord(record: MessagingChannelRecord): MessagingChannel;
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Channel factory (PRLT-1255)
3
+ *
4
+ * Single place that knows how to decode a persisted MessagingChannelRecord
5
+ * into a live MessagingChannel instance. Commands and the gateway daemon
6
+ * call this so they never import individual adapters directly.
7
+ *
8
+ * To add Slack/Discord/WhatsApp later: import the new adapter and add a
9
+ * case to `buildChannelFromRecord`. No other file needs to change.
10
+ */
11
+ import { TelegramChannel } from './channels/telegram.js';
12
+ export function buildChannelFromRecord(record) {
13
+ switch (record.type) {
14
+ case 'telegram': {
15
+ const config = parseConfig(record.configJson, record.name);
16
+ if (!config.token) {
17
+ throw new Error(`Channel "${record.name}" has no Telegram token configured`);
18
+ }
19
+ if (!Array.isArray(config.allowlist)) {
20
+ throw new TypeError(`Channel "${record.name}" has a malformed allowlist`);
21
+ }
22
+ return new TelegramChannel({ config });
23
+ }
24
+ default:
25
+ throw new Error(`Unknown channel type "${record.type}" for "${record.name}"`);
26
+ }
27
+ }
28
+ function parseConfig(json, channelName) {
29
+ try {
30
+ return JSON.parse(json);
31
+ }
32
+ catch (err) {
33
+ const msg = err instanceof Error ? err.message : String(err);
34
+ throw new Error(`Channel "${channelName}" has invalid config JSON: ${msg}`);
35
+ }
36
+ }
37
+ //# sourceMappingURL=channel-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel-factory.js","sourceRoot":"","sources":["../../../src/lib/gateway/channel-factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAExD,MAAM,UAAU,sBAAsB,CAAC,MAA8B;IACnE,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,MAAM,GAAG,WAAW,CAAwB,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;YACjF,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,YAAY,MAAM,CAAC,IAAI,oCAAoC,CAAC,CAAA;YAC9E,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;gBACrC,MAAM,IAAI,SAAS,CAAC,YAAY,MAAM,CAAC,IAAI,6BAA6B,CAAC,CAAA;YAC3E,CAAC;YACD,OAAO,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;QACxC,CAAC;QACD;YACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,MAAM,CAAC,IAAI,UAAU,MAAM,CAAC,IAAI,GAAG,CAAC,CAAA;IACjF,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAI,IAAY,EAAE,WAAmB;IACvD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAA;IAC9B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAC5D,MAAM,IAAI,KAAK,CAAC,YAAY,WAAW,8BAA8B,GAAG,EAAE,CAAC,CAAA;IAC7E,CAAC;AACH,CAAC"}