11import { useState , useEffect , useCallback } from 'react' ;
2- import { Key , Sparkles , Terminal , Bot , Plug , Github , Volume2 , VolumeX , Sun , Moon , Command , Settings , Check , X } from 'lucide-react' ;
2+ import { Key , Sparkles , Terminal , Bot , Plug , Github , Volume2 , VolumeX , Sun , Moon , Command , Settings , Check , X , Blocks , Cpu } from 'lucide-react' ;
33import { Kbd } from '@/components/ui/kbd' ;
44import { useSound } from '@/hooks/useSound' ;
55import { Toaster } from 'sonner' ;
@@ -8,18 +8,21 @@ import SkillsManager from '@/components/SkillsManager';
88import CommandsManager from '@/components/CommandsManager' ;
99import DroidsManager from '@/components/DroidsManager' ;
1010import McpManager from '@/components/McpManager' ;
11+ import ByokManager from '@/components/ByokManager' ;
1112import PinDialog from '@/components/PinDialog' ;
1213import { cn } from '@/lib/utils' ;
1314import { checkAuth , authenticate , isElectron , checkDk , getDkConfig , setDkConfig , type DkConfig } from '@/utils/api' ;
1415
15- type Tab = 'keys' | 'commands' | 'skills' | 'droids' | 'mcp' ;
16+ type Tab = 'keys' | 'commands' | 'skills' | 'droids' | 'mcp' | 'byok' | 'extensions' ;
1617
1718const tabs : { id : Tab ; label : string ; icon : typeof Key } [ ] = [
1819 { id : 'keys' , label : 'KEYS' , icon : Key } ,
1920 { id : 'commands' , label : 'COMMANDS' , icon : Command } ,
2021 { id : 'skills' , label : 'SKILLS' , icon : Sparkles } ,
2122 { id : 'droids' , label : 'DROIDS' , icon : Bot } ,
2223 { id : 'mcp' , label : 'MCP' , icon : Plug } ,
24+ { id : 'byok' , label : 'BYOK' , icon : Cpu } ,
25+ { id : 'extensions' , label : 'EXT' , icon : Blocks } ,
2326] ;
2427
2528export default function App ( ) {
@@ -373,6 +376,14 @@ export default function App() {
373376 { activeTab === 'skills' && < SkillsManager /> }
374377 { activeTab === 'droids' && < DroidsManager /> }
375378 { activeTab === 'mcp' && < McpManager /> }
379+ { activeTab === 'byok' && < ByokManager /> }
380+ { activeTab === 'extensions' && (
381+ < div className = "flex flex-col items-center justify-center h-64 text-muted-foreground" >
382+ < Blocks className = "h-10 w-10 mb-3 opacity-40" />
383+ < p className = "text-sm" > Extensions coming soon</ p >
384+ < p className = "text-xs text-muted-foreground/70 mt-1" > Custom plugins and integrations</ p >
385+ </ div >
386+ ) }
376387 </ >
377388 ) }
378389 </ main >
@@ -468,6 +479,14 @@ export default function App() {
468479 { activeTab === 'skills' && < SkillsManager /> }
469480 { activeTab === 'droids' && < DroidsManager /> }
470481 { activeTab === 'mcp' && < McpManager /> }
482+ { activeTab === 'byok' && < ByokManager /> }
483+ { activeTab === 'extensions' && (
484+ < div className = "flex flex-col items-center justify-center h-64 text-muted-foreground" >
485+ < Blocks className = "h-10 w-10 mb-3 opacity-40" />
486+ < p className = "text-sm" > Extensions coming soon</ p >
487+ < p className = "text-xs text-muted-foreground/70 mt-1" > Custom plugins and integrations</ p >
488+ </ div >
489+ ) }
471490 </ >
472491 ) }
473492 </ main >
0 commit comments