davsclaus opened a new pull request, #27663: URL: https://github.com/apache/camel/pull/27663
`camel tui --record=demo.tape` handed the tape to the recording backend of TamboUI, whose tape player cannot press F-keys or wait for the screen, so most TUI demos could not be scripted. The tape is now played by Camel itself, which works with the TamboUI 0.5.0 release we ship in 4.23.0.  ## Changes - New `TapePlayer` parses a VHS-style `.tape` and plays it in the TUI on a background thread, then quits so the recording is saved: - keys with modifiers and counts (`F8`, `Shift+F8`, `Ctrl+t`, `Down@300ms 3`), `Type@speed`, `Sleep`, `Source`, `Screenshot` - `Wait /regex/` (per line, `Wait+Screen` for the whole screen, `Wait@30s` for a longer timeout) checks the rendered screen - commands for the TUI, built on the same tools as the MCP server: `Caption@3s`, `Highlight@3s "text"` (locate + highlight), `ClearDrawing`, `Tab`, `Integration`, `Action`, `Theme` - `Set`/`Output`/`Require` are skipped (size and file come from the `--record` options); `Hide`/`Show` and unknown commands are reported as `Tape:` warnings and the rest of the tape plays - `CamelMonitor` no longer passes the tape to TamboUI (`tamboui.record.config`); a missing tape file is rejected up front. - Docs: *Scripted Recording* in `camel-jbang-tui-settings.adoc` is now a command reference with an example tape (the GIF above is that tape), tips, and a note for AI agents writing tapes; cross-links from the `--record` option and the AI agents page. ## Testing - `TapePlayerTest` (12) and `CamelMonitorRecordOptionsTest` (10); the whole `camel-jbang-plugin-tui` module passes (1883 tests). - Recorded the example tape end to end against a running integration (`camel tui orders --record=demo.tape --record-size=120x32`): every step shows in the cast at the expected time, no warnings. _Claude Code on behalf of davsclaus_ 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
