Commit Graph

132 Commits

Author SHA1 Message Date
Matt Low c68cb14eb9 tui: Initial rough conversation list view 2024-03-30 20:50:33 -06:00
Matt Low cef87a55d8 tui: initial wiring of different "app states" 2024-03-30 20:50:33 -06:00
Matt Low 29519fa2f3 Add -a/-c shorthands for `lmcli list --all/--count` 2024-03-30 20:50:20 -06:00
Matt Low 2e3779ad32 tui: remove temporary edit file 2024-03-29 22:26:28 +00:00
Matt Low 9cd28d28d7 tui: renamed uiCache to views, cleanup 2024-03-29 20:56:39 +00:00
Matt Low 0b991800d6 tui: dynamic input textarea height and styling updates
Maintain a height of 4 up to half of the main content area

Add rounded border
2024-03-29 20:00:28 +00:00
Matt Low 5af857edae tui: truncate title to width 2024-03-29 15:48:50 +00:00
Matt Low 3e24a54d0a tui: add border above input 2024-03-28 06:53:39 +00:00
Matt Low a669313a0b tui: add tool rendering
cleaned up message rendering and changed cache semantics

other smaller tweaks
2024-03-26 08:06:46 +00:00
Matt Low 6310021dca tui: improve footer truncation 2024-03-23 04:08:48 +00:00
Matt Low ef929da68c tui: add uiCache
Clean up/fix how we calculate the height of the content viewport
2024-03-23 03:55:20 +00:00
Matt Low c51644e78e Add dir_tree tool 2024-03-22 20:30:34 +00:00
Matt Low 91c74d9e1e Update CreateChatCompletion behavior
When the last message in the passed messages slice is an assistant
message, treat it as a partial message that is being continued, and
include its content in the newly created reply

Update TUI code to handle new behavior
2024-03-22 20:02:28 +00:00
Matt Low 3185b2d7d6 tui: show the message position when focused 2024-03-17 22:55:02 +00:00
Matt Low 6c64f21d9a tui: support for message retry/continue
Better handling of persistence, and we now ensure the response we
persist is trimmed of whitespace, particularly important when a response
is cancelled mid-stream
2024-03-17 22:55:02 +00:00
Matt Low 6f737ad19c tui: handle text wrapping ourselves, add ctrl+w wrap toggle
Gets rid of those pesky trailing characters
2024-03-17 22:55:02 +00:00
Matt Low a8ffdc156a tui: open input/messages for editing in $EDITOR 2024-03-17 22:55:02 +00:00
Matt Low 7a974d9764 tui: add ability to select a message 2024-03-17 22:55:02 +00:00
Matt Low adb61ffa59 tui: conversation rendering tweaks, remove input character limit 2024-03-17 22:55:02 +00:00
Matt Low 1c7ad75fd5 tui: fixed response cancelling 2024-03-17 22:55:02 +00:00
Matt Low 613aa1a552 tui: ctrl+r to retry previous message 2024-03-17 22:55:02 +00:00
Matt Low 71833b89cd tui: fixed footer styling 2024-03-17 22:55:02 +00:00
Matt Low 2ad93394b1 tui: removed scrollbar 2024-03-17 22:55:02 +00:00
Matt Low f49b772960 tui: minor fixed and cleanup 2024-03-17 22:55:02 +00:00
Matt Low 29d8138dc0 tui: update lodos 2024-03-17 22:55:02 +00:00
Matt Low 3756f6d9e4 tui: add response waiting spinner 2024-03-17 22:55:02 +00:00
Matt Low 41916eb7b3 tui: add LLM response error handling
+ various other small tweaks
2024-03-17 22:55:02 +00:00
Matt Low 3892e68251 tui: add a "scroll bar" and error view 2024-03-17 22:55:02 +00:00
Matt Low 8697284064 tui: generate titles for conversations 2024-03-17 22:55:02 +00:00
Matt Low 383d34f311 tui: persist new conversations as well 2024-03-17 22:55:02 +00:00
Matt Low ac0e380244 tui: add reply persistence 2024-03-17 22:55:02 +00:00
Matt Low c3a3cb0181 tui: improve footer rendering
Made it easier to add segmemts later, better handling of padding
2024-03-17 22:55:02 +00:00
Matt Low 612ea90417 tui: slight function order change 2024-03-17 22:55:02 +00:00
Matt Low 94508b1dbf tui: cache highlighted messages
Syntax highlighting is fairly expensive, and this means we no longer
need to do syntax highlighting on the entire conversaion each time a new
message chunk is received
2024-03-17 22:55:02 +00:00
Matt Low 7e002e5214 tui: adjust message header styling 2024-03-17 22:55:02 +00:00
Matt Low 48e4dea3cf tui: style tweaks 2024-03-17 22:55:02 +00:00
Matt Low 0ab552303d tui: add contentStyle, applied to overall viewport content 2024-03-17 22:55:02 +00:00
Matt Low 6ce42a77f9 tui: update TODO 2024-03-17 22:55:02 +00:00
Matt Low 2cb1a0005d tui: fix conversation loading 2024-03-17 22:55:02 +00:00
Matt Low ea78edf039 tui: use EnabledTools from lmcli.Context 2024-03-17 22:55:02 +00:00
Matt Low 793aaab50e tui: styling tweak 2024-03-17 22:55:02 +00:00
Matt Low 5afc9667c7 tui: add header with title 2024-03-17 22:55:02 +00:00
Matt Low dfafc573e5 tui: handle multi part responses 2024-03-17 22:55:02 +00:00
Matt Low 97f81a0cbb tui: scroll content view with output
clean up msgResponseChunk handling
2024-03-17 22:55:02 +00:00
Matt Low eca120cde6 tui: ability to cancel request in flight 2024-03-17 22:55:02 +00:00
Matt Low 12d4e495d4 tui: add focus switching between input/messages view 2024-03-17 22:55:02 +00:00
Matt Low d8c8262890 tui: removed confirm before send, dynamic footer
footer now rendered based on model data, instead of being set to a fixed
string
2024-03-17 22:55:02 +00:00
Matt Low 758f74aba5 tui: use ctx chroma highlighter 2024-03-17 22:55:02 +00:00
Matt Low 1570c23d63 Add initial TUI 2024-03-17 22:55:02 +00:00
Matt Low 46149e0b67 Attempt to fix anthropic tool calling
Models have been way too eager to use tools when the task does not
require it (for example, reading the filesystem in order to show an
code example)
2024-03-17 22:55:02 +00:00