Skip to content

[Agent]: Add support for DeepSeek Harness (DSH) #4334

Description

@AnInteger

Agent Name

DeepSeek Harness (DSH)

Official Website

https://github.com/deepseek-ai/deepseek-harness

Agent Type

CLI tool (command-line interface)

It also ships a browser-based GUI (dsh web); the CLI and GUI share the same skill-discovery machinery.

CLI Command (if applicable)

dsh

Installation Method

npm install -g @deepseek-ai/dsh

Command/Workflow Structure

DSH is skills-based. It discovers skills from (in precedence order):

  • <projectRoot>/.dsh/skills (native project root, highest rank)
  • <projectRoot>/.agents/skills (shared agents standard)
  • user-level roots (~/.dsh/skills, ~/.agents/skills)

Skill format: one-level-deep directory bundles <name>/SKILL.md (or flat <name>.md) with YAML frontmatter requiring a kebab-case name and a description — the same agentskills.io layout Spec Kit already scaffolds for Codex, Zed, Antigravity, and Devin. Skills are invoked through the /-trigger input in the Web GUI (e.g. /speckit-specify build photo albums); the harness injects the rendered skill content into the turn. Project guidance in AGENTS.md at the repo root is loaded natively.

Non-interactive dispatch is available via the one-shot headless profile:

dsh --profile headless "/speckit-specify <feature description>"

Argument Passing Pattern

No file placeholder substitution. The text the user types after the /name token ships verbatim as the task; the skill body sees it in the triggering message. (Spec Kit's $ARGUMENTS placeholder is therefore left literal in the skill body, same as other skills-based agents like Zed — the core templates already phrase user-input handling accordingly.)

Popularity/Usage

Widely used (thousands+ of users) — 196k stars on GitHub.

Documentation Links

Use Case

We develop with DSH as the primary coding agent and want to use Spec Kit's spec-driven workflow (/speckit-constitution/speckit-specify/speckit-plan/speckit-tasks/speckit-implement/speckit-converge) directly inside DSH sessions. The integration is a natural fit because DSH already speaks the skills format Spec Kit generates for other agents.

Example Command File

specify init --integration dsh would scaffold .dsh/skills/speckit-specify/SKILL.md:

---
name: "speckit-specify"
description: "Create or update the feature specification from a natural language feature description."
compatibility: "Requires spec-kit project structure with .specify/ directory"
metadata:
  author: "github-spec-kit"
  source: "templates/commands/specify.md"
---

(command body — standard Spec Kit specify workflow)

Contribution

  • I can help test the integration
  • I can provide example command files
  • I can help with documentation
  • I can submit a pull request for the integration

Additional Context

I have a working implementation ready and will open a PR referencing this issue: a minimal SkillsIntegration subclass installing to .dsh/skills/ (isolated root, multi-install safe, so it coexists with other agents), slash-style invocations (/speckit-<command>), and CLI dispatch via dsh --profile headless. Verified end-to-end: specify init --integration dsh scaffolds 10 skills; the real DSH filesystem skill provider discovers all of them as user- and model-invocable; /speckit-constitution and /speckit-specify were executed by a real DSH agent and produced the expected artifacts.

AI disclosure: this issue and the accompanying integration were prepared with AI assistance (DeepSeek Harness, glm-5.3) under human supervision — the design decisions were reviewed and approved step by step, and all changes and test evidence were personally verified before submission.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions