From sundial-org-awesome-openclaw-skills-4
Generates presentations, documents, social posts, and webpages via Gamma API. Poll for status and retrieve shareable URLs when creating slides, decks, docs, or web content.
npx claudepluginhub joshuarweaver/cascade-ai-ml-agents-misc-2 --plugin sundial-org-awesome-openclaw-skills-4This skill uses the workspace's default tool permissions.
Create presentations and documents programmatically via Gamma's API.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Create presentations and documents programmatically via Gamma's API.
export GAMMA_API_KEY=sk-gamma-xxx
Or add to TOOLS.md: Gamma API Key: sk-gamma-xxxBase URL: https://public-api.gamma.app/v1.0
Header: X-API-KEY: <your-api-key>
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"}
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".
| 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 |
{
"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.
GET /themes — List available themes (use themeId in generation)GET /folders — List folders (use folderIds in generation)$GAMMA_API_KEY) or TOOLS.mdinputText with content (can include image URLs inline)/generations → get generationId/generations/{id} until status: "completed"gammaUrl to user