with one click
gamma-presentations
>-
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
>-
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Create and maintain ASCII visual dashboards for project tracking with parallel lane progress bars
Store and manage voice samples for TTS cloning — portable, version-controlled audio references
Clear documentation through visual excellence
AI music generation via Replicate — 5 models for background tracks, lyrics, and sound design
Practitioner methodology for longitudinal case study research, evidence-based documentation, and publication-ready academic writing in AI-assisted development.
First impressions matter. Set projects up for success.
| name | gamma-presentations |
| description | |
| tier | standard Generate professional presentations using the Gamma API with expert storytelling consulting based on Duarte methodology. |
| applyTo | **/*presentation*,**/*slides*,**/*deck*,**/*gamma*,**/*pitch* |
Generate professional presentations with expert storytelling consulting based on Duarte methodology.
⚠️ Staleness Watch (Last validated: Mar 2026 — API v1.0 GA): Check developers.gamma.app for endpoint changes and pricing updates.
When using cardSplit: "inputTextBreaks", each \n---\n marks a card break:
# Title Slide
Content
---
# Second Slide
More content
cardSplit: "inputTextBreaks" — Gamma uses --- breaks (ignores numCards)cardSplit: "auto" (default) — Gamma uses numCards (ignores --- breaks)GAMMA_API_KEY| Plan | Price | Max Cards | Credits/mo |
|---|---|---|---|
| Free | $0 | 10 | 400 |
| Plus | $9/mo | 20 | 1,000 |
| Pro | $18/mo | 60 | 4,000 |
| Ultra | $90/mo | 75 | 20,000 |
Rate limit: 50 requests/hour.
Base URL: https://public-api.gamma.app
Auth: X-API-KEY: <your-api-key>
| Endpoint | Method | Description |
|---|---|---|
/v1.0/generations | POST | Generate from text |
/v1.0/generations/from-template | POST | Create from template (beta) |
/v1.0/generations/{id} | GET | Check status, get URLs |
/v1.0/themes | GET | List themes |
/v1.0/folders | GET | List folders |
| Parameter | Type | Description |
|---|---|---|
inputText | string | Content (max 100k tokens) |
textMode | enum | generate, condense, preserve |
| Parameter | Default | Values |
|---|---|---|
format | presentation | presentation, document, social, webpage |
numCards | 10 | 1-10 (Free), 1-20 (Plus), 1-60 (Pro), 1-75 (Ultra) |
cardSplit | auto | auto, inputTextBreaks |
additionalInstructions | Free text, 1-2000 chars | |
themeId | Theme ID from /v1.0/themes | |
folderIds | Array of folder IDs |
"textOptions": {
"amount": "medium", // brief, medium, detailed, extensive
"tone": "professional", // 1-500 chars
"audience": "executives", // 1-500 chars
"language": "en" // 60+ languages
}
"imageOptions": {
"source": "aiGenerated", // aiGenerated, pictographic, pexels, giphy, webAllImages, webFreeToUse, webFreeToUseCommercially, placeholder, noImages
"model": "flux-2-pro", // see models below
"style": "modern, minimal" // 1-500 chars
}
"cardOptions": {
"dimensions": "16x9", // Presentation: fluid, 16x9, 4x3 | Document: fluid, pageless, letter, a4 | Social: 1x1, 4x5, 9x16
"headerFooter": {
"topRight": { "type": "image", "source": "themeLogo", "size": "sm" },
"bottomRight": { "type": "cardNumber" },
"bottomLeft": { "type": "text", "value": "© 2026 Company" },
"hideFromFirstCard": true,
"hideFromLastCard": true
}
}
Positions: topLeft, topRight, topCenter, bottomLeft, bottomRight, bottomCenter
Types: text (+ value), image (+ source, size), cardNumber
"sharingOptions": {
"workspaceAccess": "view", // noAccess, view, comment, edit, fullAccess
"externalAccess": "noAccess", // noAccess, view, comment, edit
"emailOptions": {
"recipients": ["user@example.com"],
"access": "comment"
}
}
"exportAs": "pptx" // or "pdf"
| Model | API Value | Credits |
|---|---|---|
| Flux 2 Fast | flux-2-klein | 2 |
| Flux Kontext Fast | flux-kontext-fast | 2 |
| Imagen 3 Fast | imagen-3-flash | 2 |
| Luma Photon Flash | luma-photon-flash-1 | 2 |
| Qwen Image Fast | qwen-image-fast | 3 |
| Ideogram 3 Turbo | ideogram-v3-turbo | 10 |
| Model | API Value | Credits |
|---|---|---|
| Qwen Image | qwen-image | 3 |
| Flux 2 Pro | flux-2-pro | 8 |
| Imagen 4 Fast | imagen-4-fast | 10 |
| Luma Photon | luma-photon-1 | 10 |
| Recraft V4 | recraft-v4 | 12 |
| Leonardo Phoenix | leonardo-phoenix | 15 |
| Gemini 2.5 Flash | gemini-2.5-flash-image | 20 |
| Nano Banana 2 Mini | gemini-3.1-flash-image-mini | 34 |
| Model | API Value | Credits |
|---|---|---|
| Flux 2 Flex | flux-2-flex | 20 |
| Flux 2 Max | flux-2-max | 20 |
| Flux Kontext Pro | flux-kontext-pro | 20 |
| Ideogram 3 | ideogram-v3 | 20 |
| Imagen 4 | imagen-4-pro | 20 |
| Recraft V3 | recraft-v3 | 20 |
| Gemini 3 Pro Image | gemini-3-pro-image | 20 |
| GPT Image | gpt-image-1-medium | 30 |
| DALL-E 3 | dall-e-3 | 33 |
| Recraft V3 Vector | recraft-v3-svg | 40 |
| Recraft V4 Vector | recraft-v4-svg | 40 |
| Nano Banana 2 | gemini-3.1-flash-image | 50 |
| Model | API Value | Credits |
|---|---|---|
| Imagen 4 Ultra | imagen-4-ultra | 30 |
| Ideogram 3 Quality | ideogram-v3-quality | 45 |
| Gemini 3 Pro Image HD | gemini-3-pro-image-hd | 70 |
| Nano Banana 2 HD | gemini-3.1-flash-image-hd | 75 |
| GPT Image Detailed | gpt-image-1-high | 120 |
| Recraft V4 Pro | recraft-v4-pro | 125 |
| Model | API Value | Credits |
|---|---|---|
| Leonardo Motion 2 Fast | leonardo-motion-2-fast | 98 |
| Luma Ray 2 Flash | luma-ray-2-flash | 120 |
| Leonardo Motion 2 | leonardo-motion-2 | 195 |
| Veo 3.1 Fast | veo-3.1-fast | 300 |
| Luma Ray 2 | luma-ray-2 | 350 |
| Veo 3.1 | veo-3.1 | 800 |
| Old | New |
|---|---|
flux-1-quick | flux-2-klein |
flux-1-pro | flux-2-pro |
flux-1-ultra | flux-2-max |
flux-kontext-max | flux-2-flex |
playground-3 | flux-2-pro |
imagen-3-pro | imagen-4-pro |
POST /v1.0/generations/from-template
| Parameter | Required | Description |
|---|---|---|
gammaId | Yes | Template Gamma ID |
prompt | Yes | Fill instructions |
themeId | No | Override theme |
folderIds | No | Save to folders |
exportAs | No | pptx or pdf |
{ "generationId": "gen_abc123", "status": "pending" }
{
"generationId": "gen_abc123",
"status": "completed",
"gammaUrl": "https://gamma.app/docs/xyz",
"pptxUrl": "https://...",
"pdfUrl": "https://...",
"creditsUsed": 45
}
async function waitForGeneration(generationId, apiKey) {
const maxAttempts = 30; // 60s for images, 300 for video
const delayMs = 2000;
for (let i = 0; i < maxAttempts; i++) {
const res = await fetch(`https://public-api.gamma.app/v1.0/generations/${generationId}`,
{ headers: { 'X-API-KEY': apiKey } });
const data = await res.json();
if (data.status === 'completed') return data;
if (data.status === 'failed') throw new Error(data.error);
await new Promise(r => setTimeout(r, delayMs));
}
throw new Error('Generation timeout');
}
curl -X POST https://public-api.gamma.app/v1.0/generations \
-H 'Content-Type: application/json' \
-H 'X-API-KEY: sk-gamma-xxx' \
-d '{
"inputText": "Our startup solves remote collaboration with AI-powered async video.",
"textMode": "generate",
"format": "presentation",
"numCards": 12,
"textOptions": { "tone": "confident, visionary", "audience": "investors" },
"imageOptions": { "source": "aiGenerated", "model": "flux-2-pro" },
"cardOptions": { "dimensions": "16x9" },
"exportAs": "pptx"
}'
Gamma provides a hosted MCP server (Claude, Make, Zapier, Workato, N8N).
| Tool | Capability |
|---|---|
generate_content | Create presentations, docs, webpages, social |
browse_themes | Search theme library |
organize_folders | Save to folders |
| Problem | Solution |
|---|---|
| Insufficient credits | Check gamma.app/settings/billing |
| 401 Unauthorized | Verify API key |
| Timeout | Increase polling (2-3 min images, 10 min video) |
| Token limit | Max 100k tokens; use condense mode |
Location: .github/muscles/gamma-generator.cjs
# From file with export + auto-open
node .github/muscles/gamma-generator.cjs -f README.md -e pptx --open -n 12 -d 16x9
# Draft workflow (no credits)
node .github/muscles/gamma-generator.cjs -t "AI Ethics" --draft --open
node .github/muscles/gamma-generator.cjs -f exports/ai-ethics-draft.md -e pptx --open -n 12 -d 16x9
⚠️ Critical: For file-based generation, always pass both
--slidesand--dimensions 16x9. Without--slides, Gamma can condense multiple sections into fewer slides. Without--dimensions, Gamma may default to fluid layout.
| Option | Short | Description |
|---|---|---|
--topic | -t | Topic to generate |
--file | -f | Path to content file |
--format | presentation, document, social, webpage | |
--slides | -n | Number of slides (1-75) |
--tone | Tone description | |
--audience | Target audience | |
--language | -l | Language code |
--image-model | AI model | |
--image-style | Image style | |
--dimensions | -d | Card dimensions |
--export | -e | pptx, pdf |
--output | -o | Output directory |
--open | Auto-open result | |
--draft | Generate template only |