Not in the top 1,000 by GitHub stars

HeiGeAi/HeiGe-PPT

演讲锻造系统 · 把每一页讲成一句话,把整套 deck 导成一场演出 | Forge the talk, don't pile up slides

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

SKILL.md

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 2dc3e1a73658

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 2dc3e1a736582d60bac1bd9d4d019caeb4e8957c

21GitHub stars
0stars in 7 days
1skill in this repository
5commits in 30 days

Heat

1.4
  • Star growth, last 7 daysNot available
  • Star growth, last 24 hoursNot available
  • Rank movement, last 7 daysNot available
  • Commits, last 30 daysNot available
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekNot available

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Oct 25, 2026Oct 25, 202621

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

heige-ppt

When your agent uses it

演讲锻造系统。把每一页 PPT 讲成一句话,把整套 deck 导成一场演出,而不是把要点堆成一面字墙。 专门用于从零设计有气场、有记忆点、一眼不像 AI 做的演示文稿、汇报 deck、路演 pitch、产品 keynote。 适用场景:创业路演、产品发布、年度复盘、方案提案、技术分享、培训课件、述职汇报、招商招生。 核心方法论:一页一句话 / 黄金三秒 / 节奏编排 / 视觉锤 / 反 AI 体检。 当用户要求"做个 PPT""做套幻灯片""做个路演 deck""做个产品发布 keynote""把这份内容做成演示" "做个汇报""做个提案""把这个做成幻灯片""做个演讲稿配图"时,必须使用此 skill。 输出为单文件 HTML 幻灯片:16:9、键盘翻页、可投屏可导出 PDF,且默认带可编辑层,用户打开就能在浏览器里直接改幻灯片文字、再导出 PDF 或下载独立 HTML。动手前先定调,出货前过反 AI 体检。 需要给客户一份能在 PowerPoint / WPS 里直接改的 .pptx 时,用内置的 html2pptx 转换器把同一份 HTML 设计源转成可编辑 PPTX,一份设计两种格式,不用做两遍。 注意:本 skill 负责"从零设计有气场的演示 deck";如果是做单张落地页/网页界面,那是 heige-ui 的活; 如果是把现成文档转成静态展示长页,那是 html-beautifier 的活。

What it loads into context

Frontmatter

493 tokens

Always available to the agent

SKILL.md

3,780 tokens

When the skill is activated

Reference documents

21,176 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. 招牌内核:导一场演出,不是排一摞幻灯片
  2. 使用流程
  3. 设计资产(references/)
  4. 工具(scripts/)
  5. 成品参考(examples/)
  6. 一句话总结

Scripts executed separately

  • scripts/html2pptx.js
  • scripts/package.json
  • scripts/test/html2pptx.test.js
  • scripts/test/release-fixtures.test.js
  • scripts/test/render-fidelity.test.js

Files

  • .github/workflows/reliability.ymlasset1,074 bytes
  • .gitignoreasset63 bytes
  • CHANGELOG.mddoc12,940 bytes
  • LICENSEasset1,071 bytes
  • README.mddoc16,602 bytes
  • SECURITY.mddoc371 bytes
  • SKILL.mdcore12,994 bytes
  • SKILL.mdcore12,994 bytes
  • assets/previews/annual-review.webpasset18,746 bytes
  • assets/previews/campus-talk.webpasset23,298 bytes
  • assets/previews/consulting-proposal.webpasset21,698 bytes
  • assets/previews/darktech-keynote.webpasset14,478 bytes
  • assets/previews/heige-pitch.webpasset18,580 bytes
  • assets/previews/product-keynote.webpasset10,598 bytes
  • examples/annual-review.htmlasset32,437 bytes
  • examples/campus-talk.htmlasset26,027 bytes
  • examples/consulting-proposal.htmlasset32,581 bytes
  • examples/darktech-keynote.htmlasset23,001 bytes
  • examples/heige-pitch.htmlasset24,046 bytes
  • examples/product-keynote.htmlasset24,162 bytes
  • references/aesthetic-directions.mddoc5,036 bytes
  • references/anti-slop-checklist.mddoc3,367 bytes
  • references/deck-pacing-templates.mddoc4,678 bytes
  • references/deck-production-spec.mddoc7,469 bytes
  • references/editable-layer.mddoc10,171 bytes
  • references/live-show-layer.mddoc8,712 bytes
  • scripts/README.mddoc2,686 bytes
  • scripts/html2pptx.jsruns26,902 bytes
  • scripts/package-lock.jsonasset7,426 bytes
  • scripts/package.jsonruns560 bytes
  • scripts/test/html2pptx.test.jsruns8,251 bytes
  • scripts/test/release-fixtures.test.jsruns1,746 bytes
  • scripts/test/render-fidelity.test.jsruns6,743 bytes
