Mario Zechner
71cbae6371
Export wrapTextWithAnsi utility and add handleInput docs
...
- Export wrapTextWithAnsi from tui package
- Add 'Handling Input' section to README with key detection example
- Document wrapTextWithAnsi in utilities section
2025-12-30 23:28:38 +01:00
Mario Zechner
1d3203fd3d
Expand tui README: Component interface docs and custom component guide
...
- Document render/handleInput/invalidate methods in Component interface
- Add 'Creating Custom Components' section with:
- Width constraint warning (lines must not exceed width)
- Examples using truncateToWidth and visibleWidth
- ANSI code handling explanation
- Caching pattern for performance
2025-12-30 23:26:21 +01:00
Mario Zechner
adbe0c9b4f
Update tui CHANGELOG and README
...
- Add changelog entries for new key detection functions and TUI.onDebug
- Completely rewrite README with accurate documentation:
- All components documented (added TruncatedText, SettingsList)
- All theme interfaces documented (EditorTheme, MarkdownTheme, SelectListTheme, SettingsListTheme, ImageTheme)
- Fixed incorrect constructor signatures
- Added key detection utilities section
- Added utilities section
2025-12-30 23:22:41 +01:00
Mario Zechner
e4df5d14b5
Tree selector improvements: active line highlight and tool filter
...
- Add inverse background highlight for selected/active line
- Add 'no-tools' filter mode to hide tool results
- Add isShiftCtrlO to cycle filters backwards
- Filter order: default → no-tools → user-only → labeled-only → all
2025-12-30 22:42:25 +01:00
Mario Zechner
9427211f99
fix(tui): render HTML tags as plain text in Markdown component
...
Handles both block-level and inline HTML tags that were previously
silently dropped.
fixes #359
2025-12-30 22:42:24 +01:00
Mario Zechner
544814875e
Add global debug key (Shift+Ctrl+D), iterative tree sorting to avoid stack overflow
2025-12-30 22:42:22 +01:00
Mario Zechner
0e8173af00
Release v0.30.2
2025-12-26 03:25:55 +01:00
Mario Zechner
9dcb0bdba4
Release v0.30.1
...
fixes #320
2025-12-26 03:13:37 +01:00
Mario Zechner
6d97d212d5
Release v0.30.0
2025-12-25 20:35:14 +01:00
Mario Zechner
4edfff41a7
Merge pull request #315 from mitsuhiko/model-switcher
...
Reverse model switching and binding for dialog
2025-12-25 18:33:42 +01:00
Mario Zechner
19dde0a988
Release v0.29.1
2025-12-25 18:10:11 +01:00
Armin Ronacher
b576a527c7
Reverse model switching and binding for dialog
2025-12-25 18:07:36 +01:00
Mario Zechner
b4f7a957c4
Add /settings command with unified settings menu ( #312 )
...
* Add /settings command with unified settings menu
- Add SettingsList component to tui package with support for:
- Inline value cycling (Enter/Space toggles)
- Submenus for complex selections
- Selection preservation when returning from submenu
- Add /settings slash command consolidating:
- Auto-compact (toggle)
- Show images (toggle)
- Queue mode (cycle)
- Hide thinking (toggle)
- Collapse changelog (toggle)
- Thinking level (submenu)
- Theme (submenu with preview)
- Update AGENTS.md to clarify no inline imports rule
Fixes #310
* Add /settings to README slash commands table
* Remove old settings slash commands, consolidate into /settings
- Remove /thinking, /queue, /theme, /autocompact, /show-images commands
- Remove unused selector methods and imports
- Update README references to use /settings
2025-12-25 15:39:42 +01:00
Mario Zechner
58c02ce02b
Add [Unreleased] section to changelogs
2025-12-25 04:17:41 +01:00
Mario Zechner
b48a0c9328
Release v0.29.0
2025-12-25 04:16:42 +01:00
Mario Zechner
454ea1d36a
Rename /clear to /new, update hook events to before_new/new
...
Closes #305 - took direct rename approach instead of alias system
Thanks @mitsuhiko for the nudge!
2025-12-25 04:15:10 +01:00
Ahmed Kamal
0427445242
Fix Ctrl+W to use standard readline word deletion behavior ( #306 )
...
- Skip trailing whitespace before deleting word (readline behavior)
- Make word navigation grapheme-aware using Intl.Segmenter
- Add Ctrl+Left/Right and Alt+Left/Right word navigation to Input
- Accept full Unicode input while rejecting control characters (C0/C1/DEL)
- Extract shared utilities to utils.ts (getSegmenter, isWhitespaceChar, isPunctuationChar)
- Fix unsafe cast in Editor.forceFileAutocomplete with runtime type check
- Add comprehensive tests for word deletion and navigation
2025-12-25 04:09:47 +01:00
Armin Ronacher
65cbc22d7c
Add safety-space before pasting ( #307 )
...
* Add safety space when dropping in paths
* Add safety space when dropping in paths
2025-12-25 04:05:53 +01:00
Mario Zechner
1059d39d54
Add removeRuntimeApiKey to AuthStorage
2025-12-25 03:57:20 +01:00
Mario Zechner
030788140a
WIP: Remove global state from pi-ai OAuth/API key handling
...
- Remove setApiKey, resolveApiKey, and global apiKeys Map from stream.ts
- Rename getApiKey to getApiKeyFromEnv (only checks env vars)
- Remove OAuth storage layer (storage.ts deleted)
- OAuth login/refresh functions now return credentials instead of saving
- getOAuthApiKey/refreshOAuthToken now take credentials as params
- Add test/oauth.ts helper for ai package tests
- Simplify root npm run check (single biome + tsgo pass)
- Remove redundant check scripts from most packages
- Add web-ui and coding-agent examples to biome/tsgo includes
coding-agent still has compile errors - needs refactoring for new API
2025-12-25 01:01:03 +01:00
Mario Zechner
8fdd77b652
Release v0.27.9
2025-12-24 21:25:20 +01:00
Mario Zechner
a965b6f160
Release v0.27.8 - OAuth takes priority over settings.json API keys
2025-12-24 20:52:22 +01:00
Mario Zechner
89630b0d44
Release v0.27.7
2025-12-24 18:30:53 +01:00
Mario Zechner
3eb460ee50
Release v0.27.6
2025-12-24 13:59:09 +01:00
Mario Zechner
bf313d2713
Release v0.27.5
2025-12-24 12:18:51 +01:00
Nico Bailon
e904b11e7b
Fix Ghostty detection inside tmux for inline images ( #299 )
2025-12-24 12:04:41 +01:00
Mario Zechner
20b24cf5a4
Fix symlinked skill directories not being discovered
...
Release v0.27.4
2025-12-24 03:32:54 +01:00
Mario Zechner
f8619c1564
Release v0.27.3
2025-12-24 02:46:23 +01:00
Mario Zechner
c57ed89110
Release v0.27.2
2025-12-23 03:48:52 +01:00
Mario Zechner
4492a3f304
Release v0.27.1
2025-12-22 19:28:26 +01:00
Mario Zechner
b9b44f4cf4
Release v0.27.0
2025-12-22 18:20:10 +01:00
Mario Zechner
31f4a588fd
TUI: Improve file completion display ( fixes #280 )
2025-12-22 16:36:42 +01:00
Mario Zechner
7e1b632596
Release v0.26.1
2025-12-22 16:19:19 +01:00
Mario Zechner
42bc368e70
Release v0.26.0
2025-12-22 12:53:58 +01:00
Mario Zechner
11e743373d
Fix syntax highlighting stderr spam with malformed markdown, fixes #274
2025-12-22 00:23:01 +01:00
Mario Zechner
d5fd685901
Enable more biome lints and fix things
2025-12-21 22:56:20 +01:00
Mario Zechner
9c18439c4d
Release v0.25.3
2025-12-21 21:01:27 +01:00
Aliou Diallo
8868d623fc
feat(coding-agent): add Ctrl+Z to suspend process ( #267 )
...
* feat(tui): add isCtrlZ key detection and resetRenderState method
* feat(coding-agent): add Ctrl+Z handler to suspend process
* docs(coding-agent): add Ctrl+Z to keyboard shortcuts documentation
* feat(tui): add force parameter to requestRender
2025-12-21 20:19:32 +01:00
Aliou Diallo
afedf1707a
feat(tui): add isCtrlG key detection
2025-12-21 12:06:57 +01:00
Mario Zechner
299986f06b
Release v0.25.2
2025-12-21 02:59:03 +01:00
Mario Zechner
c97702cf91
Release v0.25.1
2025-12-21 02:43:47 +01:00
Mario Zechner
918750eb9e
Fix tab completion for absolute paths
...
- Fix //tmp issue: distinguish slash commands from file paths by checking if anything precedes the /
- Fix symlinks to directories (like /tmp) not getting trailing slash
2025-12-21 02:41:38 +01:00
Mario Zechner
df07a74ad5
Release v0.25.0
2025-12-20 22:02:47 +01:00
Mario Zechner
36e17933d5
feat(ai): add Google Cloud Code Assist provider
...
- Add new API type 'google-cloud-code-assist' for Gemini CLI / Antigravity auth
- Extract shared Google utilities to google-shared.ts
- Implement streaming provider for Cloud Code Assist endpoint
- Add 7 models: gemini-3-pro-high/low, gemini-3-flash, claude-sonnet/opus, gpt-oss
Models use OAuth authentication and have sh cost (uses Google account quota).
OAuth flow will be implemented in coding-agent in a follow-up.
2025-12-20 10:20:30 +01:00
Mario Zechner
085294b764
Release v0.24.5
2025-12-19 22:09:35 +01:00
Mario Zechner
d2276ab654
fix(tui): fix input buffering in iTerm2 causing delayed keypresses
...
The cell size query response parser was incorrectly holding back Kitty
keyboard protocol sequences, thinking they might be incomplete cell size
responses. This caused Ctrl+C/Ctrl+D to require multiple presses in iTerm2.
Fixed by only waiting for more data if the buffer doesn't end with a
terminal escape sequence terminator character.
2025-12-19 22:08:36 +01:00
Mario Zechner
f377c3c9c3
Release v0.24.4
2025-12-19 21:54:36 +01:00
Mario Zechner
65c292b7dd
Fix outdated editor tests for grapheme-aware cursor movement
2025-12-19 21:41:28 +01:00
Mario Zechner
ad4eb3afa6
Release v0.24.3
2025-12-19 21:36:16 +01:00
Mario Zechner
5095b4eb02
Release v0.24.2
2025-12-19 21:12:53 +01:00