Preface¶
In the DSH community plugin ecosystem, plugins usually register tools with a profile for agents to call during tasks. The tool registered by dsh-code-impact is code_impact, with a clear purpose: to perform a read-only impact analysis on a specific TypeScript or JavaScript Git change.
It does not replace test execution, nor does it maintain a long-term repository index. A single call temporarily builds a reverse module dependency graph and then returns changed declarations, affected files, propagation paths, evidence locations, and ranked test candidates. Below is an introduction to its positioning, installation method, typical usage, and security boundaries.
What is this¶
dsh-code-impact is a standalone DeepSeek Harness community plugin, positioned as:
Read-only TypeScript and JavaScript change-impact analysis for DeepSeek Harness
Key information verified from available sources:
- Plugin name:
dsh-code-impact - Maintainer:
baidd1011 - License: MIT
- Version:
0.2.0 - GitHub repository:
https://github.com/baidd1011/dsh-code-impact
It reads Git metadata, Git objects, and files via DSH services. It does not checkout, write to the index, create a worktree, run tests, edit files, or access the network.
The DSH community directory is a separate site and is not equivalent to the official app store; this article introduces it as a community plugin.
Core Features¶
One-time Read-only Impact Analysis¶
code_impact works on a specific change. It performs a read-only analysis first, then returns verifiable materials:
- changed declarations
- affected files
- propagation paths
- evidence locations
- ranked test candidates
The plugin reuses unchanged snapshot content within a single call but does not maintain a long-term repository index.
Comparison Modes¶
The plugin supports three comparison modes:
workspacestagedrefs
TypeScript/JavaScript Parsing¶
The plugin uses the TypeScript Compiler API to handle the following file types:
.ts
.tsx
.mts
.cts
.js
.jsx
.mjs
.cjs
Version 0.2.0 also handles these project configurations and module resolution hints:
- JSONC project configuration
tsconfig.json/jsconfig.jsonextends- project references
- path aliases
- package
exports/imports
Non-TypeScript/JavaScript files are still retained in the change results but will not receive fictitious symbol-level impact.
Configuration Validation¶
When the plugin loads, it uses Schemastery to validate configuration fields.
Version Boundaries¶
Version 0.2.0 does not include the following capabilities:
- LSP
- call graph
- cross-language analysis
- persistent index
- PR API
- test execution
- risk score
- dedicated web panel
Installation and Enablement¶
Compatible Versions¶
Target compatible versions given by verified sources:
Node: ^22.19.0 || >=24.0.0
Cordis: 4.0.1
dsh-fs: 0.0.1-rc.1
dsh-subprocess: 0.0.1-rc.1
dsh-tools: 0.0.1-rc.1
DSH peer versions are exact matches.
Adding the Plugin¶
The add command given by verified sources:
dsh plugin --profile demo add dsh-code-impact
Typical Usage¶
code_impact accepts JSON parameters.
workspace¶
{"mode":"workspace"}
Compares HEAD with the current working tree, including staged, unstaged, and unignored untracked files.
staged¶
{"mode":"staged"}
Compares HEAD with the Git index.
refs¶
{"mode":"refs","base_ref":"origin/main","head_ref":"feature/payment"}
The plugin verifies the two refs and compares the merge-base to head_ref.
Security Boundaries and Limits¶
- Git is called via argv, not through a shell.
- refs are verified using
rev-parse --verify --end-of-options. - symlinks, binary files, submodules, unresolved related imports, incorrect project configurations, and traversal limits pointing outside the workspace will generate explicit warnings and set
complete: false. - Repository-level scale limits may return
CODE_IMPACT_REPOSITORY_TOO_LARGE. - A single very large file will generate a warning and result in an incomplete report.
- The result array is limited by
maxResultChars, resulting in truncation when exceeded.
Applicable Scenarios and Notes¶
Suitable for:
- TypeScript/JavaScript repositories using a DSH profile.
- Requiring one-time read-only change impact analysis.
- Only needing module dependency-level impact scope, not requiring LSP, call graph, cross-language analysis, persistent index, PR API, test execution, risk score, or dedicated web panel.
Notes before installation:
- The plugin runs with the permissions of the current dsh process.
- You should check the source code, MIT license, Node and DSH peer exact versions, and the content of the
baidd1011/dsh-code-impactrepository.
Conclusion¶
With the above steps, dsh-code-impact provides a clearly bounded read-only tool: converting a single TS/JS change into changed declarations, affected files, propagation paths, evidence locations, and candidate tests, while maintaining no modification of the workspace, no test execution, and no network access.
GitHub: https://github.com/baidd1011/dsh-code-impact
Current verified sources do not provide a directory page URL, so it is not listed for now.