协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
markstream-custom-components【开发与工程】Override built-in Markstream node renderers and add trusted custom tags across Vue, React, Svelte, and Angular. Use when Codex needs scoped `setCustomComponents`, renderer-local React `streamingComponents` or `htmlComponents`, Angular/Svelte `customComponents`, Vue app-scoped components, node override keys such as `image`, `code_block`, `mermaid`, or…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
setCustomComponents, renderer-local React streamingComponents or htmlComponents, Angular/Svelte customComponents, Vue app-scoped components, node override keys such as image, code_block, mermaid, or link, or nested renderers for tags such as thinking.Use this skill when the task is to change how Markstream renders specific nodes or custom tags.
Read references/patterns.md before choosing an override strategy.
built-in override: replace an existing renderer such as image, link, code_block, mermaid, d2, or inline_code.custom tag: support trusted HTML-like tags such as thinking.parser-level: requires token transforms or AST reshaping. Only then should you leave this skill and use low-level parser hooks.setCustomComponents(customId, mapping) instead of global mappings whenever practical, and pass the same customId / custom-id.streamingComponents for parser-backed nodes or htmlComponents for sanitized HTML props plus children. Use defineStreamingComponents(...) / defineHtmlComponents(...) for typed maps. Keep setCustomComponents for built-in node overrides or shared legacy registration.customComponents map when the override should not enter the shared registry.{ VueRendererMarkdown } from markstream-vue and install it with { components } when the override should be scoped to the Vue app instance.image, link, inline_code, mermaid) are easier than container nodes (heading, paragraph, list_item).mermaid, not code_block.node.content with a nested renderer.smooth-streaming to child renderers.streamingComponents automatically contributes its keys to the effective custom-tag list; do not duplicate those keys in customHtmlTags unless another parser path needs them.node, loading, indexKey, customId, and isDark.mermaid and infographic overrides, preserve estimatedPreviewHeightPx so async preview shells keep stable height during remounts.removeCustomComponents(customId) when the scope is no longer needed.customHtmlTags plus scoped custom components before parser hooks.docs/guide/component-overrides.mddocs/guide/custom-components.mddocs/guide/react-components.mddocs/guide/components.mddocs/guide/advanced.md