DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins

@powefuled/dsh-matt-pocock-skills

Matt Pocock Skills

将 Matt Pocock 的 agent skills(github.com/mattpocock/skills)镜像到 DSH 中作为 mp-* skills 的 DeepSeek Harness 插件,支持后台同步、按技能切换以及手动同步/管理工具。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add @powefuled/dsh-matt-pocock-skills@0.1.1
README兼容性版本

兼容性与来源证明

Matt Pocock Skills 以 @powefuled/dsh-matt-pocock-skills 发布,当前版本为 0.1.1。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
any
发布来源
npm
Registry 更新时间
2026/11/4

版本

0.1.1stable
2026/10/14
0.1.0stable
2026/10/14

相关插件

正在加载相关插件…

最新版
0.1.1
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
89.6 kB
文件数
17
Surface
any
许可证
MIT
发布源
npm
周下载
15
查看源码 ↗项目主页 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

README

@powefuled/dsh-matt-pocock-skills

A DeepSeek Harness plugin that mirrors Matt Pocock's agent skills into DSH and keeps them in sync with the upstream repository.

中文说明

What it does

  • Mirrors the upstream repository at runtime. The plugin downloads the GitHub archive of mattpocock/skills into a local cache and registers its skills through the DSH skill registry (ctx.skills.registerProvider). No skill file is vendored into this npm package.
  • Only ships what upstream ships. It reads the skills listed by the repository's release manifest (.claude-plugin/plugin.json, currently 27 skills) and ignores skills/misc/, skills/in-progress/ and skills/deprecated/ entirely.
  • Namespaces every skill with mp-. Upstream tdd becomes mp-tdd, so an upstream skill can never shadow one of your own. Cross-skill references inside the skill text are rewritten to the prefixed names, so mp-implement can still tell the agent to load mp-tdd.
  • Syncs itself. A background sync runs shortly after startup and then every syncIntervalHours (24 h by default). Every sync is serialised, a failed sync keeps the last good mirror, and each mirror is keyed by commit sha so a rollout is atomic.
  • Manage it per skill. manage_mattpocock_skills lists every mirrored skill and turns individual skills on or off at runtime — no restart, no file edits, and the override survives re-syncs.
  • Works offline. If the network is unavailable at startup the plugin simply exposes the last mirrored version (or nothing, on a first run) and records the error in its state file.

Requirements

  • DSH 0.2.0-rc.2 or newer (the skill-provider API version this plugin is built against).
  • Node.js ^22.19.0 || >=24.0.0.
  • Network access to api.github.com and codeload.github.com for syncing (git is not required).

Install

From npm (recommended)

dsh plugin --profile <profile> add @powefuled/dsh-matt-pocock-skills

Or install it from the DSH plugin manager / plugin market UI. The package declares a bundle patch, so mounting it is automatic.

Manual mount (works before publishing)

The plugin only needs to be resolvable from the profile and referenced once in the profile's patch layer, ~/.dsh/profiles/<profile>/cordis.patch.yml:

- insert:
    - id: mattpocock-skills
      name: '@powefuled/dsh-matt-pocock-skills'
      config:
        syncIntervalHours: 12

If you keep the source in a working copy instead, point the loader at that working copy:

- insert:
    - id: mattpocock-skills
      name: 'file:///D:/dsh工作区/dsh-mattpocock-skills/lib/index.js'

Restart DSH (or let the loader hot-reload the patch) and the mirrored skills appear in the skill catalogue as mp-*.

Configuration

All options are optional and live on the plugin's own entry in ~/.dsh/profiles/<profile>/cordis.patch.yml:

- id: mattpocock-skills
  name: '@powefuled/dsh-matt-pocock-skills'
  config:
    categories: ["engineering"]
    disabledSkills: ["retro"]
    syncIntervalHours: 12
OptionDefaultDescription
repomattpocock/skillsUpstream repository, owner/name.
refmainBranch, tag or commit sha to mirror.
token''Optional GitHub token: raises the API rate limit, allows a private mirror.
manifestPath.claude-plugin/plugin.jsonUpstream release manifest that lists the shipped skills.
skillsRootskillsDirectory in the repository that holds skill folders.
useUpstreamManifesttrueExpose exactly the manifest's skills (set false to discover every */SKILL.md).
categories[]Restrict to categories such as engineering or productivity; empty means all.
namePrefixmp-Prefix applied to every skill name.
rank700Provider precedence. Lower wins, so mirrored skills stay below bundled (600) and filesystem (100–500) skills.
sourcecustomSource label shown in the skill catalogue.
rewriteSkillReferencestrueRewrite in-text skill references to prefixed names.
honourInvocationFlagstrueKeep upstream's disable-model-invocation / user-invocable flags; set false to make every skill model-invocable.
defaultEnabledtrueInitial enablement for skills without a runtime override.
enabledSkills[]Allow-list applied when defaultEnabled is false.

Skill catalogue and invocation