Read SKILL.md

# HeiGe-PPT(演讲锻造系统)

PPT 不是写出来的,是讲出来的。

大多数 AI 做出来的 deck,是把要点堆成一面字墙:标题 + 三个 bullet,一页接一页,母版一个调子到底。投到屏幕上,观众一边听你念,一边走神。讲完了,一页都记不住。

HeiGe-PPT 换一种做法:**把每一页讲成一句话,把整套 deck 导成一场演出。** 每一页只有一个观点、一个主角、一个让人记住的瞬间。讲完之后,观众能复述出你的主线,记得住你那几页。

这套方法论的目标只有一个:**让你做出的 deck 有气场、有记忆点、站在台上敢讲、讲完有人记得。**

---

## 招牌内核:导一场演出,不是排一摞幻灯片
View the complete source on GitHub

Skills included

  • heige-ppt

Repository facts

License
MIT
Created
May 31, 2026
Last pushed
Nov 6, 2026
Forks
0
Open issues
0
Project activity
Active

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 4, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 1 note
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 137 signals by file

CHANGELOG.md

  • Possible obfuscationline 98
    - 编辑层正则里内嵌的裸零宽字符(U+200B)改为 `<U+200B>` 转义写法,行为不变,源码不再藏不可见字符(5 套样例 + drop-in 代码共 6 处)。

