docs: v0.29 release notes for CLI session bridge, version bump

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nathan Esquenazi
2026-04-03 20:39:27 -07:00
parent 017d7f1eca
commit 122fe955b6
3 changed files with 31 additions and 4 deletions

View File

@@ -5,6 +5,33 @@
---
## [v0.29] CLI Session Bridge (Community: @thadreber-web)
*April 3, 2026 | 426 tests*
### Features
- **CLI session bridge.** The WebUI now reads sessions from the hermes-agent's
SQLite store (`state.db`). CLI sessions appear in the sidebar with a gold
"cli" indicator badge. Click to import into the WebUI store with full message
history — replies then work through the normal agent pipeline.
- **`/api/session/import_cli` endpoint.** Imports a CLI session into the WebUI
JSON store. Idempotent — returns existing session if already imported.
Derives title from first message, inherits active profile and workspace.
- **`/api/sessions` merges CLI sessions.** Sidebar shows both WebUI and CLI
sessions sorted by last activity. Deduplication ensures WebUI sessions take
priority when the same session_id exists in both stores.
- **CLI session fallback on `/api/session`.** If a session_id isn't found in
the WebUI store, falls back to reading from the CLI SQLite store.
### Architecture
- `api/models.py`: `get_cli_sessions()`, `get_cli_session_messages()`,
`import_cli_session()`. All use parameterized SQL queries and `with` for
connection management. Graceful fallback on missing sqlite3 or state.db.
- `api/routes.py`: CLI fallback in GET `/api/session`, merged list in
GET `/api/sessions`, POST `/api/session/import_cli`.
- `static/style.css`: `.cli-session` indicator styles (gold border + badge).
---
## [v0.28.1] CI Pipeline + Multi-Arch Docker Builds
*April 3, 2026 | 426 tests*
@@ -917,4 +944,4 @@ Three-panel layout: sessions sidebar, chat area, workspace panel.
---
*Last updated: v0.28.1, April 3, 2026 | Tests: 426*
*Last updated: v0.29, April 3, 2026 | Tests: 426*

View File

@@ -1,6 +1,6 @@
# Hermes Web UI -- Forward Sprint Plan
> Current state: v0.28.1 | 426 tests | Daily driver ready
> Current state: v0.29 | 426 tests | Daily driver ready
> This document plans the path from here to two targets:
>
> Target A: 1:1 feature parity with the Hermes CLI (everything you can do from the
@@ -663,5 +663,5 @@ and switchToProfile() didn't refresh workspaces or sessions.
---
*Last updated: April 3, 2026*
*Current version: v0.28.1 | 426 tests*
*Current version: v0.29 | 426 tests*
*Next sprint: Sprint 24 (Desktop Application)*

View File

@@ -13,7 +13,7 @@
<body>
<div class="layout">
<aside class="sidebar">
<div class="sidebar-header"><div class="logo">H</div><div><h1 style="margin:0;font-size:15px;font-weight:700;letter-spacing:-.01em">Hermes</h1><div style="font-size:10px;color:var(--muted);opacity:.8;margin-top:1px">v0.27</div></div></div>
<div class="sidebar-header"><div class="logo">H</div><div><h1 style="margin:0;font-size:15px;font-weight:700;letter-spacing:-.01em">Hermes</h1><div style="font-size:10px;color:var(--muted);opacity:.8;margin-top:1px">v0.29</div></div></div>
<div class="sidebar-nav">
<button class="nav-tab active" data-panel="chat" data-label="Chat" onclick="switchPanel('chat')" title="Chat">&#128172;</button>
<button class="nav-tab" data-panel="tasks" data-label="Tasks" onclick="switchPanel('tasks')" title="Tasks">&#128197;</button>