feat(tui): add pinned plan drawer for persistent plan visibility#384
Merged
feat(tui): add pinned plan drawer for persistent plan visibility#384
Conversation
When enabled via `[tui] pinned_plan_drawer = true`, plan updates render in a fixed viewport drawer between the active cell and the bottom pane instead of scrolling away as history cells. The drawer updates in place on each PlanUpdate event, keeping the latest plan always visible. - Add `pinned_plan_drawer` config field (default: false) with TOML persistence and /config menu toggle - Extract `render_plan_lines()` shared function from PlanUpdateCell for reuse by both history cells and the new PinnedPlanDrawer widget - Modify `on_plan_update()` to route to drawer or history based on config - Re-propagate setting across /new, /fork, agent switch, and loop reset 🤖 Generated with [Nori](https://usenori.ai) Co-Authored-By: Nori <contact@tilework.tech>
…ersation Previously, toggling the pinned plan drawer on mid-conversation showed nothing because plan updates received while the drawer was disabled were only routed to history cells. Now `pinned_plan` always tracks the latest plan update regardless of drawer state, and rendering is gated on the `pinned_plan_drawer` boolean. Re-enabling the drawer after disabling it also preserves the last plan. 🤖 Generated with [Nori](https://usenori.ai) Co-Authored-By: Nori <contact@tilework.tech>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
🤖 Generated with Nori
pinned_plan_drawerconfig field that renders plan updates in a fixed viewport drawer between the active cell and bottom pane, instead of appending them as scrollable history cellsrender_plan_lines()shared function fromPlanUpdateCellso both the history cell and the newPinnedPlanDrawerwidget use identical rendering/configmenu toggle, and re-propagation across/new,/fork, agent switch, and loop resetTest Plan
pinned_plan_drawer = truein~/.nori/cli/config.tomland verify plan updates appear in a fixed drawer above the composer/configmenu mid-session and verify behavior switches correctly/newand verify the setting persists across session resetscargo test -p nori-tui -p codex-acp(all 1003+ tests pass)Share Nori with your team: https://www.npmjs.com/package/nori-skillsets