dsh-plugins
by riesbri
个人DeepSeek Harness插件包:list_dir工具 + 本地配置层
Personal DeepSeek Harness plugin bundle: list_dir tool + machine-local config layer
安装
dsh plugin --profile web add github:riesbri/dsh-pluginsGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
Personal DeepSeek Harness plugin bundle.
Install
dsh plugin --profile web add github:riesbri/dsh-plugins
Or from a local checkout:
dsh plugin --profile web add /path/to/dsh-plugins
dsh plugin appends the bundle to the profile's dsh.profile.bundles, so its layer applies after @deepseek-ai/dsh-base and any mode bundle. Confirm with:
dsh --profile web --dump-config # shows a "# == dsh-plugins-riesbri" layer
Remove with dsh plugin --profile web remove dsh-plugins-riesbri.
This package ships plain ESM JavaScript with no build step, so a github: install needs no prepare script and no pnpm allowBuilds entry.
What it contributes
list_dir
Lists the direct children of a directory — names, types, and sizes only, never file contents.
The harness filesystem seam has exposed ctx.fs.listDir since the beginning with no model-facing Consumer; @deepseek-ai/dsh-tool-fs records the gap under its known limitations as "No model-facing directory listing ships". Without it the model reaches directory structure only through bash ls — unstructured, and subject to whatever shell sandbox the deployment mounts — or through glob, which is pattern-driven rather than hierarchical.
Because it is a Consumer of the seam rather than a shell-out, listing follows whichever filesystem provider the deployment mounted: local, sandboxed, or remote.
| Parameter | Type | Notes |
|---|---|---|
path |
string, required | A relative path resolves against the calling agent's session workspace, not the server's launch directory. |
limit |
integer | Defaults to 200, clamped to 1000. A truncated listing says so in its last line. |
The tool registers globally, so it reaches every agent regardless of the agent preset a session selects — a preset row of the same name would shadow it, but no shipped preset defines one.
Machine-local configuration
dsh-home/cordis.patch.yml is the home patch layer, symlinked into place:
ln -s "$PWD/dsh-home/cordis.patch.yml" ~/.dsh/cordis.patch.yml
It applies to every profile, after that profile's bundle layers and before any --patch overlay, and is hot-reloaded on save. It currently enables session content search: the base bundle mounts the session-query index with path: ':memory:' and openAt: never, so every full-text call fails SESSION_QUERY_SEARCH_DISABLED and the Web sidebar matches titles and workspace names only. A durable path with openAt: first-search keeps the node:sqlite import and the file handle off the startup path.
Remember that a patch replaces the targeted row's whole config rather than merging into it, so every key the row needs is restated there.
Layout
package.json declares dsh.bundle
cordis.patch.yml the layer applied when a profile lists this bundle
index.js plugin entry: name, inject, apply
src/list-dir.js the tool
dsh-home/cordis.patch.yml machine-local home patch layer (symlinked to ~/.dsh)
License
原始 README: https://github.com/riesbri/dsh-plugins/blob/main/README.md ↗
同类插件
查看全部 →
dsh-anchored-standard
两阶段 DeepSeek Harness 预设:先 Minimal 对齐的 bootstrap,再切完整 Standard 工具(Project2 98/99)

PicGo-Core
极致的图片上传引擎,CLI 与 API 双支持

awesome-deepseek-harness
DeepSeek Harness(DSH)及其优秀社区插件的精选指南。

awesome-deepseek-harness
DeepSeek Harness (DSH)生态系统:来自dsh-external/hub和公共dsh-plugin主题的精选插件、工具和基础设施。

AI-Novel-Writer
本地优先 AI 小说创作工作台,提供 Windows/macOS 桌面版与 DeepSeek Harness 插件开发预览,支持角色、大纲、章节蓝图、审稿修稿和本地模型。

mcp-for-stata
MCP-for-Stata:把 Stata 集成进你的 agent