PluginProbe
OpenStation: Desktop Windows, Dock & Virtual Desktops for WP Admin / 0.8.9
OpenStation: Desktop Windows, Dock & Virtual Desktops for WP Admin v0.8.9
1.1.10 1.1.9 1.1.8 1.1.7 1.1.6 1.1.5 1.1.4 1.1.3 1.1.2 1.1.1 1.1.0 1.0.1 1.0.0 0.9.8 0.9.7 0.9.6 0.9.4 0.9.5 0.9.3 0.9.2 0.9.1 0.9.0 0.8.9 0.8.8 0.8.7 All 34 releases
desktop-mode / readme.txt

readme.txt in OpenStation: Desktop Windows, Dock & Virtual Desktops for WP Admin 0.8.9, at readme.txt

252 lines 14.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 === Desktop Mode ===
2 Contributors: automattic, allterraindeveloper, epeicher
3 Tags: desktop, admin, ui, productivity, ai
4 Requires at least: 6.0
5 Tested up to: 7.0
6 Requires PHP: 7.4
7 Stable tag: 0.8.9
8 License: GPLv2 or later
9 License URI: https://www.gnu.org/licenses/gpl-2.0.html
10
11 Reimagines the WordPress admin as a desktop OS with draggable windows and a dock. Per-user opt-in. By Automattic.
12
13 == Description ==
14
15 Desktop Mode renders /wp-admin as a desktop operating system. Admin screens open as draggable, resizable, minimizable windows on a desktop, with a left-edge dock built from the admin menu. The classic admin stays untouched for everyone else, and deactivating the plugin restores vanilla Core exactly.
16
17 Built and maintained by [Automattic](https://automattic.com) — the company behind WordPress.com, Jetpack, WooCommerce, and Tumblr. Zero Core patches: every feature is wired through public WordPress hooks.
18
19 = Highlights =
20
21 * **Per-user opt-in.** An admin-bar toggle flips a user-meta flag; nobody else sees any change.
22 * **Window system.** Iframe windows load admin pages chromelessly. Native windows render directly in the parent DOM via a public registration API. Both share drag, resize, minimize, maximize, fullscreen, and detach-to-new-tab.
23 * **Dock + taskbar.** Left-edge dock for core menus; bottom macOS-style pill taskbar for plugin menus. Letter-badge icon fallback for plugins without icon art.
24 * **Virtual desktops ("Spaces").** Multiple desktops per user, each with its own window set. Overview grid surfaces the Spaces switcher and thumbnails.
25 * **Arrange & snap.** Cascade, Tile, Overview, Snap-to-grid. Plugins contribute custom entries.
26 * **Wallpaper & widget registries.** Server- and client-side registration. CSS presets plus canvas (WebGL/2D) wallpapers with collision-aware surface data for snow/rain/physics effects.
27 * **Desktop icons.** Wallpaper-layer shortcuts that open native windows or admin URLs.
28 * **AI Copilot (optional).** Cmd+K palette backed by an agentic loop with built-in search tools. Disabled until you supply an API key. See "External services" below.
29 * **Slash commands & palettes.** Public registration APIs for plugin authors.
30 * **Cross-frame drag bridge.** Media-library attachments drag across iframe boundaries.
31 * **Session persistence.** Window stack (including desktops, focus, state) restored across reloads.
32 * **i18n.** Full gettext coverage across PHP and TypeScript; Spanish translation shipped.
33
34 = For plugin authors =
35
36 Desktop Mode is built to be extended. Every significant behavior is hookable — add a desktop icon, register a dock item, gate desktop mode by role, react to window events, or register a native window, all from your own plugin with zero patches here.
37
38 Comprehensive PHP and JavaScript hook surface, plus stable `desktop_mode_register_*` functions for windows, widgets, wallpapers, icons, window tabs, commands, settings tabs, and AI tools. See the [developer docs on GitHub](https://github.com/WordPress/desktop-mode/tree/trunk/docs).
39
40 = External services =
41
42 This plugin's optional **AI Copilot** sends data to **OpenAI** (`https://api.openai.com/v1/responses`) when, and only when, an administrator configures an OpenAI API key in **Settings → AI**. With no key configured, no external requests are made.
43
44 When the AI Copilot is enabled and a user invokes it (via Cmd+K or the slash-command palette):
45
46 * **What is sent:** the user's prompt, the conversation history for the active session, the chosen model identifier (e.g. `gpt-4o-mini`), and tool-call metadata. The plugin's built-in tools (`search_posts`, `search_pages`, `search_comments`) may include excerpts of the matching posts/pages/comments in tool results, which are then sent back to OpenAI as part of the agentic loop.
47 * **When it is sent:** on user-initiated AI requests, and (if enabled) on `save_post`, term-save, and comment-save hooks for auto-analysis. Auto-analysis runs server-side as part of the post-save flow.
48 * **Why it is sent:** to obtain model completions and tool-call decisions that drive the AI Copilot.
49 * **Who provides the service:** OpenAI, L.L.C. — see the [OpenAI Terms of Use](https://openai.com/policies/row-terms-of-use/) and the [OpenAI Privacy Policy](https://openai.com/policies/row-privacy-policy/).
50
51 The AI Copilot's provider layer is also extensible: third-party plugins may register additional providers via `desktop_mode_register_ai_provider()`. Those providers may send data to other endpoints; review each plugin's own privacy disclosure separately.
52
53 No other external services are contacted by this plugin.
54
55 == Installation ==
56
57 1. Upload the plugin folder to `/wp-content/plugins/`, or install via **Plugins → Add New → Upload Plugin**.
58 2. Activate the plugin through the **Plugins** screen in WordPress.
59 3. Click the **desktop** icon in the admin bar's top-right corner. The admin reloads inside the desktop shell.
60 4. Click the same icon again at any time to return to the classic admin.
61
62 = Optional: enable the AI Copilot =
63
64 1. Open **Settings → AI** inside desktop mode.
65 2. Paste an OpenAI API key and pick a model.
66 3. Press **Cmd+K** (or **Ctrl+K**) anywhere in desktop mode to open the AI palette.
67
68 == Frequently Asked Questions ==
69
70 = Does this change anything for users who don't opt in? =
71
72 No. The classic admin is untouched until a user toggles desktop mode on for themselves. Deactivating the plugin restores vanilla Core exactly.
73
74 = Does the plugin require an external service to function? =
75
76 No. The desktop shell, windowing, dock, taskbar, virtual desktops, widgets, wallpapers, and all extension APIs work entirely on-site. The AI Copilot is the only feature that contacts an external service, and it is disabled until an administrator configures an API key. See "External services" in the description.
77
78 = Does it patch WordPress core? =
79
80 No. Every feature is wired through public WordPress actions and filters.
81
82 = How do I disable desktop mode for my user? =
83
84 Click the desktop icon in the admin bar a second time to flip the toggle off. The plugin can also be deactivated globally from the Plugins screen.
85
86 = Where is the developer documentation? =
87
88 In `docs/` inside the plugin, and on [GitHub](https://github.com/WordPress/desktop-mode/tree/trunk/docs). The hook reference, JavaScript reference, bridge protocol, and copy-paste examples all live there.
89
90 == Screenshots ==
91
92 1. The desktop shell — wallpaper, dock, taskbar, and a window with the admin loaded inside it.
93 2. Multiple windows open across virtual desktops (Spaces).
94 3. The AI Copilot Cmd+K palette in action.
95 4. Custom wallpapers and widgets registered by a plugin.
96 5. The Arrange menu — Cascade, Tile, Overview, Snap to grid.
97
98 == Credits ==
99
100 Desktop Mode is brought to you by [Automattic](https://automattic.com). The plugin is open source under GPLv2-or-later; contributions are welcome on [GitHub](https://github.com/WordPress/desktop-mode).
101
102 = Third-party libraries =
103
104 The plugin bundles the following third-party JavaScript library, loaded on demand only when a feature that needs it is in use:
105
106 * **[PixiJS](https://pixijs.com/)** (MIT License) — used by the interactive **OS Settings → About** scene, the **Content Graph** window, and built-in canvas wallpapers (e.g. the animated WordPress logo). PixiJS is loaded from the plugin's own `assets/vendor/` directory; no CDN requests are made.
107
108 == Changelog ==
109
110 = 0.8.9 =
111 * Improve drag-and-drop handling in chromeless bridge and iframe bridge
112 * The whole shell loads faster, especially the first time you open wp-admin
113 * Open an app from the wallpaper or from the dock — it's the same window now (no more two copies floating around)
114 * Minimize a window and the dock icon shows it's minimized — even if you opened it from the desktop icon
115 * Click "+ New" twice and you get two editors. Drafting a post and want to start another? Just click again
116 * "Switch to Desktop Mode" always takes you to the dashboard, so you know where you're starting from
117 * Resizing a window and accidentally letting go over the desktop no longer minimizes everything
118 * WooCommerce: the "Add Order" button is back on the Orders page
119 * "Add New" buttons (Add Post, Add Order, Add anything) stay visible inside every plugin page
120 * After we ship a fix, you get it on your next page load — no more "try refreshing twice"
121
122 = 0.8.8 =
123 * Align dock badge with in-window update count
124 * Make every dock scrollable, keep system tiles pinned
125 * No more flash when you create, move, or delete a file or shortcut on the desktop
126 * Trashing a folder that contained other folders now works (used to silently fail)
127 * Drag an image from the Media Library straight into a Gutenberg post, it now inserts
128 * Edit User screen: the form is centered instead of pinned to the left
129 * Title-bar icons (Help, etc.) are now visually centered
130 * Sticky notes powered by WP Guidelines
131
132 = 0.8.7 =
133 * Bump Tested up to WordPress 7.0
134 * Fix plugins window stale-nonce 'Cookie check failed' on long-running sessions
135 * Fix plugin .zip drop routing to Media Library uploader
136 * Add server-side search to entity list views
137 * Rename Browse tab to Add Plugin
138 * Drag and drop improvements
139
140 = 0.8.6 =
141 * Light indicators for native-window-target dock icons
142 * Additional fixes and polish
143 * Add compatibility layer for Divi script dependencies and tests
144 * Show plugin icons
145 * Open off-site menu items in a new browser tab
146
147 = 0.8.6-rc1 =
148 * Tag cloud & category mindmap: search, clustering, server cache
149 * Drag & Drop from local desktop
150 * Implement loading skeletons and staggered animations for file tiles
151 * Arrow-key shortcuts + Overview-from-Show-Desktop fix
152 * Shortcuts popover, dock-style tooltips, reorder
153 * Add Featured Plugins View and Ribbon Component
154 * Add "Automatic Updates" column and related functionality to Plugins window
155 * Add window notices feature with persistent dismissal and server sync
156 * Polish four framework surfaces for plugin authors
157 * Disable focus on other window actions
158 * Add Media section to "My WordPress" + uniform preview-pane hook surface
159 * Refactor My WordPress to use `<wpd-tile>` + add post status ribbons
160 * Allow deactivating plugins in CMO desktop & dock
161 * OS-file drop — progress UI, live refresh, cancel cleanup, CMO
162 * Group-by selector + click-to-deselect + focused-icon centering
163 * Test against PHP 8.3 and 8.4
164 * Enhance minimize/restore behavior to preserve pre-minimize state and add cross-state transition tests
165
166 = 0.8.5 =
167 * Shared folders, heartbeat widget, and heartbeat-pipeline hardening
168 * Recycle Bin: show item type badges inline next to title
169 * Plugins window: expandable rows with rich plugin details
170 * Remember native window size across opens
171 * Fix blank plugin icons in the Plugins window
172 * Restore "Show desktop on wallpaper click" as an opt-in setting
173 * Fix plugin update refresh, dock badge, and stuck-row failures
174 * Trash bin polish: URL badge, live placement badge, no media auto-trash
175 * Throw on empty REST body to avoid TypeError after self-replace
176 * Hide Media filter tab when MEDIA_TRASH is off
177 * Sequence openCurrentPage after restoreSession to avoid duplicate windows
178 * Fix window refresh issue on new sessions
179
180 = 0.8.4 =
181 * Faster Desktop Mode, main bundle cut by 59 %
182 * "Edit Post" from the front-end admin bar opens nothing
183 * Cross-page admin-link clicks: state, destructive actions, referer hint
184 * Warn loudly when a `<wpd-*>` tag is used without being imported
185 * Support re-uploading existing plugins, add post-install Activate panel
186 * Restore the full WordPress command palette inside Cmd+K
187
188 = 0.8.3 =
189 * Feat comments as native windows
190 * Chrome <111 titlebars + duplicate-placement REST 500s
191 * SW navigation interception caused window-in-window after core update
192 * Open each post as its own window from the Posts window
193 * Fix Users window data + live-refresh, plus per-window REST clients
194 * Session-expiry cascade + Plugins window sync
195 * Narrow scope to /wp-admin/ and throttle SW reloads
196 * Plugins window: real updates, not just a phantom badge
197 * Support plain permalinks for REST URL construction
198 * Hide registered icons from desktop instead of trashing
199
200 = 0.8.2 =
201 * Many fixes and new features
202 * Add unit test to ensure bridge script skips core AJAX update buttons
203 * Native Plugins window + `<wpd-card>`
204 * Appearance window polish + dock-peek fixes
205 * Fix upload theme
206 * Implement favicon resolver and associated tests for desktop mode
207 * Auto-inject X-WP-Nonce for REST API requests
208 * Enhance user management functionality in WordPress REST API
209 * Fix user role updates
210 * Fix plugin native issues
211 * Enhance color scheme preview functionality by adding shell scheme flipping
212 * Fix rearrange icons out of desktop
213 * Open each post in its own window
214 * Add item visibility and dock order settings
215 * Add first-run welcome dialog for Desktop Mode
216 * Fix dock management
217 * Refetch desktop placements on Recycle Bin restore
218
219 = 0.8.1 =
220 * Framework rework and stability improvements — significant internals refactor, smoother window lifecycle, and more reliable bridging between iframe and native windows.
221 * Drag and drop reworked end-to-end: calmer pointer behavior, more accurate hit-testing, and reliable handoff across windows.
222 * Posts, Pages, and Users now open as native desktop windows — direct DOM rendering inside the shell instead of an iframe, faster open, instant interaction, and UI tailored to the windowing model.
223 * New Content Graph tool — an interactive map of how your content links together. Pan, zoom, and focus a node to explore its neighborhood.
224 * Cross-page admin link routing in the chromeless bridge so links across the admin stay inside the desktop shell.
225 * Many bug fixes across the admin bar, Fullscreen toggle, resize handles over iframes, real-time icon refresh on plugin activation, and the PWA shell.
226
227 = 0.5.1 =
228 * Code editor and framework improvements.
229 * Enhanced AI provider integration: third-party providers may register through `desktop_mode_register_ai_provider()`.
230 * Title-bar button registry with icon painting for plugin authors.
231 * OS Settings tabs are now extensible via `desktop_mode_register_settings_tab_script()` / `desktop_mode_register_settings_tab()`.
232 * AI Copilot extensibility: server-side tool registry (`desktop_mode_register_ai_tool()`) and client-side `wp.desktop.ai.ask()` programmatic entry point.
233 * UI component kit expansion (~25 `<wpd-*>` web components).
234 * Backtick hotkey to cycle window focus.
235 * Unified command palettes via the palette registry.
236 * OS Settings Help tab.
237
238 = 0.5.0 =
239 * Command registration APIs (`desktop_mode_register_command_script()` / `desktop_mode_register_command()`) with live install/activate refresh.
240 * Media-library enhancement enabled by default, with opt-out.
241 * Dock CSS selectors updated; overflow handling improved.
242
243 See the [GitHub releases page](https://github.com/WordPress/desktop-mode/releases) for the full history.
244
245 == Upgrade Notice ==
246
247 = 0.8.1 =
248 Framework and stability rework, reworked drag and drop, native Posts/Pages/Users windows, and a new Content Graph tool. Backwards-compatible.
249
250 = 0.5.1 =
251 Adds AI Copilot extensibility (server-side tools, multi-provider support) and a title-bar button registry. Backwards-compatible.
252