How crossoverjie/skilldeck works
SkillDeck is a macOS desktop app for managing skills across AI coding agents. Users browse a registry or select GitHub/local content, install skills, and assign them to agents; the app parses SKILL.md, stores canonical skill directories on disk, and exposes installations through symlinks. The dashboard also supports editing, update checks, and automatic refresh when CLI-side files change. The README documents these capabilities and the MVVM flow; sampled source confirms key orchestration and parsing responsibilities, but not every service call.
Main entry points: SkillManager.swift Skill orchestrator · Views App views · SkillInstallViewModel.swift Git installer · SkillDeckApp.swift App entry
Components 26
Desktop interface
- App entry
Sources/SkillDeck/App/SkillDeckApp.swift - App views
Sources/SkillDeck/Views - Dashboard state
Sources/SkillDeck/ViewModels/DashboardViewModel.swift - Skill detail
Sources/SkillDeck/ViewModels/SkillDetailViewModel.swift - Skill editor
Sources/SkillDeck/ViewModels/SkillEditorViewModel.swift - Markdown renderer
Sources/SkillDeck/Views/Components/MarkdownContentView.swift
Discovery and import
- Registry browser
Sources/SkillDeck/ViewModels/RegistryBrowserViewModel.swift - ClawHub browser
Sources/SkillDeck/ViewModels/ClawHubBrowserViewModel.swift - Git installer
Sources/SkillDeck/ViewModels/SkillInstallViewModel.swift - Local import
Sources/SkillDeck/ViewModels/LocalImportViewModel.swift
Skill management
- Skill orchestrator
Sources/SkillDeck/Services/SkillManager.swift - Skill model
Sources/SkillDeck/Models/Skill.swift - SKILL.md parser
Sources/SkillDeck/Services/SkillMDParser.swift - Skill metadata
Sources/SkillDeck/Models/SkillMetadata.swift - Git operations
Sources/SkillDeck/Services/GitService.swift - Agent assignments
Sources/SkillDeck/Services/SymlinkManager.swift - Lock file
Sources/SkillDeck/Services/LockFileManager.swift - Skill filesystem
App services
- File watcher
Sources/SkillDeck/Services/FileSystemWatcher.swift - Update checker
Sources/SkillDeck/Services/UpdateChecker.swift - Translation
Sources/SkillDeck/Services/TranslationService.swift - App settings
Sources/SkillDeck/Views/SettingsView.swift - Proxy networking
Sources/SkillDeck/Services/NetworkSessionProvider.swift - Localization
Sources/SkillDeck/Utilities/Localization/L10n.swift
Other components
- User
- AI agents
Connections 32
- User → App entry: launches
README.md - App entry → App views: presents
Sources/SkillDeck/App/SkillDeckApp.swift - App views → Dashboard state: reads state
Sources/SkillDeck/Views/Dashboard/DashboardView.swift - App views → Registry browser: browses
Sources/SkillDeck/Views/Registry/RegistrySkillDetailView.swift - App views → Git installer: starts install
Sources/SkillDeck/Views/Install/SkillInstallView.swift - App views → Local import: imports folder
Sources/SkillDeck/Views/Sidebar/SidebarView.swift - App views → Skill detail: shows detail
Sources/SkillDeck/Views/Detail/SkillDetailView.swift - App views → Skill editor: edits skill
Sources/SkillDeck/Views/Detail/SkillDetailView.swift - App views → ClawHub browser: browses catalog
README.md - Registry browser → Git installer: starts install
Sources/SkillDeck/ViewModels/RegistryBrowserViewModel.swift - Registry browser → Skill orchestrator: fetches content
Sources/SkillDeck/ViewModels/RegistryBrowserViewModel.swift - Git installer → Git operations: clones repository
Sources/SkillDeck/ViewModels/SkillInstallViewModel.swift - Git installer → Skill orchestrator: installs skill
Sources/SkillDeck/ViewModels/SkillInstallViewModel.swift - Local import → Skill orchestrator: imports skill
README.md - Skill orchestrator → SKILL.md parser: parses files
Sources/SkillDeck/Services/SkillManager.swift - SKILL.md parser → Skill metadata: decodes YAML
Sources/SkillDeck/Services/SkillMDParser.swift - Git operations → SKILL.md parser: parses discovered
Sources/SkillDeck/Services/GitService.swift - Skill orchestrator → Git operations: clones updates
Sources/SkillDeck/Services/SkillManager.swift - Skill orchestrator → Agent assignments: assigns agents
Sources/SkillDeck/Services/SkillManager.swift - Skill orchestrator → Lock file: updates lock
Sources/SkillDeck/Services/SkillManager.swift - Skill orchestrator → Skill filesystem: reads and writes
README.md - Agent assignments → AI agents: links skills
Sources/SkillDeck/Services/SymlinkManager.swift - Skill orchestrator → File watcher: monitors changes
Sources/SkillDeck/Services/SkillManager.swift - File watcher → Skill orchestrator: refreshes state
README.md - Skill orchestrator → Update checker: checks updates
Sources/SkillDeck/Services/SkillManager.swift - Skill detail → Markdown renderer: renders content
Sources/SkillDeck/Views/Detail/SkillDetailView.swift - Markdown renderer → Skill orchestrator: translates text
Sources/SkillDeck/Views/Components/MarkdownContentView.swift - Skill orchestrator → Translation: requests translation
Sources/SkillDeck/Services/SkillManager.swift - User → App settings: configures app
README.md - App settings → Proxy networking: configures proxy
- App entry → Localization: sets language
Sources/SkillDeck/App/SkillDeckApp.swift - Dashboard state → Skill orchestrator: loads skills
Sources/SkillDeck/Views/Dashboard/DashboardView.swift