{
  "schemaVersion": "1.0",
  "item": {
    "slug": "prezentit",
    "name": "Prezentit",
    "source": "tencent",
    "type": "skill",
    "category": "效率提升",
    "sourceUrl": "https://clawhub.ai/VeGoVeVO/prezentit",
    "canonicalUrl": "https://clawhub.ai/VeGoVeVO/prezentit",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/prezentit",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=prezentit",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/prezentit"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/prezentit",
    "agentPageUrl": "https://openagent3.xyz/skills/prezentit/agent",
    "manifestUrl": "https://openagent3.xyz/skills/prezentit/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/prezentit/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Step 2: Choose a Theme",
        "body": "Option A — Browse all available themes and pick by ID:\n\nGET /api/v1/themes\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\nResponse:\n\n{\r\n  \"themes\": [\r\n    { \"id\": \"corporate_blue\", \"name\": \"Corporate Blue\", \"category\": \"Corporate & Professional\" },\r\n    { \"id\": \"nature_earth\", \"name\": \"Nature Earth\", \"category\": \"Nature & Organic\" }\r\n  ],\r\n  \"categories\": [\"Corporate & Professional\", \"Creative & Visual\", \"Data & Analytics\", ...],\r\n  \"_ai\": {\r\n    \"totalThemes\": 20,\r\n    \"popularThemes\": [\"corporate_blue\", \"midnight_tech\", \"nature_earth\", \"storyteller\", \"data_dashboard\"]\r\n  }\r\n}\n\n→ Use the exact id value in your generation request\n\nOption B — Search for a theme by keyword:\n\nGET /api/v1/themes?search=minimalist\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\n→ Returns best matches ranked by relevance. Use the id from bestMatch.\n\nOption C — Describe a custom style (no theme ID needed):\n\nUse the customDesignPrompt parameter instead. See the Custom Design Prompt section below."
      },
      {
        "title": "Step 3: Generate Presentation",
        "body": "POST /api/v1/presentations/generate\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\r\nContent-Type: application/json\r\n\r\n{\r\n  \"topic\": \"User's topic here\",\r\n  \"slideCount\": 5,\r\n  \"theme\": \"corporate_blue\",\r\n  \"stream\": false\r\n}\n\n⏱️ IMPORTANT: Generation takes 1-3 minutes. The API will return when complete.\n\nFull Request Parameters:\n\nParameterTypeRequiredDescriptiontopicstringYes*Presentation topic (2-500 chars). Required if no outline. prompt is also accepted as an alias.outlineobjectNoPre-built outline (saves ~33% credits). See Outline section below.slideCountnumberNoNumber of slides (3-50, default: 5). Ignored if outline provided.themestringNoTheme ID from GET /api/v1/themes. Use the exact id value.customDesignPromptstringNoCustom visual style description (see below). Overrides theme ID.detailsstringNoAdditional context about the presentation content.confirmPartialbooleanNoSet true to confirm partial generation when credits are limited.streambooleanALWAYS falseAI agents must always set stream: false.\n\n*topic is required even when providing an outline (used for presentation metadata)."
      },
      {
        "title": "Step 4: Get the Result",
        "body": "Success Response:\n\n{\r\n  \"presentationId\": \"uuid-here\",\r\n  \"viewUrl\": \"https://prezentit.net/view/abc123\",\r\n  \"creditsUsed\": 75,\r\n  \"remainingCredits\": 25\r\n}\n\n→ Share the viewUrl with the user. That's their presentation!"
      },
      {
        "title": "Step 5: Download (Optional)",
        "body": "GET /api/v1/presentations/{presentationId}/download?format=pptx\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\nFormats: pptx (PowerPoint), pdf, json (raw data)"
      },
      {
        "title": "Pricing",
        "body": "ScenarioCost per SlideExample (5 slides)Auto-generate outline15 credits75 creditsProvide your own outline10 credits50 credits (~33% savings!)\n\nNew accounts get 100 free credits\nBuy more at: https://prezentit.net/buy-credits"
      },
      {
        "title": "How to Pick a Theme",
        "body": "Fetch the theme list: GET /api/v1/themes — returns all available themes with id, name, and category\nPick the best match for the user's topic and style preference\nPass the id in the generation request as the theme parameter\n\nYou can also search: GET /api/v1/themes?search=KEYWORD or filter by category: GET /api/v1/themes?category=CATEGORY_NAME"
      },
      {
        "title": "Custom Design Prompt (Skip the Theme List)",
        "body": "If no existing theme fits, use customDesignPrompt to describe a fully custom visual style. This must be a detailed, structured description — not just a color palette.\n\nREQUIRED structure for customDesignPrompt (include ALL of these sections):\n\nCOLOR SYSTEM: Primary [hex], secondary [hex], accent [hex], background [hex/gradient], text colors for headings and body.\r\n\r\nTYPOGRAPHY: Heading font style [e.g., bold geometric sans-serif like Montserrat], body font style [e.g., clean humanist sans-serif like Open Sans], size hierarchy [large/medium/small], weight contrast.\r\n\r\nLAYOUT SYSTEM: Slide structure [e.g., asymmetric split with 60/40 content-to-visual ratio], alignment [left-aligned text with right visual panel], spacing philosophy [generous whitespace vs. dense information], grid approach.\r\n\r\nVISUAL ELEMENTS: Background treatment [solid/gradient/textured/patterned], decorative motifs [geometric shapes, organic curves, line art, etc.], image style [photography with overlay, illustrations, icons, data visualizations], border/frame treatments.\r\n\r\nMOOD & TONE: Overall aesthetic [e.g., corporate authority, playful creativity, academic rigor, tech-forward], energy level [calm/dynamic/bold], intended audience impression.\n\nExample — Good customDesignPrompt:\n\n{\r\n  \"topic\": \"AI in Healthcare\",\r\n  \"customDesignPrompt\": \"COLOR SYSTEM: Primary deep medical blue (#1B3A5C), secondary teal (#2A9D8F), accent warm coral (#E76F51) for callouts, backgrounds alternate between clean white (#FAFAFA) and very subtle blue-gray (#F0F4F8), heading text dark navy, body text #333333. TYPOGRAPHY: Headings in bold geometric sans-serif (Montserrat style), body in clean humanist sans (Source Sans style), strong size hierarchy with 48pt titles, 24pt subtitles, 16pt body. LAYOUT SYSTEM: Asymmetric layouts with 60/40 content-to-visual split, left-aligned text blocks with right-side data visualizations or medical imagery, generous padding (60px margins), clean grid structure. VISUAL ELEMENTS: Subtle DNA helix watermark in corners at 5% opacity, thin teal accent lines as section dividers, medical iconography (stethoscope, heartbeat, molecular structures) as small decorative elements, photography with blue-tinted overlay for full-bleed backgrounds. MOOD & TONE: Professional medical authority balanced with approachable warmth, calm and trustworthy, designed for hospital executives and medical professionals.\",\r\n  \"stream\": false\r\n}\n\nExample — Bad customDesignPrompt (TOO VAGUE, will produce generic results):\n\n\"blue and white medical theme\""
      },
      {
        "title": "Creating Outlines (Save ~33% Credits)",
        "body": "Providing your own outline saves credits and gives you full control over content."
      },
      {
        "title": "Outline Structure",
        "body": "The outline is an object with a slides array. Each slide has these fields:\n\n{\r\n  \"topic\": \"Your Presentation Topic\",\r\n  \"outline\": {\r\n    \"slides\": [\r\n      {\r\n        \"title\": \"Slide Title Here\",\r\n        \"mainIdea\": \"A clear sentence explaining the core message of this slide and what the audience should take away from it.\",\r\n        \"talkingPoints\": [\r\n          \"First key point with enough detail to be meaningful (at least 10 characters)\",\r\n          \"Second key point expanding on the main idea\",\r\n          \"Third key point providing supporting evidence or examples\"\r\n        ],\r\n        \"visualGuide\": \"Detailed description of the visual layout: background style, image placement, icon suggestions, chart types, color emphasis areas, and decorative elements for this specific slide.\"\r\n      }\r\n    ]\r\n  },\r\n  \"stream\": false\r\n}"
      },
      {
        "title": "Slide Field Reference",
        "body": "FieldRequiredConstraintsDescriptiontitleYes3-100 chars, 1-15 wordsSlide headingmainIdeaYes10-500 chars, 3-75 wordsCore message of the slidetalkingPointsYes2-7 items, each 10-300 chars (3-50 words)Key points to covervisualGuideYes20-500 chars, 5-75 wordsVisual design instructions for this slide"
      },
      {
        "title": "Validation Rules",
        "body": "Overall:\n\nMinimum 3 slides, maximum 50 slides\ntopic is still required (used for presentation metadata)\nAll four fields (title, mainIdea, talkingPoints, visualGuide) are required per slide\n\nThe API returns detailed error messages with fix suggestions if validation fails."
      },
      {
        "title": "Complete Example",
        "body": "{\r\n  \"topic\": \"Introduction to Machine Learning\",\r\n  \"outline\": {\r\n    \"slides\": [\r\n      {\r\n        \"title\": \"Introduction to Machine Learning\",\r\n        \"mainIdea\": \"Machine learning is transforming how businesses operate by enabling systems to learn from data and improve automatically without explicit programming.\",\r\n        \"talkingPoints\": [\r\n          \"Machine learning is a subset of artificial intelligence focused on pattern recognition\",\r\n          \"ML systems improve through experience rather than manual rule-writing\",\r\n          \"Global ML market projected to reach $209 billion by 2029\"\r\n        ],\r\n        \"visualGuide\": \"Bold title slide with futuristic tech aesthetic. Dark gradient background transitioning from deep navy to midnight blue. Large bold title text centered with a subtle neural network node pattern behind it. Accent glow in electric blue.\"\r\n      },\r\n      {\r\n        \"title\": \"How Machine Learning Works\",\r\n        \"mainIdea\": \"Machine learning algorithms are categorized into supervised, unsupervised, and reinforcement learning based on how they learn from data.\",\r\n        \"talkingPoints\": [\r\n          \"Supervised learning uses labeled data for classification and regression tasks\",\r\n          \"Unsupervised learning discovers hidden patterns in unlabeled data through clustering\",\r\n          \"Reinforcement learning optimizes decisions through trial, error, and reward signals\"\r\n        ],\r\n        \"visualGuide\": \"Three distinct visual sections showing each ML type with representative icons: labeled data pairs for supervised, clustered groups for unsupervised, and a game-like reward loop for reinforcement. Use consistent color coding with blue, green, and purple.\"\r\n      },\r\n      {\r\n        \"title\": \"Business Applications\",\r\n        \"mainIdea\": \"Companies across industries are leveraging machine learning for competitive advantage in customer experience, operations, and decision-making.\",\r\n        \"talkingPoints\": [\r\n          \"Customer churn prediction reduces revenue loss by identifying at-risk accounts early\",\r\n          \"Fraud detection systems process millions of transactions in real-time\",\r\n          \"Personalized recommendation engines drive significant increases in engagement and sales\"\r\n        ],\r\n        \"visualGuide\": \"Clean content layout with left-aligned text and right-side icons or mini-charts for each application. Use a white background with subtle grid lines. Each talking point gets a small illustrative icon (shield for fraud, chart for prediction, user icon for personalization).\"\r\n      },\r\n      {\r\n        \"title\": \"Getting Started with ML\",\r\n        \"mainIdea\": \"Successful ML adoption requires starting with clear use cases, quality data, and the right team rather than jumping straight to complex algorithms.\",\r\n        \"talkingPoints\": [\r\n          \"Identify high-impact use cases where prediction or automation adds clear value\",\r\n          \"Invest in clean, well-structured data before selecting algorithms\",\r\n          \"Build or partner with ML expertise and start with proven frameworks\"\r\n        ],\r\n        \"visualGuide\": \"Conclusion slide with a numbered roadmap or step layout. Three large numbered circles (1, 2, 3) each containing a step. Background with subtle upward-pointing arrows suggesting progress. Call-to-action feel with bold accent color on the final step.\"\r\n      }\r\n    ]\r\n  },\r\n  \"theme\": \"midnight_tech\",\r\n  \"stream\": false\r\n}"
      },
      {
        "title": "Get Schema Programmatically",
        "body": "GET /api/v1/docs/outline-format\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\nReturns the full JSON schema with all constraints and example slides."
      },
      {
        "title": "Error Response Format",
        "body": "{\r\n  \"error\": \"Human readable message\",\r\n  \"code\": \"ERROR_CODE\",\r\n  \"fix\": \"Guidance on how to resolve this\"\r\n}"
      },
      {
        "title": "Common Errors & Solutions",
        "body": "HTTPCodeMessageSolution400MISSING_TOPICTopic or prompt is requiredProvide a topic or prompt field400INVALID_OUTLINEOutline validation failedCheck outline structure — response includes detailed validationErrors with fix per field400INVALID_SLIDE_COUNTSlide count must be 3-50Adjust slideCount to be between 3 and 50401UNAUTHORIZEDInvalid or missing API keyCheck Authorization: Bearer pk_... header402INSUFFICIENT_CREDITSNot enough creditsResponse includes required, available, and purchaseUrl404PRESENTATION_NOT_FOUNDPresentation doesn't existVerify presentation ID409DUPLICATE_REQUESTSame request within cooldownWait and retry — don't resend identical requests409GENERATION_IN_PROGRESSAlready generatingCheck status at GET /api/v1/me/generation/status or cancel at POST /api/v1/me/generation/cancel429RATE_LIMITEDToo many requestsWait retryAfter seconds before retrying500GENERATION_FAILEDInternal errorRetry once, then contact support503SERVICE_UNAVAILABLESystem overloadedRetry after retryAfter seconds"
      },
      {
        "title": "Handling Insufficient Credits",
        "body": "{\r\n  \"error\": \"Insufficient credits\",\r\n  \"code\": \"INSUFFICIENT_CREDITS\",\r\n  \"required\": 75,\r\n  \"available\": 50,\r\n  \"purchaseUrl\": \"https://prezentit.net/buy-credits\"\r\n}\n\nAI Agent Response: \"You need 75 credits but only have 50. Purchase more at https://prezentit.net/buy-credits\""
      },
      {
        "title": "Handling Partial Generation",
        "body": "If the user has some credits but not enough for full generation, the API returns a confirmation_required response with options. Read the _ai.options array and present them to the user. To proceed with partial generation, resend the request with \"confirmPartial\": true."
      },
      {
        "title": "Handling Rate Limits",
        "body": "{\r\n  \"error\": \"Too many requests\",\r\n  \"code\": \"RATE_LIMITED\",\r\n  \"retryAfter\": 30\r\n}\n\nAI Agent Action: Wait retryAfter seconds before retrying."
      },
      {
        "title": "Check Generation Status",
        "body": "GET /api/v1/me/generation/status\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\nReturns current progress if a generation is running: stage, percentage, designs completed."
      },
      {
        "title": "Cancel Active Generation",
        "body": "POST /api/v1/me/generation/cancel\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\nCancels the current generation in progress."
      },
      {
        "title": "Get Presentation Details",
        "body": "GET /api/v1/presentations/{presentationId}\r\nAuthorization: Bearer {PREZENTIT_API_KEY}"
      },
      {
        "title": "List User's Presentations",
        "body": "GET /api/v1/me/presentations\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\nOptional: ?limit=20&offset=0"
      },
      {
        "title": "List All Themes",
        "body": "GET /api/v1/themes\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\nOptional query params:\n\n?search=keyword — Filter by name\n?category=corporate — Filter by category"
      },
      {
        "title": "Anti-Spam Rules",
        "body": "RuleLimitWhat HappensDuplicate detection~30 seconds409 error for identical requestsRate limitVaries by key429 error with retryAfterOne generation at a time1 concurrent409 GENERATION_IN_PROGRESS error\n\nBest Practice: Always check for retryAfter in error responses and wait that duration."
      },
      {
        "title": "Minimal Generation",
        "body": "POST /api/v1/presentations/generate\r\n\r\n{\r\n  \"topic\": \"Introduction to Climate Change\",\r\n  \"stream\": false\r\n}"
      },
      {
        "title": "With Theme (Fetch ID First)",
        "body": "1. GET /api/v1/themes → find the theme ID\r\n2. POST /api/v1/presentations/generate\n\n{\r\n  \"topic\": \"Q4 Sales Report\",\r\n  \"slideCount\": 8,\r\n  \"theme\": \"corporate_blue\",\r\n  \"stream\": false\r\n}"
      },
      {
        "title": "With Custom Design Prompt",
        "body": "{\r\n  \"topic\": \"Startup Pitch Deck\",\r\n  \"slideCount\": 10,\r\n  \"customDesignPrompt\": \"COLOR SYSTEM: Primary electric indigo (#4F46E5), secondary cyan (#06B6D4), accent hot pink (#EC4899), background dark charcoal (#111827) with subtle radial gradient to #1F2937, heading text white, body text #D1D5DB. TYPOGRAPHY: Headings in extra-bold wide-tracking sans-serif (Inter/Poppins style), body in medium-weight clean sans, dramatic size contrast with 56pt titles and 18pt body. LAYOUT SYSTEM: Full-bleed dark slides with asymmetric content placement, bold left-aligned headlines with supporting text below, large visual areas for mockups and charts, 80px margins. VISUAL ELEMENTS: Subtle dot grid pattern at 3% opacity on backgrounds, neon-glow accent lines, rounded corners on all containers, glassmorphism cards with frosted backgrounds for data callouts, gradient mesh blobs as decorative elements. MOOD & TONE: Bold tech-startup energy, confident and forward-looking, designed to impress venture capital investors.\",\r\n  \"stream\": false\r\n}"
      },
      {
        "title": "With Outline (~33% Savings)",
        "body": "{\r\n  \"topic\": \"Weekly Team Sync\",\r\n  \"outline\": {\r\n    \"slides\": [\r\n      {\r\n        \"title\": \"Weekly Team Sync\",\r\n        \"mainIdea\": \"Kickoff slide for the January 15, 2024 weekly team synchronization meeting covering accomplishments and upcoming goals.\",\r\n        \"talkingPoints\": [\r\n          \"Welcome the team and set the agenda for today's sync\",\r\n          \"Cover last week's wins and this week's priorities\"\r\n        ],\r\n        \"visualGuide\": \"Clean title slide with company colors. Bold centered title, date as subtitle below. Simple professional background with subtle geometric pattern.\"\r\n      },\r\n      {\r\n        \"title\": \"Last Week's Accomplishments\",\r\n        \"mainIdea\": \"The team delivered significant progress across feature development, bug resolution, and performance optimization last week.\",\r\n        \"talkingPoints\": [\r\n          \"Feature X completed and merged into the main branch ahead of schedule\",\r\n          \"Resolved three critical production bugs affecting checkout flow\",\r\n          \"Database query optimization improved page load times by twenty percent\"\r\n        ],\r\n        \"visualGuide\": \"Content slide with checkmark icons next to each accomplishment. Green accent color for completed items. Left-aligned text with small celebration graphic in the corner.\"\r\n      },\r\n      {\r\n        \"title\": \"This Week's Goals\",\r\n        \"mainIdea\": \"This week focuses on the beta launch, initial user testing, and completing documentation before the public release.\",\r\n        \"talkingPoints\": [\r\n          \"Launch beta version to internal testers by Wednesday\",\r\n          \"Conduct user testing sessions with five pilot customers\",\r\n          \"Complete API documentation and developer onboarding guide\"\r\n        ],\r\n        \"visualGuide\": \"Forward-looking slide with numbered steps or timeline visual. Blue accent color for upcoming items. Arrow or roadmap graphic showing progression from current state to launch.\"\r\n      },\r\n      {\r\n        \"title\": \"Open Discussion\",\r\n        \"mainIdea\": \"Time for team questions, blockers, and any items not covered in the structured agenda.\",\r\n        \"talkingPoints\": [\r\n          \"Open floor for questions and discussion of blockers\",\r\n          \"Next sync meeting scheduled for Monday at ten AM\"\r\n        ],\r\n        \"visualGuide\": \"Simple closing slide with question mark icon or discussion bubble graphic. Calm colors, minimal text, large font for the key info. Meeting time prominently displayed.\"\r\n      }\r\n    ]\r\n  },\r\n  \"theme\": \"corporate_blue\",\r\n  \"stream\": false\r\n}"
      },
      {
        "title": "Getting Help",
        "body": "Website: https://prezentit.net\nBuy Credits: https://prezentit.net/buy-credits\nSupport: https://prezentit.net/support\nAPI Key Management: https://prezentit.net/api-keys"
      }
    ],
    "body": "---\r\nname: prezentit\r\ndescription: Generate beautiful AI-powered presentations instantly. Create professional slides with custom themes, visual designs, and speaker notes—all through natural language commands.\r\nhomepage: https://prezentit.net\r\nemoji: \"👽\"\r\nmetadata:\r\n  clawdbot:\r\n    emoji: \"👽\"\r\n    skillKey: prezentit\r\n    homepage: https://prezentit.net\r\n    requires:\r\n      config:\r\n        - PREZENTIT_API_KEY\r\n    config:\r\n      requiredEnv:\r\n        - name: PREZENTIT_API_KEY\r\n          description: Your Prezentit API key (starts with pk_). Get one free at https://prezentit.net/api-keys\r\n      example: |\r\n        export PREZENTIT_API_KEY=pk_your_api_key_here\r\n    permissions:\r\n      network:\r\n        - https://prezentit.net/api/v1/*\r\n      fileSystem: none\r\n      env:\r\n        reads:\r\n          - PREZENTIT_API_KEY\r\n        writes: none\r\n---\r\n\r\n# Prezentit - AI Presentation Generator\r\n\r\n**Base URL**: `https://prezentit.net/api/v1`\r\n**Auth Header**: `Authorization: Bearer {PREZENTIT_API_KEY}`\r\n\r\n> **This skill requires a `PREZENTIT_API_KEY` environment variable.** Get a free API key at https://prezentit.net/api-keys — new accounts include 100 free credits.\r\n\r\n## ⚠️ CRITICAL FOR AI AGENTS\r\n\r\n**ALWAYS use `\"stream\": false`** in generation requests! Without this, you get streaming responses that cause issues.\r\n\r\n---\r\n\r\n## Complete Workflow (FOLLOW THIS ORDER)\r\n\r\n### Step 1: Check Credits First\r\n\r\n```http\r\nGET /api/v1/me/credits\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\n\nResponse:\n\n{\r\n  \"credits\": 100,\r\n  \"pricing\": {\r\n    \"outlinePerSlide\": 5,\r\n    \"designPerSlide\": 10,\r\n    \"estimatedCostPerSlide\": 15\r\n  },\r\n  \"_ai\": {\r\n    \"canGenerate\": true,\r\n    \"maxSlidesAffordable\": 6,\r\n    \"nextSteps\": [\"...\"]\r\n  }\r\n}\n\n\n→ If _ai.canGenerate is false, direct user to https://prezentit.net/buy-credits → Use _ai.maxSlidesAffordable to know the limit\n\nStep 2: Choose a Theme\n\nOption A — Browse all available themes and pick by ID:\n\nGET /api/v1/themes\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\n\nResponse:\n\n{\r\n  \"themes\": [\r\n    { \"id\": \"corporate_blue\", \"name\": \"Corporate Blue\", \"category\": \"Corporate & Professional\" },\r\n    { \"id\": \"nature_earth\", \"name\": \"Nature Earth\", \"category\": \"Nature & Organic\" }\r\n  ],\r\n  \"categories\": [\"Corporate & Professional\", \"Creative & Visual\", \"Data & Analytics\", ...],\r\n  \"_ai\": {\r\n    \"totalThemes\": 20,\r\n    \"popularThemes\": [\"corporate_blue\", \"midnight_tech\", \"nature_earth\", \"storyteller\", \"data_dashboard\"]\r\n  }\r\n}\n\n\n→ Use the exact id value in your generation request\n\nOption B — Search for a theme by keyword:\n\nGET /api/v1/themes?search=minimalist\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\n\n→ Returns best matches ranked by relevance. Use the id from bestMatch.\n\nOption C — Describe a custom style (no theme ID needed):\n\nUse the customDesignPrompt parameter instead. See the Custom Design Prompt section below.\n\nStep 3: Generate Presentation\nPOST /api/v1/presentations/generate\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\r\nContent-Type: application/json\r\n\r\n{\r\n  \"topic\": \"User's topic here\",\r\n  \"slideCount\": 5,\r\n  \"theme\": \"corporate_blue\",\r\n  \"stream\": false\r\n}\n\n\n⏱️ IMPORTANT: Generation takes 1-3 minutes. The API will return when complete.\n\nFull Request Parameters:\n\nParameter\tType\tRequired\tDescription\ntopic\tstring\tYes*\tPresentation topic (2-500 chars). Required if no outline. prompt is also accepted as an alias.\noutline\tobject\tNo\tPre-built outline (saves ~33% credits). See Outline section below.\nslideCount\tnumber\tNo\tNumber of slides (3-50, default: 5). Ignored if outline provided.\ntheme\tstring\tNo\tTheme ID from GET /api/v1/themes. Use the exact id value.\ncustomDesignPrompt\tstring\tNo\tCustom visual style description (see below). Overrides theme ID.\ndetails\tstring\tNo\tAdditional context about the presentation content.\nconfirmPartial\tboolean\tNo\tSet true to confirm partial generation when credits are limited.\nstream\tboolean\tALWAYS false\tAI agents must always set stream: false.\n\n*topic is required even when providing an outline (used for presentation metadata).\n\nStep 4: Get the Result\n\nSuccess Response:\n\n{\r\n  \"presentationId\": \"uuid-here\",\r\n  \"viewUrl\": \"https://prezentit.net/view/abc123\",\r\n  \"creditsUsed\": 75,\r\n  \"remainingCredits\": 25\r\n}\n\n\n→ Share the viewUrl with the user. That's their presentation!\n\nStep 5: Download (Optional)\nGET /api/v1/presentations/{presentationId}/download?format=pptx\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\n\nFormats: pptx (PowerPoint), pdf, json (raw data)\n\nPricing\nScenario\tCost per Slide\tExample (5 slides)\nAuto-generate outline\t15 credits\t75 credits\nProvide your own outline\t10 credits\t50 credits (~33% savings!)\nNew accounts get 100 free credits\nBuy more at: https://prezentit.net/buy-credits\nTheme Selection\nHow to Pick a Theme\nFetch the theme list: GET /api/v1/themes — returns all available themes with id, name, and category\nPick the best match for the user's topic and style preference\nPass the id in the generation request as the theme parameter\n\nYou can also search: GET /api/v1/themes?search=KEYWORD or filter by category: GET /api/v1/themes?category=CATEGORY_NAME\n\nCustom Design Prompt (Skip the Theme List)\n\nIf no existing theme fits, use customDesignPrompt to describe a fully custom visual style. This must be a detailed, structured description — not just a color palette.\n\nREQUIRED structure for customDesignPrompt (include ALL of these sections):\n\nCOLOR SYSTEM: Primary [hex], secondary [hex], accent [hex], background [hex/gradient], text colors for headings and body.\r\n\r\nTYPOGRAPHY: Heading font style [e.g., bold geometric sans-serif like Montserrat], body font style [e.g., clean humanist sans-serif like Open Sans], size hierarchy [large/medium/small], weight contrast.\r\n\r\nLAYOUT SYSTEM: Slide structure [e.g., asymmetric split with 60/40 content-to-visual ratio], alignment [left-aligned text with right visual panel], spacing philosophy [generous whitespace vs. dense information], grid approach.\r\n\r\nVISUAL ELEMENTS: Background treatment [solid/gradient/textured/patterned], decorative motifs [geometric shapes, organic curves, line art, etc.], image style [photography with overlay, illustrations, icons, data visualizations], border/frame treatments.\r\n\r\nMOOD & TONE: Overall aesthetic [e.g., corporate authority, playful creativity, academic rigor, tech-forward], energy level [calm/dynamic/bold], intended audience impression.\n\n\nExample — Good customDesignPrompt:\n\n{\r\n  \"topic\": \"AI in Healthcare\",\r\n  \"customDesignPrompt\": \"COLOR SYSTEM: Primary deep medical blue (#1B3A5C), secondary teal (#2A9D8F), accent warm coral (#E76F51) for callouts, backgrounds alternate between clean white (#FAFAFA) and very subtle blue-gray (#F0F4F8), heading text dark navy, body text #333333. TYPOGRAPHY: Headings in bold geometric sans-serif (Montserrat style), body in clean humanist sans (Source Sans style), strong size hierarchy with 48pt titles, 24pt subtitles, 16pt body. LAYOUT SYSTEM: Asymmetric layouts with 60/40 content-to-visual split, left-aligned text blocks with right-side data visualizations or medical imagery, generous padding (60px margins), clean grid structure. VISUAL ELEMENTS: Subtle DNA helix watermark in corners at 5% opacity, thin teal accent lines as section dividers, medical iconography (stethoscope, heartbeat, molecular structures) as small decorative elements, photography with blue-tinted overlay for full-bleed backgrounds. MOOD & TONE: Professional medical authority balanced with approachable warmth, calm and trustworthy, designed for hospital executives and medical professionals.\",\r\n  \"stream\": false\r\n}\n\n\nExample — Bad customDesignPrompt (TOO VAGUE, will produce generic results):\n\n\"blue and white medical theme\"\n\nCreating Outlines (Save ~33% Credits)\n\nProviding your own outline saves credits and gives you full control over content.\n\nOutline Structure\n\nThe outline is an object with a slides array. Each slide has these fields:\n\n{\r\n  \"topic\": \"Your Presentation Topic\",\r\n  \"outline\": {\r\n    \"slides\": [\r\n      {\r\n        \"title\": \"Slide Title Here\",\r\n        \"mainIdea\": \"A clear sentence explaining the core message of this slide and what the audience should take away from it.\",\r\n        \"talkingPoints\": [\r\n          \"First key point with enough detail to be meaningful (at least 10 characters)\",\r\n          \"Second key point expanding on the main idea\",\r\n          \"Third key point providing supporting evidence or examples\"\r\n        ],\r\n        \"visualGuide\": \"Detailed description of the visual layout: background style, image placement, icon suggestions, chart types, color emphasis areas, and decorative elements for this specific slide.\"\r\n      }\r\n    ]\r\n  },\r\n  \"stream\": false\r\n}\n\nSlide Field Reference\nField\tRequired\tConstraints\tDescription\ntitle\tYes\t3-100 chars, 1-15 words\tSlide heading\nmainIdea\tYes\t10-500 chars, 3-75 words\tCore message of the slide\ntalkingPoints\tYes\t2-7 items, each 10-300 chars (3-50 words)\tKey points to cover\nvisualGuide\tYes\t20-500 chars, 5-75 words\tVisual design instructions for this slide\nValidation Rules\n\nOverall:\n\nMinimum 3 slides, maximum 50 slides\ntopic is still required (used for presentation metadata)\nAll four fields (title, mainIdea, talkingPoints, visualGuide) are required per slide\n\nThe API returns detailed error messages with fix suggestions if validation fails.\n\nComplete Example\n{\r\n  \"topic\": \"Introduction to Machine Learning\",\r\n  \"outline\": {\r\n    \"slides\": [\r\n      {\r\n        \"title\": \"Introduction to Machine Learning\",\r\n        \"mainIdea\": \"Machine learning is transforming how businesses operate by enabling systems to learn from data and improve automatically without explicit programming.\",\r\n        \"talkingPoints\": [\r\n          \"Machine learning is a subset of artificial intelligence focused on pattern recognition\",\r\n          \"ML systems improve through experience rather than manual rule-writing\",\r\n          \"Global ML market projected to reach $209 billion by 2029\"\r\n        ],\r\n        \"visualGuide\": \"Bold title slide with futuristic tech aesthetic. Dark gradient background transitioning from deep navy to midnight blue. Large bold title text centered with a subtle neural network node pattern behind it. Accent glow in electric blue.\"\r\n      },\r\n      {\r\n        \"title\": \"How Machine Learning Works\",\r\n        \"mainIdea\": \"Machine learning algorithms are categorized into supervised, unsupervised, and reinforcement learning based on how they learn from data.\",\r\n        \"talkingPoints\": [\r\n          \"Supervised learning uses labeled data for classification and regression tasks\",\r\n          \"Unsupervised learning discovers hidden patterns in unlabeled data through clustering\",\r\n          \"Reinforcement learning optimizes decisions through trial, error, and reward signals\"\r\n        ],\r\n        \"visualGuide\": \"Three distinct visual sections showing each ML type with representative icons: labeled data pairs for supervised, clustered groups for unsupervised, and a game-like reward loop for reinforcement. Use consistent color coding with blue, green, and purple.\"\r\n      },\r\n      {\r\n        \"title\": \"Business Applications\",\r\n        \"mainIdea\": \"Companies across industries are leveraging machine learning for competitive advantage in customer experience, operations, and decision-making.\",\r\n        \"talkingPoints\": [\r\n          \"Customer churn prediction reduces revenue loss by identifying at-risk accounts early\",\r\n          \"Fraud detection systems process millions of transactions in real-time\",\r\n          \"Personalized recommendation engines drive significant increases in engagement and sales\"\r\n        ],\r\n        \"visualGuide\": \"Clean content layout with left-aligned text and right-side icons or mini-charts for each application. Use a white background with subtle grid lines. Each talking point gets a small illustrative icon (shield for fraud, chart for prediction, user icon for personalization).\"\r\n      },\r\n      {\r\n        \"title\": \"Getting Started with ML\",\r\n        \"mainIdea\": \"Successful ML adoption requires starting with clear use cases, quality data, and the right team rather than jumping straight to complex algorithms.\",\r\n        \"talkingPoints\": [\r\n          \"Identify high-impact use cases where prediction or automation adds clear value\",\r\n          \"Invest in clean, well-structured data before selecting algorithms\",\r\n          \"Build or partner with ML expertise and start with proven frameworks\"\r\n        ],\r\n        \"visualGuide\": \"Conclusion slide with a numbered roadmap or step layout. Three large numbered circles (1, 2, 3) each containing a step. Background with subtle upward-pointing arrows suggesting progress. Call-to-action feel with bold accent color on the final step.\"\r\n      }\r\n    ]\r\n  },\r\n  \"theme\": \"midnight_tech\",\r\n  \"stream\": false\r\n}\n\nGet Schema Programmatically\nGET /api/v1/docs/outline-format\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\n\nReturns the full JSON schema with all constraints and example slides.\n\nError Handling\nError Response Format\n{\r\n  \"error\": \"Human readable message\",\r\n  \"code\": \"ERROR_CODE\",\r\n  \"fix\": \"Guidance on how to resolve this\"\r\n}\n\nCommon Errors & Solutions\nHTTP\tCode\tMessage\tSolution\n400\tMISSING_TOPIC\tTopic or prompt is required\tProvide a topic or prompt field\n400\tINVALID_OUTLINE\tOutline validation failed\tCheck outline structure — response includes detailed validationErrors with fix per field\n400\tINVALID_SLIDE_COUNT\tSlide count must be 3-50\tAdjust slideCount to be between 3 and 50\n401\tUNAUTHORIZED\tInvalid or missing API key\tCheck Authorization: Bearer pk_... header\n402\tINSUFFICIENT_CREDITS\tNot enough credits\tResponse includes required, available, and purchaseUrl\n404\tPRESENTATION_NOT_FOUND\tPresentation doesn't exist\tVerify presentation ID\n409\tDUPLICATE_REQUEST\tSame request within cooldown\tWait and retry — don't resend identical requests\n409\tGENERATION_IN_PROGRESS\tAlready generating\tCheck status at GET /api/v1/me/generation/status or cancel at POST /api/v1/me/generation/cancel\n429\tRATE_LIMITED\tToo many requests\tWait retryAfter seconds before retrying\n500\tGENERATION_FAILED\tInternal error\tRetry once, then contact support\n503\tSERVICE_UNAVAILABLE\tSystem overloaded\tRetry after retryAfter seconds\nHandling Insufficient Credits\n{\r\n  \"error\": \"Insufficient credits\",\r\n  \"code\": \"INSUFFICIENT_CREDITS\",\r\n  \"required\": 75,\r\n  \"available\": 50,\r\n  \"purchaseUrl\": \"https://prezentit.net/buy-credits\"\r\n}\n\n\nAI Agent Response: \"You need 75 credits but only have 50. Purchase more at https://prezentit.net/buy-credits\"\n\nHandling Partial Generation\n\nIf the user has some credits but not enough for full generation, the API returns a confirmation_required response with options. Read the _ai.options array and present them to the user. To proceed with partial generation, resend the request with \"confirmPartial\": true.\n\nHandling Rate Limits\n{\r\n  \"error\": \"Too many requests\",\r\n  \"code\": \"RATE_LIMITED\",\r\n  \"retryAfter\": 30\r\n}\n\n\nAI Agent Action: Wait retryAfter seconds before retrying.\n\nAdditional Endpoints\nCheck Generation Status\nGET /api/v1/me/generation/status\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\n\nReturns current progress if a generation is running: stage, percentage, designs completed.\n\nCancel Active Generation\nPOST /api/v1/me/generation/cancel\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\n\nCancels the current generation in progress.\n\nGet Presentation Details\nGET /api/v1/presentations/{presentationId}\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\nList User's Presentations\nGET /api/v1/me/presentations\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\n\nOptional: ?limit=20&offset=0\n\nList All Themes\nGET /api/v1/themes\r\nAuthorization: Bearer {PREZENTIT_API_KEY}\n\n\nOptional query params:\n\n?search=keyword — Filter by name\n?category=corporate — Filter by category\nAnti-Spam Rules\nRule\tLimit\tWhat Happens\nDuplicate detection\t~30 seconds\t409 error for identical requests\nRate limit\tVaries by key\t429 error with retryAfter\nOne generation at a time\t1 concurrent\t409 GENERATION_IN_PROGRESS error\n\nBest Practice: Always check for retryAfter in error responses and wait that duration.\n\nQuick Copy-Paste Examples\nMinimal Generation\nPOST /api/v1/presentations/generate\r\n\r\n{\r\n  \"topic\": \"Introduction to Climate Change\",\r\n  \"stream\": false\r\n}\n\nWith Theme (Fetch ID First)\n1. GET /api/v1/themes → find the theme ID\r\n2. POST /api/v1/presentations/generate\n\n{\r\n  \"topic\": \"Q4 Sales Report\",\r\n  \"slideCount\": 8,\r\n  \"theme\": \"corporate_blue\",\r\n  \"stream\": false\r\n}\n\nWith Custom Design Prompt\n{\r\n  \"topic\": \"Startup Pitch Deck\",\r\n  \"slideCount\": 10,\r\n  \"customDesignPrompt\": \"COLOR SYSTEM: Primary electric indigo (#4F46E5), secondary cyan (#06B6D4), accent hot pink (#EC4899), background dark charcoal (#111827) with subtle radial gradient to #1F2937, heading text white, body text #D1D5DB. TYPOGRAPHY: Headings in extra-bold wide-tracking sans-serif (Inter/Poppins style), body in medium-weight clean sans, dramatic size contrast with 56pt titles and 18pt body. LAYOUT SYSTEM: Full-bleed dark slides with asymmetric content placement, bold left-aligned headlines with supporting text below, large visual areas for mockups and charts, 80px margins. VISUAL ELEMENTS: Subtle dot grid pattern at 3% opacity on backgrounds, neon-glow accent lines, rounded corners on all containers, glassmorphism cards with frosted backgrounds for data callouts, gradient mesh blobs as decorative elements. MOOD & TONE: Bold tech-startup energy, confident and forward-looking, designed to impress venture capital investors.\",\r\n  \"stream\": false\r\n}\n\nWith Outline (~33% Savings)\n{\r\n  \"topic\": \"Weekly Team Sync\",\r\n  \"outline\": {\r\n    \"slides\": [\r\n      {\r\n        \"title\": \"Weekly Team Sync\",\r\n        \"mainIdea\": \"Kickoff slide for the January 15, 2024 weekly team synchronization meeting covering accomplishments and upcoming goals.\",\r\n        \"talkingPoints\": [\r\n          \"Welcome the team and set the agenda for today's sync\",\r\n          \"Cover last week's wins and this week's priorities\"\r\n        ],\r\n        \"visualGuide\": \"Clean title slide with company colors. Bold centered title, date as subtitle below. Simple professional background with subtle geometric pattern.\"\r\n      },\r\n      {\r\n        \"title\": \"Last Week's Accomplishments\",\r\n        \"mainIdea\": \"The team delivered significant progress across feature development, bug resolution, and performance optimization last week.\",\r\n        \"talkingPoints\": [\r\n          \"Feature X completed and merged into the main branch ahead of schedule\",\r\n          \"Resolved three critical production bugs affecting checkout flow\",\r\n          \"Database query optimization improved page load times by twenty percent\"\r\n        ],\r\n        \"visualGuide\": \"Content slide with checkmark icons next to each accomplishment. Green accent color for completed items. Left-aligned text with small celebration graphic in the corner.\"\r\n      },\r\n      {\r\n        \"title\": \"This Week's Goals\",\r\n        \"mainIdea\": \"This week focuses on the beta launch, initial user testing, and completing documentation before the public release.\",\r\n        \"talkingPoints\": [\r\n          \"Launch beta version to internal testers by Wednesday\",\r\n          \"Conduct user testing sessions with five pilot customers\",\r\n          \"Complete API documentation and developer onboarding guide\"\r\n        ],\r\n        \"visualGuide\": \"Forward-looking slide with numbered steps or timeline visual. Blue accent color for upcoming items. Arrow or roadmap graphic showing progression from current state to launch.\"\r\n      },\r\n      {\r\n        \"title\": \"Open Discussion\",\r\n        \"mainIdea\": \"Time for team questions, blockers, and any items not covered in the structured agenda.\",\r\n        \"talkingPoints\": [\r\n          \"Open floor for questions and discussion of blockers\",\r\n          \"Next sync meeting scheduled for Monday at ten AM\"\r\n        ],\r\n        \"visualGuide\": \"Simple closing slide with question mark icon or discussion bubble graphic. Calm colors, minimal text, large font for the key info. Meeting time prominently displayed.\"\r\n      }\r\n    ]\r\n  },\r\n  \"theme\": \"corporate_blue\",\r\n  \"stream\": false\r\n}\n\nGetting Help\nWebsite: https://prezentit.net\nBuy Credits: https://prezentit.net/buy-credits\nSupport: https://prezentit.net/support\nAPI Key Management: https://prezentit.net/api-keys"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/VeGoVeVO/prezentit",
    "publisherUrl": "https://clawhub.ai/VeGoVeVO/prezentit",
    "owner": "VeGoVeVO",
    "version": "1.0.11",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/prezentit",
    "downloadUrl": "https://openagent3.xyz/downloads/prezentit",
    "agentUrl": "https://openagent3.xyz/skills/prezentit/agent",
    "manifestUrl": "https://openagent3.xyz/skills/prezentit/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/prezentit/agent.md"
  }
}