chenzheshushi-commits/dsh-evolve ↗★ 11

dsh-evolve

Self-evolving memory + skill lifecycle for DeepSeek Harness. Cross-session memory with zero-token deterministic recall (bigram-Jaccard fused with FTS5 BM25 via RRF), a tiered approval gate, and reinforcement that strengthens what you repeat. Procedural knowledge crystallizes into SKILL.md files that refine in place and are curated through an active-stale-archived lifecycle (reversible archive, pre-op backups, rollback, never deletes). Includes background per-turn review, anti-bloat convergence for both skills and memory, an auto-grown user profile, and a web settings page. 适合希望Agent具备长期记忆和技能沉淀能力的用户,支持知识自动结晶与强化。

패키지
dsh-evolve
호환성
미검증
버전
0.8.0
라이선스
MIT
최근 업데이트
2026. 9. 28.

같은 패키지 이름의 다른 저장소

설치

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:chenzheshushi-commits/dsh-evolve

Configuration

Everything is configurable through the plugin's settings page (web profile) or your DSH config. Notable switches:

KeyDefaultEffect
autoConfirmEnabledtruefalse = every model write waits for review
reviewEnabledtrueBackground per-turn review
reviewEveryTurns5Review throttle
reviewModel(main model)Route review to a different model
refineLLMtrueUse an LLM pass when crystallizing/refining skills (false = zero-token deterministic assembly)
reinforceEvery3Observations per importance step
memoryMaxChars20000Memory character budget (0 disables)
convergeSuggesttrueSurface merge/fold suggestions
curatorStaleDays / curatorArchiveDays30 / 60Skill lifecycle thresholds
ftsEnabledtruefalse = pure bigram recall, no SQLite

The LLM is only ever used for optional auxiliary passes — skill refinement, background review, and skill merging. All of them are single-shot, skippable, and fall back to deterministic behavior on failure. Nothing runs in your main loop.


New configuration

KeyDefaultEffect
refineLLMtrueLLM pass when crystallizing/refining; false is zero-token assembly
tier1EnabledtrueAlways-on preference snapshot at turn start
maxPendingQueue50Hard cap on the pending review queue
disposalMinIdleDays30Days of zero use before a memory is a cold candidate
idleMinutes5Idle delay before suggest/tidy recompute
approvalPromptEnabledfalseAsk in-turn for direct high-value memory writes
languagefollow-hostfollow-host, en, or zh for this page and the injected prompts

Every key here was already configurable; what changed is where the value is stored and how it reaches the running plugin. Governance knobs nobody has asked to tune at runtime (curator thresholds, heat decay, memory budget, retrieval knobs) remain ordinary YAML config and are not part of the settings form.

New configuration

KeyDefaultEffect
languagefollow-hostfollow-host, en, or zh. Follows the DSH host locale unless overridden

Everything configurable in v0.6.x still applies unchanged:

KeyDefaultEffect
disposalModemanualmanual, suggest, or recoverable tidy
tidyMaxPerRun5Maximum automatic soft-deletes per idle run
idleMinutes5Idle delay for suggest/tidy
skillProposalModeinheritFollow memory approval mode or explicitly select a skill mode
skillAutoMaxChars / skillMaxChars10000 / 40000Automatic/human skill-body limits
approvalPromptEnabledfalseAsk in-turn for direct high-value memory writes
approvalPromptMaxPerTurn1Popup budget per session turn

New configuration

KeyDefaultEffect
disposalModemanualmanual, suggest, or recoverable tidy
tidyMaxPerRun5Maximum automatic soft-deletes per idle run
idleMinutes5Idle delay for suggest/tidy
skillProposalModeinheritFollow memory approval mode or explicitly select a skill mode
skillAutoMaxChars / skillMaxChars10000 / 40000Automatic/human skill-body limits
approvalPromptEnabledfalseAsk in-turn for direct high-value memory writes
approvalPromptMaxPerTurn1Popup budget per session turn