DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Issue Reporter — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
I

@goodandready/dsh-issue-reporter

Issue Reporter

Preview and submit actionable GitHub bug reports from DeepSeek Harness

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:GooDAnDReaDY/dsh-issue-reporter#95ecb96770e4326de20cb98c5f8c073dcf0092be
READMECompatibilityVersions

Compatibility and provenance

Issue Reporter is published as @goodandready/dsh-issue-reporter and currently resolves to version 0.1.6. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
9/19/2026

Versions

0.1.6stable
9/19/2026
0.1.4stable
9/17/2026
0.1.3stable
9/17/2026
Show 3 more versionsCollapse versions
0.1.2stable
9/14/2026
0.1.1stable
9/14/2026
0.1.0stable
9/14/2026

Related plugins

Loading related plugins…

Latest
0.1.6
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
9/19/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in developer-tools.

Web App@deepseek-ai/dsh-web-appThe dsh browser-surface bundle: the web patch layer over dsh-base plus the runtime glue plugin (frontend dist serving, web-surface prompt, bash runtime variables, URL line)Sdk Minimal@deepseek-ai/dsh-sdk-minimalThe standalone minimal SDK profile bundle: JSON-RPC, one DeepSeek adapter, persistent shell, and JSONL sessionsSdk App@deepseek-ai/dsh-sdk-appThe dsh SDK profile bundle: stdio JSON-RPC serving and process lifecycle over dsh-baseSubagent Codex@deepseek-ai/dsh-subagent-codexOne-shot Codex subagent provider over the official app-server protocol

README

📦 @goodandready/dsh-issue-reporter

Safe, User-Owned GitHub Bug Reports with Privacy Controls for DeepSeek Harness

🇬🇧 English • 🇷🇺 Русский • 🇨🇳 中文说明

⭐ If you like this plugin, please star it on GitHub — it shows me that the plugin is useful to you and motivates me to keep developing it.

🐛 If you find a bug or would like to request a feature, open a GitHub issue in any language — I will review your proposal and implement useful suggestions in a future plugin version.

⚡ Overview & The Problem

When developing or running autonomous workflows in DeepSeek Harness, users frequently encounter issues in installed ecosystem plugins. Creating high-quality bug reports is typically a tedious, error-prone process: users have to manually locate the plugin's upstream repository, format reproduction details, and inadvertently risk leaking sensitive API keys, local paths, or internal endpoints.

@goodandready/dsh-issue-reporter bridges the gap between encountering an installed plugin failure and submitting an actionable, upstream report:

  • Active Inventory Discovery: Automatically scans the current DSH composition and discovers installed plugins with public GitHub repositories.
  • Intelligent Grouping: Separates native @deepseek-ai/ core plugins from third-party community extensions in independent collapsible lists.
  • Privacy Boundary & Redaction: Automatically sanitizes API tokens, credential references, local absolute paths, and email addresses before submission.
  • Duplicate Detection: Queries repository issues in real time to prevent duplicate bug reports.
  • Screenshot Uploads via GitHub CLI: Supports up to 5 image attachments without exposing persistent upload storage.
  • Strict User Ownership: Requires explicit user preview and confirmation (confirm: true) before any GitHub write.

🏗️ Architecture

graph LR
  A[DSH Plugin Inventory] --> B[lib/index.js]
  B --> C[lib/domain.js<br/>Validation, Grouping, Redaction]
  B --> D[lib/github.js<br/>OAuth & REST Client]
  B --> E[lib/attachments.js<br/>Bounded Screenshot Upload]
  C --> F[lib/client.js<br/>Settings Card]
  F --> G[Redacted Preview & Duplicates]
  G --> H{Explicit Confirmation}
  H -->|Without Screenshots| I[GitHub REST Issue API]
  H -->|With Screenshots| J[gh issue create --attach]
  D --> K[DSH Credentials]

✨ Key Features & Capabilities

1. Plugin Catalog & Dual Grouping

The reporter inspects the runtime composition of DeepSeek Harness. Non-public, invalid, or duplicate packages are filtered out. Valid targets are organized into two independently collapsible groups:

  • Native DSH Plugins: Packages scoped under @deepseek-ai/.
  • Third-Party Plugins: All other community plugins and extensions.

Clicking the full plugin row opens the integrated issue composer.

