← Back to Skills Marketplace
popaiofficial

PopAI Presentation Slides

by PopAi · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
24
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install popai-presentation-slides
Description
Create presentations (PPT) using PopAI API. Use when asked to create slides, presentations, decks, or PPT content. Has built-in research capabilities — just...
README (SKILL.md)

PopAI PPT Skill

Create presentations programmatically via PopAI's API. The API has powerful built-in research and information gathering capabilities — it will automatically search, collect, and organize relevant content. Optionally upload files as reference material or templates. If a .pptx template is provided, the output will fully preserve the template's layout, styles, and design — 100% faithful reproduction based on your template. After initial generation, you can send follow-up modification instructions using the same channel ID.

Setup

  1. Ask user to sign up and obtain their Access Token at: https://www.popai.pro/popai-skill
  2. Once user provides the token, set it in environment: export POPAI_ACCESS_TOKEN=\x3Ctoken>

Tips: You can save the key in TOOLS.md for future reference.

Scripts

  • generate_ppt.py - Generate PPT via PopAI API (upload files → create channel → SSE stream → get pptx); also supports multi-round modification via --channel-id

Usage Examples

# Generate PPT from topic only
python3 generate_ppt.py --query "AI Development Trends Report"

# With reference files (max 5)
python3 generate_ppt.py --query "Tesla Earnings PPT" --file data.pdf chart.png

# With a PPT template file (applied as layout template)
python3 generate_ppt.py --query "Tesla Annual Report" --tpl template.pptx

# With both template and reference files
python3 generate_ppt.py --query "Tesla Annual Report" --tpl template.pptx --file data.pdf chart.png

# Multi-round modification: modify an existing PPT (template cannot be changed)
python3 generate_ppt.py --channel-id "CHANNEL_ID" --query "Add a competitive analysis slide and make the color scheme blue"

# With URLs as reference material (included in query)
python3 generate_ppt.py --query "Create a PPT summarizing this article: https://example.com/report.html"

# Multi-round modification with additional reference files
python3 generate_ppt.py --channel-id "CHANNEL_ID" --query "Update the financial data with this new report" --file new_data.pdf

Agent Steps