README.md

  • Network accessline 5
    ![Version](https://img.shields.io/badge/version-1.4.2-ff4d12.svg)
  • Network accessline 6
    ![Claude](https://img.shields.io/badge/Claude-Skill-orange.svg)
  • Network accessline 7
    ![License](https://img.shields.io/badge/license-MIT-green.svg)
  • Network accessline 17
    <a href="https://heigeai.github.io/HeiGe-PPT/examples/heige-pitch.html"><img src="assets/previews/heige-pitch.webp" width="92%" alt="HeiGe-PPT · 演讲锻造系统" /></a>
  • Network accessline 88
    | 预览 | 气质 | 场景 | |:--:|:--|:--| | <a href="https://heigeai.github.io/HeiGe-PPT/examples/heige-pitch.html"><img src="assets/previews/heige-pitch.webp" width="400" alt="heige-pitch" /></a> | **凶悍 / 工业** | HeiGe-PPT 自己的产品路演 |
  • Network accessline 89
    |:--:|:--|:--| | <a href="https://heigeai.github.io/HeiGe-PPT/examples/heige-pitch.html"><img src="assets/previews/heige-pitch.webp" width="400" alt="heige-pitch" /></a> | **凶悍 / 工业** | HeiGe-PPT 自己的产品路演 | | <a href="https://heigeai.github.
  • Network accessline 90
    | <a href="https://heigeai.github.io/HeiGe-PPT/examples/heige-pitch.html"><img src="assets/previews/heige-pitch.webp" width="400" alt="heige-pitch" /></a> | **凶悍 / 工业** | HeiGe-PPT 自己的产品路演 |
  • Network accessline 91
    | <a href="https://heigeai.github.io/HeiGe-PPT/examples/product-keynote.html"><img src="assets/previews/product-keynote.webp" width="400" alt="product-keynote" /></a> | **科技 / 未来** | AI 产品发布会 keynote |
  • Network accessline 92
    | <a href="https://heigeai.github.io/HeiGe-PPT/examples/darktech-keynote.html"><img src="assets/previews/darktech-keynote.webp" width="400" alt="darktech-keynote" /></a> | **科技 / 未来 · 暗色 AI** | Agent 编排控制台 HELM 发布会 |
  • Network accessline 93
    | <a href="https://heigeai.github.io/HeiGe-PPT/examples/annual-review.html"><img src="assets/previews/annual-review.webp" width="400" alt="annual-review" /></a> | **克制 / 数据** | 团队年度复盘 |
  • Network accessline 94
    | <a href="https://heigeai.github.io/HeiGe-PPT/examples/consulting-proposal.html"><img src="assets/previews/consulting-proposal.webp" width="400" alt="consulting-proposal" /></a> | **优雅 / 高定** | 给客户的方案提案 |
  • Network accessline 95
    | <a href="https://heigeai.github.io/HeiGe-PPT/examples/campus-talk.html"><img src="assets/previews/campus-talk.webp" width="400" alt="campus-talk" /></a> | **张扬 / 人文** | 一场技术分享演讲 |
  • Network accessline 99
    git clone https://github.com/HeiGeAi/HeiGe-PPT.git
  • Network accessline 101
    # 浏览器打开 http://localhost:8755/examples/
  • Network accessline 126
    git clone https://github.com/HeiGeAi/HeiGe-PPT.git ~/.claude/skills/heige-ppt
  • Possible obfuscationline 245
    - 🔒 守生产铁律:辉光只用 box-shadow / radial-gradient 不碰 backdrop-filter;零宽字符用 `<U+200B>` 转义;中文字体系统兜底
  • Network accessline 282
    - **Author**: Blake 黑哥 - **WeChat**: 488137 - **GitHub**: [@HeiGeAi](https://github.com/HeiGeAi)
  • Network accessline 284
    - **GitHub**: [@HeiGeAi](https://github.com/HeiGeAi)
  • Network accessline 299
    本项目属于问问黑哥的开源武器库。全部开源项目的清单、用途和协议,见 [heigeai.com/opensource](https://www.heigeai.com/opensource/)。

SECURITY.md

  • Network accessline 9
    Please report vulnerabilities privately through [GitHub Security Advisories](https://github.com/HeiGeAi/HeiGe-PPT/security/advisories/new).

examples/annual-review.html

  • Network accessline 5
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>回声 AI 小队 · 2026 年度复盘</title> <link rel="preconnect" href="https://fonts.googleapis.com" />
  • Network accessline 6
    <title>回声 AI 小队 · 2026 年度复盘</title> <link rel="preconnect" href="https://fonts.googleapis.com" /> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  • Network accessline 7
    <link rel="preconnect" href="https://fonts.googleapis.com" />
  • Network accessline 8
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  • Network accessline 9
    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Space+Mono:wght@400;700&family=Noto+Sans+SC:wght@400;500;700;900&display=swap" rel="stylesheet" />

examples/campus-talk.html

  • Network accessline 5
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>为什么你的 PPT 没人记得住 · 黑哥的技术分享</title> <link rel="preconnect" href="https://fonts.googleapis.com" />
  • Network accessline 6
    <title>为什么你的 PPT 没人记得住 · 黑哥的技术分享</title> <link rel="preconnect" href="https://fonts.googleapis.com" /> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  • Network accessline 7
    <link rel="preconnect" href="https://fonts.googleapis.com" />
  • Network accessline 8
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  • Network accessline 9
    <link href="https://fonts.googleapis.com/css2?family=Anton&family=Archivo:wght@600;700;800;900&family=Space+Mono:wght@400;700&family=Noto+Sans+SC:wght@400;500;700;900&display=swap" rel="stylesheet" />
  • Network accessline 41
    /* paper grain (static) */   .stage::after{content:"";position:absolute;inset:0;z-index:60;pointer-events:none;opacity:.05;     background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3
  • Network accessline 43
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' h

examples/consulting-proposal.html

  • Network accessline 6
    <title>雾屿优选 · AI 客服升级方案提案</title> <!-- 本案例纯属虚构:「雾屿优选」「青砚工作室」及全部人物、联系方式、数据均为演示编造,与任何真实商家无关 --> <link rel="preconnect" href="https://fonts.googleapis.com" />
  • Network accessline 7
    <!-- 本案例纯属虚构:「雾屿优选」「青砚工作室」及全部人物、联系方式、数据均为演示编造,与任何真实商家无关 --> <link rel="preconnect" href="https://fonts.googleapis.com" /> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  • Network accessline 8
    <link rel="preconnect" href="https://fonts.googleapis.com" />
  • Network accessline 9
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  • Network accessline 10
    <link href="https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,500;0,700;0,900;1,500&family=Space+Mono:wght@400;700&family=Noto+Serif+SC:wght@500;700;900&family=Noto+Sans+SC:wght@400;500;700&display=swap" rel="stylesheet"
  • Network accessline 35
    /* faint paper texture */   .stage::after{content:"";position:absolute;inset:0;z-index:40;pointer-events:none;opacity:.04;     background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3C
  • Network accessline 37
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' h

examples/darktech-keynote.html

  • Network accessline 5
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>HELM · Agent 编排控制台 发布会</title> <link rel="preconnect" href="https://fonts.googleapis.com" />
  • Network accessline 6
    <title>HELM · Agent 编排控制台 发布会</title> <link rel="preconnect" href="https://fonts.googleapis.com" /> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  • Network accessline 7
    <link rel="preconnect" href="https://fonts.googleapis.com" />
  • Network accessline 8
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  • Network accessline 9
    <link href="https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=JetBrains+Mono:wght@400;700&family=Noto+Sans+SC:wght@400;500;700;900&display=swap" rel="stylesheet" />

examples/heige-pitch.html

  • Network accessline 5
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>HeiGe-PPT · 演讲锻造系统</title> <link rel="preconnect" href="https://fonts.googleapis.com" />
  • Network accessline 6
    <title>HeiGe-PPT · 演讲锻造系统</title> <link rel="preconnect" href="https://fonts.googleapis.com" /> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  • Network accessline 7
    <link rel="preconnect" href="https://fonts.googleapis.com" />
  • Network accessline 8
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  • Network accessline 9
    <link href="https://fonts.googleapis.com/css2?family=Anton&family=Archivo:wght@600;800;900&family=Space+Mono:wght@400;700&family=Noto+Sans+SC:wght@400;700;900&display=swap" rel="stylesheet" />
  • Network accessline 33
    /* grain */   .stage::after{content:"";position:absolute;inset:0;z-index:40;pointer-events:none;opacity:.045;     background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'
  • Network accessline 35
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' he
  • Network accessline 254
    <h2>锻造你的<br>下一场<span class="molten">演讲</span>。</h2>     <div class="row">       <a class="cta" href="https://github.com/HeiGeAi/HeiGe-PPT" target="_blank" rel="noopener">在 GitHub 上获取 →</a>
  • Network accessline 255
    <div class="row">       <a class="cta" href="https://github.com/HeiGeAi/HeiGe-PPT" target="_blank" rel="noopener">在 GitHub 上获取 →</a>       <div class="repo"><b>HeiGeAi/HeiGe-PPT</b><br>作者 黑哥 · 黑哥Ai实验室 · MIT</div>
  • Network accessline 256
    <a class="cta" href="https://github.com/HeiGeAi/HeiGe-PPT" target="_blank" rel="noopener">在 GitHub 上获取 →</a>

examples/product-keynote.html

  • Network accessline 5
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>回声 ECHO · AI 会议副驾 发布会</title> <link rel="preconnect" href="https://fonts.googleapis.com" />
  • Network accessline 6
    <title>回声 ECHO · AI 会议副驾 发布会</title> <link rel="preconnect" href="https://fonts.googleapis.com" /> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  • Network accessline 7
    <link rel="preconnect" href="https://fonts.googleapis.com" />
  • Network accessline 8
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
  • Network accessline 9
    <link href="https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&family=JetBrains+Mono:wght@400;700&family=Noto+Sans+SC:wght@400;500;700;900&display=swap" rel="stylesheet" />

references/live-show-layer.md

  • Network accessline 137
    **现场跳转按钮**:`<a class="lk-btn" href="https://你的demo站" target="_blank">打开现场演示 ↗</a>`,做成大按钮,够大到台上一步点中。

scripts/README.md

  • Network accessline 34
    - [pptxgenjs](https://github.com/gitbrent/PptxGenJS) — 生成 .pptx
  • Network accessline 35
    - [playwright-core](https://playwright.dev/) — 驱动系统已装的 Chromium / Chrome(不自带浏览器,复用你机器上已有的)

scripts/html2pptx.js

  • Executable scriptline 1
    #!/usr/bin/env node

scripts/package-lock.json

  • Network accessline 24
    "node_modules/@types/node": {       "version": "22.19.21",       "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.21.tgz",
  • Network accessline 25
    "version": "22.19.21",       "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.21.tgz",       "integrity": "sha512-VMeFBSCKQKmm2swI2kW51SFusDqekC6q9trBCvJ/JliDchFSuoYYKN7yVNjPthP1HKZcx3U1gI/wTcEBjEFKTA==",
  • Network accessline 26
    "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.21.tgz",
  • Network accessline 33
    "node_modules/core-util-is": {       "version": "1.0.3",       "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
  • Network accessline 34
    "version": "1.0.3",       "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",       "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
  • Network accessline 35
    "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
  • Network accessline 39
    "node_modules/https": {       "version": "1.0.0",       "resolved": "https://registry.npmjs.org/https/-/https-1.0.0.tgz",
  • Network accessline 40
    "version": "1.0.0",       "resolved": "https://registry.npmjs.org/https/-/https-1.0.0.tgz",       "integrity": "sha512-4EC57ddXrkaF0x83Oj8sM6SLQHAWXw90Skqu2M4AEWENZ3F02dFJE/GARA8igO79tcgYqGrD7ae4f5L3um2lgg==",
  • Network accessline 41
    "resolved": "https://registry.npmjs.org/https/-/https-1.0.0.tgz",
  • Network accessline 45
    "node_modules/image-size": {       "version": "1.2.1",       "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz",
  • Network accessline 46
    "version": "1.2.1",       "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz",       "integrity": "sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==",
  • Network accessline 47
    "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz",
  • Network accessline 60
    "node_modules/immediate": {       "version": "3.0.6",       "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",
  • Network accessline 61
    "version": "3.0.6",       "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",       "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==",
  • Network accessline 62
    "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",
  • Network accessline 66
    "node_modules/inherits": {       "version": "2.0.4",       "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
  • Network accessline 67
    "version": "2.0.4",       "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",       "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
  • Network accessline 68
    "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
  • Network accessline 72
    "node_modules/isarray": {       "version": "1.0.0",       "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
  • Network accessline 73
    "version": "1.0.0",       "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",       "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
  • Network accessline 74
    "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
  • Network accessline 78
    "node_modules/jszip": {       "version": "3.10.1",       "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz",
  • Network accessline 79
    "version": "3.10.1",       "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz",       "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==",
  • Network accessline 80
    "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz",
  • Network accessline 90
    "node_modules/lie": {       "version": "3.3.0",       "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz",
  • Network accessline 91
    "version": "3.3.0",       "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz",       "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==",
  • Network accessline 92
    "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz",
  • Network accessline 99
    "node_modules/pako": {       "version": "1.0.11",       "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
  • Network accessline 100
    "version": "1.0.11",       "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",       "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==",
  • Network accessline 101
    "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
  • Network accessline 105
    "node_modules/playwright-core": {       "version": "1.61.0",       "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.61.0.tgz",
  • Network accessline 106
    "version": "1.61.0",       "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.61.0.tgz",       "integrity": "sha512-caX7TrY3Ml6egyDX0WUcTHDxodl/b51y5wJOdCEA36QviK/s2g081hvmGs8eaE3DWb6NYZQ6BjO/QkNRPenoPA==",
  • Network accessline 107
    "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.61.0.tgz",
  • Network accessline 117
    "node_modules/pptxgenjs": {       "version": "4.0.1",       "resolved": "https://registry.npmjs.org/pptxgenjs/-/pptxgenjs-4.0.1.tgz",
  • Network accessline 118
    "version": "4.0.1",       "resolved": "https://registry.npmjs.org/pptxgenjs/-/pptxgenjs-4.0.1.tgz",       "integrity": "sha512-TeJISr8wouAuXw4C1F/mC33xbZs/FuEG6nH9FG1Zj+nuPcGMP5YRHl6X+j3HSUnS1f3at6k75ZZXPMZlA5Lj9A==",
  • Network accessline 119
    "resolved": "https://registry.npmjs.org/pptxgenjs/-/pptxgenjs-4.0.1.tgz",
  • Network accessline 129
    "node_modules/process-nextick-args": {       "version": "2.0.1",       "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
  • Network accessline 130
    "version": "2.0.1",       "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",       "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
  • Network accessline 131
    "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
  • Network accessline 135
    "node_modules/queue": {       "version": "6.0.2",       "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz",
  • Network accessline 136
    "version": "6.0.2",       "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz",       "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==",
  • Network accessline 137
    "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz",
  • Network accessline 144
    "node_modules/readable-stream": {       "version": "2.3.8",       "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
  • Network accessline 145
    "version": "2.3.8",       "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",       "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
  • Network accessline 146
    "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
  • Network accessline 159
    "node_modules/safe-buffer": {       "version": "5.1.2",       "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
  • Network accessline 160
    "version": "5.1.2",       "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",       "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
  • Network accessline 161
    "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
  • Network accessline 165
    "node_modules/setimmediate": {       "version": "1.0.5",       "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
  • Network accessline 166
    "version": "1.0.5",       "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",       "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==",
  • Network accessline 167
    "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
  • Network accessline 171
    "node_modules/string_decoder": {       "version": "1.1.1",       "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
  • Network accessline 172
    "version": "1.1.1",       "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",       "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
  • Network accessline 173
    "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
  • Network accessline 180
    "node_modules/undici-types": {       "version": "6.21.0",       "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
  • Network accessline 181
    "version": "6.21.0",       "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",       "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
  • Network accessline 182
    "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
  • Network accessline 186
    "node_modules/util-deprecate": {       "version": "1.0.2",       "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
  • Network accessline 187
    "version": "1.0.2",       "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",       "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
  • Network accessline 188
    "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",

scripts/package.json

  • Executable scriptline 1
    Executable file

scripts/test/html2pptx.test.js

  • Executable scriptline 1
    Executable file
  • Network accessline 138
    fs.writeFileSync(deck, `<!doctype html> <html><head><meta charset="utf-8"> <link rel="stylesheet" href="http://127.0.0.1:${port}/phone-home.css">
  • Network accessline 139
    <html><head><meta charset="utf-8"> <link rel="stylesheet" href="http://127.0.0.1:${port}/phone-home.css"> <style>
  • Network accessline 140
    <link rel="stylesheet" href="http://127.0.0.1:${port}/phone-home.css">
  • Network accessline 145
    </style></head><body><main class="stage"><section class="slide"> <h1 style="margin:100px;font:700 64px Arial">Offline deck</h1> <script>fetch("http://127.0.0.1:${port}/beacon").catch(()=>{})</script>
  • Network accessline 146
    <h1 style="margin:100px;font:700 64px Arial">Offline deck</h1> <script>fetch("http://127.0.0.1:${port}/beacon").catch(()=>{})</script> </section></main></body></html>`);
  • Network accessline 147
    <script>fetch("http://127.0.0.1:${port}/beacon").catch(()=>{})</script>
  • Network accessline 177
    fs.writeFileSync(deck, `<!doctype html> <html><head><meta charset="utf-8"> <link rel="stylesheet" href="http://127.0.0.1:${port}/slow.css">
  • Network accessline 178
    <html><head><meta charset="utf-8"> <link rel="stylesheet" href="http://127.0.0.1:${port}/slow.css"> <style>
  • Network accessline 179
    <link rel="stylesheet" href="http://127.0.0.1:${port}/slow.css">

scripts/test/release-fixtures.test.js

  • Executable scriptline 1
    Executable file

scripts/test/render-fidelity.test.js

  • Executable scriptline 1
    Executable file

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Signal confidence: 38 facts

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeCompatibleStandard SKILL.md SKILL.md.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.