diff --git a/packages/cli/src/commands/spawn.ts b/packages/cli/src/commands/spawn.ts index 62f30c0cb..e6713758f 100644 --- a/packages/cli/src/commands/spawn.ts +++ b/packages/cli/src/commands/spawn.ts @@ -132,8 +132,8 @@ async function spawnSession( if (claimedPrUrl) console.log(` PR: ${chalk.dim(claimedPrUrl)}`); // Warn if prompt delivery failed (for post-launch agents like Claude Code) - const promptDelivered = session.metadata?.promptDelivered === "true"; - if (!promptDelivered) { + const promptDelivered = session.metadata?.promptDelivered; + if (promptDelivered === "false") { console.log(); console.warn( chalk.yellow( diff --git a/packages/core/src/session-manager.ts b/packages/core/src/session-manager.ts index 2c2680cc6..d23333cc4 100644 --- a/packages/core/src/session-manager.ts +++ b/packages/core/src/session-manager.ts @@ -1210,6 +1210,12 @@ export function createSessionManager(deps: SessionManagerDeps): OpenCodeSessionM } session.metadata["promptDelivered"] = String(promptDelivered); + } else if (agentLaunchConfig.prompt) { + session.metadata["promptDelivered"] = "true"; + } + + if (session.metadata["promptDelivered"]) { + updateMetadata(sessionsDir, sessionId, session.metadata); } return session;