dshbase

插件目录 / Developer / dsh-skillopt

dsh-skillopt

已验证 · 实测可装 WODE25500

✓ 持续维护 基于 3 个官方 DSH 包

查看 GitHub ↗ ← 返回插件目录

0Stars
0Forks
0未关闭 issue
—语言
2026-08-21最近推送
跨平台平台

功能简介

Microsoft SkillOpt-Sleep integration for DeepSeek Harness (dsh): nightly sleep cycle - harvest sessions, replay recurring tasks, consolidate validated skills behind a held-out gate. ?? DSH ? SkillOpt ??

✅
我们的评价
可用 — 实测通过,早期项目

Microsoft SkillOpt-Sleep integration for DeepSeek Harness (dsh): nightly sleep cycle - harvest sessions, replay recurring tasks, consolidate validated skills behind a held-out gate. ?? DSH ? SkillOpt ?? 实测能干净安装、正常启动。早期项目,但功能可用。

「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。

README

SkillOpt-Sleep — DeepSeek Harness (dsh) integration

Give your DeepSeek Harness agent a nightly sleep cycle: it reviews past
sessions offline, replays your recurring tasks on your own API budget, and
consolidates what it learns into validated skills behind a held-out gate. Same
engine as the Claude Code / Codex / Cursor integrations (skillopt_sleep),
wired into dsh's plugin system as native tools plus a bundled skill.

DeepSeek Harness is the "everything is a plugin" agent framework
(deepseek-ai/deepseek-harness).
Plugins are TypeScript modules exporting an apply(ctx) function that register
capabilities (tools, services, events, settings) on the Cordis context.

What this integration adds

Component Purpose
src/index.js dsh plugin entry: registers 7 skillopt_* tools + Schemastery config
cordis.patch.yml bundle patch layer — drop dsh-skillopt into any profile's bundles
skills/skillopt-sleep/SKILL.md agent skill: when to use the tools, operating rules, data-boundary rules
scripts/sleep.py bootstrap/self-check runner (same command shape the tools use)
package.json npm package metadata (bundle manifest)

Tools

Tool skillopt_sleep action Behavior
skillopt_status status state, engine availability, latest staged proposal & report
skillopt_dry_run dry-run full preview (harvest+mine+replay), stages nothing
skillopt_run run full cycle, stages a proposal (live files unchanged)
skillopt_adopt adopt apply latest staged proposal (with backup) — the live-change boundary
skillopt_harvest harvest read-only show/export of mined tasks
skillopt_schedule / skillopt_unschedule schedule / unschedule install/remove the nightly cron entry

Prerequisites

  • DeepSeek Harness (dsh) installed
  • Python 3.10+ with the SkillOpt-Sleep engine:
pip install skillopt          # or use this source checkout

Install

As a bundle in a profile

Add dsh-skillopt to the profile's bundles, or in the profile cordis.patch.yml:

- insert:
    - id: skillopt
      name: './src/index.js'
      config:
        backend: mock          # or codex / claude / cursor / pi / opencode / handoff …
        project: /path/to/project
        preferences: 'Always use async/await'

Local patch overlay (dev)

Run from a DeepSeek Harness source checkout (the official dev workflow,
pnpm resolves the workspace dsh bin):

pnpm dsh web --patch ./plugins/dsh/cordis.patch.yml

If dsh is installed globally (npm install -g), use it directly:

dsh web --patch ./plugins/dsh/cordis.patch.yml

Either way the patch inserts the skillopt plugin row into the profile; then
ask the agent: "Use skillopt_status to check the sleep cycle state."

Config keys

Key Default Purpose
pythonCmd python Python interpreter for the engine
module — (bootstrap) engine Python module override (python -m <module>)
engineScript — (scripts/sleep.py) engine bootstrap script override
project — default project directory
scope — harvest scope: all | invoked
backend — mock|claude|codex|copilot|cursor|pi|opencode|handoff|azure_openai
source — claude|codex|copilot|cursor|pi|opencode|auto
model — backend model override
maxTasks / maxSessions — mine/harvest caps
editBudget — bounded edits per cycle
preferences — house rules for the reflection prior
jsonOutput false machine-readable JSON output
autoAdopt false OPERATOR-ONLY: auto-adopt a passed proposal without asking
unscheduleAll false OPERATOR-ONLY: allow skillopt_unschedule to remove every managed entry
timeoutMs 600000 per-call engine timeout in milliseconds

Advanced engine keys (gate_mode, gate_metric, gate_no_regression,
dream_rollouts, recall_k, evolve_memory/evolve_skill) go in
~/.skillopt-sleep/config.json — the same file shared by all integrations.

Data boundary

  • Harvest is read-only; mock/handoff make no network calls.
  • run stages proposals; adopt is the normal live-change boundary and backs up first.
  • Real backends send truncated transcript excerpts and derived tasks to the
    selected provider. For sensitive sessions, export tasks first (skillopt_harvest
    with output=), redact, set "reviewed": true, then replay — real backends
    refuse unreviewed task files.
  • Outbound prompts are not guaranteed secret-free; review source & provider policy.

Validate (no API spend)

python -m skillopt_sleep.experiments.run_experiment --persona researcher --assert-improves

See the SkillOpt-Sleep documentation for recorded
results, limitations, and the supported integration surface.

安装

🧩 让 Agent 自动装(推荐)

装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:

dsh plugin add dshbase-catalog

然后对 agent 说「帮我装 dsh-skillopt」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。

该插件是 GitHub 源码(未发 npm)——直接从仓库装:

Web profile:

dsh plugin --profile web add github:WODE25500/dsh-skillopt

Headless(CLI)profile:

dsh plugin --profile headless add github:WODE25500/dsh-skillopt

实测报告

验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。

安全:尚未扫描——我们的每日静态扫描将很快覆盖它。

分享徽章

Developer 里更多

浏览全部 7819 个插件 →