ddtcorex/dsh-maestro-config-lib ↗★ 1
@ddtcorex/dsh-maestro-config-lib
Maestro settings store library — atomic namespaced JSON store shared by dsh-maestro-* plugins (embedded dependency, no Cordis row)
AI Analysis
核心用途是作为底层库为 Maestro 插件提供本地 JSON 配置文件的安全读写与深层合并。适合作为开发依赖嵌入,使插件能够脱离公共配置服务独立运行。
Install
This plugin has no verified bundle, or compatibility checks failed. Read the repository notes first. Read the full README ↗
README
Read the full README ↗@ddtcorex/dsh-maestro-config-lib
Embedded settings-store library shared by every dsh-maestro-* plugin: ONE atomic
namespaced JSON store at ~/.dsh/maestro/settings.json (chmod 600). No Cordis
surface — install it as a plain dependency so any subset of plugins works standalone.
API
defineDomain(name, validator) // owner registers a schema (validated on write)
load({ dshHome? }) // memoized read; runs one-shot legacy migration
get(domain, { dshHome? }) // domain value or undefined
set(domain, patch, { dshHome? }) // exclusive-lock write, deep-merge patch, 600 mode
onChange(cb) // fires after writes made through this instance
definedDomains() // schema-registered names
Legacy migration: first load with no modern store transforms
~/.dsh/dsh-maestro-{harness,remote,review}/config.json into the namespaced store,
renames consumed files .bak, drops runtime state (lastTunnelRunning), parks
unknown keys under _legacy. Never destructive on corrupt input.