Back to home

xxiaoxiong

dsh-issue-tracker

dsh-issue-tracker

Stars
1
Language
TypeScript
Created
Aug 15, 2026
Updated
Aug 15, 2026

Introduction

dsh-issue-tracker

Jira Cloud issue-tracker service and model-facing tools for DeepSeek Harness.

The package is one installable DSH bundle with three internal roles:

  • a provider-neutral Cordis issueTracker service;
  • a Jira Cloud REST API v3 provider;
  • eight tools registered through the public DSH ToolRuntime service.

The plugin is read-only by default. Create, update, comment, and transition operations require an explicit writeEnabled: true; every write tool also supports a side-effect-free dryRun.

Requirements

  • Node.js ^22.19.0 || >=24.0.0
  • DeepSeek Harness 0.1.0-rc.6
  • Jira Cloud REST API v3

Install

dsh plugin --profile web add dsh-issue-tracker

The bundle row stays disabled until these variables are available:

$env:JIRA_BASE_URL = 'https://your-domain.atlassian.net'
$env:JIRA_EMAIL = 'you@example.com'
$env:JIRA_API_TOKEN = 'your-api-token'

Writes remain disabled. Enable them only when intended:

$env:DSH_ISSUE_TRACKER_WRITE_ENABLED = 'true'

Restart DSH, then inspect the composed row:

dsh --profile web --dump-config

For OAuth bearer authentication or non-environment configuration, replace the issue-tracker row in the profile's cordis.patch.yml; a patch replaces the whole row, so restate every field:

- id: issue-tracker
  name: dsh-issue-tracker
  config:
    baseUrl: https://your-domain.atlassian.net
    auth:
      type: bearer
      accessToken: !!js process.env.JIRA_ACCESS_TOKEN
    writeEnabled: false

Tools

ToolPurposeWrites
issue_getRead one issueNo
issue_searchSearch with filters or raw JQLNo
issue_transitionsList available transitionsNo
issue_projectsList visible projectsNo
issue_createCreate an issueYes
issue_updateUpdate issue fieldsYes
issue_commentAdd a commentYes
issue_transitionApply a transitionYes

All HTTP calls honor the DSH tool cancellation signal and a configured request deadline. Structured filters are JQL-escaped; providerQuery is intentionally raw JQL and should be governed like any other privileged query input.

Security

  • HTTPS is required unless allowInsecureHttp: true is explicitly set.
  • Credentials in baseUrl are rejected.
  • Secrets are marked with Schemastery's secret role.
  • The plugin does not log credentials, prompts, issue bodies, or comments.
  • No telemetry is collected or sent by this package.

See docs/security.md for the complete boundary.

Uninstall

dsh plugin --profile web remove dsh-issue-tracker

Cordis owns both the service registration and tool registrations, so unloading the bundle removes all eight tools and the issueTracker service.

Verification status

The release is typechecked and tested on Windows with real Cordis and DSH 0.1.0-rc.6 packages. HTTP behavior is tested with mocked Jira responses; no live Jira tenant or production credential was used. See docs/verification-report.md.

中文说明

这是一个面向 DeepSeek Harness 的 Jira Cloud 工单插件。安装一个 npm 包即可 获得通用 issueTracker 服务和 8 个模型工具。插件默认只读;所有写操作必须显式 开启 writeEnabled,并且可以先用 dryRun 验证参数而不产生副作用。

许可证:MIT。