#190 by GitHub stars

ningzimu/codex-ppt-skill

Generate visually unified image-based PPT/PPTX decks from articles, reports, papers, notes, or outlines.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

skills/codex-ppt/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

941dcafe2f23 → 941dcafe2f23

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 941dcafe2f23

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 941dcafe2f23ea4ae61de99e9b22fb0ef3d9e06c

git clone --filter=blob:none --no-checkout https://github.com/ningzimu/codex-ppt-skill.git .hotskills/ningzimu-codex-ppt-skill && git -C .hotskills/ningzimu-codex-ppt-skill checkout --detach 941dcafe2f23ea4ae61de99e9b22fb0ef3d9e06c # Copy each selected skill directory from .hotskills/ningzimu-codex-ppt-skill into .agents/skills/<skill-name>/
7.7kGitHub stars
210stars in 7 days
1skill in this repository
4commits in 30 days

Heat

7.7
  • Star growth, last 7 daysAhead of 94% of tracked repositories
  • Star growth, last 24 hoursAhead of 92% of tracked repositories
  • Rank movement, last 7 daysAhead of 85% of tracked repositories
  • Commits, last 30 daysAhead of 67% of tracked repositories
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekAhead of 0% of tracked repositories

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Aug 2, 2026Nov 6, 20267,684

Individual skills in this repository

How it works

codex-ppt

When your agent uses it

Generate visually unified image-based PPT/PPTX decks from articles, reports, papers, notes, or outlines.

What it loads into context

Frontmatter

180 tokens

Always available to the agent

SKILL.md

2,289 tokens

When the skill is activated

Reference documents

30,505 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Overview
  2. Hard Constraints
  3. Visible Progress
  4. Default Workflow
  5. Subagent Dispatch
  6. Acceptance Criteria
  7. Reference Map
  8. Documentation and Updates

Scripts executed separately

  • scripts/assemble_ppt.py
  • scripts/codex_ppt_runtime.py
  • scripts/image_gen.py
  • scripts/image_providers/__init__.py
  • scripts/image_providers/atlascloud.py
  • scripts/image_providers/base.py
  • scripts/image_providers/factory.py
  • scripts/image_providers/openai_compatible.py
  • scripts/prepare_slide_prompts.py
  • scripts/record_slide_blocker.py
  • scripts/record_slide_dispatch.py
  • scripts/record_slide_result.py
  • scripts/remove_chroma_key.py
  • scripts/slide_job_status.py
  • scripts/slide_run_state.py

Files

  • .clawhubignoreasset162 bytes
  • SKILL.mdcore10,391 bytes
  • SKILL.mdcore10,391 bytes
  • SKILL.mdcore10,391 bytes
  • SKILL.mdcore10,391 bytes
  • SKILL.mdcore10,391 bytes
  • SKILL.mdcore10,391 bytes
  • SKILL.mdcore10,391 bytes
  • SKILL.mdcore10,391 bytes
  • docs/backend-selection.mddoc3,588 bytes
  • docs/cli-api-fallback.mddoc5,070 bytes
  • docs/image-model-configuration.mddoc3,542 bytes
  • docs/outline-style-and-sample.mddoc9,533 bytes
  • docs/project-assembly-and-reporting.mddoc8,467 bytes
  • docs/slide-generation-and-subagents.mddoc14,823 bytes
  • docs/style-library.mddoc6,518 bytes
  • docs/user-supplied-assets.mddoc3,120 bytes
  • docs/workflow-gates-and-progress.mddoc2,581 bytes
  • prompts/slide-worker.mddoc2,649 bytes
  • references/党政红风格.mddoc8,673 bytes
  • references/创意杂志风.mddoc3,396 bytes
  • references/复古扁平插画风.mddoc3,339 bytes
  • references/手绘技术解释风.mddoc4,767 bytes
  • references/手绘白板风.mddoc3,337 bytes
  • references/教学课件风.mddoc9,949 bytes
  • references/数据仪表盘风.mddoc3,527 bytes
  • references/清爽专业风.mddoc4,512 bytes
  • references/温暖手工风.mddoc3,332 bytes
  • references/电子墨水杂志风.mddoc4,714 bytes
  • references/科研答辩风.mddoc9,334 bytes
  • references/麦肯锡风格.mddoc15,195 bytes
  • requirements.txtdoc65 bytes
  • scripts/assemble_ppt.pyruns14,837 bytes
  • scripts/codex_ppt_runtime.pyruns8,668 bytes
  • scripts/image_gen.pyruns34,896 bytes
  • scripts/image_providers/__init__.pyruns188 bytes
  • scripts/image_providers/atlascloud.pyruns8,310 bytes
  • scripts/image_providers/base.pyruns887 bytes
  • scripts/image_providers/factory.pyruns734 bytes
  • scripts/image_providers/openai_compatible.pyruns7,448 bytes
  • scripts/prepare_slide_prompts.pyruns20,270 bytes
  • scripts/record_slide_blocker.pyruns1,422 bytes
  • scripts/record_slide_dispatch.pyruns2,309 bytes
  • scripts/record_slide_result.pyruns6,779 bytes
  • scripts/remove_chroma_key.pyruns14,123 bytes
  • scripts/slide_job_status.pyruns2,364 bytes
  • scripts/slide_run_state.pyruns6,536 bytes
