mstro-app 0.4.38 → 0.4.43

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 (198) hide show
  1. package/bin/commands/login.js +17 -7
  2. package/bin/commands/logout.js +14 -6
  3. package/bin/commands/status.js +9 -3
  4. package/bin/commands/whoami.js +10 -4
  5. package/bin/mstro.js +11 -1
  6. package/dist/server/cli/headless/claude-invoker-stream.d.ts.map +1 -1
  7. package/dist/server/cli/headless/claude-invoker-stream.js +1 -0
  8. package/dist/server/cli/headless/claude-invoker-stream.js.map +1 -1
  9. package/dist/server/cli/headless/index.d.ts +1 -0
  10. package/dist/server/cli/headless/index.d.ts.map +1 -1
  11. package/dist/server/cli/headless/index.js +2 -0
  12. package/dist/server/cli/headless/index.js.map +1 -1
  13. package/dist/server/cli/headless/resilient-runner.d.ts +47 -0
  14. package/dist/server/cli/headless/resilient-runner.d.ts.map +1 -0
  15. package/dist/server/cli/headless/resilient-runner.js +234 -0
  16. package/dist/server/cli/headless/resilient-runner.js.map +1 -0
  17. package/dist/server/cli/headless/retry-strategies.d.ts +44 -0
  18. package/dist/server/cli/headless/retry-strategies.d.ts.map +1 -0
  19. package/dist/server/cli/headless/retry-strategies.js +262 -0
  20. package/dist/server/cli/headless/retry-strategies.js.map +1 -0
  21. package/dist/server/cli/headless/stall-assessor.d.ts.map +1 -1
  22. package/dist/server/cli/headless/stall-assessor.js +5 -0
  23. package/dist/server/cli/headless/stall-assessor.js.map +1 -1
  24. package/dist/server/cli/headless/tool-watchdog.d.ts +2 -0
  25. package/dist/server/cli/headless/tool-watchdog.d.ts.map +1 -1
  26. package/dist/server/cli/headless/tool-watchdog.js +31 -4
  27. package/dist/server/cli/headless/tool-watchdog.js.map +1 -1
  28. package/dist/server/cli/improvisation-retry.d.ts.map +1 -1
  29. package/dist/server/cli/improvisation-retry.js +1 -30
  30. package/dist/server/cli/improvisation-retry.js.map +1 -1
  31. package/dist/server/cli/improvisation-session-manager.d.ts +1 -0
  32. package/dist/server/cli/improvisation-session-manager.d.ts.map +1 -1
  33. package/dist/server/cli/improvisation-session-manager.js +16 -3
  34. package/dist/server/cli/improvisation-session-manager.js.map +1 -1
  35. package/dist/server/cli/prompt-builders.d.ts.map +1 -1
  36. package/dist/server/cli/prompt-builders.js +31 -13
  37. package/dist/server/cli/prompt-builders.js.map +1 -1
  38. package/dist/server/index.js +1 -9
  39. package/dist/server/index.js.map +1 -1
  40. package/dist/server/mcp/bouncer-cli.js +5 -4
  41. package/dist/server/mcp/bouncer-cli.js.map +1 -1
  42. package/dist/server/mcp/bouncer-haiku.js +1 -1
  43. package/dist/server/mcp/bouncer-haiku.js.map +1 -1
  44. package/dist/server/mcp/bouncer-integration.d.ts.map +1 -1
  45. package/dist/server/mcp/bouncer-integration.js +14 -8
  46. package/dist/server/mcp/bouncer-integration.js.map +1 -1
  47. package/dist/server/mcp/security-patterns.js +1 -1
  48. package/dist/server/mcp/security-patterns.js.map +1 -1
  49. package/dist/server/services/plan/composer.d.ts.map +1 -1
  50. package/dist/server/services/plan/composer.js +19 -9
  51. package/dist/server/services/plan/composer.js.map +1 -1
  52. package/dist/server/services/plan/executor.d.ts +6 -1
  53. package/dist/server/services/plan/executor.d.ts.map +1 -1
  54. package/dist/server/services/plan/executor.js +158 -76
  55. package/dist/server/services/plan/executor.js.map +1 -1
  56. package/dist/server/services/plan/front-matter.d.ts +1 -0
  57. package/dist/server/services/plan/front-matter.d.ts.map +1 -1
  58. package/dist/server/services/plan/front-matter.js +6 -0
  59. package/dist/server/services/plan/front-matter.js.map +1 -1
  60. package/dist/server/services/plan/issue-classification.d.ts +11 -0
  61. package/dist/server/services/plan/issue-classification.d.ts.map +1 -0
  62. package/dist/server/services/plan/issue-classification.js +20 -0
  63. package/dist/server/services/plan/issue-classification.js.map +1 -0
  64. package/dist/server/services/plan/issue-prompt-builder.d.ts.map +1 -1
  65. package/dist/server/services/plan/issue-prompt-builder.js +10 -5
  66. package/dist/server/services/plan/issue-prompt-builder.js.map +1 -1
  67. package/dist/server/services/plan/issue-retry.d.ts +0 -5
  68. package/dist/server/services/plan/issue-retry.d.ts.map +1 -1
  69. package/dist/server/services/plan/issue-retry.js +12 -241
  70. package/dist/server/services/plan/issue-retry.js.map +1 -1
  71. package/dist/server/services/plan/parser-core.d.ts.map +1 -1
  72. package/dist/server/services/plan/parser-core.js +1 -0
  73. package/dist/server/services/plan/parser-core.js.map +1 -1
  74. package/dist/server/services/plan/review-gate.d.ts.map +1 -1
  75. package/dist/server/services/plan/review-gate.js +9 -6
  76. package/dist/server/services/plan/review-gate.js.map +1 -1
  77. package/dist/server/services/plan/types.d.ts +1 -0
  78. package/dist/server/services/plan/types.d.ts.map +1 -1
  79. package/dist/server/services/platform-credentials.d.ts.map +1 -1
  80. package/dist/server/services/platform-credentials.js +11 -4
  81. package/dist/server/services/platform-credentials.js.map +1 -1
  82. package/dist/server/services/terminal/pty-manager.d.ts.map +1 -1
  83. package/dist/server/services/terminal/pty-manager.js +7 -1
  84. package/dist/server/services/terminal/pty-manager.js.map +1 -1
  85. package/dist/server/services/websocket/handler-context.d.ts +2 -0
  86. package/dist/server/services/websocket/handler-context.d.ts.map +1 -1
  87. package/dist/server/services/websocket/handler.d.ts +2 -0
  88. package/dist/server/services/websocket/handler.d.ts.map +1 -1
  89. package/dist/server/services/websocket/handler.js +18 -7
  90. package/dist/server/services/websocket/handler.js.map +1 -1
  91. package/dist/server/services/websocket/plan-execution-handlers.js +6 -6
  92. package/dist/server/services/websocket/plan-execution-handlers.js.map +1 -1
  93. package/dist/server/services/websocket/quality-fix-agent.d.ts.map +1 -1
  94. package/dist/server/services/websocket/quality-fix-agent.js +90 -42
  95. package/dist/server/services/websocket/quality-fix-agent.js.map +1 -1
  96. package/dist/server/services/websocket/quality-handlers.d.ts.map +1 -1
  97. package/dist/server/services/websocket/quality-handlers.js +48 -7
  98. package/dist/server/services/websocket/quality-handlers.js.map +1 -1
  99. package/dist/server/services/websocket/quality-persistence.d.ts +22 -0
  100. package/dist/server/services/websocket/quality-persistence.d.ts.map +1 -1
  101. package/dist/server/services/websocket/quality-persistence.js +48 -1
  102. package/dist/server/services/websocket/quality-persistence.js.map +1 -1
  103. package/dist/server/services/websocket/quality-review-agent.d.ts.map +1 -1
  104. package/dist/server/services/websocket/quality-review-agent.js +74 -32
  105. package/dist/server/services/websocket/quality-review-agent.js.map +1 -1
  106. package/dist/server/services/websocket/quality-tools.d.ts.map +1 -1
  107. package/dist/server/services/websocket/quality-tools.js +18 -18
  108. package/dist/server/services/websocket/quality-tools.js.map +1 -1
  109. package/dist/server/services/websocket/skill-handlers.d.ts +3 -1
  110. package/dist/server/services/websocket/skill-handlers.d.ts.map +1 -1
  111. package/dist/server/services/websocket/skill-handlers.js +52 -41
  112. package/dist/server/services/websocket/skill-handlers.js.map +1 -1
  113. package/dist/server/services/websocket/skill-watcher.d.ts +17 -0
  114. package/dist/server/services/websocket/skill-watcher.d.ts.map +1 -0
  115. package/dist/server/services/websocket/skill-watcher.js +85 -0
  116. package/dist/server/services/websocket/skill-watcher.js.map +1 -0
  117. package/dist/server/services/websocket/types.d.ts +2 -268
  118. package/dist/server/services/websocket/types.d.ts.map +1 -1
  119. package/dist/server/services/websocket/types.js +0 -4
  120. package/dist/server/services/websocket/types.js.map +1 -1
  121. package/package.json +1 -1
  122. package/server/cli/headless/claude-invoker-stream.ts +1 -0
  123. package/server/cli/headless/index.ts +2 -0
  124. package/server/cli/headless/resilient-runner.ts +354 -0
  125. package/server/cli/headless/retry-strategies.ts +330 -0
  126. package/server/cli/headless/stall-assessor.ts +5 -0
  127. package/server/cli/headless/tool-watchdog.ts +40 -4
  128. package/server/cli/improvisation-retry.ts +1 -32
  129. package/server/cli/improvisation-session-manager.ts +17 -3
  130. package/server/cli/prompt-builders.ts +33 -12
  131. package/server/index.ts +1 -9
  132. package/server/mcp/bouncer-cli.ts +5 -4
  133. package/server/mcp/bouncer-haiku.ts +1 -1
  134. package/server/mcp/bouncer-integration.ts +15 -8
  135. package/server/mcp/security-patterns.ts +1 -1
  136. package/server/services/plan/agents/code-review.md +109 -0
  137. package/server/services/plan/agents/commit-message.md +26 -0
  138. package/server/services/plan/agents/execute-issue.md +10 -1
  139. package/server/services/plan/agents/fix-quality.md +24 -0
  140. package/server/services/plan/agents/pr-description.md +28 -0
  141. package/server/services/plan/composer.ts +20 -9
  142. package/server/services/plan/executor.ts +160 -76
  143. package/server/services/plan/front-matter.ts +7 -0
  144. package/server/services/plan/issue-classification.ts +21 -0
  145. package/server/services/plan/issue-prompt-builder.ts +11 -5
  146. package/server/services/plan/issue-retry.ts +15 -330
  147. package/server/services/plan/parser-core.ts +1 -0
  148. package/server/services/plan/review-gate.ts +9 -6
  149. package/server/services/plan/types.ts +3 -0
  150. package/server/services/platform-credentials.ts +10 -4
  151. package/server/services/terminal/pty-manager.ts +7 -1
  152. package/server/services/websocket/handler-context.ts +2 -0
  153. package/server/services/websocket/handler.ts +18 -8
  154. package/server/services/websocket/plan-execution-handlers.ts +7 -7
  155. package/server/services/websocket/quality-fix-agent.ts +86 -44
  156. package/server/services/websocket/quality-handlers.ts +48 -7
  157. package/server/services/websocket/quality-persistence.ts +75 -1
  158. package/server/services/websocket/quality-review-agent.ts +70 -31
  159. package/server/services/websocket/quality-tools.ts +16 -14
  160. package/server/services/websocket/skill-handlers.ts +50 -40
  161. package/server/services/websocket/skill-watcher.ts +79 -0
  162. package/server/services/websocket/types.ts +0 -311
  163. package/dist/server/services/deploy/ai-broker.d.ts +0 -63
  164. package/dist/server/services/deploy/ai-broker.d.ts.map +0 -1
  165. package/dist/server/services/deploy/ai-broker.js +0 -360
  166. package/dist/server/services/deploy/ai-broker.js.map +0 -1
  167. package/dist/server/services/deploy/board-execution-handler.d.ts +0 -114
  168. package/dist/server/services/deploy/board-execution-handler.d.ts.map +0 -1
  169. package/dist/server/services/deploy/board-execution-handler.js +0 -621
  170. package/dist/server/services/deploy/board-execution-handler.js.map +0 -1
  171. package/dist/server/services/deploy/credentials.d.ts +0 -35
  172. package/dist/server/services/deploy/credentials.d.ts.map +0 -1
  173. package/dist/server/services/deploy/credentials.js +0 -177
  174. package/dist/server/services/deploy/credentials.js.map +0 -1
  175. package/dist/server/services/deploy/deploy-ai-service.d.ts +0 -107
  176. package/dist/server/services/deploy/deploy-ai-service.d.ts.map +0 -1
  177. package/dist/server/services/deploy/deploy-ai-service.js +0 -294
  178. package/dist/server/services/deploy/deploy-ai-service.js.map +0 -1
  179. package/dist/server/services/deploy/headless-session-handler.d.ts +0 -94
  180. package/dist/server/services/deploy/headless-session-handler.d.ts.map +0 -1
  181. package/dist/server/services/deploy/headless-session-handler.js +0 -266
  182. package/dist/server/services/deploy/headless-session-handler.js.map +0 -1
  183. package/dist/server/services/websocket/deploy-handlers.d.ts +0 -14
  184. package/dist/server/services/websocket/deploy-handlers.d.ts.map +0 -1
  185. package/dist/server/services/websocket/deploy-handlers.js +0 -409
  186. package/dist/server/services/websocket/deploy-handlers.js.map +0 -1
  187. package/dist/server/services/websocket/handlers/deploy-handlers.d.ts +0 -11
  188. package/dist/server/services/websocket/handlers/deploy-handlers.d.ts.map +0 -1
  189. package/dist/server/services/websocket/handlers/deploy-handlers.js +0 -176
  190. package/dist/server/services/websocket/handlers/deploy-handlers.js.map +0 -1
  191. package/server/cli/headless/RESEARCH.md +0 -627
  192. package/server/services/deploy/ai-broker.ts +0 -512
  193. package/server/services/deploy/board-execution-handler.ts +0 -847
  194. package/server/services/deploy/credentials.ts +0 -200
  195. package/server/services/deploy/deploy-ai-service.ts +0 -401
  196. package/server/services/deploy/headless-session-handler.ts +0 -414
  197. package/server/services/websocket/deploy-handlers.ts +0 -544
  198. package/server/services/websocket/handlers/deploy-handlers.ts +0 -228
