diff --git a/packages/client/src/components/hermes/chat/ChatPanel.vue b/packages/client/src/components/hermes/chat/ChatPanel.vue index e171511..77dade5 100644 --- a/packages/client/src/components/hermes/chat/ChatPanel.vue +++ b/packages/client/src/components/hermes/chat/ChatPanel.vue @@ -38,6 +38,7 @@ const { t } = useI18n(); const showDrawer = ref(false); const drawerActiveTab = ref<"terminal" | "files">("files"); const showOutline = ref(false); +const messageListRef = ref | null>(null); const currentMode = ref<"chat" | "live">("chat"); @@ -72,6 +73,10 @@ function openSessionInNewTab(sessionId: string) { window.open(sessionHref(sessionId), "_blank", "noopener,noreferrer"); } +function handleOutlineNavigate(target: { messageId: string; anchorId: string }) { + messageListRef.value?.scrollToAnchor(target.messageId, target.anchorId); +} + async function handleSessionClick(sessionId: string) { await router.push({ name: "hermes.session", @@ -1201,9 +1206,13 @@ async function handleSessionModelCustomSubmit() {