crewly 1.0.5 → 1.0.6

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 (22) hide show
  1. package/config/runtime_scripts/runtime-config.json +5 -5
  2. package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.d.ts.map +1 -1
  3. package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.js +7 -5
  4. package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.js.map +1 -1
  5. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +17 -0
  6. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  7. package/dist/backend/backend/src/services/agent/agent-registration.service.js +161 -87
  8. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  9. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.d.ts +4 -1
  10. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
  11. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js +22 -5
  12. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
  13. package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
  14. package/dist/backend/backend/src/services/messaging/queue-processor.service.js +14 -5
  15. package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
  16. package/frontend/dist/assets/index-4c050f52.css +33 -0
  17. package/frontend/dist/assets/{index-419da091.js → index-523c7fce.js} +1 -1
  18. package/frontend/dist/index.html +3 -5
  19. package/package.json +1 -1
  20. package/config/runtime_scripts/initialize_claude.sh +0 -14
  21. package/config/runtime_scripts/initialize_codex.sh +0 -14
  22. package/frontend/dist/assets/index-5adb4dff.css +0 -33
@@ -2,25 +2,25 @@
2
2
  "runtimes": {
3
3
  "claude-code": {
4
4
  "displayName": "Claude Code",
5
- "initScript": "initialize_claude.sh",
5
+ "initScript": "",
6
6
  "welcomeMessage": "Welcome to Claude Code",
7
7
  "timeout": 120000,
8
8
  "description": "Anthropic's Claude Code CLI with advanced coding capabilities"
9
9
  },
10
10
  "gemini-cli": {
11
- "displayName": "Gemini CLI",
12
- "initScript": "initialize_gemini.sh",
11
+ "displayName": "Gemini CLI",
12
+ "initScript": "",
13
13
  "welcomeMessage": "GEMINI.md",
14
14
  "timeout": 90000,
15
15
  "description": "Google's Gemini AI CLI for code generation and analysis"
16
16
  },
17
17
  "codex-cli": {
18
18
  "displayName": "OpenAI Codex",
19
- "initScript": "initialize_codex.sh",
19
+ "initScript": "",
20
20
  "welcomeMessage": "OpenAI Codex",
21
21
  "timeout": 90000,
22
22
  "description": "OpenAI's Codex CLI for advanced code understanding"
23
23
  }
24
24
  },
25
25
  "defaultRuntime": "claude-code"
26
- }
26
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.controller.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/orchestrator/orchestrator.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAoB9C,wBAAsB,uBAAuB,CAC5C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAuBf;AAED,wBAAsB,0BAA0B,CAC/C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAuFf;AAED,wBAAsB,uBAAuB,CAC5C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CA+Bf;AAED,wBAAsB,qBAAqB,CAC1C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CA4Bf;AAED,wBAAsB,iBAAiB,CACtC,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAqIf;AAED,wBAAsB,qBAAqB,CAC1C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAsCf;AAED,wBAAsB,gBAAgB,CACrC,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CA4Bf;AAED,wBAAsB,wBAAwB,CAC7C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CA8Ef;AAED,wBAAsB,yBAAyB,CAC9C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CAC1C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAoBf"}
1
+ {"version":3,"file":"orchestrator.controller.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/controllers/orchestrator/orchestrator.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAsB9C,wBAAsB,uBAAuB,CAC5C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAuBf;AAED,wBAAsB,0BAA0B,CAC/C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAuFf;AAED,wBAAsB,uBAAuB,CAC5C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CA+Bf;AAED,wBAAsB,qBAAqB,CAC1C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CA4Bf;AAED,wBAAsB,iBAAiB,CACtC,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAuIf;AAED,wBAAsB,qBAAqB,CAC1C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAsCf;AAED,wBAAsB,gBAAgB,CACrC,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CA4Bf;AAED,wBAAsB,wBAAwB,CAC7C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CA8Ef;AAED,wBAAsB,yBAAyB,CAC9C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CAC1C,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACX,OAAO,CAAC,IAAI,CAAC,CAoBf"}
@@ -1,4 +1,4 @@
1
- import { ORCHESTRATOR_SESSION_NAME, ORCHESTRATOR_WINDOW_NAME, ORCHESTRATOR_ROLE, } from '../../constants.js';
1
+ import { ORCHESTRATOR_SESSION_NAME, ORCHESTRATOR_WINDOW_NAME, ORCHESTRATOR_ROLE, RUNTIME_TYPES, } from '../../constants.js';
2
2
  import { CREWLY_CONSTANTS } from '../../constants.js';
