설치
npx -y @deepseek-ai/dsh plugin --profile web add github:Junkrat9527/dsh-double이 설치 명령은 GitHub 저장소 주소에서 생성된 확인되지 않은 시작점입니다.
README
유지 관리자가 작성한 문서 스냅샷입니다.
dsh-double
dsh manages dsh. A self-management & self-evolution plugin for DeepSeek Harness — blue-green self upgrades, health probing, last-known-good snapshots, and a wake-on-demand standby "spare brain" that fixes the main instance when it gets stuck.
What it does
A typical agent that modifies itself dies on restart, then needs an outside agent to come rescue it. dsh-double closes that loop so the agent can evolve itself safely:
- Self-evolution (blue-green) — a change set is applied to a standby copy
first, statically pre-checked (
dump-config, YAML/JSON syntax, bundle resolvability, NO_ADAPTER guard, duplicate loader-entry detection) and trial-booted. Only when both pass is the change applied to the main dsh, which then restarts and must confirm healthy before the standby is stopped. If the main fails to boot, it auto-rolls back to the pre-evolution snapshot. - Health probing — main instance health is verified by TCP + HTTP + process
checks (dsh writes no pid file), with the evidence chain shown in
status. - Snapshots / last-known-good — a baseline snapshot is taken before any evolution and restorable on demand.
- Wake-on-demand standby — when the main is stuck and mechanical recovery failed, the dormant standby (a disk-only copy, zero processes, zero ports) is woken as a temporary dsh instance on a separate port as a "spare brain" to diagnose and repair the main. It is never left running in normal operation.
The heavy lifting lives in the battle-tested, zero-dependency CLI
bin/dsh-double.py and a small out-of-process
bin/dshd-supervisor — boot-time failures happen before
any plugin runs, so life-support must stay outside the dsh process. This plugin
exposes that machinery to the ecosystem.
Features
- In-harness tools (
double_*) — the agent inside dsh can run its own evolution cycle end-to-end:double_status,double_check,double_snapshot,double_evolve,double_rollback,double_wake,double_stop. - HTTP API —
GET /double/status,GET /double/check,POST /double/snapshot,POST /double/evolve,POST /double/rollback,POST /double/wake,POST /double/stop. - Settings dashboard — a status panel in dsh 设置 showing main health, last-known-good, snapshots and standby state, with one-click actions.
Install
Requires the dsh-double CLI + supervisor on the host (shipped in this repo under
bin/): installbin/dsh-double.pyandbin/dshd-supervisorto~/.local/bin/(make them executable).
dsh plugin add dsh-double
Or link it from source:
git clone https://github.com/Junkrat9527/dsh-double.git ~/dsh-double
cd ~/dsh-double && npm install && npm link
dsh plugin add dsh-double
Then restart dsh and check 设置 → 自我管理(dsh-double) or call
GET /double/status.
Usage
Ask the agent, or call the API/tools directly:
"先跑 double_check 预检我的配置,然后 double_evolve 应用我准备好的变更目录,
成功后 double_status 确认主实例健康、备用身已休眠。"
Or via HTTP:
curl http://127.0.0.1:3080/double/status
curl -X POST http://127.0.0.1:3080/double/evolve -H 'content-type: application/json' \
-d '{"change_dir": "/path/to/change-set"}'
Architecture
~/.dsh/double/
├── snapshots/ # baseline snapshots (health-baseline copies)
├── standby/ # dormant standby copy (config layer + symlinked node_modules)
├── evolutions/ # evolution event log (pass/fail, rollback?)
├── supervisor.log # life-support events
└── last-known-good # pointer to the last healthy snapshot
- L0 life-support shell (
dshd-supervisor, out-of-process): probes main health, auto-restarts, rolls back to last-known-good, wakes the standby — works even when dsh itself cannot boot. - L1 self-management (
dsh-double.py+ this plugin): snapshot / check / evolve / rollback / wake / stop; the in-harness agent drives it via tools.
License
MIT — Copyright (c) 2026 Junkrat9527
프로젝트 파일 및 신호
표시된 항목은 디렉터리 스냅샷에서 감지된 공개 저장소 신호입니다.
저장소 정보
- 언어
- JavaScript
- 라이선스
- MIT
- 마지막 업데이트
- 2026. 8. 18. 오전 10:44
신중하게 설치하기
소스 코드, 권한, 수명 주기 스크립트, 의존성 및 네트워크 접근을 검토하고 신뢰하지 않는 플러그인은 격리 환경에서 테스트하세요.