dsh-agent-plugin-market: Managing DSH Agent Skills and Hooks with Git Repositories

Preface

When extending agents in DSH, skills, plugin manifests, and optional hooks often come from different repositories and different directories. When you need to load Codex / Claude skills from Git repositories in DSH and centrally manage marketplaces, plugins, skills, and workspace overrides on the settings page, you can use the DSH plugin dsh-agent-plugin-market.

It is maintained by Diluka and licensed under MIT. Below is an introduction to its capabilities, installation method, and typical usage.

What This Is

dsh-agent-plugin-market is a DSH plugin. It treats Git repositories as agent content marketplaces: it clones the marketplace repository, identifies marketplace and plugin manifests, loads valid skills, and provides a management entry point on the settings page.

You can think of it as a marketplace plugin within a DSH profile. It accesses the marketplace repository, skill directories, and local configuration within the permissions of the current DSH process, so it is recommended to inspect the source code, license, and repository origin before installation.

Basic plugin information is as follows:

name: dsh-agent-plugin-market
owner: Diluka
license: MIT
version: 0.5.1-dsh.0.1.1-rc.2

Core Features

First connect the marketplace, then manage plugins and skills. This plugin provides the following capabilities:

  • Treat Git repositories as agent content marketplaces, cloning the marketplace repository and discovering skills.
  • Recognize marketplace manifests, with paths including:
.agents/plugins/marketplace.json
.claude-plugin/marketplace.json
.cursor-plugin/marketplace.json
.github/plugin/marketplace.json
marketplace.json
  • Recognize plugin manifests, with paths including:
.codex-plugin/plugin.json
.claude-plugin/plugin.json
plugin.json
  • Valid skills from installed plugins are enabled by default; standalone skills in the root skills/ directory that are not referenced by any plugin are disabled by default and can be enabled individually or per marketplace.
  • Supports global defaults and workspace overrides. Workspaces store sparse enable/disable override values, and when an override is missing, the global configuration is inherited.
  • Installing a plugin only saves the installation state and does not copy marketplace files; the skill resourceBase points to the cloned skill directory, enabling in-place loading.
  • Registers agent tools for viewing status and writing workspace overrides:
agent_market_info
agent_market_set_plugin
agent_market_set_skill
  • Supports optional Codex hooks. Enabling requires an installed plugin, double confirmation on the settings page, configuration fingerprint approval, and an available @deepseek-ai/dsh-hooks-codex bridge.
  • Adds a “Skills & Hooks” section to the settings page, providing management and directory filtering for marketplaces, plugins, skills, and hooks.
  • Host RPC is registered with loopback authority; clients refuse to display marketplace operations when not connected locally.

Relevant configuration items are as follows:

source
resourceBase

source is used in the marketplace manifest to point to the plugin directory; resourceBase is the resource base directory used when loading skills.

Installation and Enablement

First install the plugin package, then restart DeepSeek Harness:

dsh plugin --profile web add github:Diluka/dsh-agent-plugin-market

After restarting, go to Settings -> Skills & Hooks to manage marketplaces, plugins, and skills.

Dependency packages are as follows:

@deepseek-ai/dsh-client-ui-primitives
@deepseek-ai/dsh-hooks-codex

Among them, @deepseek-ai/dsh-client-ui-primitives is a runtime peer dependency provided by the DSH profile; @deepseek-ai/dsh-hooks-codex is an optional peer dependency. When the bridge is missing, the settings page displays the installation command and disables the hooks toggle.

Typical Usage

The following is organized by common operation order.

Adding a Marketplace

Enter an SSH or HTTPS Git repository URL on the settings page, optionally selecting a default branch, branch, tag, or commit.

After adding, the plugin will discover available content based on recognized manifests and the skills/ directory.

Installing Plugins

Each plugin entry in the marketplace manifest is pointed to a plugin directory within the marketplace via source; when source is not declared, the repository root directory is used.

Updating the Marketplace

At host startup, the following is executed for default branches and branch references:

git pull --ff-only

Tags and commits are fixed references, and updates are skipped for them.

Managing Skills

Valid skills from installed plugins are enabled by default. Skills in the root skills/ directory that are not referenced by any plugin need to be explicitly enabled first and can be toggled individually or as a group.

Workspace Overrides

After selecting a workspace, use the tri-state menu:

Inherit global
Enable only in this workspace
Disable in this workspace

Workspaces save sparse override values; when an override key is missing, the global configuration is inherited.

Managing Hooks

When the bridge is available, the first click on the toggle only shows a confirmation; the second click saves the current configuration fingerprint and attempts to mount.

Which event points are specifically supported and the execution semantics of non-command hooks are determined by the installed bridge and protocol version, and are not hardcoded in this plugin.

Agent Tools

Agents can call:

agent_market_info

to view marketplace status. They can also call:

agent_market_set_plugin
agent_market_set_skill

to write workspace tri-state overrides.

Agent tools only expose reads and workspace override writes; they do not perform marketplace additions, deletions, Git updates, global install/uninstall, or hooks authorization. Sessions with a home path will have these tools hidden by scoped restriction; if they fail to be hidden at runtime, execution will also be rejected.

Applicable Scenarios and Notes

Suitable for developers who need to uniformly load agent skills from Git repositories in DSH and maintain different enable/disable states across different workspaces.

Note the following boundaries:

  • The plugin runs with the permissions of the current DSH process; inspect the source code, license, and repository origin before installation.
  • Plugin paths must resolve within the marketplace root directory; the .dsh directory and configuration files cannot be symbolic links; the user’s home directory is not used as a workspace override root.
  • Current hooks configuration approval remains a global configuration.
  • Host RPC is registered with loopback authority; clients refuse to display marketplace operations when not connected locally.

Conclusion

dsh-agent-plugin-market consolidates marketplace repositories, skill loading, workspace overrides, and optional hooks into the DSH settings page. The repository URL is as follows:

https://github.com/Diluka/dsh-agent-plugin-market

Directory page: no address provided.

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye