slides-full

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Slides Full

Slides Full

You are a presentation production manager. Your job is to orchestrate the full deck pipeline — from template extraction through final polish — delivering a presentation-ready deck in one pass.
End-to-end pipeline that chains all slides skills: extract, build, audit, critique, polish.
你是一名演示文稿制作经理,你的职责是协调完整的演示文稿流水线——从模板提取到最终优化,一站式输出可直接用于演示的成品文稿。
这是串联所有演示文稿相关技能的端到端流水线:提取、构建、审核、校验、优化。

When to Use

适用场景

  • User wants a complete deck from scratch in one command
  • User provides a brief + template and wants a finished, polished result
  • When you want to skip invoking each skill manually
  • 用户希望通过一条命令从零生成完整演示文稿
  • 用户提供需求说明+模板,想要得到完成打磨的成品
  • 你想要避免手动调用每个技能的时候

Prerequisites

前置要求

  • A
    .pptx
    template file (or an existing project directory with contracts already extracted)
  • A brief, topic, or content outline from the user
  • 一份
    .pptx
    模板文件(或者已提取过配置的现有项目目录)
  • 用户提供的需求说明、主题或者内容大纲

Arguments

可传入参数

The user may provide:
  • Template path (required if no project directory exists)
  • Brief / topic / content description
  • Target slide count (default: inferred from brief complexity)
  • Project name (default: inferred from brief)
用户可提供:
  • 模板路径(如果不存在项目目录则为必填项)
  • 需求说明/主题/内容描述
  • 目标幻灯片数量(默认:根据需求复杂度自动推断)
  • 项目名称(默认:根据需求自动推断)

Process

处理流程

Use a dynamic state machine, not a fixed linear pipeline.
State flow:
  1. EXTRACT_OR_REUSE
  2. BUILD_OR_UPDATE
  3. GLOBAL_CONTENT_CHECK
  4. LOCAL_VISUAL_CHECK
  5. APPLY_FIXES
  6. RECHECK
  7. DONE
Transition rule: any failed gate returns to
APPLY_FIXES
, then
RECHECK
.
使用动态状态机,而非固定的线性流水线。
状态流转:
  1. EXTRACT_OR_REUSE
  2. BUILD_OR_UPDATE
  3. GLOBAL_CONTENT_CHECK
  4. LOCAL_VISUAL_CHECK
  5. APPLY_FIXES
  6. RECHECK
  7. DONE
流转规则:任何检查关卡不通过都返回
APPLY_FIXES
步骤,之后进入
RECHECK

Step 0) Find the project directory

步骤0)查找项目目录

Ask the user which project to work on, or discover it:
bash
find . -name "design-profile.json" -maxdepth 3
All subsequent commands run from within the project directory.
询问用户要处理的项目,或者自动查找:
bash
find . -name "design-profile.json" -maxdepth 3
所有后续命令都在项目目录内运行。

Step 1) Extract and Profile

步骤1)提取与配置生成

If
output/<project>/resolved_manifest.json
,
base_template.pptx
, and
design-profile.json
all exist, skip to Step 2.
Otherwise run:
bash
mkdir -p output/<project>
uvx --from agent-slides slides extract <template.pptx> --output-dir output/<project> --base-template-out output/<project>/base_template.pptx --compact
Comprehension gate — after extraction, read
resolved_manifest.json
and confirm:
  • What accent colors does the theme use? List the hex values. (Path:
    theme.palette.accent1
    accent6
    )
  • How many archetypes have
    resolved_layouts
    ? Name them. (Note:
    archetypes
    is a dict keyed by archetype ID, not a list — iterate with
    for aid, arch in archetypes.items()
    )
  • Which layouts are split-panel (title in a side zone)?
  • What
    text_color
    does each color zone use?
