بنقرة واحدة
dashiai-ppt
制作 PPT、演示文稿、幻灯片、汇报材料时使用。DashiAI PPT 基于预置视觉主题组合页面,生成可离线打开、可在浏览器编辑的 HTML 演示,支持导出 PPTX / PDF 文件。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
制作 PPT、演示文稿、幻灯片、汇报材料时使用。DashiAI PPT 基于预置视觉主题组合页面,生成可离线打开、可在浏览器编辑的 HTML 演示,支持导出 PPTX / PDF 文件。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
A股每日复盘——获取指数行情、涨停数据、板块资金流、市场情绪,用四层融合框架(L0人性层/L1情绪层/L2产业层/L3证据层)诊断当日市场,分析下周/下月机会方向,输出可视化复盘卡片并存入daily日志。当用户说"复盘大盘""今天大盘怎么样""复盘今日行情""A股收盘分析""下周机会"等话题时使用。
A股持仓诊断——通过截图或文本输入持仓信息,获取实时行情,用四层融合框架(L0人性层/L1情绪层/L2产业层/L3证据层)逐只诊断,分级评级(A/B/C/D),给出短期(下周)和中期(下月)操作建议。当用户要求"分析持仓""诊断持仓""看看我的股票""持仓复盘""我的股票有没有行情"等话题时使用。
以原稿章法为骨架,中国传统色彩为气韵,**直接产出可交互、可迁移的中式 HTML 汇报演示稿**。用于需要梳理叙事逻辑、章节框架、页级结构或版式的演示/汇报,且内容涉及中国文化,或视觉希望采用中国色、中国风、中式/东方审美;点名本 Skill、模板或框架导航格式时也触发。**只支持 HTML 交付**:输出 `index.html` + `assets/` 目录(自包含、字体嵌入、可双击打开)。不生成 PPT/PPTX。 Build a Chinese-style HTML presentation system that maps confirmed source material into faithful reporting logic, sections, slide architecture, and layouts, then renders a self-contained interactive HTML deck. Use when presentation work involves Chinese culture or requests Chinese-color, Chinese-style, or Eastern aesthetics, and when this Skill, template, or framework navigation is named. HTML-only delivery; no PPT/PPTX mode.
公众号端到端交付——把任意选题在 30 分钟内变成可直接粘贴的桌面 8 文件交付物(标题/正文/封面/4 配图),用户手动 30 秒发布。适用场景:用户说"写公众号"/"公众号文章"/"配公众号"/"公众号配图"/自己的公众号名。覆盖 v3.18 launch 实战验证的 5 步流程 + 7 段黄金模板 + 桌面文件夹 + mavis browser 自动化天花板 + 反模式。
小红书文案创作专家。当用户需要创作小红书笔记、生成吸引人的标题、优化文案内容、添加话题标签或学习小红书写作技巧时使用此专家。触发关键词:小红书、笔记、文案、种草、爆款标题、话题标签、xiaohongshu、RED note
用 AI 直接生成 N 张风格统一的图,再嵌入到**真正的 PowerPoint 文件**(.pptx),用户能在 PowerPoint / Keynote / WPS 打开、可编辑、可投屏、可二次加工。这是 2026 年"知识传播 + 真实交付"的最佳组合:AI 出图效率 + PPT 格式兼容性。
| name | dashiai-ppt |
| description | 制作 PPT、演示文稿、幻灯片、汇报材料时使用。DashiAI PPT 基于预置视觉主题组合页面,生成可离线打开、可在浏览器编辑的 HTML 演示,支持导出 PPTX / PDF 文件。 |
DashiAI PPT 生成静态 HTML 横向翻页 PPT。使用本 skill 时,先把用户的自然语言需求整理成 JSON 计划,再调用本地项目生成器输出 index.html 和 assets/。
当前版本: 0.2.0
每次完成用户请求、准备最终回复前,运行:
node <skill-root>/scripts/check_latest_version.mjs
如果脚本有输出,把输出内容附在最终回复末尾提醒用户更新;如果脚本无输出或检查失败,保持静默,不要提版本检查。
当前 SKILL.md 所在目录就是 Skill 根目录,下文记为 <skill-root>。
内置生成器目录:
<skill-root>/project
渲染脚本:
<skill-root>/scripts/render_goal_deck.sh
版本检查脚本:
<skill-root>/scripts/check_latest_version.mjs
本 Skill 是模板编排器。默认目标是快速、稳定地把用户需求套入已登记页面组件,输出可离线打开的 HTML PPT。
默认模式是“锁模板填文案”:保留所选页面组件的原始视觉、结构、数量、显隐、强调、配色、图表类型和图片槽位,只替换可见文字内容。除非用户明确要求调整页面属性,不要改任何非文案 props。
默认不做视觉精修,不做截图审美判断,不因为普通断行或局部排版不完美反复返工。只有用户明确要求“视觉精修”“100% 检查”“帮我调到满意”时,才进入视觉 QA 流程。
project/ 目录安装依赖。<skill-root>/assets/skill/theme-style-grid.png 的 Markdown 图片,先展开绝对路径;这是回复展示用内置风格图,不可写入 goal.json 或任何 media 字段;列出当前可选风格和极简“适合/人群”,不能只在内部进度提示中提到风格图。goal.json 顶层加 "language": "en"(编辑器界面随之切英文);全部文案字段用目标语言撰写,页面自带的默认中文文案(含结尾页“感谢阅读”类装饰字段)一律覆盖,不得残留中文。PPTX、PowerPoint、可编辑 PPTX、导出 PPTX、PPT 格式 或“格式/文件类型为 PPT/PPTX”时才交付 PPTX 文件。theme01 轻拟态风、theme02 炫光紫绿风、theme03 深浅代码风、theme04 玻璃糖果风、theme05 色谱图表风、theme06 深色图谱风、theme07 冷白调研风、theme08 黑金实验风、theme09 深蓝杂志风、theme10 金色指数风、theme11 高能增长风、theme12 声波霓虹风。theme10;只有用户明确指定,或金融/投资指数内容强相关且 inspect 确认可填时才用。theme01 轻拟态风 | 适合: 产品介绍 / 企业汇报 | 人群: 创业团队 / 产品经理theme02 炫光紫绿风 | 适合: 科技发布会 / AI/自动驾驶/机器人主题 | 人群: 科技公司创始人 / 技术负责人theme03 深浅代码风 | 适合: 技术方案 / 开发者大会 | 人群: 工程师 / 技术管理者theme04 玻璃糖果风 | 适合: 年轻化品牌 / 消费产品 | 人群: 品牌团队 / 设计师theme05 色谱图表风 | 适合: 数据报告 / 市场分析 | 人群: 数据分析师 / 咨询顾问theme06 深色图谱风 | 适合: 高密度数据展示 / 战略分析 | 人群: 战略团队 / 投资人theme07 冷白调研风 | 适合: 调研报告 / 白皮书 | 人群: 研究机构 / 咨询团队theme08 黑金实验风 | 适合: 高端发布 / 品牌提案 | 人群: 高端品牌 / 创意总监theme09 深蓝杂志风 | 适合: 品牌故事 / 人物访谈 | 人群: 公关团队 / 媒体编辑theme10 金色指数风 | 适合: 金融数据 / 投资报告 | 人群: 投资机构 / 金融分析师theme11 高能增长风 | 适合: 增长复盘 / 商业计划 | 人群: 创业者 / 增长团队theme12 声波霓虹风 | 适合: 音乐娱乐 / 潮流活动 | 人群: 娱乐品牌 / 活动策划npm --prefix <skill-root>/project run layout:query -- --theme <themePack> --role <role> --limit 8;需要媒体槽时加 --needs-media、--planned-images <n>、--provided-images <n> 或 --image-gen。候选顺序每次随机,从中任选合适的即可,不要固定只用列表第一条。npm --prefix <skill-root>/project run inspect:layout -- --compact <layout...>;写对象、数组、数量或图片 props:运行 props:safe,整份 goal 用 props:safe -- --goal <file> --write。layout:query / inspect:layout 的 JSON 管道给程序解析时,改用 node <skill-root>/project/scripts/layout-query.mjs / node <skill-root>/project/scripts/inspect-layout.mjs:npm run 会在 stdout 前打印生命周期 banner,污染 JSON。npm --prefix <skill-root>/project run goal:scaffold -- --title <title> --goal <goal> --theme <themePack> --pages <n> --chunk-size 5 --out output/<deck-name>/goal.json 生成唯一 layout 骨架和 goal.fill-plan.json,再按 fillPlan 分段补 props。fillPlan.text[].maxChars、fillPlan.arrays[].visibleCount、fillPlan.arrays[].nestedArrays 写;display / metric 字段只写短词、短句或数字。headlineHtml / quoteHtml)写文案只用 <br> 换行加 <b> / <em> 行内强调,禁止 <span> 等自由 HTML;主题默认值里的 <span class> 依赖主题 CSS,只是占位,不要照抄。validate:goal-spec 会拦截自由 HTML。preview: {"themeSwitcher": true}。layout + props。role 只允许在草稿阶段辅助选页,渲染前必须换成具体 layout。themeXX_page001 到 themeXX_page005 都是封面候选。一个 deck 只能从前 5 页中选择 1 页作为封面,不要同时使用多个封面页;正文页从第 6 页以后选择。slides[].layout 必须唯一。选页时记录已用 layout,不同内容页要换同主题其它候选,不要通过改文案复用同一个 layout。role 后依赖页面默认文案。除非用户明确要默认 demo,每一页可见内容都必须写和用户主题对应的 props 文案。layout:query / inspect:layout 暴露的文案字段。字段是对象或数组时按 fillPlan 和 propShapes 填内部 key。copyKeys 已展开嵌套路径(如 copy.quote、items[].label),按列出的路径直接填。inspect:layout 标 contentLocked: true 的页正文由组件固定、props 填不进:换一页能填正文的布局,或仅当用户接受其默认正文时使用。数组按 fillPlan.arrays[].visibleCount 填满可见项;decorativeKeys 是装饰位,不要填。props 内填写内容和用户明确要求的页面属性。text 覆盖可见文字槽位,但只用于替换文字内容。不要在普通生成中启动浏览器批量抽取全页面文本槽位;只有用户明确要求“彻底清除所有模板默认文案/逐页校对可见文案”时才做运行时槽位抽取。output/ 里已有的旧 goal.json 或旧 HTML。每次请求都新建本次输出目录和本次 JSON 计划。<skill-root>/project/output。http://127.0.0.1:<port>/(不给 https 或 .local 变体);本机 HTTP 可导出 HTML/PDF/PPTX,本地 HTML 或 file:// 不能导出可编辑 PPTX。不要返回 theme-preview。在自带浏览器的 Agent APP(如 Codex)里生成时,提醒用户导出 PDF/PPTX 前把该地址在系统浏览器中打开。/api/export-editable-pptx;最终只给 PPTX 文件路径或下载结果。npm run export:pptx -- <deck>/ppt <out.pptx>(PDF 用 export:pdf)直接产出文件,不需要先起浏览器会话。mediaSlots[].canPresetMedia: true 的槽,按该槽 presetProp / fieldPath 写路径;goal.json 只引用 deck 内相对媒体路径,不可引用临时目录、外部绝对路径、file:// 或远程 URL。--planned-images <n> / --needs-media,用户给素材用 --provided-images <n> / --provided-media,用户明确要求原创视觉图/生图时,Codex 环境用 image-gen 生成图片并加 --image-gen;未明确生图时先询问用户。plannedImages / needsVisual / imageGen 只表示选页意图,除非用户明确选择预留空槽,交付前必须写入真实媒体路径,不能交付空媒体槽或伪造路径。npm --prefix <skill-root>/project run media:stage -- <deck-output-dir-or-ppt-dir> <media-file...>,使用返回的 relative 路径;AVIF 会转成浏览器可用格式。image-gen 输出也先落到本次 deck 目录。ppt/<relative> 存在且 HTML 包含文件名;缺失时只补最终 ppt/assets 并重跑校验。图片/视频素材每个最多使用一次;素材用完后,媒体插槽留空或改选无媒体插槽页面;除非用户明确要求,不要重复填充同一素材。借鉴 CyberPPT 三段式:证据链 → 视觉蓝图 → PPTX 重建。dashiai-ppt 的完整 12 步:
title、goal、audience、owner、页数、内容重点和最终产物格式。用户未指定页数时默认 10 页左右,不少于 8 页。slides[].evidence 里填:
conclusion: 这页要证明什么(一句话)evidence_ids[]: 引用 text 字段中的数据 keyconflicts[]: 需要回避或说明的矛盾数据(可选)
先过证据关,再进视觉关——如果某页说不出"凭什么成立",先补证据再选 layout。themePack。用户未指定时先询问风格;用户选定后生成 randomSeed,例如 <主题>-<日期>-<3位随机词>,保证随机选页可复现。media:stage;明确生图时用 image-gen。layout:query 选候选;对象/数组/count/图片 props 用 inspect:layout + props:safe。output/<deck-name>/goal.json;渲染前运行 npm --prefix <skill-root>/project run props:safe -- --goal output/<deck-name>/goal.json --write 和 goal spec 校验。--write 后核对输出的 layoutChanges;不认可替换就改回并换页。output/<deck-name>/ppt/index.html;脚本会使用 Skill 内置生成器,不要切回外部项目目录。ppt/assets。validate:swiss 和 validate:goal-copy 校验。node <skill-root>/scripts/check_latest_version.mjs 做静默版本检查。http://127.0.0.1:<port>/;需要指定端口时设置 DASHI_PPT_PREVIEW_PORT 后再运行脚本(端口用 5200-5999 段,4178/4300/4400 为用户保留端口不可用)。只能用该预览服务,不得用 python -m http.server、npx serve 等静态服务器替代:静态服务器没有导出和自动保存接口。预览服务下编辑自动保存到 index.html 本体;file:// 打开的本地文件不自动保存,交付前需导出。http://127.0.0.1:<port>/;PPTX 调用 /api/export-editable-pptx 后只给文件路径或下载结果。只在以下情况返工:渲染失败、validate:swiss 失败、validate:goal-copy 失败、输出中出现明显不属于用户主题的模板文案、用户明确指出某页内容有问题。
默认最多修复 2 轮。仍失败时说明阻塞原因,不要继续无边界尝试。
默认不打开浏览器,不创建 Chrome profile,不抽取全量文本槽位。只有修改了生成器/预览模板/导出逻辑、用户明确要求检查页面效果,或上一轮出现过运行后 props 被默认值覆盖的问题时,才做一次浏览器 smoke check。
浏览器 smoke check 只确认页面能打开、页数正确、首尾页不是空白。不要默认截图精修,不要因为普通换行问题反复改稿。
示例命令:
<skill-root>/scripts/render_goal_deck.sh \
output/client-review/goal.json \
output/client-review/ppt/index.html
{
"title": "美国 AI 融资调研",
"goal": "面向投资团队汇报 2024-2026 年美国 AI 大额融资结构、资本流向和后续判断",
"audience": "投资团队 / 产业研究团队",
"owner": "研究团队",
"randomSeed": "ai-funding-20260609-a7k",
"pageCount": 8,
"themePack": "theme01",
"text": {
"totalFunding": "970亿美元",
"investorCount": "230家",
"topSector": "基础模型"
},
"slides": [
{
"layout": "theme01_page001",
"evidence": {
"conclusion": "美国 AI 融资规模在 2024 年创历史新高",
"evidence_ids": ["totalFunding", "investorCount"]
},
"props": {"kicker": "融资调研 · VOL.01", "titleTop": "美国 AI", "titleBottom": "融资调研", "lead": "从资本体量、赛道结构和典型公司拆解本轮 AI 融资周期。"}}
,
{
"layout": "theme01_page006",
"evidence": {
"conclusion": "基础模型是本轮吸金最多的赛道",
"evidence_ids": ["topSector"]
},
"props": {"kicker": "核心数字", "value": "970", "unit": "亿美元", "sub": "2024 年美国 AI 风险投资规模创历史新高。"}}
,
{
"layout": "theme01_page010",
"evidence": {
"conclusion": "横纵交叉分析能有效识别融资结构变化",
"evidence_ids": []
},
"props": {"kicker": "# 研究方法", "title": "横纵分析法", "cn": "用时间维度和赛道维度交叉识别融资变化。"}}
,
{
"layout": "theme01_page030",
"evidence": {
"conclusion": "头部公司融资节奏快于中腰部但估值分歧增大",
"conflicts": ["估值分歧数据尚未完全公开"]
},
"props": {"kicker": "# 典型案例", "title": "里程碑 · 头部公司融资节奏"}}
,
{
"layout": "theme01_page084",
"props": {"kicker": "# 附录", "title": "数据来源与研究说明"}}
]
}
注意: evidence 不是必填字段,但建议为每一页关键结论都写上,这样即使不写 evidence_ids 也能帮助 AI 思考"这页凭什么成立"后再选 layout。
如果 slides 为空,pageCount 只适合临时草稿预览。面向用户交付前,必须改成具体 layout + 对应 props。
role 只用于草稿选页,最终 JSON 必须落成具体 layout。角色说明见 references/layout-roles.md;真实候选以 layout:query 输出为准。
cover 只能从当前主题前 5 页选择。image / media 候选基于真实 mediaSlots,不是页面标题关键词。动态背景页可用 ambient 作为氛围页或章节页。
可以直接指定页面:
{"layout": "theme01_page030", "props": {"title": "典型案例"}}
生成后的预览页支持翻页、打开侧边栏编辑文本、调整页面 props、替换组件暴露的图片/视频媒体槽、切换页面切换动画、导出 HTML/PDF/PPTX。面向用户交付的页面底部不显示页码标识、翻页引导、圆点导航或索引提示。
普通生成不要读 layout-manifest.json。先用 layout:query 输出的候选摘要。只有需要更细契约时,再用 npm --prefix <skill-root>/project run inspect:layout -- --compact <layout...> 看页面契约:
copyKeys: 可安全改写的文案/数据字段。copyBudgets: 文案长度预算;display / metric 超长会被 goal spec 拦截。propShapes: copyKeys / 数组字段的内部形状;写 copy、cells、items、rows 等对象字段时只使用这里列出的 key。mediaSlots: 图片/视频写入字段、count key、默认数量和最大数量。countBindings: 数量参数与数组字段的绑定。fillPlan 里数值字段看 numericBounds 填数:enforced:false 是提示、真实数据可超出,enforced:true 必须遵守,semantics:'normalized' 填 0-1 比例;定长嵌套数组看 fixedLength/fixedLengths 按下标填,不试错。controlKeys: 右侧面板可操作字段,不是普通内容填充清单;仅用户明确要求调整页面属性时使用。默认只填 copyKeys、可见数组和真实媒体槽。validate:goal-spec。validate:swiss。validate:goal-copy。npm run showcase:update。