Skip to content

Commit c6df97a

Browse files
jsell-rhclaude
andcommitted
feat(ambient-ui): chat tab, action bar, persistent sidebar, tool args
Chat tab: - Markdown rendering for user and assistant messages (react-markdown + remark-gfm) - Tool call/result grouping into single collapsible blocks - Extract last_assistant_message from system events when assistant payload is empty - Dark mode support (semantic Tailwind tokens, no hardcoded hex) - Scroll-to-top/bottom buttons with tooltips, matching old frontend pattern - Input hint text below textarea, removed redundant phase badge from input Action bar: - Stop/Restart as primary buttons, Export/Delete in 3-dot dropdown menu - Delete with confirmation dialog, navigates to fleet on success - AlertDialog shadcn component added Persistent chat sidebar: - Pop-out button on Chat tab opens right-edge sidebar - Sidebar persists across page navigation (context at dashboard layout level) - Resizable by dragging, collapsible to narrow strip - Session name in header links to session detail page - Chat icon on fleet table rows opens sidebar - Only one sidebar at a time, replacing on new session Runner: - Accumulate tool args from TOOL_CALL_ARGS events, push on TOOL_CALL_END - Tool use messages now include full input arguments - Updated tests for accumulation flow (22 passing) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 6be7895 commit c6df97a

17 files changed

Lines changed: 1504 additions & 496 deletions

File tree

components/ambient-ui/src/adapters/sdk-sessions.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,10 @@ function createSdkSessionsAdapter(api: SessionAPI): SessionsPort {
5151
const session = await api.start(sessionId)
5252
return mapSdkSessionToDomain(session)
5353
},
54+
55+
async delete(sessionId: string): Promise<void> {
56+
await api.delete(sessionId)
57+
},
5458
}
5559
}
5660

0 commit comments

Comments
 (0)