{
  "schemaVersion": "1.0",
  "item": {
    "slug": "slides",
    "name": "Slides",
    "source": "tencent",
    "type": "skill",
    "category": "效率提升",
    "sourceUrl": "https://clawhub.ai/ivangdavila/slides",
    "canonicalUrl": "https://clawhub.ai/ivangdavila/slides",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/slides",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=slides",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "design.md",
      "formats.md",
      "memory-template.md",
      "tools.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/slides"
    },
    "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",
    "agentPageUrl": "https://openagent3.xyz/skills/slides/agent",
    "manifestUrl": "https://openagent3.xyz/skills/slides/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/slides/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": "When to Use",
        "body": "User needs presentation slides created, edited, or automated. Agent handles tool selection (python-pptx, Google Slides API, reveal.js, Marp, Slidev), applies user's style preferences, generates visually consistent decks, and validates output."
      },
      {
        "title": "Architecture",
        "body": "Projects and styles stored in ~/slides/. See memory-template.md for setup.\n\n~/slides/\n├── memory.md              # HOT: active projects, preferred tools\n├── styles/                # Brand guidelines per client/project\n│   └── {name}.md          # Colors, fonts, templates\n├── projects/              # Project-specific context\n│   └── {name}/\n│       ├── context.md     # Audience, purpose, constraints\n│       └── versions.md    # Version history\n└── templates/             # Approved slide structures\n    └── {type}.md          # pitch, lesson, report, etc."
      },
      {
        "title": "Quick Reference",
        "body": "TopicFileMemory setupmemory-template.mdProgrammatic toolstools.mdVisual design rulesdesign.mdDeck structures by typeformats.md"
      },
      {
        "title": "Data Storage",
        "body": "All data stored in ~/slides/. Create on first use:\n\nmkdir -p ~/slides/{styles,projects,templates}"
      },
      {
        "title": "Scope",
        "body": "This skill ONLY:\n\nCreates/edits presentations via declared tools\nStores style preferences in local files (~/slides/)\nReads user's templates and brand guidelines\nGenerates visual output for validation\n\nThis skill NEVER:\n\nAccesses email, calendar, or contacts\nMakes network requests without user action\nReads files outside ~/slides/ and project paths\nSends presentations to external services automatically"
      },
      {
        "title": "Self-Modification",
        "body": "This skill NEVER modifies its own SKILL.md.\nLearned styles stored in ~/slides/styles/.\nProject context stored in ~/slides/projects/."
      },
      {
        "title": "1. Identify Context First",
        "body": "Before generating slides:\n\nPurpose: Pitch, lesson, report, demo?\nAudience: Investors, students, executives, clients?\nTool: PowerPoint, Google Slides, web-based (reveal.js)?\nLoad relevant style from ~/slides/styles/ if exists"
      },
      {
        "title": "2. Tool Selection by Output",
        "body": "NeedToolWhen to use.pptx filepython-pptxPowerPoint required, offlineGoogle SlidesGoogle Slides APICollaboration, cloudWeb presentationreveal.js, Slidev, MarpDev talks, code-heavyQuick PDFMarpSimple deck, fast export"
      },
      {
        "title": "3. Visual Consistency Always",
        "body": "Load user's style before generating\nIf no style: ask for brand colors, fonts, or use neutral defaults\nSame typography hierarchy across ALL slides\nMaximum 3-4 colors per deck\nSee design.md for detailed rules"
      },
      {
        "title": "4. Content Density Limits",
        "body": "Maximum 6 bullet points per slide\nMaximum 6 words per bullet (6x6 rule)\nOne idea per slide\nIf content overflows → split into multiple slides"
      },
      {
        "title": "5. Validate Before Delivery",
        "body": "Generate preview/screenshot of key slides\nCheck: readable text (24pt+ for body), proper contrast, alignment\nFor important decks: show 2-3 slides to user before completing all"
      },
      {
        "title": "6. Learn User Preferences",
        "body": "EventActionUser provides style guideSave to ~/slides/styles/{name}.mdUser corrects design choiceUpdate style fileUser approves templateSave to ~/slides/templates/New project startedCreate ~/slides/projects/{name}/"
      },
      {
        "title": "7. Version Management",
        "body": "Each significant revision → log in projects/{name}/versions.md\nTrack: date, changes, audience variant\nSupport quick comparison: \"What changed since v2?\""
      },
      {
        "title": "Common Traps",
        "body": "python-pptx units — Always use Inches(), Pt(), Emu() from pptx.util, never raw numbers\nMarp frontmatter — Must start with marp: true in YAML\nreveal.js separators — Use --- for horizontal, -- for vertical slides\nSlidev syntax — Different from reveal.js; check docs for each framework\nGoogle Slides API quotas — Batch updates to avoid rate limits\nImage sizing — Always specify dimensions; auto-fit often fails\nFont availability — Stick to system fonts unless embedding confirmed"
      }
    ],
    "body": "When to Use\n\nUser needs presentation slides created, edited, or automated. Agent handles tool selection (python-pptx, Google Slides API, reveal.js, Marp, Slidev), applies user's style preferences, generates visually consistent decks, and validates output.\n\nArchitecture\n\nProjects and styles stored in ~/slides/. See memory-template.md for setup.\n\n~/slides/\n├── memory.md              # HOT: active projects, preferred tools\n├── styles/                # Brand guidelines per client/project\n│   └── {name}.md          # Colors, fonts, templates\n├── projects/              # Project-specific context\n│   └── {name}/\n│       ├── context.md     # Audience, purpose, constraints\n│       └── versions.md    # Version history\n└── templates/             # Approved slide structures\n    └── {type}.md          # pitch, lesson, report, etc.\n\nQuick Reference\nTopic\tFile\nMemory setup\tmemory-template.md\nProgrammatic tools\ttools.md\nVisual design rules\tdesign.md\nDeck structures by type\tformats.md\nData Storage\n\nAll data stored in ~/slides/. Create on first use:\n\nmkdir -p ~/slides/{styles,projects,templates}\n\nScope\n\nThis skill ONLY:\n\nCreates/edits presentations via declared tools\nStores style preferences in local files (~/slides/)\nReads user's templates and brand guidelines\nGenerates visual output for validation\n\nThis skill NEVER:\n\nAccesses email, calendar, or contacts\nMakes network requests without user action\nReads files outside ~/slides/ and project paths\nSends presentations to external services automatically\nSelf-Modification\n\nThis skill NEVER modifies its own SKILL.md. Learned styles stored in ~/slides/styles/. Project context stored in ~/slides/projects/.\n\nCore Rules\n1. Identify Context First\n\nBefore generating slides:\n\nPurpose: Pitch, lesson, report, demo?\nAudience: Investors, students, executives, clients?\nTool: PowerPoint, Google Slides, web-based (reveal.js)?\nLoad relevant style from ~/slides/styles/ if exists\n2. Tool Selection by Output\nNeed\tTool\tWhen to use\n.pptx file\tpython-pptx\tPowerPoint required, offline\nGoogle Slides\tGoogle Slides API\tCollaboration, cloud\nWeb presentation\treveal.js, Slidev, Marp\tDev talks, code-heavy\nQuick PDF\tMarp\tSimple deck, fast export\n3. Visual Consistency Always\nLoad user's style before generating\nIf no style: ask for brand colors, fonts, or use neutral defaults\nSame typography hierarchy across ALL slides\nMaximum 3-4 colors per deck\nSee design.md for detailed rules\n4. Content Density Limits\nMaximum 6 bullet points per slide\nMaximum 6 words per bullet (6x6 rule)\nOne idea per slide\nIf content overflows → split into multiple slides\n5. Validate Before Delivery\nGenerate preview/screenshot of key slides\nCheck: readable text (24pt+ for body), proper contrast, alignment\nFor important decks: show 2-3 slides to user before completing all\n6. Learn User Preferences\nEvent\tAction\nUser provides style guide\tSave to ~/slides/styles/{name}.md\nUser corrects design choice\tUpdate style file\nUser approves template\tSave to ~/slides/templates/\nNew project started\tCreate ~/slides/projects/{name}/\n7. Version Management\nEach significant revision → log in projects/{name}/versions.md\nTrack: date, changes, audience variant\nSupport quick comparison: \"What changed since v2?\"\nCommon Traps\npython-pptx units — Always use Inches(), Pt(), Emu() from pptx.util, never raw numbers\nMarp frontmatter — Must start with marp: true in YAML\nreveal.js separators — Use --- for horizontal, -- for vertical slides\nSlidev syntax — Different from reveal.js; check docs for each framework\nGoogle Slides API quotas — Batch updates to avoid rate limits\nImage sizing — Always specify dimensions; auto-fit often fails\nFont availability — Stick to system fonts unless embedding confirmed"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/ivangdavila/slides",
    "publisherUrl": "https://clawhub.ai/ivangdavila/slides",
    "owner": "ivangdavila",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/slides",
    "downloadUrl": "https://openagent3.xyz/downloads/slides",
    "agentUrl": "https://openagent3.xyz/skills/slides/agent",
    "manifestUrl": "https://openagent3.xyz/skills/slides/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/slides/agent.md"
  }
}