2. GitHub OAuth Device Flow Authorization

Users authorize via GitHub's standard OAuth Device Flow with a single "Sign in with GitHub" click:

  • The user is provided an 8-character verification code and redirected to GitHub's activation page.
  • The plugin requests the repo scope to enable issue creation and duplicate search.
  • The resulting access tokens are stored securely through DSH Credentials (tokenEnv: GITHUB_ISSUE_REPORTER_TOKEN).
  • An explicit Sign out action removes credentials, allowing seamless account switching.

3. Report Editor & Privacy Boundary

The built-in editor captures structured report fields:

  • Title & Description: Observed behavior, reproduction steps, expected results, and environment context.
  • Automated Sanitization: The host automatically redacts bearer tokens, API keys, credential URLs, local system paths, and emails.
  • Live Redacted Preview: Displays exactly what will be sent, including a detailed count of redacted items.
  • Safe Fallback: If no GitHub account is connected, the editor provides a prefilled GitHub issue-form link for manual submission.

5. Autonomous Agent Reporting Tool (report_issue)

Registers an official tool in Cordis ctx.tools allowing autonomous coding agents and orchestrators to prepare or file structured bug reports whenever an installed plugin encounters an unhandled exception or runtime crash.

6. AI Summary & Repro Step Generator

Integrated with ctx.llm via POST /dsh-issue-reporter/ai/optimize, allowing users to polish unstructured error notes into clean, reproducible steps and an actionable issue title with one click.

7. Live Telemetry & Session Log Selector

Inspects recent host session logs via GET /dsh-issue-reporter/logs, providing a redacted log checklist to easily attach relevant server traces to the bug report.

8. Issue Watcher & Live Status Tracking

The "My Reports" tab persists submitted tickets and performs batch status verification (POST /dsh-issue-reporter/issues/batch-status), showing live open/closed status badges and comment counts.

9. Smart Auto-Labeling & Component Detection

Queries upstream repository labels via POST /dsh-issue-reporter/labels and automatically recommends matching category tags (bug, ui, performance, auth).

10. One-Click Settings Card Updater

In-place npm updater conforming to DSH standards: checks the registry on mount and provides an explicit "Update" button with same-origin and loopback security.

4. Read-Only Duplicate Search

Before submission, the plugin searches existing GitHub issues in the target repository using normalized tokens from the title and body. It ranks up to five potential duplicates to avoid noise.

5. Screenshot Attachments

Users can attach up to 5 screenshots (PNG, JPG, GIF, WebP; 8 MiB per file, 20 MiB total):

  • Images remain in browser memory until explicit submission.
  • Uploads are performed via the official GitHub CLI (gh issue create --attach) inside a temporary staging directory that is cleaned up in a finally block.
  • Reports without screenshots use the standard GitHub REST API.

6. Runtime Modules

| Module | Responsibility | |:### 6. Clipboard Paste (Ctrl+V) & Drag-and-Drop (v0.1.1) Paste screenshots directly from the clipboard (Ctrl+V from system snipping tools) or drag-and-drop image files into an interactive dropzone with visual thumbnail cards and size indicators.

7. Automated System Diagnostics & Crash Prefill (v0.1.1)

Captures sanitized runtime diagnostics (Node.js, OS platform, architecture, DSH versions) without private paths or credentials. Plugins in a runtime failure state provide a one-click Quick Report with captured error stacks.

8. Tab Navigation & Instant Search (v0.1.1)

Styled according to the dsh-clinebot design system with clean tabs (Catalog, Report Editor, My Reports, Authorization) and a real-time instant search filter across all installed plugins.

9. Issue Lifecycle Tracking (v0.1.1)

The 'My Reports' tab maintains a local history of submitted issues, offering one-click status checks (Open / Closed) and direct links.

10. Multi-Forge Support (Gitea / Forgejo) (v0.1.1)

In addition to GitHub, the reporter detects repositories on local and self-hosted Gitea/Forgejo instances, supporting Gitea REST issue creation and duplicate lookups.

---|:---| | lib/domain.js | Repository parsing, native/third-party classification, redaction, draft composition, duplicate ranking, and credential serialization | | lib/github.js | GitHub OAuth Device Flow, refresh token exchange, authenticated user lookup, and REST issue creation | | lib/attachments.js | Screenshot validation, size/count limits, temporary file lifecycle, and GitHub CLI execution | | lib/auth.js | Removal of configured GitHub credentials during sign-out | | lib/index.js | DSH settings registration, credentials integration, same-origin route protection, and report workflow | | lib/client.js | Bilingual Web UI settings card, authorization controls, catalog, composer, preview, and feedback |


