markstream-vue is a family of Markdown renderers that display AI-generated text while it is still arriving, including unfinished formatting, code blocks, diagrams, and mathematical notation. It is for AI chat interfaces built with Vue and other supported frameworks, with markstream-vue targeting Vue 3, Nuxt, and VitePress. The catalogue entries provide agent guidance for using the renderer family.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/simon-he95/markstream-vue/markstream-migrationnpx skills add Simon-He95/markstream-vue --skill markstream-migrationgit clone --depth 1 https://github.com/Simon-He95/markstream-vueWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/simon-he95/markstream-vue/markstream-migration)<a href="https://agentmods.dev/skills/simon-he95/markstream-vue/markstream-migration"><img src="https://agentmods.dev/badge/skills/simon-he95/markstream-vue/markstream-migration.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00095 | $0.01665 |
| Opus 5 | $0.00048 | $0.00833 |
| Sonnet 5 | $0.00019 | $0.00333 |
| Haiku 4.5 | $0.00010 | $0.00167 |
Grade A, and why
markstream-migration scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 93 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Markstream Migration
Use this skill when a repo already renders Markdown and the task is either to adopt Markstream safely or to upgrade an existing markstream-vue 1.x integration to 2.x.
Choose The Migration Route
Inspect package.json, the lockfile, imports, and renderer props before changing code.
- If the repo already depends on
markstream-vue1.x, read references/vue-1x-to-2x.md and follow Route B. Confirm the package dependency instead of routing only from shared names such asMarkdownCodeBlockNodeorInternalParseOptions, which can also appear in other adapters. - Otherwise, when replacing
react-markdown,markdown-it,marked, or another renderer with a Markstream package, read references/adoption-checklist.md and follow Route A. - If both apply, complete the 1.x to 2.x package and API upgrade first, then audit the separate renderer replacement as an adoption task.
Route A: Adopt Markstream From Another Renderer
- Audit the repo's current renderer usage.
- Search for markdown renderers, plugin chains, raw HTML handling, security props, and custom renderers.
- List every call site that will be touched.
- Classify the migration.
direct: simple string-in renderer swap.renderer-custom: custom renderers but limited parser work.plugin-heavy: remark, rehype, markdown-it, or other transform-heavy pipelines.security-heavy: allow or deny lists, URL rewriting, sanitization, or raw HTML policies.
- Swap the renderer first.
- Introduce the correct Markstream package and CSS.
- Import Markstream CSS through the package CSS subpath; do not rely on the renderer import to inject styles.
- Preserve user-visible behavior before adding richer Markstream-only features.
- Audit whether the old renderer allowed broad raw HTML or Mermaid loose-mode HTML labels before claiming parity.
- Migrate custom renderers.
- Convert built-in node renderers into scoped node-type overrides.
- In React, prefer renderer-local
streamingComponentsfor parser-backed tags andhtmlComponentsfor sanitized HTML-prop components; usesetCustomComponentsfor built-in node overrides or shared compatibility registration. - In Svelte or Angular, prefer the renderer-local
customComponentsinput when the mapping does not need shared registration. - For trusted tag-like content, prefer
customHtmlTags. - Use
parseOptions.preTransformTokens,postTransformTokens, orpostTransformNodesonly when the old pipeline truly requires token or AST transforms.
- Review gaps honestly.
- Do not claim 1:1 parity where none exists.
- Call out parser, plugin, security, or HTML behavior that still needs manual review.
- Consider renderer mode and smooth streaming before jumping to
nodes.- For Vue 3, choose
mode="chat"for AI/SSE output,mode="docs"for rich document surfaces, andmode="minimal"for lightweight non-chat surfaces. - If the app streams
contentand only needs pacing,smooth-streaming="auto"(the default) handles it without requiringnodes. - Move to
nodesonly when the app needs custom AST control, worker preparsing, or high-frequency structural updates. - When smooth streaming is on outside Vue 3
mode="chat"defaults, pair it with:fade="false". - Streaming vs recovering history: when migrating a chat UI, keep
mode="chat"on the same chat row and switch pacing/animation props instead. Vue 3 streaming:mode="chat",smooth-streaming="auto",:fade="false". Vue 3 completed chat history:mode="chat",:smooth-streaming="false", optional:fade="true". Usemode="docs"only for separate rich document surfaces.
- For Vue 3, choose
- Validate and summarize.
- Run the smallest relevant tests or build.
- Report direct mappings, TODOs, and remaining verification work.
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 93 lines · 95 tokens per session scan A 273956c1e011
markstream-migration is a skill published in the GitHub repository Simon-He95/markstream-vue (2,972 stars, last pushed 5d ago), licensed MIT. It adds 95 tokens to every session and 1,665 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
slidev
Create and present web-based slidedecks for developers using Slidev with Markdown, Vue components, code highlighting, animations, and interactive features. Use when building technical presentations, conference talks, code walkthroughs, teaching materials, or developer decks.
nuxt-ui
Build UIs with @nuxt/ui v4 — 125+ accessible Vue components with Tailwind CSS theming. Use when creating interfaces, customizing themes to match a brand, building forms, or composing layouts like dashboards, docs sites, and chat interfaces.
nuxt-data-audit
Use when 審計 Nuxt 專案 data-fetching 模式與效能 golden path checklist。NOT for 非 Nuxt 專案,NOT for client-server 分頁參數不一致的偵測(走 data-sanity)。.
nuxt-content
Build typed, content-driven Nuxt applications with @nuxt/content. Use when working with content.config.ts, collections, queryCollection, Markdown or MDC rendering, content databases, hooks, custom sources, search, or Content v2 migrations.
nuxt-modules
Use when creating Nuxt modules: (1) Published npm modules (@nuxtjs/, nuxt-), (2) Local project modules (modules/ directory), (3) Runtime extensions (components, composables, plugins), (4) Server extensions (API routes, middleware), (5) Releasing/publishing modules to npm, (6) Setting up CI/CD workflows for modules.…
pdf-press
Teaches agents how to generate Markdown, HTML (with embedded SVG), and Mermaid content that renders beautifully to multi-page PDF via writepdf, with proper page breaks, compact professional layouts, brand and domain-adaptive color schemes, multi-column support for scientific papers, magazine-style editorial documents…