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_statuscommand 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
/graphifycommand. - 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.
- Install the plugin:
Use the official command to add the plugin to a specified DSH Profile:
dsh plugin --profile <profile> add dsh-graphify
- Configure the mode:
fullmode is used by default. To configurecompactmode 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/graphdirectory. - Update limitations:
/graphify updateprocesses only code file extraction. If Markdown documentation, package metadata, or configuration files are modified, you must run/graphifyto perform a full build, because these changes are not included in incremental updates.