Introduction¶
DeepSeek Harness (DSH) adopts the “everything is a plugin” philosophy. During agent development and debugging, frequently switching pages to check the build status of GitHub PRs can interrupt the workflow. The pauloapoloni/dsh-pr-checks plugin moves this status information to the bottom of the sidebar, enabling developers to track PR build progress without leaving the DSH interface.
Plugin Overview¶
dsh-pr-checks is a DSH plugin that includes a Host side and a Web client. It uses the gh CLI to query GitHub Actions check statuses and displays the results in the bottom of the sidebar in a Workspace -> Project -> PR hierarchical structure.
Core Features¶
The plugin mainly provides the following capabilities:
- Status Visualization: Displays the GitHub Actions check status and progress of PRs at the bottom of the sidebar.
- Hierarchical Grouping: Groups and displays items by Workspace, Project, and PR.
- Progress Feedback: Displays a progress bar (completed/total) and uses colored dots to show the status of individual checks (with Tooltip explanations).
- Automatic Filtering and Hiding: Displays only running checks (
IN_PROGRESS/QUEUED/PENDING). When all checks are completed, the entire component automatically hides; the component also hides when the sidebar is collapsed. - Persistence and Compatibility: As a complete Profile plugin, it requires no changes to DSH runtime files and supports DSH version updates.
Installation and Enablement¶
Before installation, ensure that the gh CLI is installed and authenticated, and that you have repo or workflow permissions.
- Install via the command line:
Use the plugin management command to add the package. The package name on npm isdsh-pr-checks.
dsh plugin --profile <name> add dsh-pr-checks
Or install directly from the Git repository:
dsh plugin --profile <name> add github:pauloapoloni/dsh-pr-checks
-
Restart and reload:
After installation, you must restartdsh weband reload in the GUI. -
Manual installation (optional):
If you need to install manually (for example, bypassing the bundle layer), perform the following steps:
cd ~/.dsh/profiles/web
npm install github:pauloapoloni/dsh-pr-checks
And register the entry in `cordis.patch.yml`:
- insert:
- id: dsh-pr-checks
name: dsh-pr-checks
config:
cacheMs: 10000 # 响应缓存时间
includeAllAuthors: false # true 为显示所有 PR,否则仅显示当前用户
Configuration¶
After installation, you can adjust the plugin behavior through configuration options:
| Configuration Item | Default Value | Description |
|---|---|---|
cacheMs |
10000 |
Interface response cache time (milliseconds). |
includeAllAuthors |
false |
Whether to display all open PRs, rather than only the PRs of the currently authenticated user. |
authors |
— | Specify login user names for filtering (defaults to the authenticated user). |
repos |
— | An additional list of repositories to check (for example ["org/repo"]). |
How It Works¶
The plugin operates through the following mechanisms:
-
Host side (
lib/index.js):- Scans DSH workspaces (
~/.dsh/storages/workspace.json). - Calls
gh pr listto query Open PRs. - Exposes the
GET /api/pr-checksendpoint and returns a data structure including workspace, project, and PR details.
- Scans DSH workspaces (
-
Client side (
lib/client.js):- Registers the component in DSH’s
sidebar.footer.actionslot. - Polls the
/api/pr-checksendpoint every 30 seconds to obtain the latest status.
- Registers the component in DSH’s
Notes¶
- Depends on gh CLI: The plugin’s runtime depends on the
ghCLI authentication state. - Restart requirement: After installation, you must restart
dsh web; code-level changes (such aslib/*.js) also require restarting the process to take effect (Loader cache mechanism). - Ecosystem note: This plugin is a third-party plugin in the DSH ecosystem, maintained by the community, and has no affiliation with DeepSeek official.
Summary¶
dsh-pr-checks simplifies developers’ monitoring of PR build progress by integrating GitHub Actions status into the sidebar. Its automatic filtering of running tasks, support for configuration-based filtering, and non-intrusive installation make it suitable for DSH users who need to frequently manage PR status across multiple projects.