Skip to main content

html2pptx

Converts HTML slides to PowerPoint presentations with accurate positioning and styling, ensuring a seamless transition from web to presentation format.

Install this skill

or
0/100

Security score

The html2pptx skill was audited on Feb 12, 2026 and we found 21 security issues across 2 threat categories, including 20 high-severity. Review the findings below before installing.

Categories Tested

Security Issues

high line 66

Template literal with variable interpolation in command context

SourceSKILL.md
66if (widthOverflowPt > 0) directions.push(`${widthOverflowPt.toFixed(1)}pt horizontally`);
high line 67

Template literal with variable interpolation in command context

SourceSKILL.md
67if (heightOverflowPt > 0) directions.push(`${heightOverflowPt.toFixed(1)}pt vertically`);
high line 69

Template literal with variable interpolation in command context

SourceSKILL.md
69errors.push(`HTML content overflows body by ${directions.join(' and ')}${reminder}`);
high line 87

Template literal with variable interpolation in command context

SourceSKILL.md
87`HTML dimensions (${widthInches.toFixed(1)}" × ${heightInches.toFixed(1)}") ` +
high line 88

Template literal with variable interpolation in command context

SourceSKILL.md
88`don't match presentation layout (${layoutWidth.toFixed(1)}" × ${layoutHeight.toFixed(1)}")`
high line 117

Template literal with variable interpolation in command context

SourceSKILL.md
117`Text box "${textPrefix}" ends too close to bottom edge ` +
high line 118

Template literal with variable interpolation in command context

SourceSKILL.md
118`(${distanceFromBottom.toFixed(2)}" from bottom, minimum ${minBottomMargin}" required)`
high line 467

Template literal with variable interpolation in command context

SourceSKILL.md
467errors.push(`Inline element <${node.tagName.toLowerCase()}> has margin-left which is not supported in PowerPoint. Remove margin from inline elements.`);
high line 470

Template literal with variable interpolation in command context

SourceSKILL.md
470errors.push(`Inline element <${node.tagName.toLowerCase()}> has margin-right which is not supported in PowerPoint. Remove margin from inline elements.`);
high line 473

Template literal with variable interpolation in command context

SourceSKILL.md
473errors.push(`Inline element <${node.tagName.toLowerCase()}> has margin-top which is not supported in PowerPoint. Remove margin from inline elements.`);
high line 476

Template literal with variable interpolation in command context

SourceSKILL.md
476errors.push(`Inline element <${node.tagName.toLowerCase()}> has margin-bottom which is not supported in PowerPoint. Remove margin from inline elements.`);
high line 557

Template literal with variable interpolation in command context

SourceSKILL.md
557`Text element <${el.tagName.toLowerCase()}> has ${hasBg ? 'background' : hasBorder ? 'border' : 'shadow'}. ` +
high line 569

Template literal with variable interpolation in command context

SourceSKILL.md
569`Placeholder "${el.id || 'unnamed'}" has ${rect.width === 0 ? 'width: 0' : 'height: 0'}. Check the layout CSS.`
high line 573

Template literal with variable interpolation in command context

SourceSKILL.md
573id: el.id || `placeholder-${placeholders.length}`,
high line 615

Template literal with variable interpolation in command context

SourceSKILL.md
615`DIV element contains unwrapped text "${text.substring(0, 50)}${text.length > 50 ? '...' : ''}". ` +
high line 818

Template literal with variable interpolation in command context

SourceSKILL.md
818`Text element <${el.tagName.toLowerCase()}> starts with bullet symbol "${text.substring(0, 20)}...". ` +
high line 928

Template literal with variable interpolation in command context

SourceSKILL.md
928console.log(`Browser console: ${msg.text()}`);
high line 931

Template literal with variable interpolation in command context

SourceSKILL.md
931await page.goto(`file://${filePath}`);
high line 968

Template literal with variable interpolation in command context

SourceSKILL.md
968: `Multiple validation errors found:\n${validationErrors.map((e, i) => ` ${i + 1}. ${e}`).join('\n')}`;
high line 980

Template literal with variable interpolation in command context

SourceSKILL.md
980throw new Error(`${htmlFile}: ${error.message}`);
medium line 905

Access to .env file

SourceSKILL.md
905tmpDir = process.env.TMPDIR || '/tmp',
Scanned on Feb 12, 2026
View Security Dashboard
Installation guide →