markstream-angular

A setup guide for adding the alpha Markstream Markdown renderer to Angular 20 or newer applications. It covers standalone components, signals, CSS, optional integrations, and gradually streamed content.

In plain words
What is it for?
Use it when integrating Markstream into an Angular app, including an AI chat interface. It helps configure Markdown content, animation settings, math styles, custom HTML tags, and standalone component imports.
Why use it?
It helps avoid mixing incompatible Angular versions or adding optional packages unnecessarily. It also explains how streaming chat output should differ from already-complete conversation history.

Skill for Claude CodeCodex

Install

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.

agentmods
npx agentmods add skills/simon-he95/markstream-vue/markstream-angular
Any agent
npx skills add Simon-He95/markstream-vue --skill markstream-angular
Clone the repo
git clone --depth 1 https://github.com/Simon-He95/markstream-vue

Made for: Claude Code, Codex.

Per session 53 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 701 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00053 $0.00701
Opus 5 $0.00026 $0.00351
Sonnet 5 $0.00011 $0.00140
Haiku 4.5 $0.00005 $0.00070

Measured 2d ago against content hash 00a467dc223a, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

markstream-angular 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 2d 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.

.agents/skills/markstream-angular/SKILL.md · 47 lines

How it starts

The opening of the file, as written. The whole thing — 47 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Markstream Angular

Use this skill when the host app is Angular and the task is to adopt the Angular package cleanly.

Workflow

  1. Confirm the repo is Angular 20 or newer and accepts an alpha renderer API.
  2. Install markstream-angular plus only the requested optional peers.
  3. Import markstream-angular/index.css from the app shell.
    • Add katex/dist/katex.min.css when math is enabled.
  4. Prefer standalone Angular integration.
    • Use MarkstreamAngularComponent in imports and keep examples signal-friendly.
  5. Start with [content].
    • For streaming AI chat, keep [content] and use built-in smooth streaming first.
      • [smoothStreaming]="'auto'" is the default and activates when [typewriter]="true" or [maxLiveNodes]="0".
      • [typewriter] only controls the blinking cursor and defaults to false.
      • [fade] controls node enter and streamed-text fade animations and defaults to true.
    • Streaming vs recovering history: in chat UIs the same component starts streaming and later switches to history when [final]="true".
      • Streaming: [smoothStreaming]="'auto'", [fade]="false", [typewriter]="true". Smooth pacing handles gradual appearance; fade would flicker.
      • Recovering history: [smoothStreaming]="false", [fade]="true", [typewriter]="false". Content is already complete — pacing would slow it down, but fade gives a polished entry animation.
      • Dynamic switch: [smoothStreaming]="isStreaming ? 'auto' : false", [fade]="!isStreaming".
    • Use [final] for end-of-stream state; final parsing is gated until visible content catches up when smooth streaming is active.
    • Move to nodes + final only for worker-preparsed content, shared AST stores, or custom AST control.
    • Remember that [htmlPolicy] now defaults to 'safe', and Mermaid strict mode is on by default through [mermaidProps].
  6. Use [customHtmlTags] and [customComponents] for trusted tag workflows.
  7. Validate with the smallest useful Angular dev or build command.

Read the full file on GitHub · 47 lines

Files

What ships with it

1 file 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.

Changes

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.

  1. 2d ago First seen · 47 lines · 53 tokens per session scan A 00a467dc223a

Subscribe to this mod's changes

markstream-angular is a skill published in the GitHub repository Simon-He95/markstream-vue (2,972 stars, last pushed 2d ago), licensed MIT. It adds 53 tokens to every session and 701 once invoked, about $0.0003 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.

Related

Other skills, from other repositories

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…

kdcube/kdcube · 74 tokens

png-press

Teaches agents how to author content and configure writepng so PNGs render at the correct size, with tight cropping, readable text, and consistent scaling.

kdcube/kdcube · 36 tokens

document_export

Export text content to various formats (PDF, Excel, Markdown, Mermaid mindmap).

XSpoonAi/spoon-bot · 20 tokens

write-evlog-content

Write, review, and rewrite any evlog content: a docs page, the landing, a blog post, a package README, a skill, an AGENTS.md, a changeset. Load before drafting or editing prose in apps/docs/content, before writing a blog post, before touching a SKILL.md or an AGENTS.md, and whenever content is reviewed for voice…

HugoRCD/evlog · 121 tokens

daily-digest

Build and deliver the daily activity digest, covering GitHub activity, AI Gateway spend, visitor counts, CLI usage, and a short news section. Load this when the morning digest schedule fires, or when someone asks for a digest, a daily recap, or "what happened" over a recent period, on any channel.

HugoRCD/evlog · 68 tokens

nba

Read the live cycle state and return the single highest-leverage next best action, not a menu. Use when a project is between phases, the author asks what to do next, too many valid threads are open, or the work needs re-entry into frame, build, drive, re0-memo, hate, re0-work, or ship.

LilMGenius/paperthin · 72 tokens