semantic-markdown

mcp
Guvenlik Denetimi
Basarisiz
Health Uyari
  • License — License: Apache-2.0
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 6 GitHub stars
Code Basarisiz
  • new Function() — Dynamic code execution via Function constructor in .claude/skills/smd-release/scripts/release-check.mjs
  • exec() — Shell command execution in .claude/skills/smd-release/scripts/release-check.mjs
  • spawnSync — Synchronous process spawning in .claude/skills/smd-release/scripts/release-check.mjs
  • process.env — Environment variable access in .claude/skills/smd-release/scripts/release-check.mjs
  • spawnSync — Synchronous process spawning in .claude/skills/sonarqube-scan/scripts/sonar-scan.mjs
  • process.env — Environment variable access in .claude/skills/sonarqube-scan/scripts/sonar-scan.mjs
  • network request — Outbound network request in .claude/skills/sonarqube-scan/scripts/sonar-scan.mjs
  • spawnSync — Synchronous process spawning in .claude/skills/version-control/scripts/plan-release.mjs
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

Semantic Markdown (.smd): Markdown for developers, PMs and AI agents — callouts, colors, diagrams, decisions, risks, APIs, KPIs. VS Code extension, CLI and agent skills with token-efficient agent views.

README.md

Semantic Markdown icon

Semantic Markdown (.smd)

Semantic Markdown is Markdown for the specs, plans and docs that AI coding agents and people both read.
Decisions, risks, tasks and agent instructions that tools understand, validated in CI, and read by agents a section at a time.

Formerly Styled Markdown. Same format, new name: see moving from Styled Markdown.

Release Spec: smd v2, stable License: Apache 2.0

Install · For agents · Playground · Feature guide · Specification

Writing a short .smd document in the playground: the preview shows a decision, a risk and tasks as they are typed; the agent view gives an agent the same document in about half the tokens, without the people-only notes; Diagnostics catches a misspelled status.


Install

Claude Code: the plugin brings the reading and writing skills and the smd MCP server.

/plugin marketplace add bislink360/semantic-markdown
/plugin install semantic-markdown@semantic-markdown

Any agent, one project: run this in your repository and commit the result. It installs the skills (Claude Code) or a rules file (Cursor, Copilot, AGENTS.md), the CLI at .smd/smd.cjs, the MCP server config and the AGENTS.md snippet.

npx semantic-markdown init --agent claude      # or cursor, copilot, agents

VS Code: install Semantic Markdown from the Marketplace, or code --install-extension bislink360.semantic-markdown. Cursor, VSCodium, Windsurf: download semantic-markdown-3.0.0.vsix from the latest release, then cursor --install-extension semantic-markdown-3.0.0.vsix (codium … for VSCodium), or Install from VSIX… in the Extensions view. Open a .smd file and press Ctrl+K V (Cmd+K V on macOS) for the live preview.

CLI and library (Node.js 22+):

npm install -g https://github.com/bislink360/semantic-markdown/releases/download/v3.0.0/semantic-markdown-3.0.0.tgz   # the smd command
smd validate docs/

The npm registry and Open VSX listings are coming. Until the package is on npm, npx semantic-markdown … doesn't work yet: use the files from the latest release, or node smd.cjs init --agent claude with the single-file CLI.

Everything else (the MCP server on its own, JetBrains, Obsidian, MkDocs, Neovim and other editors, the GitHub Action, pre-commit hooks, Astro and Docusaurus): docs/guides/install.md. Or try it first in the web playground, nothing to install.

A Semantic Markdown document rendered in the preview

For AI agents

Semantic Markdown makes the meaning of a document explicit, so an agent can tell an accepted decision from a proposal, a hard constraint from a side note, and its own instructions (:::agent) from content for people. The tools let it read only what a task needs:

Command (CLI) or tool (MCP) Gives the agent
smd read spec.smd · MCP read The whole agent view when it fits a budget (default 2,000 tokens), else the outline with token costs; then smd agent spec.smd --section "…" (MCP read with sections) for just the parts it needs
smd tasks docs/ · MCP tasks Open tasks across documents with owner, priority and due date, overdue first: a work queue
smd query "decision[status=accepted]" docs/ · MCP query Just the blocks it asks for: decisions, risks, APIs, open questions
smd validate docs/ · MCP validate Problems with rule codes and machine-applicable fixes, as a gate before it commits
smd mcp --allow-write Opt-in write tools: check_task, set_status, add_decision, each validated

What it saves, measured. The agent view drops styling, layout and content marked for people only. On seven sample documents (extension/test/samples), the full agent view is 4–37% smaller than the file (median ≈17%) and --brief 13–43%; reading the outline plus one section costs about 80% less than the file on 6k–8k-token documents. The bigger the document and the more often it is read, the more that adds up. For a small document (under ≈1,500 tokens) the skill and tool overhead costs more than it saves: just read the file, as the reader skill does. Methodology, fixed costs and a break-even table: docs/reports/tokens.md; what the agent view keeps and drops: docs/guides/agent-setup.md. smd savings docs/ reports the numbers for your own repository.

Measured on checkout-redesign.smd, a ≈2,500-token PRD (≈4 characters per token):

How it's read ≈ tokens Saving
Raw file 2,471 —
smd agent (whole document) 1,540 38%
smd agent --brief 1,406 43%
smd outline + smd agent --section "open questions" 630 75%
smd tasks on all 7 samples vs. reading them 704 vs 7,328 90%
smd query "decision, risk" on all 7 samples vs. reading them 827 vs 7,328 89%

Spec-driven work: spec, plan and tasks templates turn a feature into three linked documents an agent works through, with smd tasks as its queue and smd validate as the gate: docs/guides/spec-driven.md. Setup for each agent: docs/guides/agent-setup.md and docs/reference/agents.md.