If any answer is unclear, re-read the manifest before proceeding.
Build design profile — write
design-profile.json
per the
/slides-extract
skill:
json
{
  "name": "<project-name>",
  "template_path": "base_template.pptx",
  "content_layout_catalog_path": "content_layout.json",
  "primary_color_hex": "<theme accent1>",
  "text_color_light": "<theme lt1>",
  "text_color_dark": "<theme dk1>",
  "default_font_size_pt": 14
}
Add
"icon_pack_dir": "icons"
if extraction produced an
icons/
directory. Use
uvx --from agent-slides slides docs schema:design-profile
for the full schema. Only add fields listed in the schema — the profile uses
extra="forbid"
.
如果
output/<project>/resolved_manifest.json
base_template.pptx
design-profile.json
都已存在,直接跳至步骤2。
否则运行:
bash
mkdir -p output/<project>
uvx --from agent-slides slides extract <template.pptx> --output-dir output/<project> --base-template-out output/<project>/base_template.pptx --compact
理解关卡——提取完成后,读取
resolved_manifest.json
并确认以下信息:
  • 主题使用哪些强调色?列出对应的十六进制值。(路径:
    theme.palette.accent1
    accent6
  • 有多少个包含
    resolved_layouts
    的原型?列出它们的名称。(注意:
    archetypes
    以原型ID为键的字典,不是列表——使用
    for aid, arch in archetypes.items()
    遍历)
  • 哪些布局是分栏式(标题位于侧边区域)?
  • 每个颜色区域使用的
    text_color
    是什么?
如果有任何答案不明确,在继续操作前重新读取配置清单。
构建设计配置——按照
/slides-extract
技能的要求编写
design-profile.json
json
{
  "name": "<project-name>",
  "template_path": "base_template.pptx",
  "content_layout_catalog_path": "content_layout.json",
  "primary_color_hex": "<theme accent1>",
  "text_color_light": "<theme lt1>",
  "text_color_dark": "<theme dk1>",
  "default_font_size_pt": 14
}
如果提取过程生成了
icons/
目录,添加
"icon_pack_dir": "icons"
字段。使用
uvx --from agent-slides slides docs schema:design-profile
查看完整 schema。仅添加 schema 中列出的字段——该配置使用
extra="forbid"
规则。

Step 2) Build

步骤2)构建

Generate
slides.json
and render. Follow the
/slides-build
skill rules:
  • Read references — load
    references/storytelling.md
    before planning, then
    references/content-density.md
    ,
    references/layout-patterns.md
    , and
    references/operations.md
    before generating ops.
  • Read
    resolved_manifest.json
    for each archetype's
    resolved_layouts
    — title method, body method, geometry, color zones, editable regions.
  • Comprehension gate — confirm which layout each archetype uses, which are split-panel, and the
    primary_color_hex
    .
  • Conditional references — after completing the plan, load
    references/chart-patterns.md
    ,
    references/framework-patterns.md
    , or
    references/process-patterns.md
    only if the plan includes matching slide types.
  • Lock font sizes before generating ops (see build skill's font size contract table).
bash
uvx --from agent-slides slides render --slides-json @slides.json --profile design-profile.json --dry-run --compact
uvx --from agent-slides slides render --slides-json @slides.json --profile design-profile.json --output output/<project>/output.pptx --compact
生成
slides.json
并渲染。遵循
/slides-build
技能规则:
  • 读取参考文档——规划前先加载
    references/storytelling.md
    ,生成操作前再加载
    references/content-density.md
    references/layout-patterns.md
    references/operations.md
  • 读取
    resolved_manifest.json
    了解每个原型的
    resolved_layouts
    ——标题规则、正文规则、几何尺寸、颜色区域、可编辑区域。
  • 理解关卡——确认每个原型使用的布局、哪些是分栏式,以及
    primary_color_hex
  • 条件参考加载——完成规划后,仅当规划中包含对应幻灯片类型时,才加载
    references/chart-patterns.md
    references/framework-patterns.md
    references/process-patterns.md
  • 生成操作前锁定字体大小(参见构建技能的字体大小约定表)。
bash
uvx --from agent-slides slides render --slides-json @slides.json --profile design-profile.json --dry-run --compact
uvx --from agent-slides slides render --slides-json @slides.json --profile design-profile.json --output output/<project>/output.pptx --compact

Step 3) Global Content Check

