geml SKILL.md skillA
This file is byte-identical to the first copy the registry indexed, one of 6 indexed copies. Same content hash, so the same checks give both the same grade.
geml from geml-spec/geml is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add geml-spec/geml/geml@git:20260930.2ef2484Pins git:20260930.2ef2484 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- geml-spec/geml
- Path
integrations/grok-plugin/skills/geml/SKILL.md- Versions recorded
- 5
- Latest version
- git:20260930.2ef2484, committed Sep 30, 2026
- First version recorded
- Sep 3, 2026
- Size
- 9,508 bytes
- Repository stars
- 29
- License
- MIT
Address a document by its BLOCKS instead of reading it whole. Use for any long Markdown or documentation file — README, spec, guide, design doc, changelog — when the job is to find where something is documented, read one section, or change one section: `geml list`, `geml find` and `geml get` read Markdown directly and hand back the one block that matters, leaving the file the Markdown it already was. Skip it when the whole file is short enough to read anyway. Use it also to read, author, edit…
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# Reading and editing documents blockwise Two jobs. The first is the common one, and it needs none of GEML's syntax. ## A document that is NOT GEML — use this as a read layer `geml list`, `geml find` and `geml get` read **Markdown** directly. Use them to locate and read one block of a long document. Nothing is converted, nothing is written, and the file stays exactly the Markdown it already was. **Only when you would otherwise read the whole file to change part of it.** If the file is short, or you already know the exact string to replace, open it the ordinary way — the round trip costs more than it saves. What is saved is only ever the part you did not have to read: on this project's own docs a `list` map runs 5–11% of the file it maps, but on a changelog of many small sections it is 37%. 1. `geml list <file>` — every block: address, kind, line range. 2. `geml find "<text>" <file>` — which block holds those words, answered as an ADDRESS rather than a line number, so it survives the next edit. (On a file that is not `.geml` this needs 1.7.5 or newer; older builds report no match rather than an error, so if a search you expect to hit comes back empty, use `list`.) …
Read the whole file at its exact version.
How to install
mdr add geml-spec/geml/geml@sha256:b6c3a1812cf9b3faThe line at the top of this page pins the label git:20260930.2ef2484, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_kklhbrfwmowsctlm)
4 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 5 versions of this file, between Sep 3, 2026 and Sep 30, 2026, about one every 7 days.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| git:20260930.2ef2484 latest | 2026-09-30 | 2ef2484 | 9,508 B | A | view · diff |
| git:20260917.b51ea27 | 2026-09-17 | b51ea27 | 9,426 B | A | view · diff |
| git:20260916.9c65ec4 | 2026-09-16 | 9c65ec4 | 9,084 B | A | view · diff |
| git:20260904.dd7c0ee | 2026-09-04 | dd7c0ee | 9,080 B | A | view · diff |
| git:20260903.70def7f | 2026-09-03 | 70def7f | 8,975 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (9508 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
geml-spec/geml · 29 stars · license MIT · pushed 2026-10-29 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_kklhbrfwmowsctlm GET https://markdownregistry.com/api/v1/resolve?ref=geml-spec/geml/geml GET https://markdownregistry.com/api/v1/blob/b6c3a1812cf9b3faec2cae775e67359e2c6bfa2ba5358f36d74b390f203f005d
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.