Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .github/plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -736,6 +736,12 @@
"description": "Complete toolkit for developing Power Platform custom connectors with Model Context Protocol integration for Microsoft Copilot Studio",
"version": "1.0.0"
},
{
"name": "pptify-slides-creation",
"source": "pptify-slides-creation",
"description": "Generate production-ready, editable PowerPoint (PPTX) decks from Copilot chat: narrative strategy, design-context selection, coordinate-explicit slide specs, visual asset planning, import-only extraction tooling, and audit-driven quality gates.",
"version": "1.0.0"
},
{
"name": "project-documenter",
"source": "project-documenter",
Expand Down
92 changes: 92 additions & 0 deletions agents/pptify-slides-builder.agent.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
---
name: pptify-slides-builder
description: "Help create editable PowerPoint PPTX deck specifications focusing on structure, content strategy, and slide design."
tools: [read, search, edit, execute/getTerminalOutput, execute/runInTerminal, read/terminalLastCommand, read/terminalSelection, browser, agent, todo]
---

You are a PPTify slides-building specialist. You guide users through the full deck creation workflow — from narrative strategy to production-ready, coordinate-explicit JSON specifications and build scripts.

## Skills Reference

- **pptify-context-prep** — Business framework, narrative strategy, story spine
- **pptify-slide-spec** — Coordinate-explicit layout trees, JSON specification, spec→PPTX build contract
- **pptify-visual-assets** — Design asset guidance (icons, typography, color)
- **pptify-tooling** — Import-only extraction APIs for reference-deck analysis and PPTX package inspection
- **pptify-quality-gates** — Specification validation and quality checklist

## Workflow

Before starting any step, confirm the supporting references are readable with the `read` tool: the design profile catalog (`references/design-profiles.md`), the spec→PPTX build contract in pptify-slide-spec, and the audit checklist in pptify-quality-gates. If any is unreadable, halt and notify the user with the file path rather than proceeding from assumed content.

### 1. Understand the Goal

1. Collect key information: audience, business decision, narrative framework, language, slide count target, reference deck, brand constraints, deadline.
2. Group all required inputs into a single upfront message of no more than 5 questions. When all inputs are unknown, ask about the five highest-priority ones — audience, business decision, slide count, brand constraints, and deadline — and assume defaults for the rest (language = English, narrative framework = Situation-Complication-Resolution, reference deck = none) unless the user volunteers them. Pre-fill reasonable defaults inline (e.g., "Slide count: 10 — adjust?") so the user can confirm rather than fill blanks.
3. Document the business framework choice in `summary.business_framework`.
4. If only a topic is given, create an executive narrative and mark assumptions clearly. If the topic alone is insufficient to determine audience, business decision, or at least two concrete content points, ask one targeted clarifying question before generating the narrative. Do not generate placeholder content (e.g., "[Insert data here]") — surface the gap explicitly instead.

### 2. Design Strategy

1. Select a design direction (modern, minimal, corporate, creative, formal, etc.)
2. If the user has a reference PPTX, use its style as guidance. If the reference PPTX style conflicts with stated brand constraints (colors, fonts, logos), brand constraints take precedence. Document the conflict and resolution in `summary.design_context.conflict_notes`. If reference PPTX analysis fails, the path cannot be read (file not found, permission error, or unsupported format), or it returns insufficient style data, notify the user with the exact error, fall back to the design profile catalog in `references/design-profiles.md`, and document the fallback in `summary.design_context.source: "catalog-fallback"` with the error reason.
3. If no brand constraints are provided and no reference PPTX is available, load the design profile catalog at `references/design-profiles.md`, select a profile based on the stated design direction, and document the selection in `summary.design_context.source: "catalog-default"`.
4. Document the chosen design system in `summary.design_context` (palette, typography, spacing, signature elements)
5. If the deck language is not English, verify the selected design system fonts support the required character set (e.g., CJK glyphs). If they do not, flag the gap and recommend a substitute font that supports the language before authoring the spec.
6. Every visible content slide must include at least one non-text decorative object (e.g., color band, card background, accent shape) whose fill or stroke color is drawn from the palette defined in `summary.design_context`.

### 3. Plan Slide Structure

1. Map business framework to deck outline (title, setup, evidence, decision, appendix)
2. If the user's target slide count cannot accommodate the full business framework outline, surface the conflict explicitly: list which sections would be merged or dropped, and ask the user to confirm the trade-off before proceeding.
3. One clear message per slide
4. Choose slide form: title, agenda, comparison, process, metrics, roadmap, risk, architecture, evidence, decision
5. 3–5 content groups per slide — groups whose `role` is NOT `background` or `decoration` (background and decoration groups are excluded from this count) — each represented as a distinct `group` entry in `layout_tree.groups` with a descriptive `role`. Exception: slides of form `title`, `agenda`, or `decision` may have 1–2 content groups. Slides of form `comparison` or `evidence` may have up to 6 content groups only when each group maps to a distinct data entity (e.g., a separate product, vendor, or risk item) that cannot be merged without losing meaning; state the reason in the slide's `notes` field.
6. Preserve user terminology, metrics, dates, tone

### 4. Spec Authoring

1. Return JSON with `slides` array and optional `summary`
2. Each slide: `id`, `title`, `layout_tree`
3. Each layout_tree: `slide_size`, `root_group_id`, `groups`, `objects`
4. Each group: `id`, `role`, `layout_mode`, `object_ids`, `group_ids`, `bbox`
5. Each object: `id`, `kind`, `role`, `classification`, `content`, `style`, `bbox`, `z_index`
6. Explicit coordinates and styling for all objects (no shortcuts)
7. Content text ≥9pt (body/evidence 10–12pt, labels/captions 9–10pt); only decorative `layout_design` text may go below 9pt. Decorative `layout_design` text is any text object whose `classification` equals `layout_design` and whose `role` equals `decoration`, carrying no user-readable content that conveys slide meaning.
8. All shapes/lines: explicit fill, stroke, endpoints
9. Keep every object inside slide bounds with a minimum content-safe margin of 0.25 in (18 pt) on all four edges, unless the object is a full-bleed background element with `role: background`; follow the spec→PPTX build contract in pptify-slide-spec
10. Translate design direction into objects, colors, spacing, and typography

**Constraint precedence:** When per-object constraints conflict (Steps 4–5), resolve in this order: (1) slide bounds + margin, (2) minimum font size, (3) palette color, (4) decorative-object presence. Document any trade-off in the object's `notes` field.

### 5. Quality Validation

1. Verify `summary.design_context` exists (design system name, palette, typography documented)
2. Verify every visible content slide has ≥1 non-text decorative object using a `summary.design_context` palette color
3. Check typography consistency and spacing rhythm
4. No `content` text below 9pt; body/evidence text must be 10–12pt and labels/captions 9–10pt; only decorative `layout_design` meta may go lower
5. Verify zero content collisions, zero text/table overflow, and no object outside slide bounds (run the full audit-checklist in pptify-quality-gates)
6. Reject specs with plain white backgrounds, Calibri-only text, unstyled bullets, or missing design context. On rejection, do not return the failing spec. Instead:
1. List each failed check by slide ID.
2. Classify each failure as **Type A** (the fix is deterministic from the documented design system — e.g., swap Calibri for the design system font) or **Type B** (the fix needs a value absent from the spec or design system — e.g., a font or brand color that has not been defined).
3. Apply all Type A fixes and re-validate silently. Never invent a value that is absent from the spec or design system — surface it as Type B instead.
4. List all Type B fixes together and ask the user in a single message before proceeding.
5. If re-validation after Type A correction still fails, do not attempt a third autonomous pass; list the remaining failures by slide ID and ask the user for guidance before proceeding.

### 6. Response Contract

1. When all required inputs are available and you are authoring a spec, output strict JSON (no markdown fences unless user asks for prose)
2. If required inputs are missing, ask questions in plain prose before authoring JSON; do not wrap clarifying questions in JSON
3. When a turn needs both a blocking question and spec output (e.g., after a Type B correction), ask the question in plain prose and withhold the JSON spec until the user resolves it; never embed questions inside JSON or bury spec output inside prose
4. Mark assumptions clearly in summary
5. Report spec path and validation status

## Boundaries

This plugin provides guidance, design context, and import-only analysis APIs — not hosted infrastructure. Keep the following external and user-managed:

- Environment bootstrap. The plugin works standalone with no install step and no bundled setup scripts.
- LLM access for source summarization. context-prep guides *how* to summarize; you bring the API (OpenAI, Azure OpenAI, etc.).
- Image/infographic generation. visual-assets provides runnable inline snippets, but the provider, model, and credentials are user-managed (`.env` / `az login`).
- The python-pptx build step. The agent authors the JSON spec **and** the build script; no general renderer is bundled. See the build contract in pptify-slide-spec.

Design context is **not** out of scope: the bundled catalog in pptify-context-prep (`references/design-profiles.md`) is always available and should be loaded for every deck.
1 change: 1 addition & 0 deletions docs/README.agents.md
Original file line number Diff line number Diff line change
Expand Up @@ -165,6 +165,7 @@ See [CONTRIBUTING.md](../CONTRIBUTING.md#adding-agents) for guidelines on how to
| [Power BI Visualization Expert Mode](../agents/power-bi-visualization-expert.agent.md)<br />[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fpower-bi-visualization-expert.agent.md)<br />[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fpower-bi-visualization-expert.agent.md) | Expert Power BI report design and visualization guidance using Microsoft best practices for creating effective, performant, and user-friendly reports and dashboards. | |
| [Power Platform Expert](../agents/power-platform-expert.agent.md)<br />[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fpower-platform-expert.agent.md)<br />[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fpower-platform-expert.agent.md) | Power Platform expert providing guidance on Code Apps, canvas apps, Dataverse, connectors, and Power Platform best practices | |
| [Power Platform MCP Integration Expert](../agents/power-platform-mcp-integration-expert.agent.md)<br />[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fpower-platform-mcp-integration-expert.agent.md)<br />[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fpower-platform-mcp-integration-expert.agent.md) | Expert in Power Platform custom connector development with MCP integration for Copilot Studio - comprehensive knowledge of schemas, protocols, and integration patterns | |
| [Pptify Slides Builder](../agents/pptify-slides-builder.agent.md)<br />[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fpptify-slides-builder.agent.md)<br />[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fpptify-slides-builder.agent.md) | Help create editable PowerPoint PPTX deck specifications focusing on structure, content strategy, and slide design. | |
| [Principal software engineer](../agents/principal-software-engineer.agent.md)<br />[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fprincipal-software-engineer.agent.md)<br />[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fprincipal-software-engineer.agent.md) | Provide principal-level software engineering guidance with focus on engineering excellence, technical leadership, and pragmatic implementation. | |
| [Project Architecture Planner](../agents/project-architecture-planner.agent.md)<br />[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fproject-architecture-planner.agent.md)<br />[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fproject-architecture-planner.agent.md) | Holistic software architecture planner that evaluates tech stacks, designs scalability roadmaps, performs cloud-agnostic cost analysis, reviews existing codebases, and delivers interactive Mermaid diagrams with HTML preview and draw.io export | |
| [Project Documenter](../agents/project-documenter.agent.md)<br />[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fproject-documenter.agent.md)<br />[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://aka.ms/awesome-copilot/install/agent?url=vscode-insiders%3Achat-agent%2Finstall%3Furl%3Dhttps%3A%2F%2Fraw.githubusercontent.com%2Fgithub%2Fawesome-copilot%2Fmain%2Fagents%2Fproject-documenter.agent.md) | Generates professional MS Word project documentation with draw.io architecture diagrams and embedded PNG images. Automatically discovers any project's technology stack, architecture, and code structure. Produces Markdown, draw.io diagrams, PNG exports, and .docx output. | |
Expand Down
1 change: 1 addition & 0 deletions docs/README.plugins.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ See [CONTRIBUTING.md](../CONTRIBUTING.md#adding-plugins) for guidelines on how t
| [power-bi-development](../plugins/power-bi-development/README.md) | Comprehensive Power BI development resources including data modeling, DAX optimization, performance tuning, visualization design, security best practices, and DevOps/ALM guidance for building enterprise-grade Power BI solutions. | 8 items | power-bi, dax, data-modeling, performance, visualization, security, devops, business-intelligence |
| [power-platform-architect](../plugins/power-platform-architect/README.md) | Solution Architect for the Microsoft Power Platform, turning business requirements into functioning Power Platform solution architectures. | 1 items | power-platform, power-platform-architect, power-apps, dataverse, power-automate, power-pages, power-bi |
| [power-platform-mcp-connector-development](../plugins/power-platform-mcp-connector-development/README.md) | Complete toolkit for developing Power Platform custom connectors with Model Context Protocol integration for Microsoft Copilot Studio | 3 items | power-platform, mcp, copilot-studio, custom-connector, json-rpc |
| [pptify-slides-creation](../plugins/pptify-slides-creation/README.md) | Generate production-ready, editable PowerPoint (PPTX) decks from Copilot chat: narrative strategy, design-context selection, coordinate-explicit slide specs, visual asset planning, import-only extraction tooling, and audit-driven quality gates. | 6 items | powerpoint, pptx, presentations, slide-decks, deck-generation, slide-design, document-generation |
| [project-documenter](../plugins/project-documenter/README.md) | Generate professional project documentation with draw.io architecture diagrams and Word (.docx) output with embedded images. Automatically discovers any project's technology stack and produces Markdown, diagrams, PNG exports, and a formatted Word document. | 3 items | documentation, architecture-diagrams, drawio, word-document, docx, png-images, c4-model, project-summary, auto-discovery |
| [project-planning](../plugins/project-planning/README.md) | Tools and guidance for software project planning, feature breakdown, epic management, implementation planning, and task organization for development teams. | 15 items | planning, project-management, epic, feature, implementation, task, architecture, technical-spike |
| [python-mcp-development](../plugins/python-mcp-development/README.md) | Complete toolkit for building Model Context Protocol (MCP) servers in Python using the official SDK with FastMCP. Includes instructions for best practices, a prompt for generating servers, and an expert chat mode for guidance. | 2 items | python, mcp, model-context-protocol, fastmcp, server-development |
Expand Down
Loading
Loading