Skip to content

Conversation

@pull
Copy link

@pull pull bot commented Dec 30, 2025

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

catrielmuller and others added 30 commits December 22, 2025 16:14
* feat(cli): enable Ink incremental rendering

Enable incrementalRendering option in Ink's render config. This reduces
minor flicker during small UI updates (spinner ticks, status changes)
by having Ink only repaint changed portions of the output.

* fix(cli): prevent terminal scroll-flicker by disabling streaming output

Fix scroll-flicker issue where the terminal jumps to the top on any
re-render in long conversation sessions.

Root cause: Ink redraws the dynamic part of the tree on every update.
With a large message list staying dynamic, even small re-renders (input
updates, spinner ticks) force Ink to repaint the entire region.

Solution: Render only completed messages via Ink's <Static> component:
- Hide all partial (streaming) messages from the UI
- <Static> renders items once and does not re-render prior output
- Typing or spinner updates no longer repaint the conversation history

User-visible change: Messages appear only once complete instead of
streaming character-by-character. Users see loading indicators while
the model generates, then the full message appears.

- splitMessagesAtom now uses hidePartialMessages option
- MessageDisplay simplified to render only staticMessages via <Static>
- Added tests for hidePartialMessages behavior

* fix(cli): improve yoga-layout mocking for CI compatibility

* fix(cli): remove flaky ink render options test

The test was testing mock behavior, not actual functionality.
The incrementalRendering option is a simple config that doesn't need automated testing.

* chore: add changeset for CLI scroll-flicker fix

* chore: shorten changeset
* cli: confirm before exiting on Ctrl+C

* chore: add changeset
* Add basic CLI image pasting support

* fix tests

* fix tests

* fix(cli): use path.join for cross-platform file path construction

* fix(cli): escape file paths in AppleScript to prevent injection

* fix(cli): add error handling for clipboard paste promise rejections

* refactor(cli): remove redundant hasAnyImages variable

* test(cli): add comprehensive tests for processMessageImages

* chore: add changeset for CLI image paste support

* Remove linux support

* Remove rules change

* Remove unused code
…ut file changes (#4725)

* fix: prevent empty checkpoints on every tool use

* Delete .husky/_/pre-push

* Delete .husky/_/post-checkout

* Delete .husky/_/post-commit

* Delete .husky/_/post-merge

* Add changeset and kilocode marker

* Fix conflicts
@pull pull bot locked and limited conversation to collaborators Dec 30, 2025
@pull pull bot added the ⤵️ pull label Dec 30, 2025
@pull pull bot merged commit cee335d into jasonkneen:main Dec 30, 2025
2 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants