You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Design and build infrastructure for sharing reusable MDS modules as packages — either via npm (leveraging the existing @mdscript scope) or a dedicated lightweight registry. This is the distribution layer that makes URL-based imports (#63) practical at scale.
Motivation
URL imports enable sharing, but without discoverability, versioning, and trust signals, adoption will be limited. A package ecosystem — even a minimal one — provides the glue: searchable packages, semantic versioning, and a standard structure for MDS module libraries.
Summary
Design and build infrastructure for sharing reusable MDS modules as packages — either via npm (leveraging the existing
@mdscriptscope) or a dedicated lightweight registry. This is the distribution layer that makes URL-based imports (#63) practical at scale.Motivation
URL imports enable sharing, but without discoverability, versioning, and trust signals, adoption will be limited. A package ecosystem — even a minimal one — provides the glue: searchable packages, semantic versioning, and a standard structure for MDS module libraries.
Proposed Approaches (Design Decision Needed)
Option A: npm-based (leverage existing infrastructure)
Publish MDS module packages to npm under a convention:
@mdscript/prompts-{name}ormds-{name}.mdsfiles +package.jsonwith metadata@import "pkg:formatting" as fmtresolves tonode_modules/mds-formatting/index.mdsPros: No new infrastructure, existing tooling (npm install, versioning, provenance)
Cons: Requires Node.js, not language-agnostic
Option B: Dedicated lightweight registry
A simple registry (static files on CDN, or a minimal API):
mds install formatting@1.0downloads to.mds_modules/mds.jsonlists dependencies:{"dependencies": {"formatting": "^1.0"}}Pros: Language-agnostic, no Node.js dependency
Cons: New infrastructure to build and maintain
Option C: Git-based (no registry)
Rely entirely on URL imports with Git hosting:
@import "https://raw.githubusercontent.com/org/mds-prompts/v1.0.0/formatting.mds"Pros: Zero infrastructure
Cons: Poor discoverability, no semver resolution, verbose URLs
Design Considerations
mds init --libscaffolding command for creating shareable module packagesindex.mdsas entry point,mds.jsonwith module metadataawesome-mdscurated list as the initial discovery mechanismAcceptance Criteria
mds.jsondependency declaration format specifiedmds-prompts-utils)