A safe, open-source Windows desktop organizer with sleek docks, clean layouts, local music, and agent-accessible control.
OrbitDock is a native Windows desktop organizer. It creates customizable desktop docks that group app shortcuts, mirror folders, roll up out of the way, remember different monitor layouts, and stay behind normal app windows.
This project is independent. It is not affiliated with Stardock and does not copy Stardock assets, branding, or proprietary behavior. OrbitDock is built around a safer open-source posture: virtual organization first, explicit file mutations only, readable local config, and durable recovery scripts.
- Native WPF dock windows with translucent OrbitDock branding.
- Smart desktop categories for apps, dev tools, creative apps, games, utilities, folders, and files.
- Folder portals that mirror real folders from the desktop.
- Clean desktop mode that hides the raw Windows icon grid while OrbitDock is running.
- OrbitDock-managed desktop pins for items that should remain visible.
- Named layout profiles with dock positions, collapsed state, active tabs, item ordering, dock membership, and desktop pins.
- Screen-combination-aware layout variants for one-monitor and multi-monitor setups.
- Per-dock search, roll-up/collapse, bottom expansion, tabs, and themed scrollbars.
- Optional local sound effects and an optional music dock backed by
%USERPROFILE%\Music\OrbitDock. - Agent feed docks for local agents to publish briefs, checklists, unread badges, and status summaries.
- Tray menu, startup registration,
Ctrl+Alt+Spacelayer reset, settings UI, and repair/center actions for docks. orbitdockctlCLI for local agents and scripts.- Atomic workspace writes with a lock file.
OrbitDock starts as a portal-first organizer. It does not rearrange or delete your real desktop items by default.
- Smart-dock organization is virtual.
- Explicit folder docks copy dropped files by default.
- Remove-from-dock hides an item from that dock only.
- Moving a real item to the Recycle Bin is a separate confirmed context-menu action.
- Rule automation is disabled by default.
- Missing folders, missing audio, unsupported files, and shell-integration failures are recoverable.
scripts\show-desktop-icons.ps1can restore the raw Windows desktop icon grid if needed.
See docs/safety.md for the full safety model.
- Windows 10 or 11
- .NET 8 SDK with the Windows Desktop runtime
dotnet restore
dotnet build OrbitDock.sln
dotnet run --project src\OrbitDock.AppRun the verification suite:
dotnet run --project tests\OrbitDock.TestsFor normal local testing, publish a framework-dependent Windows build and launch it from artifacts:
.\scripts\publish-portable.ps1
.\scripts\start-orbitdock.ps1 -FromPublishOpen settings immediately:
.\scripts\start-orbitdock.ps1 -FromPublish -SettingsStop OrbitDock:
.\scripts\stop-orbitdock.ps1Create desktop shortcuts for the published test build:
.\scripts\install-test-shortcut.ps1 -SettingsShortcutRepair desktop shortcuts and the current-user Startup shortcut after moving the repo:
.\scripts\install-test-shortcut.ps1 -SettingsShortcut -StartupShortcutOrbitDock stores a human-readable workspace at:
%APPDATA%\OrbitDock\workspace.json
If present, legacy %APPDATA%\CustomFences\workspace.json is imported once.
Important defaults:
defaultDropAction:copyenableRuleAutomation:falsehideDesktopIconsWhenRunning:trueattachWindowsToDesktop:falseby default for reliabilityenableSoundEffects:falseenableMusicDock:false
OrbitDock-managed virtual shortcut folders, including the default AI tab under
%APPDATA%\OrbitDock\VirtualTabs\AI, are repaired on app startup/reload. This
keeps Store-app icon paths current after apps such as Claude, Codex, ChatGPT,
or Manus update their versioned WindowsApps install folders.
See docs/configuration.md for the schema and layout model.
OrbitDock is local-agent friendly without exposing a network service. Agents should use orbitdockctl and the shared workspace JSON:
.\scripts\orbitdockctl.ps1 workspace validate
.\scripts\orbitdockctl.ps1 layout list
.\scripts\orbitdockctl.ps1 layout variants
.\scripts\orbitdockctl.ps1 dock set-bounds build 980 455 420 360
.\scripts\orbitdockctl.ps1 dock set-expansion build bottom
.\scripts\orbitdockctl.ps1 item pin "$env:USERPROFILE\Desktop\Visual Studio Code.lnk" --dock build
.\scripts\orbitdockctl.ps1 desktop-pin add "$env:USERPROFILE\Desktop\Steam.lnk" --x 120 --y 220
.\scripts\orbitdockctl.ps1 audio music on
.\scripts\orbitdockctl.ps1 agent-feed publish morning-brief --title "Morning Brief" --summary "Two items need attention." --status attentionThe running app watches the workspace file and reloads safely after CLI changes.
Agent feed docks also watch %APPDATA%\OrbitDock\AgentFeeds so local agent updates appear without restarting OrbitDock.
src/
OrbitDock.App/ WPF desktop app, tray, settings, shell integration, audio
OrbitDock.Core/ Workspace schema, layout service, rules, scanners, storage
OrbitDock.Cli/ Local CLI for agents and scripts
tests/
OrbitDock.Tests/ Dependency-light console verification suite
docs/ Architecture, safety, config, testing, audio, roadmap
scripts/ Publish, start, stop, reset, shortcuts, CLI wrapper
screenshots/ Public README screenshots
- Product brief
- Architecture
- Configuration
- Agent control
- Agent feeds
- Audio
- Safety
- Desktop testing
- Roadmap
- Visual direction
- Research notes
OrbitDock is alpha software. It is usable for local desktop testing, but Windows shell behavior, multi-monitor transitions, mixed-DPI setups, and Explorer restart recovery still need broader real-world testing.
See CONTRIBUTING.md. Keep changes small, testable, and conservative around filesystem and shell behavior.
MIT. See LICENSE.