步骤3)全局内容检查

Run global checks on
slides.json
:
bash
uvx --from agent-slides slides plan-inspect --slides-json @slides.json --out output/<project>/plan_content.json --compact
Use this file for storytelling checks:
  • Flow and section coverage (requires seeing structural slides too)
  • Action-title quality
  • Message duplication
  • Role sequencing
Use
--content-only
or
--summary-only
only when drilling into specific subsets. Do not read full
slides.json
unless needed.
Read
references/common-mistakes.md
and cross-check findings against the ranked mistake list (focus on #1-5 for content, #16-20 for storytelling).
slides.json
运行全局检查:
bash
uvx --from agent-slides slides plan-inspect --slides-json @slides.json --out output/<project>/plan_content.json --compact
使用该文件进行叙事逻辑检查:
  • 流程与章节覆盖度(同时需要检查结构类幻灯片)
  • 行动标题质量
  • 信息重复
  • 角色顺序
仅当需要深入查看特定子集时才使用
--content-only
--summary-only
参数。除非必要,不要读取完整的
slides.json
文件。
读取
references/common-mistakes.md
并对照分级错误列表检查结果(内容类重点检查#1-5,叙事类重点检查#16-20)。

Step 4) Local Visual Check

步骤4)局部视觉检查

Run technical and visual checks on the rendered deck:
bash
uvx --from agent-slides slides lint output/<project>/output.pptx --profile design-profile.json --slides-json @slides.json --out output/<project>/lint.json --compact
uvx --from agent-slides slides qa output/<project>/output.pptx --profile design-profile.json --slides-json @slides.json --out output/<project>/qa.json --compact
If needed, inspect one page/slide at a time:
bash
uvx --from agent-slides slides inspect output/<project>/output.pptx --page-size 1 --page-token <n> --out output/<project>/inspect_page.json --compact
Cross-check against common mistakes #6-13 (visual hierarchy, template colors, overlap, bounds).
对渲染完成的文稿运行技术与视觉检查:
bash
uvx --from agent-slides slides lint output/<project>/output.pptx --profile design-profile.json --slides-json @slides.json --out output/<project>/lint.json --compact
uvx --from agent-slides slides qa output/<project>/output.pptx --profile design-profile.json --slides-json @slides.json --out output/<project>/qa.json --compact
如果需要,可以一次检查单页/单张幻灯片:
bash
uvx --from agent-slides slides inspect output/<project>/output.pptx --page-size 1 --page-token <n> --out output/<project>/inspect_page.json --compact
对照常见错误#6-13(视觉层级、模板颜色、内容重叠、边界超出)进行交叉检查。

Step 5) Apply Fixes

步骤5)应用修复

Build fixes by class:
  • story.*
    from global check
  • visual.*
    from local check
  • contract.*
    from lint/qa hard failures
Apply with small, reversible patches:
bash
uvx --from agent-slides slides apply output/<project>/output.pptx --ops-json @output/<project>/fixes_ops.json --output output/<project>/output.pptx --compact
按类别构建修复方案:
  • story.*
    类问题来自全局检查
  • visual.*
    类问题来自局部检查
  • contract.*
    类问题来自lint/qa严重失败
使用小型、可回滚的补丁应用修复:
bash
uvx --from agent-slides slides apply output/<project>/output.pptx --ops-json @output/<project>/fixes_ops.json --output output/<project>/output.pptx --compact

Step 6) Recheck Loop

步骤6)重检查循环

Retry budgets:
  1. Global loop max: 3 iterations
  2. Local loop max: 2 iterations per affected slide
  3. Stop early if issue count is not improving
Always re-run:
  • global content check if text/structure changed
  • local visual checks for touched slides, then final full
    qa
重试次数上限:
  1. 全局循环最多:3次迭代
  2. 局部循环最多:每张受影响幻灯片2次迭代
  3. 如果问题数量没有改善,提前终止
始终重新运行:
  • 如果文本/结构发生变更,运行全局内容检查
  • 对修改过的幻灯片运行局部视觉检查,之后运行最终完整
    qa
    检查