The mirror ships upstream's 27 published skills, renamed with the mp- prefix (mp-tdd, mp-codebase-design, ...). Their bodies stay untouched except for skill-to-skill references, which are rewritten to the prefixed names; sibling links such as [tests.md](tests.md) keep working because the whole skill folder is mirrored.

Upstream marks 16 of the 27 skills as user-driven with disable-model-invocation: true (ask-matt, grill-me, grill-with-docs, handoff, implement, implement-spec, improve-codebase-architecture, retro, setup-matt-pocock-skills, teach, to-questionnaire, to-spec, to-tickets, triage, wait-what, wayfinder). By default those stay user-invoked only, exactly as upstream intends; the remaining 11 are also available to the model. Set honourInvocationFlags: false to make all 27 model-invocable.

Editing plugin config in the patch layer is picked up live. Editing the plugin's own lib/*.js needs a DSH restart.

Tools

ToolParametersPurpose
sync_mattpocock_skillsforce (boolean, default false), dryRun (boolean, default false)Check upstream and mirror a newer revision. Reports the previous and latest commit, whether anything changed, and the per-skill diff (added / removed / changed / invalid). force re-stages the current commit, dryRun reports what would happen without touching the mirror.
manage_mattpocock_skillsaction (one of list, status, enable, disable, enable_all, disable_all, reset), skills (array of skill names)Inspect and toggle the mirrored skills. reset clears runtime overrides. Skill names without the mp- prefix are accepted.

Both tools refresh the live skill catalogue immediately, so a toggle takes effect in the next turn without restarting DSH.

How it works

upstream commit sha ──► codeload tar.gz ──► extract ──► cache ──► skill candidates ──► DSH catalogue
                     (api.github.com)   (skills/…)  (versions/<sha>)     (mp-* prefix)
  1. Resolve. The plugin asks the GitHub API for the head commit of ref (falling back to the repository's info/refs), so a sync happens only when upstream actually moved.
  2. Download & extract. The commit's codeload.github.com archive is gunzipped and unpacked by a dependency-free tar reader into versions/<sha>/. Entries are stripped of their archive root and filtered to the manifest plus the skills tree; unsafe paths (absolute, .., symlinks) are dropped.
  3. Validate. Each SKILL.md must carry YAML frontmatter with a kebab-case name and a non-empty description. Invalid skills are reported in the sync result instead of being exposed.
  4. Serve. The provider lists the enabled skills as mp-* candidates and returns the file body on get, with resourceBase pointing at the mirrored folder, so sidecar files referenced by a skill (tests.md, mocking.md, format guides, templates) resolve next to the skill itself.

Data layout

<DSH_HOME>/plugin-data/dsh-mattpocock-skills/
├── state.json                  # current commit, overrides, last sync result, skill index
└── versions/
    └── <commit-sha>/
        ├── inventory.json      # the skill index for this revision
        └── skills/<category>/<skill>/SKILL.md …

Deleting the directory is always safe: the next sync recreates it.

Upstream and licensing

  • Upstream: https://github.com/mattpocock/skills — MIT, © Matt Pocock. See NOTICE.md.
  • This plugin ships no upstream content. It downloads the repository from GitHub on the user's machine at runtime; the mirrored files stay under <DSH_HOME>/plugin-data/ and inherit the upstream MIT licence there.
  • This plugin's own code is MIT licensed (see LICENSE).

Development

npm test        # 38 unit tests (tar reader, manifest/frontmatter parsing, store, sync, provider, plugin)
npm run smoke   # end-to-end sync against the real upstream repository into .scratch/smoke

The smoke script writes to ./.scratch/smoke, so it never touches your installed mirror.

disabledSkills[]Deny-list applied after the allow-list.
syncOnStarttrueMirror upstream once at startup if nothing is mirrored yet.
autoSynctrueKeep the mirror fresh in the background.
initialSyncDelaySeconds10Delay before the first background sync.
syncIntervalHours24Background sync cadence.
keepVersions3How many mirrored commits are retained for instant rollback.
maxArchiveBytes33554432Hard cap on the downloaded archive size (32 MiB).
timeoutMs30000Per-request network timeout.
dataDir''Mirror location; empty means <DSH_HOME>/plugin-data/dsh-mattpocock-skills.
registerToolstrueRegister the two agent tools described below.

相关插件

继续浏览 agents-orchestration 分类下经过校验的插件。

Headless@deepseek-ai/dsh-headlessdsh one-shot bundle:基于 dsh-base 的直接核心 Agent/Session 运行器,不包含 Host、HTTP 或浏览器层Experimental Agent Team Profile@deepseek-ai/dsh-experimental-agent-team-profile在一个实验性捆绑包中提供 Agent Teams 协作、工具和 Web UIExperimental Ralph Bundle@deepseek-ai/dsh-experimental-ralph-bundle使用全新代理执行明确请求的重复工作。Subagent Codex@deepseek-ai/dsh-subagent-codex基于官方 app-server 协议的一次性 Codex 子代理提供程序