Introduction¶
When DeepSeek Harness (DSH) runs agent tasks, it often needs to wait for permission approval in background sessions or browser tabs. When approval requests pile up, developers frequently have to switch context windows to handle these popups. The wxjgit/permission-popup plugin aggregates pending approval requests from the current session and background sessions into a card stack in the page corner, allowing you to process approvals quickly without navigating away.
Plugin Overview¶
This is a community-maintained plugin, currently licensed under MIT. The plugin uses DeepSeek Harness’s Web UI plugin mechanism to intercept and display pending permission requests.
Core Positioning: Displays approval cards in the page corner and provides quick “Allow once” or “Reject” actions.
Verified Facts:
* Author: wxjgit
* Category: Client
* License: MIT
Core Features¶
The plugin has the following features:
- Multi-Session Aggregation: Displays a stack of pending approval cards for the current and background sessions in the page corner.
- Information Display: Shows the conversation title, tool name, approval reason, and Shell command when available.
- Quick Actions: Performs “Allow once” or “Reject” actions on cards through the existing DSH approval channel.
- Trigger Policies: Supports three trigger policies:
background(background),always(always), andhidden-only(only when hidden). - Local Persistence: Automatically saves corner position, stack size, visibility, notification settings, and title reminder preferences.
- Background Notifications: Can send desktop notifications when the browser tab is hidden.
- Non-Intrusive: Does not add prompt text, model requests, token usage, or KV cache content to the page.
Installation and Activation¶
Install it into the Web configuration file using DSH’s command-line tool.
dsh plugin --profile web add github:wxjgit/permission-popup
After installation, restart the Web UI to load the plugin layer:
dsh web
Usage¶
The plugin is automatically activated under the Web configuration. When the configured trigger policy is met, the cards appear in the specified corner.
- Allow once: Approves only the currently displayed request.
- Reject: Rejects the currently displayed request.
- Open session: Click the amber strip on the card to jump to the session window that issued the request.
- Configuration Management: Click the gear button on the card stack to configure the trigger policy, card position, maximum stack count, desktop notification toggle, and tab title reminder.
Browser Tab Hidden Scenario¶
When the browser tab is minimized or hidden, the cards in the page corner may not be directly visible. In this case, enable “Desktop notify while hidden” (send desktop notification while hidden) in the plugin settings and grant the website notification permission. After receiving the system notification, clicking the notification focuses the browser and opens the relevant session.
Use Cases and Notes¶
- Environment Requirements: DeepSeek Harness is currently in pre-release. Plugin APIs and compatibility requirements may change before the first tagged release. Use it in a DSH environment compatible with the
0.1.1-rc.2client package. - Permission Safety: The plugin does not bypass DSH permission checks. Decisions are executed through the existing
PendingWaitresponse channel. The card disappears only after the host broadcastsapproval/resolved. - Notification Content: Desktop notifications include only the conversation title and the approval reason or tool name. For privacy, they do not include full command arguments.
- Data Storage: User preferences are stored in the browser’s
localStorageunder the keydsh-permission-popup.prefs. - Source Review: Because this is a community project, in sensitive environments, be sure to review the third-party plugin source code and pin it to a trusted commit.
Conclusion¶
This plugin simplifies interaction steps in multi-session environments by aggregating the approval flow. For more details and source code, refer to the project directory page or GitHub repository.