3
3
  import { getOrchestratorStatus as getOrchestratorStatusFromService, getOrchestratorOfflineMessage, } from '../../services/orchestrator/index.js';
4
4
  import { getTerminalGateway } from '../../websocket/terminal.gateway.js';
@@ -172,7 +172,7 @@ export async function setupOrchestrator(req, res) {
172
172
  logger.info('setupOrchestrator called');
173
173
  try {
174
174
  // Get orchestrator's runtime type from storage
175
- let runtimeType = 'claude-code'; // Default fallback
175
+ let runtimeType = RUNTIME_TYPES.CLAUDE_CODE; // Default fallback
176
176
  try {
177
177
  const orchestratorStatus = await this.storageService.getOrchestratorStatus();
178
178
  if (orchestratorStatus?.runtimeType) {
@@ -192,12 +192,15 @@ export async function setupOrchestrator(req, res) {
192
192
  runtimeType,
193
193
  });
194
194
  // Use the unified agent registration service for orchestrator creation
195
+ // forceRecreate: true because this is an explicit user action (Setup button),
196
+ // so skip expensive intelligent recovery and do a clean restart
195
197
  const result = await this.agentRegistrationService.createAgentSession({
196
198
  sessionName: ORCHESTRATOR_SESSION_NAME,
197
199
  role: ORCHESTRATOR_ROLE,
198
200
  projectPath: process.cwd(),
199
201
  windowName: ORCHESTRATOR_WINDOW_NAME,
200
- runtimeType: runtimeType, // Pass the runtime type from teams.json
202
+ runtimeType: runtimeType,
203
+ forceRecreate: true,
201
204
  });
202
205
  logger.info('createAgentSession result', {
203
206
  success: result.success,
@@ -243,7 +246,6 @@ export async function setupOrchestrator(req, res) {
243
246
  logger.info('Found projects to add to Gemini CLI allowlist', { projectPaths });
244
247
  // Import RuntimeServiceFactory dynamically to avoid circular dependency
245
248
  const { RuntimeServiceFactory } = await import('../../services/agent/runtime-service.factory.js');
246
- const { RUNTIME_TYPES } = await import('../../constants.js');
247
249
  // Get Gemini runtime service instance (uses PTY session backend)
248
250
  const geminiService = RuntimeServiceFactory.create(RUNTIME_TYPES.GEMINI_CLI, null, // Legacy tmux parameter - ignored, PTY session backend is used
249
251
  process.cwd()); // Cast to access Gemini-specific methods
@@ -410,7 +412,7 @@ export async function updateOrchestratorRuntime(req, res) {
410
412
  return;
411
413
  }
412
414
  // Validate runtime type
413
- const validRuntimeTypes = ['claude-code', 'gemini-cli', 'codex-cli'];
415
+ const validRuntimeTypes = Object.values(RUNTIME_TYPES);
414
416
  if (!validRuntimeTypes.includes(runtimeType)) {
415
417
  res.status(400).json({
416
418
  success: false,
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.controller.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/orchestrator/orchestrator.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.controller.js","sourceRoot":"","sources":["../../../../../../backend/src/controllers/orchestrator/orchestrator.controller.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ export declare class AgentRegistrationService {
21
21
  private storageService;
22
22
  private projectRoot;
23
23
  private promptCache;
24
+ private sessionCreationLocks;
24
25
  private registrationAbortControllers;
25
26
  private stuckMessageDetectorTimer;
26
27
  private tuiSessionRegistry;
@@ -127,6 +128,16 @@ export declare class AgentRegistrationService {
127
128
  * Load registration prompt from config files (with caching to prevent file I/O contention)
128
129
  */
129
130
  private loadRegistrationPrompt;
131
+ /**
132
+ * Write the registration prompt to a file on disk.
133
+ * Returns the file path on success, or undefined on failure.
134
+ *
135
+ * @param sessionName - Session name (used for filename)
136
+ * @param prompt - The full prompt content
137
+ * @param runtimeType - Runtime type (determines directory)
138
+ * @returns The absolute path to the written file, or undefined on error
139
+ */
140
+ private writePromptFile;
130
141
  /**
131
142
  * Wait for agent registration to complete
132
143
  */
@@ -174,6 +185,12 @@ export declare class AgentRegistrationService {
174
185
  message?: string;
175
186
  error?: string;
176
187
  }>;
188
+ /**
189
+ * Internal implementation of createAgentSession, guarded by sessionCreationLocks.
190
+ * @param config Session configuration
191
+ * @returns Promise with success/error information
192
+ */
193
+ private _createAgentSessionImpl;
177
194
  /**
178
195
  * Unified session termination that handles both orchestrator and team members
179
196
  * @param sessionName The session to terminate
@@ -1 +1 @@
1
- {"version":3,"file":"agent-registration.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/agent-registration.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-registration.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/agent-registration.service.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,8 @@ export class AgentRegistrationService {
29
29
  projectRoot;
30
30
  // Prompt file caching to eliminate file I/O contention during concurrent session creation
31
31
  promptCache = new Map();
32
+ // Session creation locks to prevent concurrent createAgentSession calls for the same session
33
+ sessionCreationLocks = new Map();
32
34
  // AbortControllers for pending registration prompts (keyed by session name)
33
35
  registrationAbortControllers = new Map();
34
36
  // Background stuck-message detector timer
@@ -352,14 +354,28 @@ export class AgentRegistrationService {
352
354
  });
353
355
  }
354
356
  }
357
+ // Write prompt file before launching runtime so --append-system-prompt-file works
358
+ let promptFilePath;
359
+ if (runtimeType === RUNTIME_TYPES.CLAUDE_CODE) {
360
+ try {
361
+ const prompt = await this.loadRegistrationPrompt(role, sessionName, memberId);
362
+ promptFilePath = await this.writePromptFile(sessionName, prompt, runtimeType);
363
+ }
364
+ catch (promptError) {
365
+ this.logger.warn('Failed to pre-write prompt file (non-fatal, will fall back to direct delivery)', {
366
+ sessionName,
367
+ error: promptError instanceof Error ? promptError.message : String(promptError),
368
+ });
369
+ }
370
+ }
355
371
  // Reinitialize runtime using the appropriate initialization script (always fresh start)
356
372
  // runtimeService2: Fresh instance for runtime reinitialization after cleanup
357
373
  // New instance ensures clean state without cached detection results
358
374
  const runtimeService2 = this.createRuntimeService(runtimeType);
359
- await runtimeService2.executeRuntimeInitScript(sessionName, projectPath, effectiveFlags);
375
+ await runtimeService2.executeRuntimeInitScript(sessionName, projectPath, effectiveFlags, promptFilePath);
360
376
  // Wait for runtime to be ready (simplified detection)
361
377
  // Use shorter check interval in test environment, and reasonable interval in production
362
- const checkInterval = process.env.NODE_ENV === 'test' ? 1000 : 2000; // Check every 1-2 seconds
378
+ const checkInterval = this.getCheckInterval();
363
379
  const isReady = await runtimeService2.waitForRuntimeReady(sessionName, 60000, checkInterval); // 60s timeout — Claude Code cold starts can take 30-60s
364
380
  if (!isReady) {
365
381
  throw new Error(`Failed to reinitialize ${runtimeType} within timeout`);
@@ -543,6 +559,20 @@ export class AgentRegistrationService {
543
559
  });
544
560
  }
545
561
  }
562
+ // Write prompt file before launching runtime so --append-system-prompt-file works
563
+ let promptFilePath;
564
+ if (runtimeType === RUNTIME_TYPES.CLAUDE_CODE) {
565
+ try {
566
+ const prompt = await this.loadRegistrationPrompt(role, sessionName, memberId);
567
+ promptFilePath = await this.writePromptFile(sessionName, prompt, runtimeType);
568
+ }
569
+ catch (promptError) {
570
+ this.logger.warn('Failed to pre-write prompt file in full recreation (non-fatal)', {
571
+ sessionName,
572
+ error: promptError instanceof Error ? promptError.message : String(promptError),
573
+ });
574
+ }
575
+ }
546
576
  // Recreate session based on role
547
577
  if (role === ORCHESTRATOR_ROLE) {
548
578
  await this.createOrchestratorSession({
@@ -551,7 +581,7 @@ export class AgentRegistrationService {
551
581
  });
552
582
  // Initialize runtime for orchestrator using script (always fresh start)
553
583
  const runtimeService = this.createRuntimeService(runtimeType);
554
- await runtimeService.executeRuntimeInitScript(sessionName, process.cwd(), effectiveFlags);
584
+ await runtimeService.executeRuntimeInitScript(sessionName, process.cwd(), effectiveFlags, promptFilePath);
555
585
  // Wait for runtime to be ready
556
586
  const checkInterval = this.getCheckInterval();
557
587
  // runtimeService3: Separate instance for orchestrator ready-state detection
@@ -584,7 +614,7 @@ export class AgentRegistrationService {
584
614
  // For other roles, create basic session and initialize Claude (always fresh start)
585
615
  await (await this.getSessionHelper()).createSession(sessionName, projectPath || process.cwd());
586
616
  const runtimeService = this.createRuntimeService(runtimeType);
587
- await runtimeService.executeRuntimeInitScript(sessionName, projectPath, effectiveFlags);
617
+ await runtimeService.executeRuntimeInitScript(sessionName, projectPath, effectiveFlags, promptFilePath);
588
618
  // Wait for runtime to be ready (simplified detection)
589
619
  const checkInterval = this.getCheckInterval();
590
620
  const isReady = await this.createRuntimeService(runtimeType)
@@ -763,6 +793,40 @@ All it does is update a local status flag so the web UI shows you as online - no
763
793
  After checking in, just say "Ready for tasks" and wait for me to send you work.`;
764
794
  }
765
795
  }
796
+ /**
797
+ * Write the registration prompt to a file on disk.
798
+ * Returns the file path on success, or undefined on failure.
799
+ *
800
+ * @param sessionName - Session name (used for filename)
801
+ * @param prompt - The full prompt content
802
+ * @param runtimeType - Runtime type (determines directory)
803
+ * @returns The absolute path to the written file, or undefined on error
804
+ */
805
+ async writePromptFile(sessionName, prompt, runtimeType) {
806
+ const isClaudeCode = runtimeType === RUNTIME_TYPES.CLAUDE_CODE;
807
+ const promptsDir = isClaudeCode
808
+ ? path.join(os.homedir(), CREWLY_CONSTANTS.PATHS.CREWLY_HOME, 'prompts')
809
+ : path.join(this.projectRoot, '.crewly', 'prompts');
810
+ const promptFilePath = path.join(promptsDir, `${sessionName}-init.md`);
811
+ try {
812
+ await mkdir(promptsDir, { recursive: true });
813
+ await writeFile(promptFilePath, prompt, 'utf8');
814
+ this.logger.debug('Wrote init prompt to file', {
815
+ sessionName,
816
+ promptFilePath,
817
+ promptLength: prompt.length,
818
+ });
819
+ return promptFilePath;
820
+ }
821
+ catch (error) {
822
+ this.logger.warn('Failed to write init prompt file', {
823
+ sessionName,
824
+ promptFilePath,
825
+ error: error instanceof Error ? error.message : String(error),
826
+ });
827
+ return undefined;
828
+ }
829
+ }
766
830
  /**
767
831
  * Wait for agent registration to complete
768
832
  */
@@ -992,6 +1056,39 @@ After checking in, just say "Ready for tasks" and wait for me to send you work.`
992
1056
  * @returns Promise with success/error information
993
1057
  */
994
1058
  async createAgentSession(config) {
1059
+ // If another creation is in progress for this session, wait for it
1060
+ const existingLock = this.sessionCreationLocks.get(config.sessionName);
1061
+ if (existingLock) {
1062
+ this.logger.info('Waiting for existing session creation to complete', { sessionName: config.sessionName });
1063
+ try {
1064
+ return await existingLock;
1065
+ }
1066
+ catch {
1067
+ // Previous creation failed, proceed with our own attempt
1068
+ this.logger.info('Previous session creation failed, proceeding with new attempt', { sessionName: config.sessionName });
1069
+ }
1070
+ }
1071
+ // Create and store the lock promise
1072
+ const creationPromise = this._createAgentSessionImpl(config);
1073
+ this.sessionCreationLocks.set(config.sessionName, creationPromise);
1074
+ try {
1075
+ const result = await creationPromise;
1076
+ return result;
1077
+ }
1078
+ finally {
1079
+ // Only delete lock if it's still ours — a concurrent caller may have
1080
+ // replaced it with a new promise after our catch path above.
1081
+ if (this.sessionCreationLocks.get(config.sessionName) === creationPromise) {
1082
+ this.sessionCreationLocks.delete(config.sessionName);
1083
+ }
1084
+ }
1085
+ }
1086
+ /**
1087
+ * Internal implementation of createAgentSession, guarded by sessionCreationLocks.
1088
+ * @param config Session configuration
1089
+ * @returns Promise with success/error information
1090
+ */
1091
+ async _createAgentSessionImpl(config) {
995
1092
  const { sessionName, role, projectPath = process.cwd(), windowName, memberId } = config;
996
1093
  const forceRecreate = config.forceRecreate ?? false;
997
1094
  // Get runtime type from config or default to claude-code
@@ -2756,46 +2853,28 @@ After checking in, just say "Ready for tasks" and wait for me to send you work.`
2756
2853
  */
2757
2854
  async sendPromptRobustly(sessionName, prompt, runtimeType = RUNTIME_TYPES.CLAUDE_CODE, abortSignal) {
2758
2855
  const isClaudeCode = runtimeType === RUNTIME_TYPES.CLAUDE_CODE;
2759
- const maxAttempts = isClaudeCode ? 2 : 3;
2760
2856
  const sessionHelper = await this.getSessionHelper();
2761
- // Step 1: Write prompt to a file.
2762
- // Claude Code: write to ~/.crewly/prompts/ (always accessible).
2763
- // Gemini CLI / other TUI runtimes: write INSIDE the project directory
2764
- // so the file is within the workspace allowlist. Gemini CLI restricts
2765
- // file reads to workspace directories, and the /directory add command
2766
- // to add ~/.crewly may fail (e.g., auto-update notification
2767
- // interferes during postInitialize).
2768
- const promptsDir = isClaudeCode
2769
- ? path.join(os.homedir(), CREWLY_CONSTANTS.PATHS.CREWLY_HOME, 'prompts')
2770
- : path.join(this.projectRoot, '.crewly', 'prompts');
2771
- const promptFilePath = path.join(promptsDir, `${sessionName}-init.md`);
2772
- try {
2773
- await mkdir(promptsDir, { recursive: true });
2774
- await writeFile(promptFilePath, prompt, 'utf8');
2775
- this.logger.debug('Wrote init prompt to file', {
2776
- sessionName,
2777
- promptFilePath,
2778
- promptLength: prompt.length,
2779
- });
2780
- }
2781
- catch (error) {
2782
- this.logger.warn('Failed to write init prompt file (non-fatal)', {
2783
- sessionName,
2784
- promptFilePath,
2785
- error: error instanceof Error ? error.message : String(error),
2786
- });
2787
- // File write failure is non-fatal — file is kept for debugging only.
2788
- // Claude Code receives the prompt directly; Gemini CLI needs the file.
2789
- if (!isClaudeCode) {
2790
- return false;
2791
- }
2857
+ // Step 1: Write prompt to a file (idempotent — may already exist from pre-launch write).
2858
+ const promptFilePath = await this.writePromptFile(sessionName, prompt, runtimeType);
2859
+ if (!promptFilePath) {
2860
+ // File write failure is fatal all runtimes use the file-read approach.
2861
+ return false;
2792
2862
  }
2793
2863
  // Step 2: Build the message to send.
2794
- // Claude Code: send prompt directly as user input to bypass file-read security check.
2795
- // Other runtimes: keep file-read approach (Gemini CLI has workspace restrictions).
2864
+ // Claude Code: prompt was already loaded via --append-system-prompt-file at launch,
2865
+ // so the agent already has all instructions as a system prompt. Just send a short
2866
+ // kickoff trigger — no need to ask it to read the file again.
2867
+ // Gemini CLI / other runtimes: need the file-read instruction since the prompt
2868
+ // was NOT loaded via system prompt.
2796
2869
  const messageToSend = isClaudeCode
2797
- ? prompt
2870
+ ? 'Begin your work now. Follow the instructions you were given and start by doing an initial assessment of the project.'
2798
2871
  : `Read the file at ${promptFilePath} and follow all instructions in it.`;
2872
+ // Claude Code: single attempt only. The full prompt is loaded via
2873
+ // --append-system-prompt-file, so the kickoff is just a short trigger.
2874
+ // Retrying causes duplicates because Claude returns to its prompt between
2875
+ // tool calls, making retry checks think the first message wasn't received.
2876
+ // Gemini CLI / other runtimes: up to 3 attempts (prompt loaded via file-read).
2877
+ const maxAttempts = isClaudeCode ? 1 : 3;
2799
2878
  for (let attempt = 1; attempt <= maxAttempts; attempt++) {
2800
2879
  // Check abort before each attempt
2801
2880
  if (abortSignal?.aborted) {
@@ -2808,26 +2887,17 @@ After checking in, just say "Ready for tasks" and wait for me to send you work.`
2808
2887
  attempt,
2809
2888
  runtimeType,
2810
2889
  promptFilePath,
2811
- deliveryMethod: isClaudeCode ? 'direct' : 'file-read',
2890
+ deliveryMethod: isClaudeCode ? 'system-prompt-kickoff' : 'file-read',
2812
2891
  });
2813
- // Capture state before sending
2814
- const beforeOutput = sessionHelper.capturePane(sessionName, 10);
2815
- const beforeLength = beforeOutput.length;
2816
2892
  // Check abort before sending to terminal
2817
2893
  if (abortSignal?.aborted) {
2818
2894
  this.logger.info('Prompt delivery aborted before send (runtime exited)', { sessionName });
2819
2895
  return false;
2820
2896
  }
2821
- // Clear any pending input before sending the instruction.
2897
+ // Clear any pending input before sending the instruction (first attempt only).
2822
2898
  // Claude Code: Escape closes slash menus + Ctrl+U clears line.
2823
2899
  // Gemini CLI (Ink TUI): Do NOT send any cleanup keystrokes.
2824
- // - Escape defocuses the Ink TUI input permanently (no recovery).
2825
- // - Ctrl+C at empty prompt triggers /quit and exits the CLI.
2826
- // - Ctrl+U is ignored by the TUI's custom key handling.
2827
- // - Shift+Tab toggles safety modes, not focus.
2828
- // The prompt should be clean at this point (just initialized or
2829
- // addProjectToAllowlist just ran without defocusing).
2830
- if (isClaudeCode) {
2900
+ if (isClaudeCode && attempt === 1) {
2831
2901
  await sessionHelper.sendEscape(sessionName);
2832
2902
  await delay(200);
2833
2903
  await sessionHelper.sendKey(sessionName, 'C-u');
@@ -2838,55 +2908,59 @@ After checking in, just say "Ready for tasks" and wait for me to send you work.`
2838
2908
  this.logger.info('Prompt delivery aborted before instruction send (runtime exited)', { sessionName });
2839
2909
  return false;
2840
2910
  }
2841
- // Send the prompt (direct content for Claude Code, file-read instruction for others)
2911
+ // Send the kickoff / file-read instruction
2842
2912
  await sessionHelper.sendMessage(sessionName, messageToSend);
2913
+ // Claude Code: rapid-check verification.
2914
+ // Check every 1s for up to 8s whether Claude started processing.
2915
+ // If Claude leaves the prompt at any point, the message was received.
2916
+ // This avoids the old length-comparison approach which was unreliable
2917
+ // (Claude's TUI redraws change output length unpredictably).
2843
2918
  if (isClaudeCode) {
2844
- // Claude Code may need an extra Enter after bracketed paste
2845
- await delay(1000);
2846
- if (abortSignal?.aborted)
2847
- return false;
2848
- await sessionHelper.sendEnter(sessionName);
2919
+ for (let i = 0; i < 8; i++) {
2920
+ await delay(1000);
2921
+ if (abortSignal?.aborted)
2922
+ return false;
2923
+ const currentOutput = sessionHelper.capturePane(sessionName);
2924
+ // Processing indicators (spinners) = definitive success
2925
+ if (TERMINAL_PATTERNS.PROCESSING.test(currentOutput)) {
2926
+ this.logger.debug('Kickoff delivered — processing indicators detected', {
2927
+ sessionName, checkIndex: i,
2928
+ });
2929
+ return true;
2930
+ }
2931
+ // Claude left the prompt = started working on the message
2932
+ if (!this.isClaudeAtPrompt(currentOutput, RUNTIME_TYPES.CLAUDE_CODE)) {
2933
+ this.logger.debug('Kickoff delivered — Claude left prompt', {
2934
+ sessionName, checkIndex: i,
2935
+ });
2936
+ return true;
2937
+ }
2938
+ }
2939
+ // Claude still at prompt after 8s — message likely not received.
2940
+ // For Claude Code with --append-system-prompt-file, don't retry
2941
+ // (would cause duplicate). Log warning and return false.
2942
+ this.logger.warn('Kickoff delivery unconfirmed — Claude still at prompt after 8s (not retrying)', {
2943
+ sessionName, runtimeType,
2944
+ });
2945
+ return false;
2849
2946
  }
2850
- // Wait for agent to start processing.
2851
- // Claude Code needs more time for large prompts (37KB+) to be
2852
- // ingested and show visible output changes.
2853
- const verifyDelay = isClaudeCode ? 5000 : 3000;
2947
+ // Gemini CLI / other runtimes: original verification with length comparison
2948
+ // Capture state before sending was skipped for Claude Code path above,
2949
+ // so capture it here for non-Claude runtimes on retry.
2950
+ const verifyDelay = 3000;
2854
2951
  await delay(verifyDelay);
2855
2952
  if (abortSignal?.aborted)
2856
2953
  return false;
2857
- // Verify delivery
2858
2954
  const afterOutput = sessionHelper.capturePane(sessionName, 20);
2859
- const afterLength = afterOutput.length;
2860
- const lengthIncrease = afterLength - beforeLength;
2861
2955
  const hasProcessingIndicators = /thinking|processing|analyzing|registering|reading/i.test(afterOutput);
2862
- // For Claude Code, also check if the prompt disappeared (meaning
2863
- // Claude accepted the input and is processing). Claude's UI often
2864
- // collapses/redraws, making the output shorter — a negative
2865
- // lengthIncrease does NOT mean delivery failed.
2866
- const promptGone = isClaudeCode
2867
- && !this.isClaudeAtPrompt(sessionHelper.capturePane(sessionName), RUNTIME_TYPES.CLAUDE_CODE);
2868
- // Claude Code UI redraws can cause negative lengthIncrease even on
2869
- // successful delivery. If the output changed at all (positive or
2870
- // negative) and Claude is no longer at the prompt, consider it delivered.
2871
- const outputChanged = lengthIncrease !== 0;
2872
- const likelyDelivered = isClaudeCode && outputChanged && promptGone;
2873
- if (lengthIncrease > 20 || hasProcessingIndicators || promptGone || likelyDelivered) {
2956
+ if (hasProcessingIndicators) {
2874
2957
  this.logger.debug('Prompt instruction delivered successfully', {
2875
- sessionName,
2876
- attempt,
2877
- lengthIncrease,
2878
- hasProcessingIndicators,
2879
- promptGone,
2880
- likelyDelivered,
2881
- runtimeType,
2958
+ sessionName, attempt, runtimeType,
2882
2959
  });
2883
2960
  return true;
2884
2961
  }
2885
2962
  this.logger.debug('Prompt instruction delivery unconfirmed - retrying', {
2886
- sessionName,
2887
- attempt,
2888
- lengthIncrease,
2889
- runtimeType,
2963
+ sessionName, attempt, runtimeType,
2890
2964
  });
2891
2965
  if (attempt < maxAttempts) {
2892
2966
  await delay(1000);