darrenburns/elia
A snappy, keyboard-centric terminal user interface for interacting with large language models. Chat with ChatGPT, Claude, Llama 3, Phi 3, Mistral, Gemma and more.
✨ Added
- Added theme system.
- Added support for user defined themes.
- Listed theme directory at bottom of options modal.
- Added several builtin themes.
- Tooltips now appear when hovering over some actions in the footer with the mouse.
- Show welcome message when there are no chats.
- Alt+Enter keybinding to send message on terminals that support the Kitty key protocol.
- Visual indicator that we're waiting for a response to be received, before streaming starts.
- + 1 more
📋 Changed
- Changed default theme.
- Upgraded to latest Textual.
- Minor style tweaks in various places.
- Visual indication that you cannot send a message while agent is responding.
- Starting a new chat is now much faster as it is optimistic.
- Chat list border subtitle now shows index of highlighted chat as well as total number of chats.
- Text selection notification message changed.
- Rendered Markdown background colour adapts automatically based on chosen theme.
🐛 Fixed
- Prevent sending message while agent is responding.
- Full Changelog: https://github.com/darrenburns/elia/compare/1.9.0...1.10.0
📋 Changes
- vim keys
- upgrade textual
- new textual footer
- fix colours in radioset in options menu
- move from rye to uv
- `alt+enter` alternative keybind for sending a message
- way faster startup time/responsiveness
- cleanly handle exception if no clipboard mechanism is installed
📋 What's Changed
- Cleanly handle exception if no clipboard mechanism is installed by @seapagan in https://github.com/darrenburns/elia/pull/74
- 8sep improvements by @darrenburns in https://github.com/darrenburns/elia/pull/78
- Fix datetime timezone reference and improve asynchronous handling by @CharlesCNorton in https://github.com/darrenburns/elia/pull/44
✨ New Contributors
- @seapagan made their first contribution in https://github.com/darrenburns/elia/pull/74
- @CharlesCNorton made their first contribution in https://github.com/darrenburns/elia/pull/44
- Full Changelog: https://github.com/darrenburns/elia/compare/1.8.0...1.9.0
Adds support for the new Claude 3.5 Sonnet model. 
Adds ability to rename chats. Press `ctrl+r` while on the chat screen, or click the chat title:  **Full Changelog**: https://github.com/darrenburns/elia/compare/1.6.1...1.7.0
Fixes temperature parameter being interpreted as integer instead of float. **Full Changelog**: https://github.com/darrenburns/elia/compare/1.6.0...1.6.1
📋 What's Changed
- Adds support for "inline" mode, which allows you to chat with Elia without going fullscreen. The conversation will appear under your prompt in your terminal. This is not supported on Windows.
- 
- Added ability to archive chats by pressing `a` when a chat is highlighted in the chat list.
- 
- Added config option `message_code_theme` to choose syntax highlighting theme for code in messages - any Pygments theme is supported. The example below is `message_code_theme = "fruity"`.
- <img width="750" alt="image" src="https://github.com/darrenburns/elia/assets/5740731/7b5e5235-1d2b-47fe-961b-437a17d8d79b">
- Changes the default model from gpt-3.5-turbo to gpt-4o.
- Copying text to clipboard should work in more environments (switched to use `pyperclip`).
- + 3 more
📋 What's Changed
- Add builtin models for Google Gemini by @darrenburns in https://github.com/darrenburns/elia/pull/42
- Fixed crash when jumping to next code block on messages with no code blocks.
- Full Changelog: https://github.com/darrenburns/elia/compare/1.4.0...1.5.0
📋 Changes
- Pressing up while on the top message in the chat list will move focus to the prompt box above it, instead of wrapping to the bottom it (you can use `G` to jump to the bottom item in the list).
- Pressing down while the latest chat message is focused will now focus the prompt box below it, instead of wrapping round to the top chatbox (you can use `g` to jump to the first message).
- Pressing <kbd>→</kbd> while a chat is highlighted in the chat list will now open the chat (in addition to the pre-existing keybinds of <kbd>enter</kbd> and `l`)
📋 What's Changed
- More intuitive cursor movement by @darrenburns in https://github.com/darrenburns/elia/pull/41
- Full Changelog: https://github.com/darrenburns/elia/compare/1.3.0...1.4.0
Adds GPT-4o. 
Adds visual select mode - press `v` and you can select text without holding shift. Press `u` to quickly move your selection between code blocks in a message, followed by `y` to copy/yank the selection to your clipboard. https://github.com/darrenburns/elia/assets/5740731/738606e3-6493-408d-9afd-d3e1285e450d **Full Changelog**: https://github.com/darrenburns/elia/compare/1.1.0...1.2.0
📋 Changes
- Snappier feel to chats - message gets added to chat immediately
- A bunch of UX/keybinding improvements
- Visual mode when copying message content
- Several new fields in the model config (api_base, organization, api_key)
- LocalAI support
- Ability to have multiple instances of a model, e.g. a gpt-3.5 with your work org and personal org.
Fixes escaping issue. User message should be syntax highlighted as Markdown, but not rendered as Markdown.
Fix for Apple Silicon.
📋 What's Changed
- Tiny update, nothing to see here by @darrenburns in https://github.com/darrenburns/elia/pull/28
- Full Changelog: https://github.com/darrenburns/elia/compare/0.5.0...1.0.0
📋 What's Changed
- GPT-4 now uses GPT-4-Turbo model, by @barabum0 in https://github.com/darrenburns/elia/pull/22
✨ New Contributors
- @barabum0 made their first contribution in https://github.com/darrenburns/elia/pull/22
- Full Changelog: https://github.com/darrenburns/elia/compare/0.4.1...0.5.0
📋 What's Changed
- feat: use langchain abstraction by @juftin in https://github.com/darrenburns/elia/pull/7
- Upgrades to Textual 0.46.0.
- Fix broken CSS causing blue outline instead of purple outline when sidebar was focused.
- Full Changelog: https://github.com/darrenburns/elia/compare/0.3.0...0.4.1
📋 What's Changed
- feat: start chat from CLI by @juftin in https://github.com/darrenburns/elia/pull/4
- Full Changelog: https://github.com/darrenburns/elia/compare/0.2.0...0.3.0
📋 What's Changed
- remove pycache and add gitignore by @TomJGooding in https://github.com/darrenburns/elia/pull/1
- ✨ installable elia by @juftin in https://github.com/darrenburns/elia/pull/3
- elia can be pipx installed
- Adds `elia` CLI (`elia reset` and `elia import`)
- Fixed time zones issue
- Adds `ELIA_DIRECTIVE` env var for setting system message
- Changes database file location
✨ New Contributors
- @TomJGooding made their first contribution in https://github.com/darrenburns/elia/pull/1
- @juftin made their first contribution in https://github.com/darrenburns/elia/pull/3
- Full Changelog: https://github.com/darrenburns/elia/commits/0.2.0
