Introduction

DeepSeek Harness (DSH) provides a framework for Agent workflows, but in practical deployment, managing external tools (such as Jira and GitLab) often requires manual operation. Static kanban views cannot directly drive Agents, preventing Agents from making decisions based on project status.

dsh-kanban solves this problem. It is maintained by JianwuYang and is a DeepSeek Harness plugin designed to transform Jira Server / Data Center and GitLab into Agent-operable kanban boards. Each DSH workspace is mapped to a project. Agents drive the board through tools, while a floating panel is provided for human viewing.

Core Features

The plugin provides the following verified features:

  • Agent-operable kanban: Transforms Jira/GitLab boards into Agent-operable workflows.
  • DSH workspace as project: Each DSH workspace corresponds to a project, including Jira connection, GitLab connection, and local repository configuration.
  • Floating panel: Follows the current session, automatically switches projects and reloads, and supports status grouping, category highlighting, collapse, and search.
  • Full issue details: Renders the description (including Jira image proxy), attachment links, transition buttons, comments (supporting pasting/uploading images), and Lightbox.
  • Create issue: Uses Jira’s createmeta API and supports required markers, automatic type selection, priority, assignee search, and multi-value fields (components/labels).
  • GitLab workspace: Supports filtering, searching, linking, and creating MRs for Issues and Merge Requests, as well as creating an MR from a Jira issue.
  • Branch switching: Click the branch chip on a Jira card with an open MR to run git fetch + git checkout in the local repository.
  • Send to session analysis: Send an analysis request from the issue details to the current session or a new session, with attachments passed as image content.
  • Agent tools: Provides 15 model-call tools, with results rendered directly in the conversation.
  • Bilingual UI: Supports switching between Chinese and English.

Installation and Enabling

When installing the plugin, use the following command:

dsh plugin --profile demo add /path/to/dsh-ui-kanban

If installing from a Git repository, use the following command:

dsh plugin --profile demo add github:owner/dsh-ui-kanban

Note: If using pnpm >= 10, the prepare script for the first Git dependency may be rejected. In this case, add the allowBuilds configuration to pnpm-workspace.yaml, then retry.

If you need to use the Web GUI to configure cards, use the web profile:

dsh plugin --profile web add /path/to/dsh-ui-kanban

Configuration

The plugin uses a YAML configuration file. The configuration namespace is dsh-kanban. Default settings are read from the schema, then merged with the cordis.yml base configuration, and finally user document configuration is applied.

- insert:
    - id: dsh-kanban
      name: dsh-kanban
      config:
        dataDir: ''            # 留空则使用 ~/.dsh/kanban
        allowSelfSigned: true  # 通用默认值,用于 GitLab 自签名 TLS
        verbose: false
        jira:                  # 全局 Jira 主机 + 令牌,被每个工作区继承
          baseUrl: 'https://jira.example.com'
          apiToken: ''
        gitlab:                # 全局 GitLab 主机 + 令牌
          baseUrl: ''          # 例如 https://gitlab.example.com
          apiToken: ''
        projects:              # 每个工作区覆盖(以工作区 ID 为键)
          - id: default        # 工作区 ID
            name: Default      # 可选显示覆盖
            jira:
              projectKey: 'PROJ'
              jql: ''          # 会自动前置 `project = <key>`
            gitlab:
              project: ''      # 组/仓库或完整 URL
              mrAutoLink: true      # 从 MR 描述自动推导 MR <-> Issue 链接
              mrLinkKeywords: ''    # 闭合关键词(逗号分隔;留空则使用 GitLab 官方列表)
              mrLinkMentions: true  # 普通 #123 提及也视为链接
            localRepo:
              directory: ''    # 留空则使用工作区自身路径

Permissions and Security: Jira and GitLab tokens use role('secret'); the Web GUI only edits host/token and does not echo secrets in the interface.

Typical Usage

  1. Open panel: Open the floating panel from the “Kanban” button in the session header.
  2. Configure connections: Configure the global Jira/GitLab connections and project overrides.
  3. View and search: Search issues in the panel (supports key/summary/assignee/status).
  4. Operate issue: Click an issue to view details, perform a transition, or add a comment.
  5. Analysis request: Send a “send to session analysis” request from the issue details.
  6. Create issue: Create an issue using Jira’s createmeta API.
  7. GitLab integration: Configure GitLab MR link keywords and support branch switching from the kanban.

Applicable Scenarios and Notes

  • Applicable scenarios: Developers who need to integrate Jira and GitLab into DSH workflows so that Agents can make decisions and act based on project status.
  • Notes:
    • License: MIT.
    • The Web GUI uses the web profile.
    • Tokens are role('secret').

Summary

dsh-kanban integrates Jira/GitLab into DSH workflows by providing Agent tools and a visual panel, enabling Agents to operate directly on project status.

  • Directory page: https://www.skillhub.cn/plugins/JianwuYang/dsh-ui-kanban
  • GitHub repository: https://github.com/JianwuYang/dsh-ui-kanban