DSH Hub
evo-subagent cover

ZekaiShi/evo-subagent

evo-subagent

UIWorkflow3 GitHub stars· updated 2026-08-25

Unified DeepSeek Harness plugin: role-based subagent routing + per-agent evolution (prefercmd/memory as knowledge allow/deny lists), so repeated tasks start from proven commands and save tokens. Unified subagent routing and evolution: prefercmd/memory serve as knowledge allow/deny lists, saving tokens.

Install

npx @deepseek-ai/dsh plugin --profile web add github:ZekaiShi/evo-subagent

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

evo-subagent DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/evo-subagent.svg)](https://dshhub.dev/plugins/evo-subagent)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from ZekaiShi/evo-subagent, cleaned of badges and images.

evo-subagent

English | 简体中文

evo-subagent is a DeepSeek Harness plugin for predictable subagent routing and project-scoped evolution.

It maps stable agent roles to registered provider/model pairs, remembers verified commands and lessons for each role, and keeps every project's agent knowledge isolated.

Features

  • Route each agent_key through a same-named Markdown binding.
  • Validate the exact provider/model pair before creating a child agent.
  • Maintain per-agent prefercmd.md and memory.md knowledge files.
  • Isolate bindings and evolution data by project workspace.
  • Support fresh spawn children and context-aware fork children.
  • Fall back to DSH's native model inheritance when no binding exists.
  • Store no API keys, endpoints, credentials, or provider definitions.

Installation

dsh plugin add evo-subagent

Agent bindings

Create an agents/ directory in the project and add one Markdown file per role. The filename stem becomes the agent_key.

project/
├─ agents/
│  ├─ code-reviewer.md
│  └─ researcher.md
└─ .evo_subagent/
   └─ evolution/

Each binding begins with a strict front matter block:

---
provider: deepseek-official
model: deepseek-v4-flash
---

# Code reviewer
Optional role notes may follow.

The provider and model must already be registered. Matching is exact and case-sensitive.

Call the plugin tool with the corresponding key:

{
  "agent_key": "code-reviewer",
  "description": "Review the implementation",
  "prompt": "Report correctness, security, and test coverage issues.",
  "run_in_background": false
}

Built-in roles

Three templates are included:

agent_keyRole
code-reviewerSeverity-ranked code review
researcherEvidence-backed investigation
wps-workerOffice document production

A project binding with the same agent_key overrides its built-in template.

Evolution

Each project stores role-specific knowledge under:

.evo_subagent/evolution/<agent_key>/prefercmd.md
.evo_subagent/evolution/<agent_key>/memory.md
  • prefercmd.md records commands that have been verified to work.
  • memory.md records reusable lessons and failures to avoid.

Foreground subagents receive a bounded knowledge block. They can return new entries with:

[[EVOLUTION]]
prefercmd:
- pnpm test
memory:
- Do not use --force in CI.
[[/EVOLUTION]]

Entries are deduplicated and bounded. Prefix an entry with ! to keep it at highest priority, or ? to make it compressible when the context budget is tight.

Legacy .smart_subagent/evolution data remains a read-only fallback and is copied to the new location on the next save.

Workspace management

The plugin settings card groups agents by project and lets users:

  • view or collapse workspace agent lists;
  • edit a custom binding's registered provider/model route;
  • add a built-in role to a workspace by copying its template;
  • bind one workspace-root AGENTS.md as the Main agent;
  • inspect and edit each agent's evolution files.

Main-agent evolution is stored under .evo_subagent/evolution/main/. Binding and unbinding only changes the plugin-managed instruction block in AGENTS.md.

Tool fields

Related plugins