Read SKILL.md

# Codex PPT

## Overview

This skill creates image-based PowerPoint decks from source material. Each slide is a complete 16:9 generated image. Final images are assembled into `.pptx` with `scripts/assemble_ppt.py`.

Use this when the user wants a visually unified presentation and accepts full-slide image pages. Do not use it when every textbox, chart, or shape must remain separately editable.

Prefer the built-in image generation/editing tool. Use `scripts/image_gen.py` only when the built-in backend is unavailable, lacks a required capability, or the user explicitly asks for API/CLI mode.

## Hard Constraints

- Read the relevant `Reference Map` files before each phase. This file is the orchestration contract; detailed rules live in `docs/` and worker prompts in `prompts/`.
- Respect approval gates. Do not create final `deck_spec.json`, `speech.md`, prompt jobs, slide images, or `.pptx` before the approvals in `docs/workflow-gates-and-progress.md`.
View the complete source on GitHub

Skills included

  • codex-ppt

Repository facts

License
MIT
Created
Apr 26, 2026
Last pushed
Oct 13, 2026
Forks
362
Open issues
2
Project activity
Active

Rank over the last 12 weeks

Now #190 · best #189 · up 11 in 30 days

  1. #195 on Oct 25
  2. #192 from Oct 28 to Oct 31
  3. #191 on Nov 1
  4. #190 from Nov 2 to Nov 3
  5. #189 on Nov 4
  6. #190 since Nov 5
66 earlier periods
  1. #209 on Aug 2
  2. #207 from Aug 7 to Aug 8
  3. #206 on Aug 9
  4. #212 on Aug 10
  5. #211 on Aug 11
  6. #209 on Aug 12
  7. #212 on Aug 13
  8. #210 on Aug 14
  9. #209 on Aug 15
  10. #208 from Aug 16 to Aug 17
  11. #212 on Aug 18
  12. #210 on Aug 19
  13. #208 on Aug 20
  14. #209 on Aug 21
  15. #206 on Aug 22
  16. #211 on Aug 23
  17. #209 from Aug 24 to Aug 26
  18. #210 on Aug 27
  19. #206 on Aug 28
  20. #207 on Aug 29
  21. #203 on Aug 30
  22. #202 on Aug 31
  23. #207 on Sep 1
  24. #200 on Sep 2
  25. #206 on Sep 3
  26. #202 on Sep 4
  27. #205 on Sep 5
  28. #203 on Sep 6
  29. #206 on Sep 7
  30. #207 from Sep 8 to Sep 9
  31. #206 on Sep 10
  32. #205 from Sep 11 to Sep 12
  33. #206 from Sep 13 to Sep 14
  34. #204 on Sep 15
  35. #202 on Sep 16
  36. #205 from Sep 17 to Sep 18
  37. #200 on Sep 19
  38. #204 from Sep 20 to Sep 23
  39. #203 on Sep 24
  40. #202 on Sep 25
  41. #203 from Sep 26 to Sep 27
  42. #205 from Sep 28 to Sep 29
  43. #203 on Sep 30
  44. #205 on Oct 1
  45. #207 on Oct 2
  46. #202 on Oct 3
  47. #200 on Oct 4
  48. #202 on Oct 5
  49. #200 on Oct 6
  50. #201 on Oct 7
  51. #197 on Oct 8
  52. #200 on Oct 9
  53. #199 on Oct 10
  54. #198 on Oct 11
  55. #199 from Oct 12 to Oct 13
  56. #197 on Oct 14
  57. #195 on Oct 15
  58. #193 on Oct 16
  59. #195 on Oct 17
  60. #196 on Oct 18
  61. #194 on Oct 19
  62. #192 on Oct 20
  63. #194 on Oct 21
  64. #192 on Oct 22
  65. #191 on Oct 23
  66. #193 on Oct 24

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 2, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 7 notes
  • skills/codex-ppt/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/codex-ppt/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/codex-ppt/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/codex-ppt/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/codex-ppt/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/codex-ppt/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/codex-ppt/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 91 signals by file

