mcpField
S
show-me

show-me

github.com/humanlayer开发5.5k33.2k 次安装3 周前更新
代码仓库

关于 show-me

用于把当前讨论内容转化为简明可视化的 skill,可按主题选择伪代码、调用树、Mermaid、差异或独立 HTML 图示。适合用图示说明逻辑、结构和变更。

主要功能

  1. 01用伪代码表达逻辑
  2. 02调用树与组件树
  3. 03展示职责的文件树
  4. 04Mermaid 交互图
  5. 05用差异突出变更
  6. 06独立 HTML 可视化

适用场景

  1. 01说明算法或控制流
  2. 02展示 UI 组件及边界
  3. 03梳理重构后的文件布局
  4. 04对比状态或代码变更

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/humanlayer/skills --skill show-me

安装后在 Claude Code 中输入/show-me确认已加载。

附带文件agents/openai.yaml

详细介绍

以可视化方式帮助用户理解当前对话主题。跳过开场白,文字保持简洁。选择能清楚说明要点的最小视图。

  • 用伪代码展示逻辑或算法:
on(save)
  if content is unchanged
    return cached result
  write new content
  return fresh result
  • 用调用树展示运行时控制流:
submitForm
  createSession
    persistPrompt
    launchAgent
  navigateToSession
  • 用组件树展示 UI 结构,包括重要的状态和模块边界:
<SessionPage> (apps/example/src/routes/session.tsx)
  useSessionEvents()
  <SessionToolbar>
    <RunSkillButton> (packages/ui)
  • 用浅层文件树展示文件职责或大范围重构:
src/
├── commands/       # parses user actions
├── sessions/       # owns session state
└── transport/      # sends API requests
  • 用 Mermaid 展示组件交互、控制流或数据流:
sequenceDiagram
    participant User
    participant UI
    participant Daemon
    User->>UI: choose command
    UI->>Daemon: send expanded prompt
    Daemon-->>UI: stream result
  • 如果重点是发生了哪些变化,且周边结构已存在,请使用 diff。让 diff 的结构与主题相匹配。

对于组件变更:

 <SessionPage>
   useSessionEvents()
   <SessionToolbar>
+    <RunSkillButton />
   <SessionTimeline>
+    <SkillResultCard />

对于文件布局变更:

 src/
 ├── commands/
+│   └── show-me.ts       # expands the slash command
 ├── sessions/
-└── transport.ts
+└── transport/
+    ├── client.ts
+    └── stream.ts

对于调用树或调用栈变更:

 submitForm
   createSession
     persistPrompt
+    expandSkillMention
     launchAgent
-  navigateToSession
+  navigateToSession
+    subscribeToEvents

对于状态或控制流变更:

 on(save)
-  write content
+  if content is unchanged
+    return cached result
+  write new content
+  invalidate cache
  • 如果大部分内容都是新增的、缺少上下文会掩盖归属关系或顺序,或者用户需要可复制的目标结构,请展示完整代码块:
function expandSkill(command: string): string {
  const skillName = command.slice(1)
  return `use the ${skillName} skill`
}
  • 对于可视化 UI、布局、状态对比,或 Mermaid 难以表达的复杂概念,请编写一个聚焦的 HTML 文件——根据主题选择图表、信息图或简短幻灯片。匹配产品的配色、字体、间距和组件;使用真实标签和数据;兼容桌面端和移动端。然后为用户打开该文件:
Bash(open path/to/show-me-{description}.html)
指南

将每个可视化内容放在它所辅助的简短文字旁边。只保留回答用户当前问题或解决当前讨论点所需的调用、文件、属性、状态和边界。

可以使用其中一种,也可以使用多种,但几乎不可能全部用上。请自行判断,避免让用户应接不暇。

评论

支持 Markdown