Agent skill

Commonmark Conformance

by jolars in jolars/panache

Grow Panache's CommonMark spec conformance under Flavor::CommonMark by running every spec.txt example through the shared parser, comparing rendered HTML against the spec's expected HTML…

MITAuto-check passedDatabases

Install Commonmark Conformance

skills CLI
$ npx skills add jolars/panache --skill commonmark-conformance -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jolars/panache commonmark-conformance --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jolars/panache.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/commonmark-conformance .claude/skills/commonmark-conformance && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
commonmark-conformance
GitHub stars
235
Token cost
~1.1k tokens
SKILL.md length
342 words
Files
1
Skills in repo
10
Repo updated
First seen
Licence
MIT

At a glance

Grow Panache's CommonMark spec conformance under Flavor::CommonMark by running every spec.txt example through the shared parser, comparing rendered HTML against the spec's expected HTML…

  • Asked to advance the CommonMark pass rate
  • SKILL.md covers Harness layout, Reports, Workflow (summary) and Why an HTML renderer?
  • Calls cargo
  • Grow the allowlist

What it does

Commonmark Conformance is an agent skill from jolars/panache. Grow Panache's CommonMark spec conformance under Flavor::CommonMark by running every spec.txt example through the shared parser, comparing rendered HTML against the spec's expected HTML (byte-equality after list-item whitespace normalization), and triaging failures into renderer / parser-shape / flavor-leak / dialect-divergence / missing-feature buckets. Use when asked to advance the CommonMark pass rate, grow the allowlist, or unblock a CommonMark regression.

Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Databases, covering Database schema design and Linting and formatting. It works with Pandoc. The repository describes itself as: Language server, formatter, and linter for Markdown, Quarto, and R Markdown. The licence is MIT.

When your agent uses it

  • Asked to advance the CommonMark pass rate
  • Grow the allowlist
  • Unblock a CommonMark regression

Example prompts

  • “/commonmark-conformance”

What it can do on your machine

Read from SKILL.md and the folder at commit e28d49b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • cargo

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • spec.commonmark.org

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Commonmark Conformance loads about 1.1k tokens when it runs. Until then it costs about 123 tokens; SKILL.md has 342 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~123
When it runs · the whole SKILL.md, loaded when a task matches
~1.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jolars/panache at commit e28d49b, republished under its MIT licence (© jolars). 342 words, ~1,074 tokens.

