geml-spec/geml#integrations/dsh-plugin

Block-addressed document editing: an MCP server exposing geml_get / geml_set / geml_check and friends, so an agent reads or rewrites one addressed block of a Markdown or GEML document instead of the whole file. Ships the GEML authoring skill and a code-graph skill that builds and navigates a project call graph as GEML codemaps.

Adds GEML (General Expressive Markup Language) document handling to DSH: an agent-native, block-addressed markup format so a program and a model can address one section of a document instead of trading the whole file. The bundle ships the geml MCP server plus authoring and code-graph skills. geml list / geml get / geml set address Markdown you already have — nothing is converted and your .md files stay .md, which removes the whole-file rewrite round trips that make edits token-heavy.

Tools & Capabilities ★ 0 updated 2026-09-18
View on GitHub ↗

Install

dsh plugin --profile web add @geml/dsh-plugin

README install: the GEML bundle packaged for dsh (the geml MCP server plus the authoring and code-graph skills). web is the profile dsh boots by default — use your own profile name if you run another. The document CLI is separate: npm i -g @geml/geml (Node 22+). Source lives in integrations/dsh-plugin/ in the repo.

Compatibility

DSH web profile (use your own profile name if you run another). The geml CLI requires Node 22+ (npm i -g @geml/geml). GEML spec version 1.0; code MIT, spec CC BY 4.0.

Details

Recent updates

README documents the two-reader design goal: deterministic block boundaries so both people and agents read and write the same document, with geml check as the validation gate on whatever a model writes back.

FAQ

How do I install the GEML bundle for dsh?
Run: dsh plugin --profile web add @geml/dsh-plugin (web is the default dsh profile — substitute your own profile name if you run another).
Do I have to convert my Markdown to GEML?
No. geml list, geml find and geml get address your existing Markdown in place — nothing is converted and .md files stay .md.
What is required for the geml CLI?
Node 22+ — install it with npm i -g @geml/geml, then use geml check to validate generated documents.

More plugins in Tools & Capabilities

Browse more in Tools & Capabilities

Guides for Tools & Capabilities plugins