skills/codex-ppt/.clawhubignore

  • Access to secretsline 9
    [Credential-related source omitted]

skills/codex-ppt/SKILL.md

  • Access to secretsline 9
    [Credential-related source omitted]
  • Access to secretsline 11
    [Credential-related source omitted]
  • Network accessline 21
    required: false         description: Runtime home override.     homepage: https://github.com/ningzimu/codex-ppt-skill
  • Network accessline 22
    description: Runtime home override.     homepage: https://github.com/ningzimu/codex-ppt-skill ---
  • Network accessline 23
    homepage: https://github.com/ningzimu/codex-ppt-skill
  • Network accessline 158
    For source, docs, install, config, and examples, see [ningzimu/codex-ppt-skill](https://github.com/ningzimu/codex-ppt-skill).

skills/codex-ppt/docs/backend-selection.md

  • Access to secretsline 19
    [Credential-related source omitted]
  • Access to secretsline 34
    [Credential-related source omitted]

skills/codex-ppt/docs/cli-api-fallback.md

  • Access to secretsline 17
    [Credential-related source omitted]

skills/codex-ppt/docs/image-model-configuration.md

  • Access to secretsline 9
    [Credential-related source omitted]
  • Access to secretsline 26
    [Credential-related source omitted]
  • Network accessline 45
    python3 {skill_root}/scripts/codex_ppt_runtime.py config \   --api-key "your-provider-api-key" \   --base-url "https://xxxx.example.com/v1" \
  • Network accessline 46
    --api-key "your-provider-api-key" \   --base-url "https://xxxx.example.com/v1" \   --model gpt-image-2.5-flare
  • Network accessline 47
    --base-url "https://xxxx.example.com/v1" \
  • Network accessline 54
    [Credential-related source omitted]
  • Access to secretsline 54
    [Credential-related source omitted]
  • Network accessline 55
    OPENAI_BASE_URL=https://xxxx.example.com/v1
  • Network accessline 68
    python3 {skill_root}/scripts/codex_ppt_runtime.py config \   --api-key "your-atlascloud-api-key" \   --base-url "https://api.atlascloud.ai/api/v1/model" \
  • Network accessline 69
    --api-key "your-atlascloud-api-key" \   --base-url "https://api.atlascloud.ai/api/v1/model" \   --model openai/gpt-image-2
  • Network accessline 70
    --base-url "https://api.atlascloud.ai/api/v1/model" \
  • Access to secretsline 79
    [Credential-related source omitted]

skills/codex-ppt/docs/outline-style-and-sample.md

  • Instruction override signalline 20
    Show the outline to the user for confirmation and wait for approval before moving to visual style selection or image generation, unless the user explicitly asked you to skip confirmation. If any slide lists required source images, explicitl

skills/codex-ppt/docs/project-assembly-and-reporting.md

  • Access to secretsline 125
    [Credential-related source omitted]

skills/codex-ppt/scripts/assemble_ppt.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 18
    [Credential-related source omitted]

skills/codex-ppt/scripts/codex_ppt_runtime.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 27
    [Credential-related source omitted]
  • Access to secretsline 45
    [Credential-related source omitted]
  • Access to secretsline 111
    [Credential-related source omitted]
  • Access to secretsline 149
    [Credential-related source omitted]
  • Access to secretsline 150
    [Credential-related source omitted]
  • Access to secretsline 164
    [Credential-related source omitted]
  • Network accessline 190
    [Credential-related source omitted]
  • Access to secretsline 190
    [Credential-related source omitted]
  • Network accessline 191
    endpoint = base_url.rstrip("/") + "/models"     req = urllib.request.Request(         endpoint,
  • Network accessline 192
    req = urllib.request.Request(
  • Access to secretsline 194
    [Credential-related source omitted]
  • Network accessline 196
    )     try:         with urllib.request.urlopen(req, timeout=timeout) as resp:
  • Network accessline 197
    try:         with urllib.request.urlopen(req, timeout=timeout) as resp:             print(f"models endpoint: HTTP {resp.status}")
  • Network accessline 198
    with urllib.request.urlopen(req, timeout=timeout) as resp:
  • Network accessline 227
    [Credential-related source omitted]
  • Network accessline 228
    [Credential-related source omitted]
  • Access to secretsline 228
    [Credential-related source omitted]
  • Network accessline 229
    base_url = values.get("OPENAI_BASE_URL", "https://api.openai.com/v1")
  • Access to secretsline 232
    [Credential-related source omitted]
  • Access to secretsline 243
    [Credential-related source omitted]
  • Access to secretsline 244
    [Credential-related source omitted]
  • Access to secretsline 249
    [Credential-related source omitted]
  • Access to secretsline 262
    [Credential-related source omitted]

skills/codex-ppt/scripts/image_gen.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 8
    [Credential-related source omitted]
  • Access to secretsline 52
    [Credential-related source omitted]
  • Access to secretsline 69
    [Credential-related source omitted]
  • Access to secretsline 85
    [Credential-related source omitted]
  • Access to secretsline 151
    [Credential-related source omitted]
  • Access to secretsline 152
    [Credential-related source omitted]
  • Access to secretsline 155
    [Credential-related source omitted]
  • Access to secretsline 171
    [Credential-related source omitted]
  • Possible obfuscationline 438
    out_path.write_bytes(base64.b64decode(image_b64))
  • Possible obfuscationline 499
    raw = base64.b64decode(image_b64)
  • Access to secretsline 664
    [Credential-related source omitted]
  • Access to secretsline 786
    [Credential-related source omitted]
  • Access to secretsline 861
    [Credential-related source omitted]

skills/codex-ppt/scripts/image_providers/__init__.py

  • Executable scriptline 1
    Executable file

skills/codex-ppt/scripts/image_providers/atlascloud.py

  • Executable scriptline 1
    Executable file
  • Network accessline 17
    UrlOpen = Callable[..., Any] USER_AGENT = "codex-ppt-skill/0.1 (+https://github.com/ningzimu/codex-ppt-skill)"
  • Network accessline 18
    USER_AGENT = "codex-ppt-skill/0.1 (+https://github.com/ningzimu/codex-ppt-skill)"
  • Access to secretsline 28
    [Credential-related source omitted]
  • Access to secretsline 35
    [Credential-related source omitted]
  • Access to secretsline 149
    [Credential-related source omitted]
  • Network accessline 179
    def _model_base_url(base_url: Optional[str]) -> str:     if not base_url:         return "https://api.atlascloud.ai/api/v1/model"
  • Network accessline 180
    if not base_url:         return "https://api.atlascloud.ai/api/v1/model"     parsed = urlparse(base_url)
  • Network accessline 181
    return "https://api.atlascloud.ai/api/v1/model"

skills/codex-ppt/scripts/image_providers/base.py

  • Executable scriptline 1
    Executable file

skills/codex-ppt/scripts/image_providers/factory.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 11
    [Credential-related source omitted]
  • Access to secretsline 13
    [Credential-related source omitted]
  • Access to secretsline 14
    [Credential-related source omitted]

skills/codex-ppt/scripts/image_providers/openai_compatible.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 109
    [Credential-related source omitted]
  • Access to secretsline 114
    [Credential-related source omitted]
  • Access to secretsline 162
    [Credential-related source omitted]
  • Access to secretsline 183
    [Credential-related source omitted]

skills/codex-ppt/scripts/prepare_slide_prompts.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/codex-ppt/scripts/record_slide_blocker.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/codex-ppt/scripts/record_slide_dispatch.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/codex-ppt/scripts/record_slide_result.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/codex-ppt/scripts/remove_chroma_key.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/codex-ppt/scripts/slide_job_status.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/codex-ppt/scripts/slide_run_state.py

  • Executable scriptline 1
    #!/usr/bin/env python3

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Declared and executed: 2 facts
Signal confidence: 90 facts

and 40 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeCompatibleStandard SKILL.md skills/codex-ppt/SKILL.md.claude/skills/<skill-name>/
CodexNativeManifest AGENTS.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md skills/codex-ppt/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md skills/codex-ppt/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md skills/codex-ppt/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md skills/codex-ppt/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.

Add this badge to your README

It updates every night and links to this page.

ningzimu/codex-ppt-skill: #190 on hotskills, 7.7k stars

[![ningzimu/codex-ppt-skill on hotskills](https://hotskills.dev/badge/ningzimu-codex-ppt-skill.svg)](https://hotskills.dev/skill/ningzimu-codex-ppt-skill/)