When using custom skills (for example, /caveman or /ponytail) in DeepSeek Harness (DSH), you need to manually enter an instruction each time you start a new session to activate them. If you want to keep the same set of skills active across multiple sessions, or quickly switch personas between sessions, repeated input reduces efficiency. The skill-injector-plugin solves this by automatically injecting user-selected skills at session start or on each prompt.
The plugin is maintained by Zenjibad and is licensed under the MIT License. As a true configuration-file plugin with restart persistence, it is designed to simplify skill management across multiple sessions.
Core Features¶
- Settings Page: Provides a checkbox list to select skills to inject, and radio buttons to choose the injection mode. Unresolved skills are listed with their reason, and Retry and Remove buttons are provided.
- Input Indicator: Displays a status line below the chat input box, for example:
Injected Skills: caveman, ponytail · Mode: each-prompt, refreshed every 5 seconds. - Two Injection Modes:
each-prompt: Places skill content into the System Prompt and re-renders it for each request.start-only: Injects a fixed skill-invocation message at session start.
- Real-Time Skill Registry: Reads directly from
ctx.skills, with no file copying; skill changes take effect in real time. - Sub-Agent Support: Applies injection behavior to sub-agents, maintaining consistency.
- Restart Persistence: As a real configuration-file plugin, it automatically loads with DSH after installation and restart.
Installation and Activation¶
After installation, the plugin is persistently stored in the configuration file, eliminating the need to manually define it for each session.
dsh plugin --profile web add ./skill-injector-plugin
After installation is complete, restart DSH (or hard-refresh the page). The client module scanner will parse exports["./client"], and the settings page and indicator will appear automatically.
Configuration and Usage¶
- No Config File: All settings are managed through the UI and stored under the
skill-injectorsettings namespace. - Mode and Selection:
mode: Defaults to'each-prompt'.selected: Defaults to[], storing the names of skills to inject (kebab-case, up to 16, automatically de-duplicated).
- Status View: The input indicator displays the current list of injected skills and the mode. If a skill is unresolved, a
· N unresolvedsuffix is shown.
Notes¶
- Read-Only Access: The plugin only reads skill content and does not write to system configuration.
- Skill File Location: Skill files must exist in
~/.agents/skills(or the skill root directory configured for DSH). - Fault Tolerance: If a skill is not found or fails to load, the plugin retains the last successful injected content. Only when a complete, scoped read fails to recognize the skill name is it marked as
unknownand injection stops. At that time, the settings page lists the skill and provides a Remove option. - Sub-Agent Behavior: Injection behavior applies to sub-agents without source filtering, ensuring consistent behavior across the entire agent tree.
The plugin automates the skill injection process, reduces repetitive actions, and is suitable for DSH users who need to quickly switch specific personas or behavior modes between sessions.
- Project Directory: skillhub.cn/plugins/Zenjibad/skill-injector-plugin
- Source Code: github.com/Zenjibad/skill-injector-plugin