Preface

DeepSeek Harness (DSH) adopts a plugin-based architecture, extending functionality to meet different workflow requirements. In the merge request (MR) review process, automation is a common requirement. The dsh-maestro-review plugin aims to provide a standardized pipeline: receiving Git events, running review agents in isolated environments, and outputting structured results. It addresses problems in traditional review workflows, such as requiring manual checkout, lacking a unified discovery mechanism, and being difficult to reuse in CI.

Plugin Overview

ddtcorex/dsh-maestro-review is a pluggable merge request (MR) review plugin for DeepSeek Harness. It receives events via Webhooks, uses an orchestrator to start review or audit agents in disposable worktrees, and uses the review-findings tool to track results. Currently, it natively supports GitLab as the code hosting provider, while support for other forges is implemented through pluggable interfaces.

Core Capabilities

The plugin provides the following core capabilities:

  • ReviewProvider Abstraction
    Defines a unified interface standard. The GitLab client is the currently implemented version, and support for other forges requires extending this foundation.

  • Orchestrator
    Reviewer and auditor agents run in disposable worktrees. Model selection (reviewModel) supports global overrides or per-project mapping.

  • Webhook Integration
    The plugin receives GitLab MR events through Webhooks, with event deduplication and retention mechanisms to ensure that repeated triggers do not cause duplicate reviews.

  • Findings and Tracking
    Review results are written through the review-findings tool, containing only structured findings rather than free text. The system tracks history and signals for each MR.

  • Tool Integration
    Review runs can use the Govard/workspace tool.

  • Client UI
    The plugin injects the client UI for settings into DSH Web slots, making configuration easier for users.

  • CI Review
    Supports running the review process headlessly from GitLab CI. A shared review project, which holds secrets and images, can serve multiple source projects without requiring local code checkout.

Installation and Enablement

Installing this plugin requires the DSH plugin manager.

dsh plugin --profile web add @ddtcorex/dsh-maestro-review

After installation, the plugin registers the relevant service components through the patch in cordis.patch.yml.

Usage Scenarios

Depending on different requirements, the following workflows can be used:

  1. Quick Review: Reviews only the diff, without deep codebase cloning.
  2. Deep Review: Clones the MR head, runs review agents, and performs static auditing.
  3. CI Environment Review: Configured in GitLab CI, using a shared Docker image and templates for automated review.

For configuration, the plugin reads settings from a shared namespace configuration store (~/.dsh/maestro/settings.json). During development, templates in the templates/ directory and images in the docker/ directory can be used to set up the CI environment.

Notes

When deploying and using the plugin, pay attention to the following technical details:

  • Version Synchronization
    A release includes two artifacts that must stay in sync: the npm package and the Docker image. Because the Docker image installs the npm package from the registry rather than copying source code, tagging alone is not sufficient; the image must be updated at the same time.

  • Runtime State
    The machine’s runtime state is stored in sidecars local to the package.

  • Environment Dependencies
    The plugin depends on core DeepSeek Harness components, such as Cordis and DSH Client Connection. Ensure environment version compatibility before use.

Conclusion

dsh-maestro-review provides a complete MR review pipeline solution for DeepSeek Harness. Its pluggable architecture and headless execution capability in CI make it well suited for integration into existing CI/CD processes. For development teams that need automated code review, this is a practical and deployable choice. For more details, see the GitHub repository.