插件目录 / Automation / omdsh-runtime
omdsh-runtime
已验证 · 实测可装 omdsh-dev
功能简介
无描述
可用 — 实测通过,早期项目
无描述 实测能干净安装、正常启动。早期项目,但功能可用。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
OMDSH Runtime
A headless execution layer that reuses official Harness Profile, Bundle, Cordis, and package operations. It adds deterministic plan/apply, candidate generations, explicit confirmation, and previous-generation recovery without introducing another Loader or daemon. DSH Hub Workshop remains the only discovery, authoring, review, and feed authority.
The source repository is public. The @ohmydsh/runtime package is configured for public preview releases on npm under the preview dist-tag; preview releases never move latest implicitly.
The code boundary is one Toolkit repository with stable modules: profile-pack owns format, digest, signing, and composition checks; pack-authoring owns author manifests; license owns SPDX facts; pack-instances owns named installations; the CLI is a thin caller over those modules and existing Runtime/official DSH operations. The Hub never imports Runtime source. They exchange only versioned JSON Schemas, Registry snapshot IDs, locked packs, and signature results. These subpaths can later be published or moved into a pack-core package without changing the Pack format or CLI.
Portable Profile Packs
omdsh-profile-pack/v1 is a small, reviewable JSON distribution format. It records exact Registry project and Release IDs, author-owned sources pinned to full Git commits, the Registry snapshot, the observed @deepseek-ai/dsh version, and one Agent Preset. It does not copy plugin payloads, credentials, sessions, environment files, or absolute local paths.
# Start a pack with an admitted Registry Release and your own pinned plugin.
omdsh pack init research.pack.json --id research --preset code
omdsh pack add research.pack.json --release [email protected]
omdsh pack add research.pack.json --source-id my-plugin --package @me/dsh-my-plugin --version 0.1.0 --repository https://github.com/me/dsh-my-plugin --ref <40-character-commit> --license MIT
# Review every component license, then bind runtime, Registry, hashes, and sources.
omdsh pack licenses research.pack.json
omdsh pack lock research.pack.json --output research-0.1.0.dshpack
omdsh pack test research.pack.json --profile web --trust-source
# Export the current managed Profile and an official preset.
omdsh pack export --profile web --preset standard --output web-0.1.0.dshpack
# Convert a Workshop-authored distribution manifest into a runtime-bound pack.
omdsh pack build research-0.1.0.distribution.json --output research-0.1.0.dshpack
# Verify the schema, hashes, and digest, then preflight the current Runtime, Registry, Profile, and trust options without Profile writes.
omdsh pack inspect research-0.1.0.dshpack
omdsh pack plan research-0.1.0.dshpack --profile web --trust-source
# Bind publisher provenance with an Ed25519 signature, then verify it explicitly.
omdsh pack sign research-0.1.0.dshpack --private-key publisher.pem --key-id example/releases-2026 --publisher example --source https://github.com/example/research --output research-0.1.0.signed.dshpack
omdsh pack inspect research-0.1.0.signed.dshpack --trusted-key publisher.pub
# Stage Registry-managed changes in a named instance. Activation remains separate.
omdsh pack apply research-0.1.0.signed.dshpack --instance research --profile web --trusted-key publisher.pub --require-signature
omdsh activate --profile web
omdsh confirm --profile web
omdsh pack instance research
# Preview and stage an update; rollback re-selects the previous Profile generation.
omdsh pack diff research-0.2.0.signed.dshpack --instance research
omdsh pack update research-0.2.0.signed.dshpack --instance research --trusted-key publisher.pub --require-signature
omdsh pack rollback --instance research
The source manifest is deliberately small: an ordered component list, one built-in preset, SPDX license expressions, and immutable sources. Git branches, tags, local paths, install scripts, secrets, and copied node_modules are not accepted. pack licenses reports each component's expression, source, SPDX link, and whether its terms need manual review; it is an inventory, not legal advice or an automatic license-compatibility verdict.
An admitted Registry Release retains its existing trust. An author-owned source is always experimental-fixed-source, requires --trust-source before candidate creation, and cannot be published as a trusted community distribution until that plugin passes Registry admission. A distribution made only from already admitted Releases does not repeat each plugin's human review; it needs only composition checks and one signature over the final digest.
Built-in presets (standard, code, minimal, and cordis) remain ID-only references to the official Harness installation. A custom preset is embedded as UTF-8 text only after rejecting symlinks, credential-like files or content, binary data, and absolute user paths. Applying embedded content requires --trust-preset; replacing an existing custom preset also requires --replace-preset.
Applying a pack replaces only plugins already governed by the pinned Registry snapshot plus fixed sources explicitly tracked by the same named pack instance. Other untracked local packages are preserved. A prepared candidate still requires explicit activation and runtime confirmation, with the existing previous-generation recovery path unchanged.
It can coexist with workspace-oriented Pack/Skill projection tools. Those tools are useful for mapping Skills, prompts, and editor configuration into a project, with search or allow-list controls. Profile Pack owns the release boundary instead: exact DSH Runtime and Registry Releases, author source commits, license facts, publisher signatures, and recoverable Profile generations. It does not replace Skill search or wrap another Pack format as a DSH plugin, so it does not create a second Loader.
Unsigned v1 packs remain readable for compatibility. A signed omdsh-profile-pack-envelope/v1 is accepted for execution only when its publisher key is supplied and the Ed25519 signature verifies; --require-signature rejects legacy unsigned input. Named instances store only pack identity, exact Release selections, preset identity, publisher facts, and generation pointers. Rollback does not claim to reverse database, network, filesystem, or other external side effects, and embedded preset rollback remains outside Profile generations.
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 omdsh-runtime」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:omdsh-dev/omdsh-runtime Headless(CLI)profile:
dsh plugin --profile headless add github:omdsh-dev/omdsh-runtime 实测报告
验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。
使用场景
自动化一项重复工作——调度、串联任务或响应事件——不用你亲手启动。
适合谁
有周期性工作、想 cron 式无人值守而非手动触发的人。
二次开发建议
触发器和任务模板是缝——加事件驱动或文件监听触发,以及更丰富的流程编排。