diff --git a/app/src/components/settings/hooks/useSettingsNavigation.ts b/app/src/components/settings/hooks/useSettingsNavigation.ts index ac742399d..e9368a0dc 100644 --- a/app/src/components/settings/hooks/useSettingsNavigation.ts +++ b/app/src/components/settings/hooks/useSettingsNavigation.ts @@ -23,6 +23,7 @@ export type SettingsRoute = | 'skills' | 'ai' | 'local-model' + | 'memory-data' | 'memory-debug' | 'recovery-phrase' | 'webhooks-debug' @@ -80,6 +81,7 @@ export const useSettingsNavigation = (): SettingsNavigationHook => { if (path.includes('/settings/skills')) return 'skills'; if (path.includes('/settings/ai')) return 'ai'; if (path.includes('/settings/local-model')) return 'local-model'; + if (path.includes('/settings/memory-data')) return 'memory-data'; if (path.includes('/settings/memory-debug')) return 'memory-debug'; if (path.includes('/settings/webhooks-debug')) return 'webhooks-debug'; if (path.includes('/settings/recovery-phrase')) return 'recovery-phrase'; diff --git a/app/src/components/settings/panels/DeveloperOptionsPanel.tsx b/app/src/components/settings/panels/DeveloperOptionsPanel.tsx index 0343d1d01..d2a7fa304 100644 --- a/app/src/components/settings/panels/DeveloperOptionsPanel.tsx +++ b/app/src/components/settings/panels/DeveloperOptionsPanel.tsx @@ -51,6 +51,22 @@ const developerItems = [ ), }, + { + id: 'memory-data', + title: 'Memory Data', + description: 'Knowledge graph, insights, activity heatmap, and file management', + route: 'memory-data', + icon: ( + + + + ), + }, { id: 'memory-debug', title: 'Memory Debug', diff --git a/app/src/components/settings/panels/MemoryDataPanel.tsx b/app/src/components/settings/panels/MemoryDataPanel.tsx new file mode 100644 index 000000000..831554170 --- /dev/null +++ b/app/src/components/settings/panels/MemoryDataPanel.tsx @@ -0,0 +1,33 @@ +import { useState } from 'react'; + +import type { ToastNotification } from '../../../types/intelligence'; +import { MemoryWorkspace } from '../../intelligence/MemoryWorkspace'; +import { ToastContainer } from '../../intelligence/Toast'; +import SettingsHeader from '../components/SettingsHeader'; +import { useSettingsNavigation } from '../hooks/useSettingsNavigation'; + +const MemoryDataPanel = () => { + const { navigateBack } = useSettingsNavigation(); + const [toasts, setToasts] = useState([]); + + const addToast = (toast: Omit) => { + const newToast: ToastNotification = { ...toast, id: `toast-${Date.now()}-${Math.random()}` }; + setToasts(prev => [...prev, newToast]); + }; + + const removeToast = (id: string) => { + setToasts(prev => prev.filter(t => t.id !== id)); + }; + + return ( +
+ +
+ +
+ +
+ ); +}; + +export default MemoryDataPanel; diff --git a/app/src/pages/Intelligence.tsx b/app/src/pages/Intelligence.tsx index 906d8b5f9..d0fc65f33 100644 --- a/app/src/pages/Intelligence.tsx +++ b/app/src/pages/Intelligence.tsx @@ -2,7 +2,6 @@ import { useCallback, useEffect, useMemo, useState } from 'react'; import { ActionableCard } from '../components/intelligence/ActionableCard'; import { ConfirmationModal } from '../components/intelligence/ConfirmationModal'; -import { MemoryWorkspace } from '../components/intelligence/MemoryWorkspace'; import { ToastContainer } from '../components/intelligence/Toast'; import { filterItems, getItemStats, groupItemsByTime } from '../components/intelligence/utils'; import { useConsciousItems } from '../hooks/useConsciousItems'; @@ -315,10 +314,8 @@ export default function Intelligence() { {/* Tab content */} {activeTab === 'memory' && ( <> - - {/* Filters */} -
+
{ } /> } /> } /> + } /> } /> } />