Download SKILL.mdSave it as .claude/skills/commonmark-conformance/SKILL.md (or your agent's skills folder).
name
commonmark-conformance
description
Grow Panache's CommonMark spec conformance under `Flavor::CommonMark` by running every `spec.txt` example through the shared parser, comparing rendered HTML against the spec's expected HTML (byte-equality after list-item whitespace normalization), and triaging failures into renderer / parser-shape / flavor-leak / dialect-divergence / missing-feature buckets. Use when asked to advance the CommonMark pass rate, grow the allowlist, or unblock a CommonMark regression.

Panache's parser is shared across all flavors (Pandoc, Quarto, RMarkdown, GFM, CommonMark, MultiMarkdown). Each flavor selects a baseline set of extensions through Extensions::for_flavor(). Under Flavor::CommonMark, almost every Pandoc-specific extension is disabled, leaving only constructs that appear in the CommonMark spec. Conformance is tracked by running every spec.txt example through the parser and comparing rendered HTML against the spec's expected HTML.

Follow the CommonMark conformance and parser invariants in the repository's root AGENTS.md; the workflow below supplies the task-specific procedure.

Harness layout

PathPurpose
crates/panache-parser/tests/fixtures/commonmark-spec/spec.txtVendored CommonMark spec.
crates/panache-parser/tests/commonmark.rsTest runner (commonmark_allowlist, commonmark_full_report).
crates/panache-parser/tests/commonmark/spec_parser.rsParses spec.txt into example records.
crates/panache-parser/tests/commonmark/html_renderer.rsTest-only CST → HTML renderer (not a public API).
crates/panache-parser/tests/commonmark/allowlist.txtExample numbers currently passing. CI fails on regression.
crates/panache-parser/tests/commonmark/blocked.txtExamples we deliberately do not target yet, with reasons.

The renderer mirrors the byte-equality comparison commonmark-hs uses: the output is normalized via <li>\n → <li> and \n</li> → </li> before comparison.

Reports

Running commonmark_full_report writes two generated, git-tracked artifacts beside the harness (no longer under docs/):

  • crates/panache-parser/tests/commonmark/report.txt — per-section counts plus the full list of passing example numbers. Use this to grow the allowlist after fixing parser/renderer bugs.
  • crates/panache-parser/tests/commonmark/report.json — the same data as a structured sidecar (spec_version, total_examples, passing, failing, blocked, per-section sections, passing_numbers).

Both are derived — regenerate them, don't hand-edit.

Workflow (summary)

bash
# Regression guard: every allowlisted example must still pass.
cargo test -p panache-parser --test commonmark commonmark_allowlist

# Full report: regenerates report.txt + report.json.
cargo test -p panache-parser --test commonmark commonmark_full_report \
    -- --ignored --nocapture

To grow the allowlist: fix a parser or renderer bug (with a focused regression test reproducing it), run commonmark_full_report, verify the newly-passing numbers appear in report.txt, then add them to allowlist.txt grouped under their section header. Run commonmark_allowlist to confirm. If an example is intentionally not targeted, add it to blocked.txt with a reason.

Why an HTML renderer?

The CommonMark spec defines conformance as markdown-input → HTML-output byte-equality. Panache's primary output is formatted markdown, not HTML, so the harness needs a renderer to bridge the gap. The renderer in tests/commonmark/html_renderer.rs is test code only — it is not part of the public crate surface, and it covers only the constructs spec.txt exercises. If a public --to html mode is wanted later, the renderer can graduate from test-only to a real module; until then it intentionally stays narrow.

© jolars, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/commonmark-conformance of jolars/panache.

Open the folder on GitHubat commit e28d49b

Compare with similar skills

Commonmark Conformance next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Commonmark Conformance compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Commonmark Conformance this skilljolars/panache235—~1.1kAutomated safety check: PassMIT
Content Modeling Best Practicessanity-io/agent-toolkit1881 repos~463Automated safety check: PassMIT
Domain Modelingrsmdt/the-startup551—~574Automated safety check: PassMIT
SQL Optimization Patternsynulihao/AgentSkillOS61711 repos~3.3kAutomated safety check: PassNone
Add Mpk Taskmirage-project/mirage2.5k—~4.5kAutomated safety check: PassApache-2.0
Datamodellmnimbalyst/nimbalyst1.9k—~713Automated safety check: PassMIT

Similar skills

  • Content Modeling Best Practices

    sanity-io/agent-toolkit

    Official

    Structured content modeling guidance for schema design, content architecture, content reuse, references versus embedded objects, separation of concerns, and taxonomies across Sanity and other…

    188 GitHub starsUsed in 1 repo~463 tokens
    DatabasesAuto-check passed
  • Domain Modeling

    rsmdt/the-startup

    Unified domain and data modeling for business entities, invariants, schema design, aggregate boundaries, and evolution strategy.

    551 GitHub stars~574 tokensUpdated 2 mo ago
    DatabasesAuto-check passed
  • SQL Optimization Patterns

    ynulihao/AgentSkillOS

    Master SQL query optimization, indexing strategies, and EXPLAIN analysis to dramatically improve database performance and eliminate slow queries.

    617 GitHub starsUsed in 11 repos~3.3k tokens
    DatabasesAuto-check passed
  • Add Mpk Task

    mirage-project/mirage

    Step-by-step guide for adding a new task implementation to Mirage Persistent Kernel (MPK).

    2.5k GitHub stars~4.5k tokensUpdated today
    DatabasesAuto-check passed
  • Datamodellm

    nimbalyst/nimbalyst

    Create visual data models for database schemas using Nimbalyst's DataModelLM editor.

    1.9k GitHub stars~713 tokensUpdated today
    DatabasesAuto-check passed
  • Sqlite Schema Design

    fastrepl/anarlog

    Design or review schemas for crates/cloudsync using SQLite Sync constraints, not generic SQLite advice.

    9.5k GitHub stars~1.9k tokensUpdated today
    DatabasesAuto-check passed

More from jolars/panache

All 10 skills in this repo
  • Add Syntax Construct

    jolars/panache

    Add a new block-level or inline-level syntax construct to Panache's parser and formatter — confirm the pandoc-native shape first, add SyntaxKinds for every byte category, gate it behind an extension…

    235 GitHub stars~1.8k tokensUpdated today
    Auto-check passed
  • External Tools

    jolars/panache

    Work on Panache's delegation of embedded code blocks to third-party formatters and linters (ruff, shfmt, shellcheck, rustfmt, ...) — add or change a preset, fix the offset mapping that translates a…

    235 GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Linter Investigation

    jolars/panache

    Investigate panache's linter (and, secondarily, its parser) against a real-world Quarto/Markdown codebase.

    235 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Math Parser Formatter

    jolars/panache

    Implement or debug Panache's TeX math parser and formatter internals, including the lossless CST, semantic model, diagnostics, and Badness parity.

    235 GitHub stars~1.5k tokensUpdated today
    Auto-check passed
  • Add Lint Rule

    jolars/panache

    Add a new built-in lint rule to the Panache linter — wire it into the registry, gate it on the right extension/flavor, add a regression fixture with focused assertions, and document it.

    235 GitHub stars~2.8k tokensUpdated today
    Auto-check passed
  • Perf Investigation

    jolars/panache

    Profile-driven performance work on the panache parser or formatter.

    235 GitHub stars~3.3k tokensUpdated today
    Auto-check passed

Works with

Questions about Commonmark Conformance

What does Commonmark Conformance do?

Grow Panache's CommonMark spec conformance under Flavor::CommonMark by running every spec.txt example through the shared parser, comparing rendered HTML against the spec's expected HTML…. Commonmark Conformance is an agent skill from jolars/panache.txt example through the shared parser, comparing rendered HTML against the spec's expected HTML (byte-equality after list-item whitespace normalization), and triaging failures into renderer / parser-shape / flavor-leak / dialect-divergence / missing-feature buckets.

When should I use Commonmark Conformance?

Commonmark Conformance fits situations like: asked to advance the CommonMark pass rate; grow the allowlist; unblock a CommonMark regression.

How do I install Commonmark Conformance in Claude Code?

Run `npx skills add jolars/panache --skill commonmark-conformance -a claude-code`. Or copy the skill folder (.agents/skills/commonmark-conformance in jolars/panache) into .claude/skills/commonmark-conformance in your project. Claude Code loads it when a task matches its description.

How do I install Commonmark Conformance in Codex?

Run `npx skills add jolars/panache --skill commonmark-conformance -a codex`. Or copy the skill folder (.agents/skills/commonmark-conformance in jolars/panache) into .agents/skills/commonmark-conformance in your project. Codex loads it when a task matches its description.

Can I use Commonmark Conformance in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jolars/panache --skill commonmark-conformance -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/commonmark-conformance, .gemini/skills/commonmark-conformance, .github/skills/commonmark-conformance and .opencode/skills/commonmark-conformance in your project.

What does Commonmark Conformance need to run?

Going by SKILL.md and its folder, Commonmark Conformance needs the command-line tools its instructions call (cargo).

Does Commonmark Conformance access the network?

SKILL.md names 1 domain. As links in the text: spec.commonmark.org. This is read from the text; nothing was executed.

Is Commonmark Conformance safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Commonmark Conformance use?

Commonmark Conformance is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Commonmark Conformance use?

About 1.1k tokens (SKILL.md is roughly 4.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Commonmark Conformance?

Skills that share tags, products or a category with Commonmark Conformance: Content Modeling Best Practices (sanity-io/agent-toolkit, 188 stars), Domain Modeling (rsmdt/the-startup, 551 stars), SQL Optimization Patterns (ynulihao/AgentSkillOS, 617 stars) and Add Mpk Task (mirage-project/mirage, 2.5k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Commonmark Conformance?

jolars (a GitHub user) maintains it in jolars/panache, which has 235 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 7, 2026.

Source: jolars/panache on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.