chore: audit changelog entries for v0.47.0, add cl.md prompt template

- Add missing changelog entries for commits since v0.47.0
- Cross-duplicate ai/tui fixes to coding-agent changelog
- Change PI_NO_HARDWARE_CURSOR to PI_HARDWARE_CURSOR (opt-in)
- Fix typo in PI_CODING_AGENT_DIR changelog entry
- Add .pi/prompts/cl.md for pre-release changelog audits
This commit is contained in:
Mario Zechner 2026-01-16 20:55:20 +01:00
parent 48b4324155
commit 0c33e0dee5
6 changed files with 67 additions and 7 deletions

View file

@ -2,13 +2,13 @@
## [Unreleased]
### Added
### Changed
- `PI_NO_HARDWARE_CURSOR=1` environment variable to disable hardware cursor positioning for terminals with limited escape sequence support (e.g., IntelliJ IDEA's built-in terminal)
- Hardware cursor is now disabled by default for better terminal compatibility. Set `PI_HARDWARE_CURSOR=1` to enable (replaces `PI_NO_HARDWARE_CURSOR=1` which disabled it).
### Fixed
- Decode Kitty CSI-u printable sequences in the editor so shifted symbol keys (e.g., `@`, `?`) work in terminals that enable Kitty keyboard protocol
- Decode Kitty CSI-u printable sequences in the editor so shifted symbol keys (e.g., `@`, `?`) work in terminals that enable Kitty keyboard protocol ([#779](https://github.com/badlogic/pi-mono/pull/779) by [@iamd3vil](https://github.com/iamd3vil))
## [0.47.0] - 2026-01-16

View file

@ -208,6 +208,7 @@ export class TUI extends Container {
private hardwareCursorRow = 0; // Actual terminal cursor row (may differ due to IME positioning)
private inputBuffer = ""; // Buffer for parsing terminal responses
private cellSizeQueryPending = false;
private useHardwareCursor = process.env.PI_HARDWARE_CURSOR === "1";
// Overlay stack for modal components rendered on top of base content
private overlayStack: {
@ -981,8 +982,8 @@ export class TUI extends Container {
* @param totalLines Total number of rendered lines
*/
private positionHardwareCursor(cursorPos: { row: number; col: number } | null, totalLines: number): void {
// PI_NO_HARDWARE_CURSOR=1 disables hardware cursor for terminals that don't handle it well
if (process.env.PI_NO_HARDWARE_CURSOR === "1") {
// PI_HARDWARE_CURSOR=1 enables hardware cursor (disabled by default due to terminal compatibility issues)
if (!this.useHardwareCursor) {
this.terminal.hideCursor();
return;
}