@@ -32,11 +32,18 @@ function log(msg, color = '') {
32
32
  }
33
33
 
34
34
  const MSTRO_DIR = join(homedir(), '.mstro');
35
- const CREDENTIALS_FILE = join(MSTRO_DIR, 'credentials.json');
36
35
  const CLIENT_ID_FILE = join(MSTRO_DIR, 'client-id');
37
36
  const PROD_PLATFORM_URL = 'https://api.mstro.app';
37
+ const STAGING_PLATFORM_URL = 'https://api.staging.mstro.app';
38
38
  const DEV_PLATFORM_URL = 'http://localhost:4102';
39
39
 
40
+ function credentialsFile() {
41
+ const env = process.env.MSTRO_ENV || 'production';
42
+ if (env === 'staging') return join(MSTRO_DIR, 'credentials-staging.json');
43
+ if (env === 'dev') return join(MSTRO_DIR, 'credentials-dev.json');
44
+ return join(MSTRO_DIR, 'credentials.json');
45
+ }
46
+
40
47
  /**
41
48
  * Get or create client ID
42
49
  */
@@ -65,12 +72,12 @@ function getClientId() {
65
72
  * Check if already logged in
66
73
  */
67
74
  function isLoggedIn() {
68
- if (!existsSync(CREDENTIALS_FILE)) {
75
+ if (!existsSync(credentialsFile())) {
69
76
  return false;
70
77
  }
71
78
 
72
79
  try {
73
- const creds = JSON.parse(readFileSync(CREDENTIALS_FILE, 'utf-8'));
80
+ const creds = JSON.parse(readFileSync(credentialsFile(), 'utf-8'));
74
81
  return !!(creds.token && creds.userId && creds.email);
75
82
  } catch {
76
83
  return false;
@@ -81,11 +88,11 @@ function isLoggedIn() {
81
88
  * Get stored credentials
82
89
  */
83
90
  function getCredentials() {
84
- if (!existsSync(CREDENTIALS_FILE)) {
91
+ if (!existsSync(credentialsFile())) {
85
92
  return null;
86
93
  }
87
94
  try {
88
- return JSON.parse(readFileSync(CREDENTIALS_FILE, 'utf-8'));
95
+ return JSON.parse(readFileSync(credentialsFile(), 'utf-8'));
89
96
  } catch {
90
97
  return null;
91
98
  }
@@ -98,7 +105,7 @@ function saveCredentials(creds) {
98
105
  if (!existsSync(MSTRO_DIR)) {
99
106
  mkdirSync(MSTRO_DIR, { recursive: true, mode: 0o700 });
100
107
  }
101
- writeFileSync(CREDENTIALS_FILE, JSON.stringify(creds, null, 2), { mode: 0o600 });
108
+ writeFileSync(credentialsFile(), JSON.stringify(creds, null, 2), { mode: 0o600 });
102
109
  }
103
110
 
104
111
  /**
@@ -300,10 +307,13 @@ export async function login(args = [], options = {}) {
300
307
  const { inline = false } = options;
301
308
  const forceReauth = args.includes('--force') || args.includes('-f');
302
309
  const devMode = args.includes('--dev');
303
- const platformUrl = devMode ? DEV_PLATFORM_URL : PROD_PLATFORM_URL;
310
+ const stagingMode = args.includes('--staging');
311
+ const platformUrl = devMode ? DEV_PLATFORM_URL : stagingMode ? STAGING_PLATFORM_URL : PROD_PLATFORM_URL;
304
312
 
305
313
  if (devMode) {
306
314
  log(`[DEV MODE] Using ${platformUrl}\n`, colors.yellow);
315
+ } else if (stagingMode) {
316
+ log(`[STAGING] Using ${platformUrl}\n`, colors.yellow);
307
317
  }
308
318
 
309
319
  // Check if already logged in (skip when called inline — caller already checked)
@@ -9,6 +9,7 @@ import { homedir } from 'node:os';
9
9
  import { join } from 'node:path';
10
10
 
11
11
  const PROD_PLATFORM_URL = 'https://api.mstro.app';
12
+ const STAGING_PLATFORM_URL = 'https://api.staging.mstro.app';
12
13
  const DEV_PLATFORM_URL = 'http://localhost:4102';
13
14
 
14
15
  const colors = {
@@ -26,17 +27,23 @@ function log(msg, color = '') {
26
27
  }
27
28
 
28
29
  const MSTRO_DIR = join(homedir(), '.mstro');
29
- const CREDENTIALS_FILE = join(MSTRO_DIR, 'credentials.json');
30
+
31
+ function credentialsFile() {
32
+ const env = process.env.MSTRO_ENV || 'production';
33
+ if (env === 'staging') return join(MSTRO_DIR, 'credentials-staging.json');
34
+ if (env === 'dev') return join(MSTRO_DIR, 'credentials-dev.json');
35
+ return join(MSTRO_DIR, 'credentials.json');
36
+ }
30
37
 
31
38
  /**
32
39
  * Get stored credentials
33
40
  */
34
41
  function getCredentials() {
35
- if (!existsSync(CREDENTIALS_FILE)) {
42
+ if (!existsSync(credentialsFile())) {
36
43
  return null;
37
44
  }
38
45
  try {
39
- return JSON.parse(readFileSync(CREDENTIALS_FILE, 'utf-8'));
46
+ return JSON.parse(readFileSync(credentialsFile(), 'utf-8'));
40
47
  } catch {
41
48
  return null;
42
49
  }
@@ -70,7 +77,8 @@ async function deregisterDevice(token, platformUrl) {
70
77
  */
71
78
  export async function logout(args = []) {
72
79
  const devMode = Array.isArray(args) && args.includes('--dev');
73
- const platformUrl = devMode ? DEV_PLATFORM_URL : PROD_PLATFORM_URL;
80
+ const stagingMode = Array.isArray(args) && args.includes('--staging');
81
+ const platformUrl = devMode ? DEV_PLATFORM_URL : stagingMode ? STAGING_PLATFORM_URL : PROD_PLATFORM_URL;
74
82
 
75
83
  log('\n Mstro Logout\n', colors.bold + colors.cyan);
76
84
 
@@ -91,8 +99,8 @@ export async function logout(args = []) {
91
99
  }
92
100
 
93
101
  // Delete credentials file
94
- if (existsSync(CREDENTIALS_FILE)) {
95
- unlinkSync(CREDENTIALS_FILE);
102
+ if (existsSync(credentialsFile())) {
103
+ unlinkSync(credentialsFile());
96
104
  }
97
105
 
98
106
  log(` Logged out from ${email}`, colors.green);
@@ -26,19 +26,25 @@ function log(msg, color = '') {
26
26
  }
27
27
 
28
28
  const MSTRO_DIR = join(homedir(), '.mstro');
29
- const CREDENTIALS_FILE = join(MSTRO_DIR, 'credentials.json');
30
29
  const CLIENT_ID_FILE = join(MSTRO_DIR, 'client-id');
31
30
  const PLATFORM_URL = process.env.PLATFORM_URL || 'https://api.mstro.app';
32
31
 
32
+ function credentialsFile() {
33
+ const env = process.env.MSTRO_ENV || 'production';
34
+ if (env === 'staging') return join(MSTRO_DIR, 'credentials-staging.json');
35
+ if (env === 'dev') return join(MSTRO_DIR, 'credentials-dev.json');
36
+ return join(MSTRO_DIR, 'credentials.json');
37
+ }
38
+
33
39
  /**
34
40
  * Get stored credentials
35
41
  */
36
42
  function getCredentials() {
37
- if (!existsSync(CREDENTIALS_FILE)) {
43
+ if (!existsSync(credentialsFile())) {
38
44
  return null;
39
45
  }
40
46
  try {
41
- return JSON.parse(readFileSync(CREDENTIALS_FILE, 'utf-8'));
47
+ return JSON.parse(readFileSync(credentialsFile(), 'utf-8'));
42
48
  } catch {
43
49
  return null;
44
50
  }
@@ -23,19 +23,25 @@ function log(msg, color = '') {
23
23
  }
24
24
 
25
25
  const MSTRO_DIR = join(homedir(), '.mstro');
26
- const CREDENTIALS_FILE = join(MSTRO_DIR, 'credentials.json');
27
26
  const CLIENT_ID_FILE = join(MSTRO_DIR, 'client-id');
28
27
  const PLATFORM_URL = process.env.PLATFORM_URL || 'https://api.mstro.app';
29
28
 
29
+ function credentialsFile() {
30
+ const env = process.env.MSTRO_ENV || 'production';
31
+ if (env === 'staging') return join(MSTRO_DIR, 'credentials-staging.json');
32
+ if (env === 'dev') return join(MSTRO_DIR, 'credentials-dev.json');
33
+ return join(MSTRO_DIR, 'credentials.json');
34
+ }
35
+
30
36
  /**
31
37
  * Get stored credentials
32
38
  */
33
39
  function getCredentials() {
34
- if (!existsSync(CREDENTIALS_FILE)) {
40
+ if (!existsSync(credentialsFile())) {
35
41
  return null;
36
42
  }
37
43
  try {
38
- return JSON.parse(readFileSync(CREDENTIALS_FILE, 'utf-8'));
44
+ return JSON.parse(readFileSync(credentialsFile(), 'utf-8'));
39
45
  } catch {
40
46
  return null;
41
47
  }
@@ -152,7 +158,7 @@ export async function whoami(args = []) {
152
158
  if (creds.lastRefreshedAt) {
153
159
  log(` Refreshed: ${formatDate(creds.lastRefreshedAt)}`, colors.dim);
154
160
  }
155
- log(` Creds file: ${CREDENTIALS_FILE}`, colors.dim);
161
+ log(` Creds file: ${credentialsFile()}`, colors.dim);
156
162
  }
157
163
 
158
164
  log('');
package/bin/mstro.js CHANGED
@@ -302,6 +302,7 @@ function showHelp() {
302
302
  log(' Options:', colors.bold);
303
303
  log(' --port, -p <port> Override automatic port selection', colors.dim);
304
304
  log(' --working-dir, -w <dir> Set working directory', colors.dim);
305
+ log(' --staging Connect to the staging server', colors.dim);
305
306
  log(' --verbose, -v Enable verbose output', colors.dim);
306
307
  log('');
307
308
  log(' Authentication:', colors.bold);
@@ -370,6 +371,7 @@ function parsePort(args) {
370
371
 
371
372
  // Extract --server / -s value (platform server URL, for local dev/testing)
372
373
  // --dev is a shorthand for --server http://localhost:4102
374
+ // --staging is a shorthand for --server https://api.staging.mstro.app
373
375
  function parseServerUrl(args) {
374
376
  const serverIndex = args.findIndex(a => a === '--server' || a === '-s');
375
377
  if (serverIndex !== -1 && args[serverIndex + 1]) {
@@ -378,6 +380,9 @@ function parseServerUrl(args) {
378
380
  if (args.includes('--dev')) {
379
381
  return 'http://localhost:4102';
380
382
  }
383
+ if (args.includes('--staging')) {
384
+ return 'https://api.staging.mstro.app';
385
+ }
381
386
  return null;
382
387
  }
383
388
 
@@ -540,7 +545,9 @@ async function autoUpdate() {
540
545
  * Check if user is logged in
541
546
  */
542
547
  function isLoggedIn() {
543
- const credentialsFile = join(MSTRO_CONFIG_DIR, 'credentials.json');
548
+ const env = process.env.MSTRO_ENV || 'production';
549
+ const suffix = env === 'staging' ? '-staging' : env === 'dev' ? '-dev' : '';
550
+ const credentialsFile = join(MSTRO_CONFIG_DIR, `credentials${suffix}.json`);
544
551
  if (!existsSync(credentialsFile)) {
545
552
  return false;
546
553
  }
@@ -603,9 +610,12 @@ async function main() {
603
610
 
604
611
  const requestedPort = parsePort(args);
605
612
  const serverUrl = parseServerUrl(args);
613
+ const mstroEnv = args.includes('--staging') ? 'staging' : args.includes('--dev') ? 'dev' : 'production';
614
+ process.env.MSTRO_ENV = mstroEnv;
606
615
  const envOverrides = {
607
616
  ...(requestedPort ? { PORT: String(requestedPort) } : {}),
608
617
  ...(serverUrl ? { PLATFORM_URL: serverUrl } : {}),
618
+ MSTRO_ENV: mstroEnv,
609
619
  };
610
620
 
611
621
  const subcommand = args.find(arg => !arg.startsWith('-') && !arg.startsWith('--'));
@@ -1 +1 @@
1
- {"version":3,"file":"claude-invoker-stream.d.ts","sourceRoot":"","sources":["../../../../server/cli/headless/claude-invoker-stream.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE7E,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,gBAAgB;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;QAC/B,KAAK,CAAC,EAAE,gBAAgB,CAAC;KAC1B,CAAC;IACF,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE;YACN,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,YAAY,CAAC,EAAE,MAAM,CAAC;SACvB,CAAC;QACF,aAAa,CAAC,EAAE;YACd,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,EAAE,CAAC,EAAE,MAAM,CAAC;SACb,CAAC;QACF,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE;YAAE,KAAK,CAAC,EAAE,gBAAgB,CAAA;SAAE,CAAC;QACvC,KAAK,CAAC,EAAE;YAAE,aAAa,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KACpC,CAAC;IACF,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,aAAa,CAAC,EAAE;QACd,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,EAAE,CAAC,EAAE,MAAM,CAAC;KACb,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,sBAAsB,CAAC;IAC/B,4BAA4B,EAAE,MAAM,CAAC;IACrC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,kBAAkB,EAAE,CAAC;IACzC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClG,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C;8FAC0F;IAC1F,sBAAsB,EAAE,OAAO,CAAC;IAChC,uDAAuD;IACvD,sBAAsB,EAAE,MAAM,CAAC;IAC/B,yEAAyE;IACzE,aAAa,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,qGAAqG;IACrG,uBAAuB,EAAE,MAAM,CAAC;IAChC,sFAAsF;IACtF,qBAAqB,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;qFACiF;IACjF,qBAAqB,EAAE,OAAO,CAAC;IAC/B,qCAAqC;IACrC,yBAAyB,EAAE,OAAO,CAAC;CACpC;AAED,gDAAgD;AAChD,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAIhF;AAiQD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,oBAAoB,GAAG,IAAI,CAmBtF;AA+DD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,cAAc,EAAE;IAAE,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,EAC5C,GAAG,EAAE,oBAAoB,GACxB,MAAM,CAcR;AAED,kFAAkF;AAClF,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,oBAAoB,GAAG,MAAM,GAAG,SAAS,CAUvF;AAED,wEAAwE;AACxE,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,MAAM,EACd,oBAAoB,EAAE,OAAO,EAC7B,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAWf"}
1
+ {"version":3,"file":"claude-invoker-stream.d.ts","sourceRoot":"","sources":["../../../../server/cli/headless/claude-invoker-stream.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE7E,UAAU,kBAAkB;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,gBAAgB;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;QAC/B,KAAK,CAAC,EAAE,gBAAgB,CAAC;KAC1B,CAAC;IACF,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE;YACN,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,YAAY,CAAC,EAAE,MAAM,CAAC;SACvB,CAAC;QACF,aAAa,CAAC,EAAE;YACd,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,EAAE,CAAC,EAAE,MAAM,CAAC;SACb,CAAC;QACF,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE;YAAE,KAAK,CAAC,EAAE,gBAAgB,CAAA;SAAE,CAAC;QACvC,KAAK,CAAC,EAAE;YAAE,aAAa,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KACpC,CAAC;IACF,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,aAAa,CAAC,EAAE;QACd,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,EAAE,CAAC,EAAE,MAAM,CAAC;KACb,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,sBAAsB,CAAC;IAC/B,4BAA4B,EAAE,MAAM,CAAC;IACrC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,kBAAkB,EAAE,CAAC;IACzC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClG,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C;8FAC0F;IAC1F,sBAAsB,EAAE,OAAO,CAAC;IAChC,uDAAuD;IACvD,sBAAsB,EAAE,MAAM,CAAC;IAC/B,yEAAyE;IACzE,aAAa,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,qGAAqG;IACrG,uBAAuB,EAAE,MAAM,CAAC;IAChC,sFAAsF;IACtF,qBAAqB,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;qFACiF;IACjF,qBAAqB,EAAE,OAAO,CAAC;IAC/B,qCAAqC;IACrC,yBAAyB,EAAE,OAAO,CAAC;CACpC;AAED,gDAAgD;AAChD,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAIhF;AAiQD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,oBAAoB,GAAG,IAAI,CAmBtF;AAgED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,cAAc,EAAE;IAAE,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,EAC5C,GAAG,EAAE,oBAAoB,GACxB,MAAM,CAcR;AAED,kFAAkF;AAClF,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,oBAAoB,GAAG,MAAM,GAAG,SAAS,CAUvF;AAED,wEAAwE;AACxE,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,MAAM,EACd,oBAAoB,EAAE,OAAO,EAC7B,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAWf"}
@@ -278,6 +278,7 @@ function handleToolInputDelta(event, ctx) {
278
278
  const toolBuffer = ctx.toolInputBuffers.get(index);
279
279
  if (toolBuffer)
280
280
  toolBuffer.inputJson += partialJson;
281
+ ctx.lastTokenActivityTime = Date.now();
281
282
  ctx.config.toolUseCallback?.({ type: 'tool_input_delta', partialJson, index });
282
283
  }
283
284
  /** Handle content_block_stop — finalize tool input and emit tool_complete */
@@ -1 +1 @@
1
- {"version":3,"file":"claude-invoker-stream.js","sourceRoot":"","sources":["../../../../server/cli/headless/claude-invoker-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-invoker-stream.js","sourceRoot":"","sources":["../../../../server/cli/headless/claude-invoker-stream.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ export { executeClaudeCommand } from './claude-invoker.js';
8
8
  export { generateMcpConfig } from './mcp-config.js';
9
9
  export { detectErrorInStderr, ERROR_PATTERNS, estimateTokensFromOutput, extractCleanOutput, extractModifiedFiles } from './output-utils.js';
10
10
  export { buildMultimodalMessage, enrichPromptWithContext, isApprovalPrompt } from './prompt-utils.js';
11
+ export { ResilientRunner, type ResilientRunnerConfig, type RetryPolicy } from './resilient-runner.js';
11
12
  export { HeadlessRunner } from './runner.js';
12
13
  export { ToolWatchdog } from './tool-watchdog.js';
13
14
  export type { ExecutionCheckpoint, ExecutionResult, HeadlessConfig, ImageAttachment, PendingToolMap, ResolvedHeadlessConfig, SessionResult, SessionState, ToolDurationTracker, ToolTimeoutProfile, ToolUseAccumulator, ToolUseEvent } from './types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/cli/headless/index.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AAEH,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,YAAY,EACV,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACb,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/cli/headless/index.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AAEH,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,eAAe,EAAE,KAAK,qBAAqB,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEtG,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,YAAY,EACV,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,eAAe,EACf,cAAc,EACd,sBAAsB,EACtB,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACb,MAAM,YAAY,CAAC"}
@@ -5,6 +5,8 @@ export { executeClaudeCommand } from './claude-invoker.js';
5
5
  export { generateMcpConfig } from './mcp-config.js';
6
6
  export { detectErrorInStderr, ERROR_PATTERNS, estimateTokensFromOutput, extractCleanOutput, extractModifiedFiles } from './output-utils.js';
7
7
  export { buildMultimodalMessage, enrichPromptWithContext, isApprovalPrompt } from './prompt-utils.js';
8
+ // Resilient runner (retry-aware wrapper)
9
+ export { ResilientRunner } from './resilient-runner.js';
8
10
  // Main runner class
9
11
  export { HeadlessRunner } from './runner.js';
10
12
  // Tool watchdog
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/cli/headless/index.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,gEAAgE;AAShE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE3D,iCAAiC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAC3B,oBAAoB;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,gBAAgB;AAChB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/cli/headless/index.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,gEAAgE;AAShE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE3D,iCAAiC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,wBAAwB,EACxB,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAC3B,yCAAyC;AACzC,OAAO,EAAE,eAAe,EAAgD,MAAM,uBAAuB,CAAC;AACtG,oBAAoB;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,gBAAgB;AAChB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,47 @@
1
+ import type { SessionResult, ToolUseEvent } from './types.js';
2
+ export type RetryPolicy = 'FULL' | 'STANDARD' | 'NONE';
3
+ export interface ResilientRunnerConfig {
4
+ workingDir: string;
5
+ prompt: string;
6
+ policy?: RetryPolicy;
7
+ maxRetries?: number;
8
+ stallWarningMs?: number;
9
+ stallKillMs?: number;
10
+ stallHardCapMs?: number;
11
+ stallMaxExtensions?: number;
12
+ outputCallback?: (text: string) => void;
13
+ thinkingCallback?: (text: string) => void;
14
+ toolUseCallback?: (event: ToolUseEvent) => void;
15
+ tokenUsageCallback?: (usage: {
16
+ inputTokens: number;
17
+ outputTokens: number;
18
+ }) => void;
19
+ logLabel?: string;
20
+ logDir?: string;
21
+ abortSignal?: AbortSignal;
22
+ verbose?: boolean;
23
+ model?: string;
24
+ extraEnv?: Record<string, string>;
25
+ maxAutoContinues?: number;
26
+ onRetry?: (info: {
27
+ retryNumber: number;
28
+ maxRetries: number;
29
+ path: string;
30
+ reason: string;
31
+ }) => void;
32
+ }
33
+ export declare class ResilientRunner {
34
+ private readonly config;
35
+ constructor(config: ResilientRunnerConfig);
36
+ run(): Promise<SessionResult>;
37
+ private execute;
38
+ private retryLoop;
39
+ private runAttempt;
40
+ private createHeadlessRunner;
41
+ private evaluateStrategies;
42
+ private selectBestResult;
43
+ private shouldAutoContinue;
44
+ private autoContinue;
45
+ private runSingle;
46
+ }
47
+ //# sourceMappingURL=resilient-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resilient-runner.d.ts","sourceRoot":"","sources":["../../../../server/cli/headless/resilient-runner.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAuB,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEnF,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;AAEvD,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IAEf,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAChD,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAEpF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAElC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CACrG;AA4CD,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;gBAEnC,MAAM,EAAE,qBAAqB;IAInC,GAAG,IAAI,OAAO,CAAC,aAAa,CAAC;YAQrB,OAAO;YAwBP,SAAS;YA6CT,UAAU;IAaxB,OAAO,CAAC,oBAAoB;YA4Bd,kBAAkB;YAuBlB,gBAAgB;IA0B9B,OAAO,CAAC,kBAAkB;YAYZ,YAAY;YAmCZ,SAAS;CA6BxB"}