The core architecture of DeepSeek Harness is plugin-based. Developers build agents for specific scenarios by extending its capabilities. When writing agent code, how can you ensure logical consistency from requirement definition to final implementation? Spec-Kit spec-driven development is a standard workflow. This plugin breaks that workflow into /speckit-* slash commands, allowing you to control the entire development flow step by step in Harness.

Plugin Introduction

This is a DeepSeek Harness plugin that provides Spec-Kit spec-driven development capabilities. It breaks the original sdd skill into fine-grained slash commands, supporting step-by-step control of the entire development workflow in Harness via /speckit-*.

Installation and Enablement

Before using the plugin, make sure the specify-cli dependency is installed in your environment. When installing the plugin, you must provide an absolute path after file:.

# Clone the repository
git clone https://github.com/904915452/dsh-specify.git
cd dsh-specify

# Add the plugin; --profile web is an example, replace it with your profile
dsh plugin --profile web add "file:$(pwd)"

Or add it directly from the repository URL:

dsh plugin --profile web add git+https://github.com/904915452/dsh-specify.git

After installation, restart the session to use the /speckit-* commands.

Core Features

The plugin provides 10 slash commands covering the full lifecycle of spec-driven development:

  • /speckit: Master Control Hub. Used for installation checks, Greenfield/Brownfield decisions, branch conventions, and summary/status templates.
  • /speckit-constitution: Defines project principles and generates .speckit/constitution.md.
  • /speckit-specify: Defines requirements (WHAT/WHY) and generates specify.md.
  • /speckit-clarify: Clarifies ambiguities and revises specify.md.
  • /speckit-plan: Creates the technical plan and generates plan.md.
  • /speckit-tasks: Breaks work into tasks and generates tasks.md.
  • /speckit-analyze: Performs consistency checks and generates a report on requirements/acceptance/boundary coverage.
  • /speckit-implement: Generates code according to the tasks.
  • /speckit-checklist: Generates a quality gate checklist and outputs checklist.md.
  • /speckit-status: Outputs a dashboard showing progress, dependencies, and next steps.

Branch Control

When you run /speckit-specify, the plugin decides whether to switch branches based on the branch conventions:

  • Default behavior: create a new feat/<feature-slug> branch from main or master.
  • Parameter --no-branch: stay on the current branch and do not create a new branch.
  • Parameter --branch <name>: use the specified branch name.

The decision result is written to the summary, and /speckit-implement uses it to implement on the correct branch.

Technical Structure

The plugin scans the skills/ directory and registers all commands via lib/index.js. All resource paths in command bodies (such as references/ and scripts/) can be resolved uniformly through resourceBase. Command names use hyphenated kebab-case format.

Notes

This plugin depends on the specify-cli tool. If you encounter installation or runtime issues, consult skills/references/sdd_install.md.


More information and source code:
* Directory: https://www.skillhub.cn/plugins/904915452/dsh-specify
* GitHub: https://github.com/904915452/dsh-specify