Introduction

DeepSeek Harness (DSH) uses a plugin-based architecture. When working with complex codebases, agents often need a broad view covering issue localization, symbols, dependency paths, architectural communities, and change impact, rather than relying solely on traditional file search. dsh-graphify is a native plugin that connects Graphify’s local knowledge graph engine to DSH, helping agents build a structured understanding of projects within a session.

Plugin Overview

The plugin is maintained by QuantumKuba and is classified as a “memory” tool. The core problem it solves is: how to enable DSH agents to obtain a current, local, and structured code map without treating the repository as an unstructured pile of files.

Core Capabilities

The plugin provides the following core capabilities:

  • Session-aware project resolution: Graph requests automatically follow the workspace of the current DSH session, and access outside the workspace is blocked by default.
  • Freshness check: Use the graphify_status command to check whether the graph matches the source-code index status and identify stale graphs.
  • Safe update strategy: Supports incremental updates and full builds. Incremental updates only target code extraction; if unsupported changes (such as documentation or configuration) are detected, the graph remains marked as stale and a full build is requested.
  • DSH-native operations: Build or refresh the current session’s project graph using the /graphify command.
  • Local runtime resilience: The plugin can automatically discover the Graphify runtime and attempts to reconnect after an unexpected process exit.
  • Dual-mode tool set:
    • Compact mode: Provides six high-frequency tools (status, graph query, node inspection, neighbors, shortest path, and session resources) for small models (e.g., 20B–30B).
    • Full mode: Exposes the full capability set, including community analysis, god node identification, and PR impact analysis.
  • Graph query tools: Supports node queries, path finding, community identification, and PR impact analysis.

Installation and Configuration

Before use, ensure the environment has the required dependencies installed: Node.js 22.18+, Python 3.10+, and uv.

  1. Install the plugin:
    Use the official command to add the plugin to a specified DSH Profile:
    dsh plugin --profile <profile> add dsh-graphify
  1. Configure the mode:
    full mode is used by default. To configure compact mode for small models, specify it in the configuration:
    - insert:
        - id: dsh-graphify
          name: dsh-graphify
          config:
            toolMode: compact

Typical Usage

After installing and starting DSH, enter the target codebase directory and use the following commands:

  • Build/refresh the graph:
    Type directly in the conversation:
    /graphify
This performs a full build, and the result is written to `graphify-out/graph.json`.
  • Update changes:
    Update only the code files that have changed:
    /graphify update
Note: This command is conservative; it extracts code changes only and does not cover changes to documentation or configuration files.
  • Diagnose status:
    Check runtime availability, project path, and graph freshness:
    graphify_status

Notes

  • OS support: The plugin has been tested on macOS and Ubuntu; the Windows platform has not been verified.
  • Output path: Generated graph files are written by default to the graphify-out/graph directory.
  • Update limitations: /graphify update processes only code file extraction. If Markdown documentation, package metadata, or configuration files are modified, you must run /graphify to perform a full build, because these changes are not included in incremental updates.