mermaid-diagrams

作者: langchain-ai

Embed Mermaid diagrams in generated wiki pages. Use whenever documenting a runtime or request flow, a call sequence, a state machine or lifecycle, a data model…

npx skills add https://github.com/langchain-ai/openwiki --skill mermaid-diagrams

Mermaid Diagrams In Generated Wiki Pages

Diagrams are part of high-quality wiki generation, not decoration. Where a flow, lifecycle, or data model is easier to grasp visually, embed a Mermaid diagram in a fenced ```mermaid block on the most relevant page.

Choosing a diagram type

  • sequenceDiagram for runtime and request flows across components (auth flows, request lifecycles, agent tool loops).
  • stateDiagram-v2 for lifecycles and state machines (job states, connection states, run phases).
  • erDiagram for the data model: entities and their relationships.
  • flowchart TD for branching control flow and decision logic.

Discipline

  • Ground every diagram in inspected source. Do not invent participants, states, entities, or relationships the code does not support.
  • Cover the high-value cases: add a diagram wherever a page documents a request or runtime flow, a call sequence, a lifecycle or state machine, or a data model. A repository wiki usually has several such diagrams, not one overall. Skip pages that are navigation, reference tables, or pure configuration.
  • Still prefer a few strong diagrams over decorating every page: one accurate diagram on the page that needs it beats a diagram forced onto every page.
  • Give each diagram a one-line caption directly below it stating what it shows.
  • OpenWiki validates every mermaid fence after your run and converts fences that fail to parse into plain text fences. A degraded diagram is a quality failure; follow the syntax rules below so it does not happen.

Syntax safety

These rules prevent the most common render breakages. When in doubt, rephrase the label.

  • Never place semicolons or pipes inside node, message, or edge labels.
  • Never place unescaped angle brackets in labels; write "returns Promise of User" instead of "returns Promise".
  • In flowchart, wrap any label containing parentheses, brackets, or other punctuation in double quotes: A["calls foo(bar)"].
  • In flowchart, never use the bare word end as a node id, and never start a node id with o or x followed by a dash (both are edge-marker syntax); rename the node.
  • In sequenceDiagram, participant names with spaces or punctuation need an alias: participant AS as Auth Service.
  • Never use a Mermaid reserved word as a participant name, alias, or node id: note, end, loop, alt, opt, par, and, else, activate, deactivate, class, state, click, link. For example a notification participant must be Notifier, not Note (which collides with the note keyword).
  • In erDiagram, entity and attribute names must be single identifier-like tokens; put human phrasing in the relationship label.
  • Keep labels short. Move explanation into the surrounding prose or the caption, not the diagram.

Update runs

  • A wrong diagram is a stale claim, not existing structure to preserve. If a source change makes a diagram inaccurate, update the diagram in the same edit as the surrounding prose.
  • Do not rewrite a diagram that is still accurate. Regenerating unchanged diagrams creates diff noise.
  • If a page contains a text fence preceded by an HTML comment starting with "openwiki: mermaid parse failed", that is a diagram a previous run degraded. Fix the syntax using the parser error in the comment, restore the ```mermaid fence, and delete the comment.

来自 langchain-ai 的更多技能

langgraph-docs
langchain-ai
访问LangGraph文档,构建有状态代理和多代理工作流。获取官方LangGraph Python文档,涵盖状态机、基于图的代理设计以及人机协同模式。根据查询类型优先提供相关文档:实现指南解答操作问题,概念页面讲解理论,教程提供端到端示例,API参考提供技术细节。自动选择2–4个最相关的文档URL并检索其内容以回答...
official
langgraph-human-in-the-loop
langchain-ai
暂停图执行以进行人工审查、批准或验证,随后根据其输入恢复执行。需要三个组件:检查点存储器(InMemorySaver 或 PostgresSaver)、配置中的线程 ID 以及 JSON 可序列化的中断负载。interrupt(value) 暂停执行并展示数据;Command(resume=value) 恢复执行并将该值返回给暂停的节点。恢复时,interrupt() 之前的所有代码会重新执行,因此副作用必须具有幂等性(使用 upsert 而非 insert)。支持审批工作流,...
official
web-research
langchain-ai
用于处理与网络研究相关的请求;它提供了一种结构化的方法来进行全面的网络研究
official
langchain-oss-primer
langchain-ai
任何LangChain、Deep Agents或LangGraph代理构建项目都请始终从这里开始。在选择其他技能或编写任何内容之前,这是必需的起点。
official
skill-creator
langchain-ai
创建有效技能的指南,通过专业知识、工作流程或工具集成来扩展代理能力。当用户……时使用此技能。
official
social-media
langchain-ai
根据研究内容起草特定平台的社交媒体帖子,并生成配套图片。支持领英帖子(1300字符,专业语气)和推特/X话题(每条推文280字符,采用1/🧵格式)。需在撰写前将研究任务委托给子代理,随后阅读研究结果以确保准确性和相关性。使用generate_social_image工具自动生成引人注目的社交图片,采用粗体高对比度构图,针对小屏幕进行优化...
official
deep-agents-memory
langchain-ai
为Deep Agents提供可插拔的内存与文件后端,支持临时、持久化和混合路由选项。四种后端类型:StateBackend(线程作用域,临时)、StoreBackend(跨会话持久化)、FilesystemBackend(本地开发时真实磁盘访问)和CompositeBackend(将不同路径路由到不同后端)。FilesystemMiddleware提供六种文件操作工具:ls、read_file、write_file、edit_file、glob、grep。CompositeBackend使用最长前缀匹配进行路由...
official
deep-agents-orchestration
langchain-ai
编排子代理,规划多步骤任务,并对敏感操作要求人工审批。通过任务工具将工作委派给专业子代理;自定义子代理支持独立的工具集和系统提示,而默认的“通用”子代理继承主代理配置。使用write_todos规划并跟踪复杂工作流,将任务组织为待处理、进行中和已完成状态;需要thread_id以实现跨调用的持久化。实现...
official