agent-builder
Expert AI Agent Builder skill. Helps users dynamically create, configure, and build custom AI agents with specific capabilities, knowledge bases, and tools.
Create, read, or edit PowerPoint .pptx files: slide decks from scratch, content extraction, templates, speaker notes, combining or splitting decks. Not for posters, images, or social graphics.
$ npx -y skills add xorbitsai/xagent --skill presentation-generator --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/presentation-generatorContext preview
The summary Claude sees to decide when to auto-load this skill.
Create, read, or edit PowerPoint .pptx files: slide decks from scratch, content extraction, templates, speaker notes, combining or splitting decks. Not for posters, images, or social graphics.
name: presentation description: | Create, read, or edit PowerPoint .pptx files: slide decks from scratch, content extraction, templates, speaker notes, combining or splitting decks. Not for posters, images, or social graphics. when_to_use: | The user asks for a deck, slides, a presentation, PPT/PPTX, or names a .pptx file. Use pptx-editorial instead when magazine-grade editorial styling is wanted.
Generate PowerPoint presentations using JavaScript code with the pptxgenjs library.
**YOU MUST FOLLOW THESE RULES - NO EXCEPTIONS:**
1. **ONLY use the 4 predefined themes below** (NOVA, ORBIT, PULSE, MINIMA) 2. **NEVER create custom color variables** like `const colorAccent = "0078D7"` 3. **NEVER use hardcoded hex values** in your code - always reference `theme.xxx` 4. **ALWAYS include the `#` prefix** in hex colors (e.g., `#EF4444` not `EF4444`) 5. **Slide 0 (first slide) MUST also be created via `const slide = pres.addSlide()`** and use `theme.cover` - first slide is the cover with dark/high-contrast background 6. **Slides 1+ MUST use `theme.content`** - all other slides use light/readable background
**WRONG:**
const colorAccent = "0078D7"; // ❌ WRONG - custom color
slide1.addText("Title", { color: "363636" }); // ❌ WRONG - hardcoded hex
const slide1 = pres.addSlide();
slide1.background = { color: theme.cover.background }; // ❌ WRONG - cover on non-first slide**CORRECT:**
const theme = {
cover: {
background: '#0A0F1C',
title: '#FFFFFF',
subtitle: '#94A3B8',
accent: '#7C3AED'
},
content: {
background: '#F6F7FB',
primary: '#0A0F1C',
secondary: '#5B6475',
accent: '#7C3AED',
text: '#0A0F1C'
}
};
// Slide 0 (cover) — pptxgenjs requires addSlide() for the FIRST slide too
const slide1 = pres.addSlide();
slide1.background = { color: theme.cover.background };
slide1.addText("Title", { color: theme.cover.title });
// Slide 1+ — call pres.addSlide() to get each new slide
const slide2 = pres.addSlide();
slide2.background = { color: theme.content.background };
slide2.addText("Content", { color: theme.content.primary });---
**CRITICAL: MANDATORY constraints for stable presentation generation:**
1. **USE PREDEFINED THEMES ONLY**: You MUST use one of the 4 predefined themes (NOVA, ORBIT, PULSE, MINIMA) from the "Predefined Themes" section below. NEVER define custom colors or use hardcoded hex values like `"003366"` or `color: "FF0000"`.
2. **Theme Object Format**: Always define theme as:
const theme = {
background: '#XXXXXX',
primary: '#XXXXXX',
secondary: '#XXXXXX',
accent: '#XXXXXX',
text: '#XXXXXX'
};Then reference colors as `theme.background`, `theme.primary`, etc.
3. **Slide Creation**: ALWAYS call `pres.addSlide()` before adding content to ANY slide, including the FIRST one. Capture its return value: `const slide = pres.addSlide();` then call `slide.addText(...)`, `slide.background = {...}`, `slide.addImage(...)`, etc. Calling `pres.addText(...)` or setting `pres.background` directly on the presentation object will throw `pres.addText is not a function`.
4. **Font Consistency**: Keep font sizes consistent: titles 40-56pt, subtitles 24-32pt, body text 16-20pt
5. **Slide Bounds**: Never position elements outside 10 x 7.5 inch slide area (x: 0-10, y: 0-7.5)
6. **Layout Simplicity**: Prefer clean, simple layouts over dense or decorative designs
7. **Theme Selection**: Choose theme based on presentation context (see Theme Selection Guide below)
8. **Visual Hierarchy**: Slides must follow clear visual hierarchy: Title → Section Heading → Body → Accent Highlight. Avoid mixing too many font sizes on a single slide.
9. **Image Sizing**: ALWAYS specify both width AND height, or use sizing to ensure images stay within bounds:
10. **Handle Execution Failures Honestly**: `execute_javascript_code` returns `{ success, output, error }`. When `success` is `false` (or `error` is non-empty), the script aborted before `writeFile` and **no .pptx was created**. You MUST:
link to a file that does not exist.
pptxgenjs — `addTable` row shape, missing slide handle, malformed options object — see "Data Table" below for the table pattern).
For consistent slide layouts:
| Zone | X/Y Range | Purpose | |------|-----------|---------| | Safe content area | x: 0.5-9.5, y: 0.5-7 | Main content, images, data | | Title area | y: 0.5 - 1.5 | Slide titles and headings | | Content area | y: 1.5 - 5.5 | Main content, bullets, data | | Footer area | y: 6.0 - 7.0 | Footer text, page numbers, notes |
**Note**: Title slides may use vertically centered positioning (y ≈ 3). All other slides must follow layout zones.
| Context | Recommended Theme | Why | |---------|------------------|-----| | Strategy / AI narrative / Investor deck | **NOVA** | Large titles, generous whitespace, authoritative feel | | Technical deep dive / Architecture / Dev | **ORBIT** | Dark background, strong contrast, clean technical aesthetic | | Metrics-heavy / Growth / Business performance | **PULSE** | Bold KPI emphasis, high-contrast numbers, data-focused | | Founder story / Brand / Minimalist | **MINIMA** | Extremely clean, typography-driven, minimal decoration |
**Default**: Use NOVA if context is unclear or not s
Start with a personal agent. Scale into an AI workforce. Xagent helps individuals complete real tasks, teams publish reusable agents, and enterprises run agent systems with their own tools, models, knowledge, and infrastructure — without brittle workflows.
Expert AI Agent Builder skill. Helps users dynamically create, configure, and build custom AI agents with specific capabilities, knowledge bases, and tools.
A native .docx styled as an editorial report: "Word report", "Word 文档", "memo", "proposal", "研究报告". Opens cleanly in Word / Google Docs / Pages with real…
Evidence-first retrieval over a specified knowledge base: cited evidence, conflict detection, and an explicit sufficiency, confidence, and risk verdict on…
One self-contained HTML slide deck with magazine-grade editorial styling: "html deck", "editorial slides", "美观 PPT", "网页版幻灯片". Not for posters, ad creatives,…
An editorial-styled PDF report rendered from HTML via the browser: "PDF report", "whitepaper", "executive brief", "research report", "case study PDF".…
A native .pptx deck with magazine-grade editorial styling: "pitch deck", "投资人路演 PPT", "美观 PPT", board review, product launch. Named palettes, fixed typography,…