📦 Installation

Install into your DeepSeek Harness web profile:

dsh plugin --profile web add @goodandready/dsh-issue-reporter

Restart your DSH instance and open Settings → Plugins → GitHub Issue Reporter.


⚙️ GitHub OAuth App Setup

  1. In GitHub Developer Settings, create an OAuth App (e.g., DSH Issue Reporter).
  2. Set Homepage URL and Authorization callback URL to your DSH URL (e.g., https://goodandready.app or http://127.0.0.1:3080).
  3. Under Device Flow, check Enable Device Flow.
  4. Set the public Client ID in your settings.yaml under appClientId.
  5. Open DSH Settings → Plugins → GitHub Issue Reporter and click Sign in with GitHub.

🔧 Configuration (settings.yaml)

# settings.yaml
dsh-issue-reporter:
  # Public client ID of your GitHub OAuth App with Device Flow enabled
  appClientId: "YOUR_GITHUB_OAUTH_CLIENT_ID"
  # DSH Credentials reference holding the OAuth token (never enter raw tokens here)
  tokenEnv: "GITHUB_ISSUE_REPORTER_TOKEN"
  # GitHub REST API endpoint (default: https://api.github.com)
  apiBaseUrl: "https://api.github.com"
  # Request and CLI attachment timeout in milliseconds
  timeoutMs: 30000
  # Executable name or absolute path for GitHub CLI
  ghPath: "gh"

Parameters Reference

ParameterTypeDefaultDescription
appClientIdstring""Public GitHub OAuth App Client ID with Device Flow enabled
tokenEnvstring"GITHUB_ISSUE_REPORTER_TOKEN"DSH Credentials reference storing user OAuth material
apiBaseUrlstring"https://api.github.com"GitHub REST API endpoint
timeoutMsnumber30000Timeout in milliseconds for API requests and CLI attachment uploads
ghPathstring"gh"Path to the gh binary on the host (used for screenshot reports)

🔌 HTTP API Routes

All routes enforce DSH browser session authentication and same-origin protections.

Method & RoutePurposeExternal Write
GET /dsh-issue-reporter/statusReturn sanitized configuration status and discovered plugin catalogNo
POST /dsh-issue-reporter/device/startInitiate OAuth Device Flow and return user verification codeNo
POST /dsh-issue-reporter/device/pollPoll authorization status, validate identity, and persist credentialsDSH Credentials
POST /dsh-issue-reporter/device/logoutRevoke/delete stored credentials during sign-outDSH Credentials
POST /dsh-issue-reporter/draftCompose a sanitized draft with redaction summaryNo
POST /dsh-issue-reporter/duplicatesSearch and rank likely duplicate issuesRead-only GitHub
POST /dsh-issue-reporter/createSubmit confirmed issue via REST API or gh --attachGitHub Issue

🛠️ Limits and Troubleshooting

SymptomCause & Solution
GitHub sign-in is not configuredAdd the public appClientId to settings.yaml under dsh-issue-reporter.
404 Not Found during sign-inDevice code requests must target github.com/login/device/code, not api.github.com.
Resource not accessible by integrationThe authorized identity lacks write access, or an old token is cached. Sign out and sign in again.
Screenshot attachment failureEnsure gh CLI 2.99+ is installed on the host and accessible via ghPath.
GitHub authorization is invalid or expiredRefresh token expired. Click Sign Out and re-authorize.
Plugin has no report actionThe plugin manifest does not provide a valid public GitHub repository URL.

🔒 Security Notes

  • Credential Protection: OAuth tokens are resolved exclusively from DSH Credentials and are never displayed in UI, logs, URLs, or issue bodies.
  • Data Sanitization: Automatic masking of bearer tokens, passwords, private keys, local paths, and email addresses.
  • Temporary Storage: Uploaded screenshots are stored only in temporary directories that are wiped immediately after the gh process exits.
  • Explicit User Consent: Issues are never submitted without the user checking the confirmation checkbox.

📄 License

MIT © GooDAnDReaDY