* fix: keep Claude Code interactive after initial prompt Claude Code's -p flag runs in one-shot mode (exits after responding), which prevents follow-up messages via `ao send`. Instead, launch Claude interactively and deliver the initial prompt post-launch via runtime.sendMessage(). Adds `promptDelivery` property to the Agent interface so each agent plugin can declare whether prompts should be inlined in the launch command or sent after the agent starts. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: make post-launch prompt delivery non-fatal and add test coverage - Move sendMessage call outside the try/catch that destroys the session. A prompt delivery failure should not kill a running agent — user can retry with `ao send`. - Add tests: no-prompt + post-launch agent, sendMessage failure resilience, 5s delay verification, systemPrompt/systemPromptFile alongside omitted -p. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * test: add integration test for prompt delivery (proves bug and fix) Two real-Claude integration tests that contrast: 1. `-p` mode: Claude exits after responding (the bug) 2. Interactive + sendMessage: Claude stays alive, follow-up works (the fix) Runs in CI with ANTHROPIC_API_KEY. Skips when prerequisites missing. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(test): skip interactive test without auth, improve TUI readiness detection The integration test failed in CI because interactive Claude requires full login auth (not just ANTHROPIC_API_KEY). Skip the interactive suite when `claude auth status` reports not logged in. Also fix local flakiness: replace blind 5s sleep with polling for Claude's TUI prompt character (❯) before sending the first message, and increase scrollback capture from 200 to 500 lines. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(test): skip interactive test in CI, fix TUI readiness detection The interactive test ran in CI despite hasInteractiveAuth() — Claude reports logged in when ANTHROPIC_API_KEY is set, but interactive mode requires OAuth. Use `!process.env.CI` as the skip condition instead. Also fix waitForTuiReady false positive: the OAuth screen's "Paste code here if prompted >" matched the `>` regex. Now checks the last non-empty line for Claude's specific ❯ prompt character, and bails early if the OAuth/login screen is detected. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| agent-orchestrator | ||
| cli | ||
| core | ||
| integration-tests | ||
| plugins | ||
| web | ||