Initial Generation

  1. Get PPT topic from user
  2. If user provides reference material:
    • Local files: pass as --file (max 5) and/or --tpl (PPT template for layout)
    • URLs: include directly in the --query text — the API will fetch and process them automatically
  3. Run script (timeout: 1200000):
    python3 generate_ppt.py --query "TOPIC" [--file FILE1 FILE2 ...] [--tpl TEMPLATE.pptx]
    
    Tell user: "Generating your PPT, estimated 5 minutes..."
  4. While the script is running, monitor stdout JSON lines and report progress to user in real time (e.g. task status updates, search actions, tool results)
  5. When generation completes, present final results to user:
    • Show summary text (from NODE_END event) as the generation summary
    • Show pptx_url as the download link: "Download PPT: \x3Cpptx_url>"
    • Show web_url as the site link: "View/Edit online: \x3Cweb_url>"
  6. If user requests the pptx file directly, download it from pptx_url and deliver the file to user
  7. Save the channel_id from web_url (last path segment of https://www.popai.pro/agentic-pptx/\x3CchannelId>) for potential follow-up modifications

Multi-Round Modification

Use when the user wants to revise or improve an already-generated PPT (e.g. "add a slide", "change the title", "use a darker theme").

Rules:

  • Required: --channel-id (from previous generation) + --query (modification instruction)
  • Optional: --file to supply new reference files for the revision
  • Not supported: --tpl is ignored in modify mode — the original template cannot be changed
  1. Confirm the channel_id from the previous generation (stored from web_url)
  2. Get modification instruction from user
  3. If user provides additional reference files, pass as --file
  4. Run script (timeout: 1200000):
    python3 generate_ppt.py --channel-id "CHANNEL_ID" --query "MODIFICATION_INSTRUCTION" [--file FILE1 ...]
    
    Tell user: "Applying your modifications, estimated 3-5 minutes..."
  5. Parse and present results the same way as initial generation (new pptx_url and web_url)

Output

Event types (stdout, one JSON per line):

{"type": "task", "id": "1", "content": "Search for Tesla latest earnings data", "status": "progressing"}
{"type": "search", "action": "Web Searching", "results": [{"title": "...", "url": "...", "snippet": "...", "date": "..."}]}
{"type": "tool_result", "event": "TOOL_CALLS-xxx", "action": "...", "result": "..."}
{"type": "summary", "text": "Tesla earnings PPT has been created..."}
{"type": "stream_end"}

Final result (is_end: true):

{
  "type": "pptx_ready",
  "is_end": true,
  "pptx_url": "https://popai-file-boe.s3-accelerate.amazonaws.com/.../xxx.pptx",
  "file_name": "xxx.pptx",
  "preview_images": ["https://...0.jpeg"],
  "preview_count": xx,
  "web_url": "https://www.popai.pro/agentic-pptx/\x3CchannelId>"
}
  • pptx_url: Download link for the .pptx file
  • web_url: PopAI site link for online viewing and editing
  • preview_images: Page-by-page screenshots of the generated PPT (one image per slide)
  • preview_count: Total number of preview images (i.e. number of slides)
  • summary: Final summary text from the NODE_END event, shown to the user as a generation recap

Support

For any issues, contact [email protected]

Technical Notes

  • Streaming: SSE stream; TOOL_CALLS-pptx event contains final .pptx download URL; last:true marks stream end
  • File Upload: Presigned POST to S3 via getPresignedPost, supports any file type
  • Timeout: Generation typically takes ~5 minutes;
  • Channel ID: Extractable from web_url — last path segment of https://www.popai.pro/agentic-pptx/\x3CchannelId>
  • Multi-round: Calls send_generate directly with existing channel_id; tpl_info is never passed (template is fixed after channel creation)
Usage Guidance
Use this skill only if you are comfortable sending slide topics, URLs, templates, and reference files to PopAI. Provide the PopAI token through a secure environment variable or secret manager, not TOOLS.md, and rotate the token if it was ever stored in plaintext.
Capability Analysis
Type: OpenClaw Skill Name: popai-presentation-slides Version: 1.0.0 The skill is a legitimate integration for the PopAI service to generate PowerPoint presentations. The Python script `generate_ppt.py` handles file uploads to S3 and processes streaming API responses from `api.popai.pro` as expected for this type of service. The instructions in `SKILL.md` correctly guide the agent to manage user tokens and execute the generation process without any evidence of malicious intent, unauthorized data exfiltration, or hidden backdoors.
Capability Tags
requires-oauth-tokenrequires-sensitive-credentials
Capability Assessment
Purpose & Capability
Creating PPTs through PopAI matches the stated purpose, including optional web research, URL processing, and reference/template file upload; users should understand those materials are processed by an external provider.
Instruction Scope
The documented commands are user-directed deck generation or modification steps, and the artifacts do not show unrelated autonomous actions or destructive workflows.
Install Mechanism
No installer or remote setup script is shown; the skill runs an included Python script with python3, and the static scan reported no findings.
Credentials
A PopAI access token is expected for this API integration, but the setup tip recommends saving the token in TOOLS.md, which is persistent plaintext credential storage.
Persistence & Privilege
The skill purposefully retains a channel_id for follow-up edits, and more importantly suggests persistent token storage; the channel_id is purpose-aligned, but the token persistence is not safely bounded.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install popai-presentation-slides
  3. After installation, invoke the skill by name or use /popai-presentation-slides
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
popai-presentation-slides 1.0.0 - Initial release of the PopAI PowerPoint skill. - Generate presentations (PPT) using the PopAI API with built-in research and information gathering capabilities. - Accepts topic prompts, reference files (pptx/pdf/docx/images), PPT templates, and URLs for content sources. - Supports multi-round PPT modification via channel ID; template remains fixed after creation. - Outputs include downloadable PPTX link, web editing link, and slide preview images. - Real-time progress and status updates are provided during generation and revisions.
Metadata
Slug popai-presentation-slides
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is PopAI Presentation Slides?

Create presentations (PPT) using PopAI API. Use when asked to create slides, presentations, decks, or PPT content. Has built-in research capabilities — just... It is an AI Agent Skill for Claude Code / OpenClaw, with 24 downloads so far.

How do I install PopAI Presentation Slides?

Run "/install popai-presentation-slides" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is PopAI Presentation Slides free?

Yes, PopAI Presentation Slides is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does PopAI Presentation Slides support?

PopAI Presentation Slides is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created PopAI Presentation Slides?

It is built and maintained by PopAi (@popaiofficial); the current version is v1.0.0.

💬 Comments