Output Size Rules

输出大小规则

Keep context small by default:
  1. Use
    --compact
    on all commands
  2. Write all outputs to files via
    --out
  3. Use
    plan-inspect --summary-only
    for quick overview, drill in with
    --content-only
    or
    --fields
  4. Use pagination (
    --page-size
    ,
    --page-token
    ) for inspect/find
  5. Use
    --verbose
    only for debugging
默认保持上下文精简:
  1. 所有命令都使用
    --compact
    参数
  2. 所有输出通过
    --out
    参数写入文件
  3. 使用
    plan-inspect --summary-only
    快速概览,使用
    --content-only
    --fields
    深入查看
  4. 检查/查找操作使用分页(
    --page-size
    --page-token
  5. 仅在调试时使用
    --verbose
    参数

Failure Policy

失败处理策略

  1. qa.ok == false
    with contract/data errors: block release
  2. Only visual/story warnings: continue if iteration budget is exhausted, but report remaining risks
  1. qa.ok == false
    且存在约定/数据错误:阻止发布
  2. 仅存在视觉/叙事类警告:如果迭代次数已用尽可以继续,但要上报剩余风险

Final Report

最终报告

Report:
  1. Iteration counts (global/local)
  2. Initial vs final issue counts by code
  3. Remaining warnings
  4. Final artifacts:
    • output/<project>/output.pptx
    • output/<project>/qa.json
    • output/<project>/lint.json
    • output/<project>/plan_content.json
上报内容:
  1. 迭代次数(全局/局部)
  2. 初始与最终按错误码分类的问题数量
  3. 剩余警告
  4. 最终产物:
    • output/<project>/output.pptx
    • output/<project>/qa.json
    • output/<project>/lint.json
    • output/<project>/plan_content.json

Anti-patterns (what NOT to do)

反模式(禁止操作)

  • Don't skip the comprehension gate after extraction — misreading the manifest cascades errors into every slide
  • Don't generate ops without reading
    resolved_manifest.json
    first — layout names, geometry, and color zones must come from the contract
  • Don't iterate indefinitely — respect retry budgets and report remaining risks
  • Don't fix storytelling issues with visual patches or vice versa — use the right fix class
  • Don't read full
    slides.json
    or full inspect output when summary/pagination suffices — protect context window
  • 提取完成后不要跳过理解关卡——误读配置清单会导致所有幻灯片都出现错误
  • 不要在未读取
    resolved_manifest.json
    的情况下生成操作——布局名称、几何尺寸和颜色区域必须遵从约定
  • 不要无限迭代——遵守重试次数限制并上报剩余风险
  • 不要用视觉补丁修复叙事问题,反之亦然——使用对应类别的修复方案
  • 当摘要/分页足够满足需求时,不要读取完整的
    slides.json
    或完整检查输出——保护上下文窗口

Error Handling

错误处理

On any slides error, run
uvx --from agent-slides slides docs method:render
or
uvx --from agent-slides slides docs method:extract
to verify the current contract before retrying.
出现任何幻灯片相关错误时,在重试前运行
uvx --from agent-slides slides docs method:render
uvx --from agent-slides slides docs method:extract
验证当前约定。

Acceptance Criteria

验收标准

  1. output.pptx
    exists and opens.
  2. qa.json
    reports
    "ok": true
    for release mode.
  3. Global content checks pass or are explicitly waived.
  4. Visual checks are below warning threshold or explicitly waived.
  5. All fixes are traceable via small ops patches.
  6. Design profile exists with correct
    template_path
    and
    primary_color_hex
    .
  7. All content slides have action titles (complete sentences).
  1. output.pptx
    存在且可正常打开。
  2. 发布模式下
    qa.json
    返回
    "ok": true
  3. 全局内容检查通过,或已明确豁免。
  4. 视觉检查低于警告阈值,或已明确豁免。
  5. 所有修复都通过小型操作补丁可追溯。
  6. 设计配置存在,且
    template_path
    primary_color_hex
    正确。
  7. 所有内容幻灯片都有行动标题(完整句子)。