gamma-2
// Create presentations, documents, social posts, and websites using Gamma's AI API. Use when asked to create slides, presentations, decks, documents, or web content via Gamma.
$ git log --oneline --stat
stars:370
forks:70
updated:February 19, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namegamma-2
descriptionCreate presentations, documents, social posts, and websites using Gamma's AI API. Use when asked to create slides, presentations, decks, documents, or web content via Gamma.
Gamma API Skill
Create presentations and documents programmatically via Gamma's API.
Setup
- Get API key from https://developers.gamma.app
- Store in environment:
export GAMMA_API_KEY=sk-gamma-xxxOr add to TOOLS.md:Gamma API Key: sk-gamma-xxx
Authentication
Base URL: https://public-api.gamma.app/v1.0
Header: X-API-KEY: <your-api-key>
Generate Content
curl -X POST https://public-api.gamma.app/v1.0/generations \
-H "Content-Type: application/json" \
-H "X-API-KEY: $GAMMA_API_KEY" \
-d '{
"inputText": "Your content here",
"textMode": "generate|condense|preserve",
"format": "presentation|document|social|webpage"
}'
Response: {"generationId": "xxx"}
Check Status
curl https://public-api.gamma.app/v1.0/generations/<generationId> \
-H "X-API-KEY: $GAMMA_API_KEY"
Response (completed): {"status": "completed", "gammaUrl": "https://gamma.app/docs/xxx", "credits": {...}}
Poll every 10-20s until status: "completed".
Key Parameters
| Parameter | Values | Notes |
|---|---|---|
textMode | generate, condense, preserve | generate=expand, condense=summarize, preserve=keep exact |
format | presentation, document, social, webpage | Output type |
numCards | 1-60 (Pro), 1-75 (Ultra) | Number of slides/cards |
cardSplit | auto, inputTextBreaks | Use \n---\n in inputText for manual breaks |
exportAs | pdf, pptx | Optional export format |
Optional Parameters
{
"additionalInstructions": "Make titles catchy",
"imageOptions": {
"source": "aiGenerated|unsplash|giphy|webAllImages|noImages",
"model": "imagen-4-pro|flux-1-pro",
"style": "photorealistic, modern"
},
"textOptions": {
"amount": "brief|medium|detailed|extensive",
"tone": "professional, inspiring",
"audience": "tech professionals",
"language": "en"
},
"cardOptions": {
"dimensions": "fluid|16x9|4x3|1x1|4x5|9x16"
}
}
Note: textOptions.tone and textOptions.audience are ignored when textMode is preserve.
Other Endpoints
GET /themes— List available themes (usethemeIdin generation)GET /folders— List folders (usefolderIdsin generation)
Workflow
- Check for API key in environment (
$GAMMA_API_KEY) or TOOLS.md - Build
inputTextwith content (can include image URLs inline) - POST to
/generations→ getgenerationId - Poll
/generations/{id}untilstatus: "completed" - Return
gammaUrlto user