affaan-m/ecc

deepseek-harness-setup

Install and operate Everything Claude Code (ECC) on the DeepSeek Harness (DSH): native skill roots (~/.dsh/skills, .agents/skills), the @deepseek-ai/dsh-hooks-claude-code bridge for command hooks, bare-insert patch mounting, generator usage, event-support l…

View source

How to use

  1. Copy the installation command and review the source package before installing it in your own agent environment.
  2. Check the source document for required tools, credentials and supported hosts.
  3. Describe your input and desired deliverable; review the output against the source material.
npx skills add https://github.com/affaan-m/ecc --skill deepseek-harness-setup

Before you start

  • Installation does not include a model subscription, API allowance or permission to access your files.
  • Repository stars and installation counts describe activity, not an independent quality or security test.
Original skill document

Rendered from the source repository. Headings, examples, code, tables, links, and referenced images are preserved.

DeepSeek Harness Setup

Run ECC on the DeepSeek Harness. Full guide: docs/DEEPSEEK-HARNESS-GUIDE.md.

When to Use

  • Installing ECC skills or hooks on a DeepSeek Harness install.
  • Deciding which ECC surfaces work on DSH and which do not.
  • Debugging a DSH session that does not show ECC skills or does not fire ECC hooks.

How It Works

  1. Skills need no conversion. DSH reads SKILL.md frontmatter

(name/description) from native skill roots. Link the ECC catalog once:

bash
   ln -s /path/to/ECC/skills/<skill-name> ~/.dsh/skills/<skill-name>

Root priority (project .dsh and .agents roots beat ~/.dsh): skip linking skills whose names already exist in a higher-priority root. Substitute real skill names for the placeholders; the angle brackets are not shell syntax.

  1. Hooks go through the first-party bridge. Generate a DSH-format config

from the canonical ECC hooks file:

bash
   node scripts/dsh/generate-hooks-config.js --ecc-root /path/to/ECC --out ~/.dsh/ecc/hooks-dsh.json

The generator lower-cases tool-name matchers, prefixes CLAUDE_PLUGIN_ROOT/ECC_PLUGIN_ROOT inline (the bridge does not export the plugin root), preserves timeouts, and skips events DSH cannot bridge: PreCompact, PostToolUseFailure, SessionEnd.

  1. Mount with a bare insert in ~/.dsh/profiles/<profile>/cordis.patch.yml:
yaml
   - insert:
       - id: ecc-hooks-claude-code
         name: "@deepseek-ai/dsh-hooks-claude-code"
         config:
           configPath: /absolute/path/to/hooks-dsh.json

Loader rules that cost debugging time when learned the hard way: a plain - id: top-level entry is silently dropped; insert under an existing non-group id is rejected as "not a group"; first-party plugin packages need no profile package.json entry.

  1. Validate by composing, then verify live.
bash
   cd ~/.dsh && dsh --profile web --dump-config > /tmp/dump.yml
   grep ecc-hooks /tmp/dump.yml

Compose exit status stays 0 even when the loader drops or rejects an entry — those problems are only reported on stderr. Confirm the entry id appears in the dump and stderr is empty. A live GateGuard denial on the session's first edit/write/bash is the visible signal the bridge is active.

Updating

git pull reflects into linked skills immediately; regenerate the hooks config with the same generator command. If the ECC checkout moves, regenerate (the path is embedded in every hook command) and relink skills.

Limits

SurfaceStatus on DSH
SkillsNative discovery; workflows may require host adaptation
Hooks23 command hooks on 5 of 7 bridge events
Slash commandsNot available (Claude Code mechanism); workflows covered by skills
AgentsNative dispatch unverified; use canonical prompt guidance only after review

The validated setup here targets the CLI/web profile. Desktop profiles have a separate installation-owned runtime and skill discovery must be verified there independently. Generate hooks only from a reviewed ECC checkout; the linked checkout supplies their runtime.

Related by task

from this repository

More skills

All skills