lmzhen/dsh-evolution--packages-evolution-curator ↗★ 1
@deepseek-ai/dsh-evolution-curator
Deterministic skill lifecycle and recovery
安装
此插件尚未提供可验证的 bundle,或兼容性检查未通过。请先阅读仓库说明。 阅读完整 README ↗
说明文档
阅读完整 README ↗@deepseek-ai/dsh-evolution-curator
Deterministic skill lifecycle and recovery
Model Experience
Indirect model surface
What the model sees
@deepseek-ai/dsh-evolution-curator registers no direct prompt or tool schema itself. Model-visible effects are owned by the packages that consume this service.
Token effect
Zero direct token effect from this package; consumers add any model-visible tokens.
KV Cache effect
Independent of request-prefix construction. This package does not alter the assembled prompt or tool list.
Known Limitations and Deferred Work
- LLM nomination pass is advisory and disabled by default; deterministic lifecycle remains authoritative.
- Consolidation is a REAL merger path: the LLM nomination (when enabled / via
recommend()) proposes merge groups, the control plane gates them and applies the mutation — merged source bodies are appended verbatim rather than rewritten into a synthesized skill. The one-click `/evolution consolidate
` remains the direct manual path (P2-8, v11: the earlier "no LLM pass proposes merge groups" wording contradicted the tested nomination chain).
Recovery and consolidation
archivenever deletes: skills move to.archive/with a.archive-reasonmarker.restore(name)(service) //evolution skill restorebrings one archived skill back to the active root and resets its usage state.consolidate(target, sources)(service) //evolution consolidatemerges source bodies into the target, archives the sources with an absorbed-into marker, and folds their usage records intoarchivedstate. Both operations snapshot the full state first (pre-consolidate/pre-restore).restoreSnapshot(service) //evolution restorerolls the state back to the latest snapshot: active tree, usage/suppression sidecars,.archive/and the curator state carried in the snapshot (curator-state.json), so the interval gate does not immediately re-fire after a rollback. Skills that were skipped at snapshot time (a live writer held their lock; recorded in the manifest'sskippedlist) are NOT restored — the restore result names them, and.backupsmay hold a copy. The restore itself is undoable — the pre-rollback safety snapshot preserves the current tree plus its state.
Automatic scheduling
autoStart(default true) arms an hourly interval check plus a deferred catch-up checkbootGraceSeconds(default 10) after host boot. Both decide due-ness from the persistedlastRunAt, so a restart with an overdue schedule runs the first pass within the boot grace instead of waiting a full interval.bootGraceSeconds: 0disables the deferral (not recommended: the check may run against a half-mounted host). All scheduling gates — interval, idle, first-run deferral, and the reentrancy guard — remain insiderun().autoStart: falsedisables both automatic checks;/evolution curator run(manual, gate-skipping) still works.