diff --git a/src/__tests__/admin/capabilityAwareAdmin.test.tsx b/src/__tests__/admin/capabilityAwareAdmin.test.tsx
index 6bb500636..38f6bf00d 100644
--- a/src/__tests__/admin/capabilityAwareAdmin.test.tsx
+++ b/src/__tests__/admin/capabilityAwareAdmin.test.tsx
@@ -166,9 +166,33 @@ describe('capability-aware admin UI', () => {
expect(screen.getByText('Content')).toBeDefined()
expect(screen.queryByRole('link', { name: 'Site' })).toBeNull()
expect(screen.queryByRole('link', { name: 'Plugins' })).toBeNull()
+ expect(screen.queryByRole('link', { name: 'AI' })).toBeNull()
expect(screen.queryByRole('link', { name: 'Users' })).toBeNull()
})
+ it('shows AI settings navigation only to users who can access that workspace', () => {
+ const firstRender = render(
+
+
+
+
+ ,
+ )
+
+ expect(screen.getByRole('link', { name: 'AI' }).getAttribute('href')).toBe('/admin/ai')
+
+ firstRender.unmount()
+ render(
+
+
+
+
+ ,
+ )
+
+ expect(screen.queryByRole('link', { name: 'AI' })).toBeNull()
+ })
+
it('removes collection management and author reassignment for own-content editors', async () => {
setupEditorState()
const calls: Array<{ url: string; method: string }> = []
diff --git a/src/admin/shared/AdminSectionNavigation/AdminSectionNavigation.tsx b/src/admin/shared/AdminSectionNavigation/AdminSectionNavigation.tsx
index 905913ae7..ba25f67bd 100644
--- a/src/admin/shared/AdminSectionNavigation/AdminSectionNavigation.tsx
+++ b/src/admin/shared/AdminSectionNavigation/AdminSectionNavigation.tsx
@@ -10,6 +10,7 @@
*/
import { useEffect, useState, useSyncExternalStore, type MouseEvent, type ReactNode } from 'react'
import { ArticleSolidIcon } from 'pixel-art-icons/icons/article-solid'
+import { AiBoxSolidIcon } from 'pixel-art-icons/icons/ai-box-solid'
import { DashboardSolidIcon } from 'pixel-art-icons/icons/dashboard-solid'
import { DatabaseSolidIcon } from 'pixel-art-icons/icons/database-solid'
import { ImagesSolidIcon } from 'pixel-art-icons/icons/images-solid'
@@ -176,6 +177,15 @@ export function AdminSectionNavigation({
onNavigateStart={onWorkspaceNavigateStart}
/>
)}
+ {canAccess('ai') && (
+ }
+ label="AI"
+ active={section === 'ai'}
+ onNavigateStart={onWorkspaceNavigateStart}
+ />
+ )}
{canAccess('users') && (
{
+ ctx.navigate('/admin/ai')
+ ctx.closeSpotlight()
+ },
+ },
{
id: 'navigation.goToUsers',
title: 'Go to Users',