{
  "schemaVersion": "1.0",
  "item": {
    "slug": "slides-generator",
    "name": "Slides Generator",
    "source": "tencent",
    "type": "skill",
    "category": "效率提升",
    "sourceUrl": "https://clawhub.ai/fengtality/slides-generator",
    "canonicalUrl": "https://clawhub.ai/fengtality/slides-generator",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/slides-generator",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=slides-generator",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "scripts/generate_slides.sh"
    ],
    "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/slides-generator"
    },
    "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/slides-generator",
    "agentPageUrl": "https://openagent3.xyz/skills/slides-generator/agent",
    "manifestUrl": "https://openagent3.xyz/skills/slides-generator/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/slides-generator/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": "slides-generator",
        "body": "Create Hummingbot-branded presentation slides in PDF format from markdown content. Features two-column layouts and Mermaid diagram rendering for technical architecture and flowcharts."
      },
      {
        "title": "Step 1: Get Markdown Content",
        "body": "Ask the user to provide a markdown file or paste markdown content. The content should follow this format:\n\n# Presentation Title\n\n## 1. First Slide Title\n\nContent for the first slide. Can include:\n- Bullet points\n- **Bold text** and *italic text*\n- Code blocks\n\n## 2. Second Slide Title\n\nMore content here.\n\n## 3. Third Slide Title\n\nAnd so on...\n\nFormat Rules:\n\n# Title = Presentation title (optional, becomes title slide)\n## N. Slide Title = New slide (N is slide number)\nContent under each ## heading becomes slide content\nSupports markdown formatting: lists, bold, italic, code blocks, links"
      },
      {
        "title": "Step 2: Parse and Confirm",
        "body": "Before generating the PDF, parse the markdown and show the user a summary:\n\n📊 Slide Outline:\n\n1. First Slide Title\n2. Second Slide Title\n3. Third Slide Title\n...\n\nTotal: X slides\n\nPlease confirm to proceed with PDF generation, or provide edits.\n\nWait for user confirmation before proceeding."
      },
      {
        "title": "Step 3: Generate PDF",
        "body": "Run the generation script:\n\nbash <(curl -s https://raw.githubusercontent.com/hummingbot/skills/main/skills/slides-generator/scripts/generate_slides.sh) \\\n  --input \"<markdown_file_or_content>\" \\\n  --output \"<output_pdf_path>\"\n\nOr if the user provided inline content, save it to a temp file first:\n\n# Save content to temp file\ncat > /tmp/slides_content.md << 'SLIDES_EOF'\n<markdown_content_here>\nSLIDES_EOF\n\n# Generate PDF\nbash <(curl -s https://raw.githubusercontent.com/hummingbot/skills/main/skills/slides-generator/scripts/generate_slides.sh) \\\n  --input /tmp/slides_content.md \\\n  --output ~/slides_output.pdf"
      },
      {
        "title": "Step 4: Deliver Result",
        "body": "After generation, tell the user:\n\nThe PDF file location\nHow many slides were generated\nOffer to open/view the PDF if desired"
      },
      {
        "title": "Editing Existing Slides",
        "body": "If the user wants to edit slides from a previously generated PDF:\n\nRead the original markdown (if available) or view the PDF to understand current content\nAsk the user what changes they want:\n\nEdit specific slide content\nAdd new slides\nRemove slides\nReorder slides\n\n\nApply changes to the markdown\nRegenerate the PDF\n\nUse the --edit flag to update specific slides without regenerating all:\n\nbash <(curl -s https://raw.githubusercontent.com/hummingbot/skills/main/skills/slides-generator/scripts/generate_slides.sh) \\\n  --input \"<updated_markdown>\" \\\n  --output \"<same_pdf_path>\" \\\n  --edit"
      },
      {
        "title": "Diagrams",
        "body": "Users can describe diagrams in natural language using mermaid: syntax. You must translate these descriptions to Mermaid code before generating the PDF."
      },
      {
        "title": "User Input Format",
        "body": "Users write descriptions like:\n\nmermaid: A flowchart showing User Interface connecting to Condor and MCP Agents,\nboth connecting to Hummingbot API (highlighted), then to Client, then to Gateway"
      },
      {
        "title": "Translation to Mermaid",
        "body": "Convert the description to proper Mermaid syntax:\n\n\\`\\`\\`mermaid\nflowchart TB\n    A[User Interface] --> B[Condor]\n    A --> C[MCP Agents]\n    B --> D[Hummingbot API]\n    C --> D\n    D --> E[Hummingbot Client]\n    E --> F[Gateway]\n    style D fill:#00D084,color:#fff\n\\`\\`\\`"
      },
      {
        "title": "Diagram Types",
        "body": "flowchart TD - Top-down flowchart\nflowchart LR - Left-right flowchart\nsequenceDiagram - API and interaction flows\nclassDiagram - Object-oriented design\nerDiagram - Database schemas"
      },
      {
        "title": "Highlighting",
        "body": "Use style NodeName fill:#00D084,color:#fff for Hummingbot green highlighting."
      },
      {
        "title": "Requirements",
        "body": "Mermaid diagrams require the Mermaid CLI:\n\nnpm install -g @mermaid-js/mermaid-cli"
      },
      {
        "title": "Code Blocks",
        "body": "Use regular \\``` code blocks for ASCII art, code snippets, or preformatted text:\n\n\\`\\`\\`\nPrice\n  ^\n  |  [BUY] --- Level 3\n  |  [BUY] --- Level 2\n  |  [BUY] --- Level 1\n  +-------------------> Time\n\\`\\`\\`\n\nCode blocks render with monospace font on a gray background."
      },
      {
        "title": "Two-Column Layout",
        "body": "When a slide has both bullet points AND a diagram, it automatically renders in two columns:\n\nLeft column: Text content\nRight column: Diagram\n\n## 4. How It Works\n\nKey features:\n- Automated order placement\n- Dynamic position management\n- Risk-controlled execution\n- Real-time monitoring\n\nmermaid: flowchart showing Market Data to Strategy to Orders\n\nAfter translation:\n\n## 4. How It Works\n\nKey features:\n- Automated order placement\n- Dynamic position management\n- Risk-controlled execution\n- Real-time monitoring\n\n\\`\\`\\`mermaid\nflowchart TD\n    A[Market Data] --> B[Strategy]\n    B --> C[Orders]\n    style B fill:#00D084,color:#fff\n\\`\\`\\`"
      },
      {
        "title": "Example Markdown",
        "body": "# Q4 Product Update\n\n## 1. Overview\n\nToday we'll cover:\n- Product milestones\n- Key metrics\n- Roadmap preview\n\n## 2. Architecture\n\nOur system components:\n- User-facing interfaces\n- Core API layer\n- Exchange connectivity\n\nmermaid: flowchart showing UI to API (highlighted) to Gateway\n\n## 3. Key Metrics\n\n| Metric | Q3 | Q4 | Change |\n|--------|----|----|--------|\n| Users | 10K | 15K | +50% |\n| Revenue | $100K | $150K | +50% |\n\n## 4. Q1 Roadmap\n\n1. Mobile app launch\n2. Enterprise tier\n3. International expansion\n\n## 5. Questions?\n\nThank you!\n\nContact: team@example.com\n\nAfter translating mermaid: descriptions:\n\n## 2. Architecture\n\nOur system components:\n- User-facing interfaces\n- Core API layer\n- Exchange connectivity\n\n\\`\\`\\`mermaid\nflowchart TD\n    A[UI] --> B[API]\n    B --> C[Gateway]\n    style B fill:#00D084,color:#fff\n\\`\\`\\`"
      },
      {
        "title": "Dependencies",
        "body": "The script will check for and install if needed:\n\nPython 3\nfpdf2 Python package (for PDF generation)"
      },
      {
        "title": "Troubleshooting",
        "body": "IssueSolution\"Python not found\"Install Python 3: brew install python3 (macOS) or apt install python3 (Linux)\"fpdf2 not installed\"Run: pip3 install fpdf2\"Permission denied\"Check write permissions for output directory\"Empty PDF\"Verify markdown format follows the ## N. Title pattern"
      },
      {
        "title": "Scripts",
        "body": "ScriptPurposegenerate_slides.shMain PDF generation script"
      }
    ],
    "body": "slides-generator\n\nCreate Hummingbot-branded presentation slides in PDF format from markdown content. Features two-column layouts and Mermaid diagram rendering for technical architecture and flowcharts.\n\nWorkflow\nStep 1: Get Markdown Content\n\nAsk the user to provide a markdown file or paste markdown content. The content should follow this format:\n\n# Presentation Title\n\n## 1. First Slide Title\n\nContent for the first slide. Can include:\n- Bullet points\n- **Bold text** and *italic text*\n- Code blocks\n\n## 2. Second Slide Title\n\nMore content here.\n\n## 3. Third Slide Title\n\nAnd so on...\n\n\nFormat Rules:\n\n# Title = Presentation title (optional, becomes title slide)\n## N. Slide Title = New slide (N is slide number)\nContent under each ## heading becomes slide content\nSupports markdown formatting: lists, bold, italic, code blocks, links\nStep 2: Parse and Confirm\n\nBefore generating the PDF, parse the markdown and show the user a summary:\n\n📊 Slide Outline:\n\n1. First Slide Title\n2. Second Slide Title\n3. Third Slide Title\n...\n\nTotal: X slides\n\nPlease confirm to proceed with PDF generation, or provide edits.\n\n\nWait for user confirmation before proceeding.\n\nStep 3: Generate PDF\n\nRun the generation script:\n\nbash <(curl -s https://raw.githubusercontent.com/hummingbot/skills/main/skills/slides-generator/scripts/generate_slides.sh) \\\n  --input \"<markdown_file_or_content>\" \\\n  --output \"<output_pdf_path>\"\n\n\nOr if the user provided inline content, save it to a temp file first:\n\n# Save content to temp file\ncat > /tmp/slides_content.md << 'SLIDES_EOF'\n<markdown_content_here>\nSLIDES_EOF\n\n# Generate PDF\nbash <(curl -s https://raw.githubusercontent.com/hummingbot/skills/main/skills/slides-generator/scripts/generate_slides.sh) \\\n  --input /tmp/slides_content.md \\\n  --output ~/slides_output.pdf\n\nStep 4: Deliver Result\n\nAfter generation, tell the user:\n\nThe PDF file location\nHow many slides were generated\nOffer to open/view the PDF if desired\nEditing Existing Slides\n\nIf the user wants to edit slides from a previously generated PDF:\n\nRead the original markdown (if available) or view the PDF to understand current content\nAsk the user what changes they want:\nEdit specific slide content\nAdd new slides\nRemove slides\nReorder slides\nApply changes to the markdown\nRegenerate the PDF\n\nUse the --edit flag to update specific slides without regenerating all:\n\nbash <(curl -s https://raw.githubusercontent.com/hummingbot/skills/main/skills/slides-generator/scripts/generate_slides.sh) \\\n  --input \"<updated_markdown>\" \\\n  --output \"<same_pdf_path>\" \\\n  --edit\n\nDiagrams\n\nUsers can describe diagrams in natural language using mermaid: syntax. You must translate these descriptions to Mermaid code before generating the PDF.\n\nUser Input Format\n\nUsers write descriptions like:\n\nmermaid: A flowchart showing User Interface connecting to Condor and MCP Agents,\nboth connecting to Hummingbot API (highlighted), then to Client, then to Gateway\n\nTranslation to Mermaid\n\nConvert the description to proper Mermaid syntax:\n\n\\`\\`\\`mermaid\nflowchart TB\n    A[User Interface] --> B[Condor]\n    A --> C[MCP Agents]\n    B --> D[Hummingbot API]\n    C --> D\n    D --> E[Hummingbot Client]\n    E --> F[Gateway]\n    style D fill:#00D084,color:#fff\n\\`\\`\\`\n\nDiagram Types\nflowchart TD - Top-down flowchart\nflowchart LR - Left-right flowchart\nsequenceDiagram - API and interaction flows\nclassDiagram - Object-oriented design\nerDiagram - Database schemas\nHighlighting\n\nUse style NodeName fill:#00D084,color:#fff for Hummingbot green highlighting.\n\nRequirements\n\nMermaid diagrams require the Mermaid CLI:\n\nnpm install -g @mermaid-js/mermaid-cli\n\nCode Blocks\n\nUse regular \\``` code blocks for ASCII art, code snippets, or preformatted text:\n\n\\`\\`\\`\nPrice\n  ^\n  |  [BUY] --- Level 3\n  |  [BUY] --- Level 2\n  |  [BUY] --- Level 1\n  +-------------------> Time\n\\`\\`\\`\n\n\nCode blocks render with monospace font on a gray background.\n\nTwo-Column Layout\n\nWhen a slide has both bullet points AND a diagram, it automatically renders in two columns:\n\nLeft column: Text content\nRight column: Diagram\n## 4. How It Works\n\nKey features:\n- Automated order placement\n- Dynamic position management\n- Risk-controlled execution\n- Real-time monitoring\n\nmermaid: flowchart showing Market Data to Strategy to Orders\n\n\nAfter translation:\n\n## 4. How It Works\n\nKey features:\n- Automated order placement\n- Dynamic position management\n- Risk-controlled execution\n- Real-time monitoring\n\n\\`\\`\\`mermaid\nflowchart TD\n    A[Market Data] --> B[Strategy]\n    B --> C[Orders]\n    style B fill:#00D084,color:#fff\n\\`\\`\\`\n\nExample Markdown\n# Q4 Product Update\n\n## 1. Overview\n\nToday we'll cover:\n- Product milestones\n- Key metrics\n- Roadmap preview\n\n## 2. Architecture\n\nOur system components:\n- User-facing interfaces\n- Core API layer\n- Exchange connectivity\n\nmermaid: flowchart showing UI to API (highlighted) to Gateway\n\n## 3. Key Metrics\n\n| Metric | Q3 | Q4 | Change |\n|--------|----|----|--------|\n| Users | 10K | 15K | +50% |\n| Revenue | $100K | $150K | +50% |\n\n## 4. Q1 Roadmap\n\n1. Mobile app launch\n2. Enterprise tier\n3. International expansion\n\n## 5. Questions?\n\nThank you!\n\nContact: team@example.com\n\n\nAfter translating mermaid: descriptions:\n\n## 2. Architecture\n\nOur system components:\n- User-facing interfaces\n- Core API layer\n- Exchange connectivity\n\n\\`\\`\\`mermaid\nflowchart TD\n    A[UI] --> B[API]\n    B --> C[Gateway]\n    style B fill:#00D084,color:#fff\n\\`\\`\\`\n\nDependencies\n\nThe script will check for and install if needed:\n\nPython 3\nfpdf2 Python package (for PDF generation)\nTroubleshooting\nIssue\tSolution\n\"Python not found\"\tInstall Python 3: brew install python3 (macOS) or apt install python3 (Linux)\n\"fpdf2 not installed\"\tRun: pip3 install fpdf2\n\"Permission denied\"\tCheck write permissions for output directory\n\"Empty PDF\"\tVerify markdown format follows the ## N. Title pattern\nScripts\nScript\tPurpose\ngenerate_slides.sh\tMain PDF generation script"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/fengtality/slides-generator",
    "publisherUrl": "https://clawhub.ai/fengtality/slides-generator",
    "owner": "fengtality",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/slides-generator",
    "downloadUrl": "https://openagent3.xyz/downloads/slides-generator",
    "agentUrl": "https://openagent3.xyz/skills/slides-generator/agent",
    "manifestUrl": "https://openagent3.xyz/skills/slides-generator/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/slides-generator/agent.md"
  }
}