Why Semantic Markdown?

Markdown is the lingua franca of engineering docs, but teams keep stretching it. **IMPORTANT:** stands in for warnings, raw HTML for color and layout, and nobody finds a broken diagram until someone opens the file. AI agents reading those docs spend tokens on decoration and history, and can't tell a hard constraint from a side note.

  • Every .md file is already a valid .smd file. Rename it and add structure where it helps.
  • Meaning is explicit. :::warning, :::decision, :::risk, :::api and :::agent say what content is, not just how it looks.
  • Everything is validated, with rule codes and automatic fixes, in VS Code and in CI.
  • Agents read only what matters, through the agent view, the outline and queries.
  • Requirements and reviews live in the document. :::requirement, :::constraint and :::acceptance blocks with ids, questions with a lifecycle, and :::comment and :::suggestion blocks that know when their target changed. smd query --follow brings what a block depends on, and smd review accepts or rejects a suggestion.
  • Safe and portable. No scripts, allowlisted styles, and a one-command export to HTML, GitHub Markdown, PDF or Word.
  • Stable. Spec v2 gets no breaking changes; tools releases follow a compatibility policy.
Developers Product & project managers AI agents
Write API blocks, code highlights, live code embeds, diagrams, math Decisions, risks, timelines, KPIs, task owners and due dates A writer skill with 16 templates and a validator
Read Syntax-highlighted preview, outline, folding Status header, colored callouts, overdue tasks in red smd read, then only the needed sections
Check Problems panel + quick fixes, smd validate in CI smd tasks across all docs, overdue first --json diagnostics with machine-applicable fixes

A taste of the syntax

---
smd: 2
title: Saved Searches
summary: Let users save a search and get notified when new results match.
status: review
owners: ["@product-search"]
---

:metric[38%]{label="Abandonment" delta="-2.1pp" trend=down good=down}

:::warning Breaking change
`GET /v1/search` requires the `filters` object from 2026-11-01.
:::

- [ ] Idempotent order creation :priority[P0] @api-team :due[2026-10-03]

:::decision{status=accepted date=2026-09-08 owner=@maya} Accordion layout on mobile
Won usability testing on completion rate.
:::

```mermaid
flowchart LR
    A[Search] --> B[Save] --> C[Notify]
```

## Background {agent=skip}
History and research. People see it; agents skip it.

:::agent
- All prices are integer cents.
:::

Every construct, with what it renders, what an agent reads and its plain-Markdown fallback: the feature guide (its At a glance section lists everything the format, the VS Code extension, the CLI and the skills do).

At a glance

KPIs, tasks with owners and due dates, decision, risk and timeline
Project management: KPI tiles, tasks with priority/owner/due date, decisions, risks, timelines
API endpoint, embedded source code with highlighted lines, sequence diagram
Developers: API endpoints, code embedded from the repo with line highlights, Mermaid diagrams
Dark theme with cards, tabs, flowchart and agent block
Layout & theming: cards, columns, tabs, diagrams, math. Light and dark follow VS Code.
smd outline and smd agent output
Agent view: an outline with per-section token costs, then only the section needed

On GitHub

GitHub renders .md files but shows .smd files as source. You can write Semantic Markdown syntax in .md files, generate .md copies in CI with smd export --to md, or post the changed sections on pull requests: docs/guides/github-and-ci.md compares them, with complete workflows. To check documents on every pull request, with each problem annotated on its line:

- uses: bislink360/semantic-markdown/[email protected]
  with:
    paths: docs

Documentation

All the documentation, grouped into guides, reference, reports, RFCs and requirements: docs/README.md. The ones most people need:

Document For
docs/guides/install.md Installing and updating the VS Code extension, the CLI and library, MkDocs, the playground and Obsidian
docs/guides/agent-setup.md Setting up AI agents: the Claude Code plugin, smd init --agent, the MCP server and the agent skills
docs/reference/features.md Feature guide: every construct with syntax, rendering, agent view and plain-Markdown fallback; the VS Code extension, the CLI and the Block Editor
docs/reference/agents.md One-page guide to paste into any agent's instructions, and the MCP server's tools
docs/guides/github-and-ci.md The GitHub Action, pre-commit hooks, and making .smd documents readable on GitHub
docs/guides/editors.md Using .smd in Neovim, Helix, Zed, JetBrains IDEs and other editors
docs/guides/spec-driven.md Spec → plan → tasks with an agent
docs/guides/upgrading.md Moving from Styled Markdown and upgrading to 2.0
docs/reports/tokens.md What the agent view saves, measured, and when it doesn't pay
docs/reference/spec.md The formal specification (v2, with the v1 rules it keeps) and validation rules
docs/reference/compatibility.md The stability promise: spec v2 is stable, what each release may change, deprecations, release cadence

Contributing

Bug reports, ideas and pull requests are welcome: see CONTRIBUTING.md for the setup, the repository layout and good first issues, and Discussions for questions. To build and test:

cd extension
npm install
npm run build          # bundle extension + CLI; refresh the CLI bundled in skills/*/scripts
npm test               # unit tests
npm run test:vscode    # integration checks inside a real VS Code
npm run package        # → semantic-markdown-3.0.0.vsix
npm run build:npm      # → ../npm/dist (the npm package)
npm run build:playground  # → dist/playground (the web playground; open its index.html)

Press F5 in extension/ to launch an Extension Development Host with the test samples open.

Author

Roshan Alwis, bislink360

License

Copyright 2026 bislink360. Licensed under the Apache License, Version 2.0.

Yorumlar (0)

Sonuc bulunamadi