When to Use
User needs Microsoft PowerPoint controlled as a live application, not treated as a .pptx file format.
Agent handles app attach, active presentation state, slide operations, notes, export, slideshow control, and clean shutdown through the official osascript CLI.
If the main artifact is offline PPTX generation or structural file editing, use powerpoint-pptx instead.
Architecture
Memory lives in ~/powerpoint/. If ~/powerpoint/ does not exist, run setup.md. See memory-template.md for structure.
CODEBLOCK0
Quick Reference
Load only the smallest file that matches the current PowerPoint task and risk level.
| Topic | File |
|---|
| Setup guide | INLINECODE7 |
| Memory template |
memory-template.md |
| Interface selection |
execution-matrix.md |
| Live control patterns |
live-control-patterns.md |
| Destructive action guardrails |
safety-checklist.md |
| Debug and recovery |
troubleshooting.md |
Requirements
- - Microsoft PowerPoint installed locally.
- macOS with
osascript available. - Explicit confirmation before destructive presentation actions.
Core Rules
1. Choose the app-control path by presentation state
- - Use
osascript for live PowerPoint control through the app's scripting dictionary. - Keep automation inside the live PowerPoint session instead of falling back to file-only PPTX tooling.
- Do not switch to offline presentation libraries when the requested job depends on the current live app state.
2. Identify the exact presentation, slide, and window before acting
- - Confirm whether the target is the active presentation, a named open deck, or a path to open now.
- Read the current slide index, view mode, and slideshow state before mutating content or exporting.
- Never assume the frontmost deck is the intended one.
3. Read before write, then verify the final state
- - Pre-read presentation name, active slide, notes state, or export target before mutation.
- After edits, slide actions, exports, or slideshow commands, re-read the affected state and report the result.
- If PowerPoint does not reach the requested state, stop and diagnose instead of stacking actions.
4. Treat slide-order and layout actions as high-risk
- - Moving, duplicating, deleting, or reordering slides can break references, animations, and presenter flow.
- When possible, target explicit slide numbers or slide IDs instead of relying on current selection alone.
- If slide identity is ambiguous, clarify first.
5. Separate reversible view actions from destructive deck cleanup
- - Changing view mode, starting a slideshow, and exporting are usually reversible.
- Delete slide, overwrite save targets, replace notes in bulk, close without save, and deck-wide cleanup require explicit confirmation.
- Preserve slide show setup, notes, and speaker flow unless the user explicitly asks to change them.
6. Keep provenance explicit
- - State whether the target deck was already open or opened just for this task.
- Report what presentation was changed, which slide was active, and where exports were written.
- Preserve user-owned open decks that were outside the task scope.
7. Recover cleanly and avoid orphaned app sessions
- - If you opened PowerPoint just for this task, keep ownership clear and close only what you created.
- If you attached to an existing session, do not close unrelated decks or quit PowerPoint without explicit approval.
- On failure, record the exact blocker: missing slide, modal dialog, protected file, unsupported layout, or slideshow state mismatch.
PowerPoint Traps
- - Treating a live deck like a static
.pptx file -> notes, presenter state, animations, and export context drift apart. - Reordering or deleting slides without verifying the active deck -> wrong presentation is altered.
- Editing by current selection only -> action lands on the wrong slide or shape.
- Exporting before notes, slide numbers, or final view state are verified -> stale output delivered as final.
- Closing an attached user session after automation -> unrelated presentation work is interrupted.
- Ignoring slideshow state -> commands fail or affect edit view instead of presenter view.
Security & Privacy
Data that stays local:
- - Presentation paths, environment notes, and reusable fixes in
~/powerpoint/. - Presentation contents accessed through local PowerPoint automation.
Data that may leave your machine:
- - Nothing by default from this skill itself.
- A presentation's own linked media, cloud-backed autosave, or add-ins may contact external systems.
This skill does NOT:
- - Use cloud slide APIs or OAuth flows.
- Disable presentation warnings silently.
- Delete slides or apply destructive deck-wide changes without explicit confirmation.
- Bypass PowerPoint protection prompts.
Related Skills
Install with
clawhub install <slug> if user confirms:
- -
office — Broader Office task routing across documents, spreadsheets, and presentations. - INLINECODE19 — macOS app automation patterns when PowerPoint dictionary work needs deeper script design.
- INLINECODE20 — General document workflow patterns that often feed deck preparation and export tasks.
Feedback
- - If useful: INLINECODE21
- Stay updated: INLINECODE22
使用场景
用户需要将Microsoft PowerPoint作为实时应用程序进行控制,而非处理为.pptx文件格式。代理通过官方osascript命令行界面处理应用附加、活动演示文稿状态、幻灯片操作、备注、导出、幻灯片放映控制及干净关闭。若主要产物为离线PPTX生成或结构性文件编辑,请改用powerpoint-pptx。
架构
内存存储在~/powerpoint/目录中。若~/powerpoint/不存在,请运行setup.md。结构参见memory-template.md。
text
~/powerpoint/
├── memory.md # 环境事实、安全默认值及上次有效控制路径
├── incidents.md # 可复用的失败案例及已验证的恢复步骤
└── deck-notes.md # 关于可信演示文稿、布局及导出目标的非敏感备注
快速参考
仅加载与当前PowerPoint任务及风险级别匹配的最小文件。
memory-template.md |
| 接口选择 | execution-matrix.md |
| 实时控制模式 | live-control-patterns.md |
| 破坏性操作防护 | safety-checklist.md |
| 调试与恢复 | troubleshooting.md |
要求
- - 本地安装Microsoft PowerPoint。
- macOS系统且osascript可用。
- 执行破坏性演示操作前需明确确认。
核心规则
1. 根据演示文稿状态选择应用控制路径
- - 通过应用的脚本字典使用osascript进行实时PowerPoint控制。
- 将自动化保持在实时PowerPoint会话内,而非回退至纯文件PPTX工具。
- 当请求任务依赖当前实时应用状态时,不要切换至离线演示库。
2. 操作前确认确切的演示文稿、幻灯片及窗口
- - 确认目标是活动演示文稿、已命名的打开演示文稿,还是需立即打开的路径。
- 在修改内容或导出前,读取当前幻灯片索引、视图模式及幻灯片放映状态。
- 切勿假设最前端的演示文稿即为目标。
3. 先读取后写入,再验证最终状态
- - 在修改前预读演示文稿名称、活动幻灯片、备注状态或导出目标。
- 编辑、幻灯片操作、导出或幻灯片放映命令后,重新读取受影响状态并报告结果。
- 若PowerPoint未达到请求状态,停止操作并进行诊断,而非堆叠操作。
4. 将幻灯片顺序和布局操作视为高风险
- - 移动、复制、删除或重新排序幻灯片可能破坏引用、动画及演示者流程。
- 尽可能定位明确的幻灯片编号或幻灯片ID,而非仅依赖当前选择。
- 若幻灯片身份不明确,先进行澄清。
5. 区分可逆视图操作与破坏性演示文稿清理
- - 更改视图模式、启动幻灯片放映及导出通常可逆。
- 删除幻灯片、覆盖保存目标、批量替换备注、不保存关闭及全演示文稿清理需明确确认。
- 除非用户明确要求更改,否则保留幻灯片放映设置、备注及演示者流程。
6. 保持来源明确
- - 说明目标演示文稿是已打开还是为此任务新打开。
- 报告更改了哪个演示文稿、哪个幻灯片处于活动状态以及导出写入位置。
- 保留任务范围外用户拥有的已打开演示文稿。
7. 干净恢复并避免孤立的应用会话
- - 若仅为当前任务打开PowerPoint,保持所有权清晰并仅关闭所创建的内容。
- 若附加至现有会话,未经明确批准不得关闭无关演示文稿或退出PowerPoint。
- 失败时,记录确切障碍:缺失幻灯片、模态对话框、受保护文件、不支持的布局或幻灯片放映状态不匹配。
PowerPoint陷阱
- - 将实时演示文稿视为静态.pptx文件 → 备注、演示者状态、动画及导出上下文脱节。
- 未验证活动演示文稿即重新排序或删除幻灯片 → 修改了错误的演示文稿。
- 仅根据当前选择进行编辑 → 操作作用于错误的幻灯片或形状。
- 在验证备注、幻灯片编号或最终视图状态前导出 → 将过时输出作为最终版本交付。
- 自动化后关闭附加的用户会话 → 中断无关的演示工作。
- 忽略幻灯片放映状态 → 命令失败或影响编辑视图而非演示者视图。
安全与隐私
本地存储的数据:
- - ~/powerpoint/中的演示文稿路径、环境备注及可复用修复方案。
- 通过本地PowerPoint自动化访问的演示文稿内容。
可能离开您机器的数据:
- - 默认情况下,此技能本身不产生任何数据外传。
- 演示文稿自身的链接媒体、云备份自动保存或加载项可能联系外部系统。
此技能不会:
- - 使用云幻灯片API或OAuth流程。
- 静默禁用演示警告。
- 未经明确确认删除幻灯片或应用破坏性全演示文稿更改。
- 绕过PowerPoint保护提示。
相关技能
若用户确认,使用clawhub install
安装:
- - office — 跨文档、电子表格及演示文稿的更广泛Office任务路由。
- applescript — 当PowerPoint字典工作需要更深层脚本设计时的macOS应用自动化模式。
- documents — 通用文档工作流模式,常用于演示文稿准备及导出任务。
反馈
- - 若有用:clawhub star powerpoint
- 保持更新:clawhub sync