Add session persistence and browser functionality
Some checks failed
Release / Build aarch64-unknown-linux-gnu (push) Has been cancelled
Release / Build aarch64-unknown-linux-musl (push) Has been cancelled
Release / Build armv7-unknown-linux-gnueabihf (push) Has been cancelled
Release / Build armv7-unknown-linux-musleabihf (push) Has been cancelled
Release / Build x86_64-unknown-linux-gnu (push) Has been cancelled
Release / Build x86_64-unknown-linux-musl (push) Has been cancelled
Release / Build aarch64-apple-darwin (push) Has been cancelled
Release / Build x86_64-apple-darwin (push) Has been cancelled
Release / Build aarch64-pc-windows-msvc (push) Has been cancelled
Release / Build x86_64-pc-windows-msvc (push) Has been cancelled
Release / Create Release (push) Has been cancelled
Some checks failed
Release / Build aarch64-unknown-linux-gnu (push) Has been cancelled
Release / Build aarch64-unknown-linux-musl (push) Has been cancelled
Release / Build armv7-unknown-linux-gnueabihf (push) Has been cancelled
Release / Build armv7-unknown-linux-musleabihf (push) Has been cancelled
Release / Build x86_64-unknown-linux-gnu (push) Has been cancelled
Release / Build x86_64-unknown-linux-musl (push) Has been cancelled
Release / Build aarch64-apple-darwin (push) Has been cancelled
Release / Build x86_64-apple-darwin (push) Has been cancelled
Release / Build aarch64-pc-windows-msvc (push) Has been cancelled
Release / Build x86_64-pc-windows-msvc (push) Has been cancelled
Release / Create Release (push) Has been cancelled
- Implement `StorageManager` for saving, loading, and managing sessions. - Introduce platform-specific session directories for persistence. - Add session browser UI for listing, loading, and deleting saved sessions. - Enable AI-generated descriptions for session summaries. - Update configurations to support storage settings and description generation. - Extend README and tests to document and validate new functionality.
This commit is contained in:
32
README.md
32
README.md
@@ -42,7 +42,9 @@ The OWLEN interface features a clean, multi-panel layout with vim-inspired navig
|
||||
- **Visual Selection & Clipboard** - Yank/paste text across panels
|
||||
- **Flexible Scrolling** - Half-page, full-page, and cursor-based navigation
|
||||
- **Model Management** - Interactive model and provider selection (press `m`)
|
||||
- **Session Management** - Start new conversations, clear history
|
||||
- **Session Persistence** - Save and load conversations to/from disk
|
||||
- **AI-Generated Descriptions** - Automatic short summaries for saved sessions
|
||||
- **Session Management** - Start new conversations, clear history, browse saved sessions
|
||||
- **Thinking Mode Support** - Dedicated panel for extended reasoning content
|
||||
- **Bracketed Paste** - Safe paste handling for multi-line content
|
||||
|
||||
@@ -139,6 +141,15 @@ cargo build --release --bin owlen-code --features code-client
|
||||
- `:m` / `:model` - Open model selector
|
||||
- `:n` / `:new` - Start new conversation
|
||||
- `:h` / `:help` - Show help
|
||||
- `:save [name]` / `:w [name]` - Save current conversation
|
||||
- `:load` / `:open` - Browse and load saved sessions
|
||||
- `:sessions` / `:ls` - List saved sessions
|
||||
|
||||
**Session Browser** (accessed via `:load` or `:sessions`):
|
||||
- `j` / `k` / `↑` / `↓` - Navigate sessions
|
||||
- `Enter` - Load selected session
|
||||
- `d` - Delete selected session
|
||||
- `Esc` - Close browser
|
||||
|
||||
### Panel Management
|
||||
- Three panels: Chat, Thinking, and Input
|
||||
@@ -164,6 +175,22 @@ base_url = "http://localhost:11434"
|
||||
timeout = 300
|
||||
```
|
||||
|
||||
### Storage Settings
|
||||
|
||||
Sessions are saved to platform-specific directories by default:
|
||||
- **Linux**: `~/.local/share/owlen/sessions`
|
||||
- **Windows**: `%APPDATA%\owlen\sessions`
|
||||
- **macOS**: `~/Library/Application Support/owlen/sessions`
|
||||
|
||||
You can customize this in your config:
|
||||
|
||||
```toml
|
||||
[storage]
|
||||
# conversation_dir = "~/custom/path" # Optional: override default location
|
||||
max_saved_sessions = 25
|
||||
generate_descriptions = true # AI-generated summaries for saved sessions
|
||||
```
|
||||
|
||||
Configuration is automatically saved when you change models or providers.
|
||||
|
||||
## Repository Layout
|
||||
@@ -226,9 +253,10 @@ cargo fmt
|
||||
- [x] Bracketed paste support
|
||||
|
||||
### In Progress
|
||||
- [x] Session persistence (save/load conversations)
|
||||
- [ ] Theming options and color customization
|
||||
- [ ] Enhanced configuration UX (in-app settings)
|
||||
- [ ] Chat history management (save/load/export)
|
||||
- [ ] Conversation export (Markdown, JSON, plain text)
|
||||
|
||||
### Planned
|
||||
- [ ] Code Client Enhancement
|
||||
|
||||
Reference in New Issue
Block a user