DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Copy Tool — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
C

dsh-copy-tool

Copy Tool

Enhanced line-selection copy tool for DeepSeek Harness.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:kezan31/dsh-copy-tool#ed6b4510a71e49d5cf34a49b0edaa3c810c5a476
READMECompatibilityVersions

Compatibility and provenance

Copy Tool is published as dsh-copy-tool and currently resolves to version 0.1.2. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
any
Release source
github
Registry updated
9/9/2026

Versions

0.1.2stable
9/9/2026

Related plugins

Loading related plugins…

Latest
0.1.2
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
any
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
9/9/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in developer-tools.

Client Ui Git Graph@linxin666/dsh-client-ui-git-graphExternal dsh web GUI plugin: a blank-session git branch selector + Git graph, with real host-side git operations and guards, as a dsh profile bundleDoctor@linxin666/dsh-doctorTransactional rescue mode for DSH profiles with a supervised launcher, isolated recovery capsule, deterministic repairs, health monitoring, and a local Web recovery consoleSsh@linxin666/dsh-sshRemote SSH operations for the dsh web GUI: host config store (~/.dsh/dsh-ssh.json, import from ~/.ssh/config), a persistent ssh2 connection pool with jump-host support, exec / PTY web terminal / SFTP transfer / local port-forward tunnels / cluster executiFind Plugindsh-find-pluginFind DeepSeek Harness plugins inside the agent — live GitHub dsh-plugin topic search, ranked by stars.

README

dsh-copy-tool

中文说明

An enhanced line-selection copy plugin for DeepSeek Harness.

It addresses omissions and oversimplification when using the write tool to refactor large projects by speeding up refactoring calls, saving substantial tokens, and migrating modules while preserving their source-line content.

Features

  • Copy individual 1-based lines or ranges to corresponding target lines
  • Use arrays such as [[633, 889]] or [633, [640, 645], 700] for both lines and target_lines
  • Strip common source indentation and add an explicit four-space indent level
  • Preview a bounded unified diff with required dry_run
  • Atomically create missing files with writeText
  • Atomically edit existing files (including the source file) with editText
  • Preserve untouched content and filesystem-native line endings
  • Resolve paths relative to the current session workspace and respect its sandbox policy

Install

npm (recommended)

cd $env:USERPROFILE\.dsh\profiles\web
npm install dsh-copy-tool

Then add dsh-copy-tool to the dsh.profile.bundles array in package.json, and restart DSH Web.

dsh plugin command

dsh plugin --profile web add dsh-copy-tool

If the bundle list is not updated automatically, add dsh-copy-tool to dsh.profile.bundles in the profile's package.json manually, then restart DSH Web.

Usage

All parameters are required. Expanded lines and target_lines must select the same number of lines; each source line maps to the target line at the same position:

{
  "source_file": "source.py",
  "target_file": "module.py",
  "lines": [[633, 644]],
  "target_lines": [[1, 12]],
  "indent": 0,
  "dry_run": true
}

A line list can mix individual numbers and ranges:

{
  "source_file": "source.py",
  "target_file": "module.py",
  "lines": [633, [640, 645], 700],
  "target_lines": [1, [2, 7], 8],
  "indent": 1,
  "dry_run": false
}

Line numbers are 1-based. Source indentation common to all selected non-empty lines is removed, then indent * 4 spaces are added. Existing targets are edited in place while preserving untouched content; a missing target must use continuous target_lines beginning at 1 and is created as a new file. Use dry_run to inspect the diff before writing.

License

MIT