Skip to content

Conversation

@snqb
Copy link

@snqb snqb commented Feb 7, 2026

Problem

When running pi directly with a TTY, ctx.hasUI can sometimes be false even though the TUI is fully functional and ctx.ui is available.

This causes the tool to return:

Interactive shell requires interactive TUI mode

Solution

Check for ctx.ui existence as a fallback when hasUI is false. If the UI object exists, overlay methods will work.

Changes

-if (!ctx.hasUI) {
+if (!ctx.hasUI && !ctx.ui) {

This is a non-breaking change - the check is now more permissive, allowing the tool to work in edge cases where the TUI is available but the flag is incorrectly set.

When running 'pi' directly with a TTY, ctx.hasUI can sometimes be false
even though the TUI is fully functional and ctx.ui is available.

This fix allows the interactive shell to work if ctx.ui exists,
regardless of the hasUI flag.
@snqb
Copy link
Author

snqb commented Feb 7, 2026

hey, fully vibe-coded and vibe-discovered
just thought would not hurt to report

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant