diff --git a/desktop/src/renderer/src/layout/SessionList.tsx b/desktop/src/renderer/src/layout/SessionList.tsx
index b969832d..cdc8ab23 100644
--- a/desktop/src/renderer/src/layout/SessionList.tsx
+++ b/desktop/src/renderer/src/layout/SessionList.tsx
@@ -1,8 +1,9 @@
import React, { useEffect, useMemo, useState } from 'react'
-import { Plus, MessageSquare, Pencil, Trash2, Check, X, PanelLeftClose } from 'lucide-react'
+import { Plus, MessageSquare, Pencil, Trash2, Check, X, History } from 'lucide-react'
import { t } from '../i18n'
import { useSessionStore } from '../store/sessionStore'
import { useUIStore } from '../store/uiStore'
+import { usePlatform } from '../hooks/usePlatform'
import type { SessionItem } from '../types'
function groupByTime(sessions: SessionItem[]): { label: string; items: SessionItem[] }[] {
@@ -32,6 +33,14 @@ const SessionList: React.FC = () => {
const { sessions, activeId, loading, loadSessions, loadMore, hasMore, setActive, newSession, rename, remove } =
useSessionStore()
const toggleSessions = useUIStore((s) => s.toggleSessions)
+ const navCollapsed = useUIStore((s) => s.navCollapsed)
+ const { isMac } = usePlatform()
+ // When the nav rail is collapsed on macOS, the native traffic lights spill
+ // past it, so nudge the history button right to keep it (and its sibling in
+ // the main header) clear of the lights and aligned across states.
+ const trafficOffset = isMac && navCollapsed ? 'ml-2' : ''
+ // Nudge header buttons down a touch to sit level with the macOS traffic lights.
+ const trafficDrop = isMac ? 'mt-1' : ''
const [editingId, setEditingId] = useState
(null)
const [editValue, setEditValue] = useState('')
@@ -56,18 +65,18 @@ const SessionList: React.FC = () => {
return (
{/* Header */}
-
+