DSH Plugin MarketA community catalog for DeepSeek Harness plugins

cordis-rs

Unconfirmed Tools & capabilities ★ 72 0.0.0

A typed runtime for long-lived, plugin-oriented Rust applications — lifecycle, exact service placement, typed events, deterministic cleanup, scopes, and isolation.

What it is

A typed runtime for long-lived, plugin-oriented Rust applications — lifecycle, exact service placement, typed events, deterministic cleanup, scopes, and isolation.

How to install

Run this in the DSH web profile, then refresh the page.

$ dsh plugin --profile web add 'git+https://github.com/dshbox/cordis-rs.git#cd540033487f62c1b574bffd39befb717afb8a35'

DSH versions accepted

Undeclared

Author and traction

dshbox · ★ 72 · Updated 2026-11-09

About this plugin

Cordis

English | 简体中文

Cordis is a typed runtime for long-lived, plugin-oriented Rust applications. It gives application components one model for lifecycle, service dependencies, typed events, resource cleanup, and explicit isolation boundaries.

Cordis is useful when your program is more than a collection of short-lived function calls: plugins can appear and disappear, services can become available or unavailable, configuration can change, and runtime resources must still be cleaned up deterministically. Install

For applications, keep the historical package and import identity:

cordis-rs is now a thin application-facing facade over the v3 runtime contract. Framework and plugin authors may depend on that contract directly:

Optional capabilities stay explicit semantic dependencies:

Cordis v3 requires Rust 1.88 or newer and uses Rust 2024 Edition.

When upgrading from semantic 0.5 / facade 0.10, update core, timer and loader requirements together to 0.6 and the facade to 0.11. The facade re-exports core types; mixing 0.5 and 0.6 core types causes type mismatches. 0.6 is a breaking pre-freeze line: public vocabularies expected to grow are now #[non_exhaustive] (add wildcard arms and .. patterns), Loader source rows are extensible and built with PluginEntry::new and EntryGroup::new, and two documented promises are narrowed (creation progress after its commit, and the meaning of lifecycle admission order; ADR 0029). The compatible-evolution rules, enum openness and auto-trait and operation-future Send promises are recorded in ADR 0042. For step-by-step edits and earlier upgrades, see MIGRATION.md, the core release notes and the facade release notes. Migrating from 0.6.x

Similar plugins