Awesome-openclaw-skills ai-pdf-builder
Generate professional PDFs from Markdown using Pandoc and LaTeX with AI-powered content generation. Creates whitepapers, term sheets, memos, agreements, SAFEs, NDAs, and more.
install
source · Clone the upstream repo
git clone https://github.com/sundial-org/awesome-openclaw-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/sundial-org/awesome-openclaw-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/ai-pdf-builder" ~/.claude/skills/sundial-org-awesome-openclaw-skills-ai-pdf-builder && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/sundial-org/awesome-openclaw-skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/ai-pdf-builder" ~/.openclaw/skills/sundial-org-awesome-openclaw-skills-ai-pdf-builder && rm -rf "$T"
manifest:
skills/ai-pdf-builder/SKILL.mdsource content
AI PDF Builder
Generate professional PDFs from Markdown with AI-powered content generation. Perfect for:
- Whitepapers & Litepapers
- Term Sheets
- SAFEs & NDAs
- Memos & Reports
- Legal Agreements
What's New in v1.1.0
- AI Content Generation - Generate documents from prompts using Claude
Flag - Inject company name directly via CLI--company
Command - Improve existing content with AIenhance
Command - Generate executive summaries from documentssummarize- Content Sanitization - Automatic cleanup of AI-generated content
Requirements
Option A: Local Generation (Free, Unlimited)
# macOS brew install pandoc brew install --cask basictex sudo tlmgr install collection-fontsrecommended fancyhdr titlesec enumitem xcolor booktabs longtable geometry hyperref graphicx setspace array multirow # Linux sudo apt-get install pandoc texlive-full
Option B: Cloud API (Coming Soon) No install required. Get API key at ai-pdf-builder.com
For AI Features: Set your Anthropic API key:
export ANTHROPIC_API_KEY="your-key-here"
Usage
Check System
npx ai-pdf-builder check
Generate via CLI
# From markdown file npx ai-pdf-builder generate whitepaper ./content.md -o output.pdf # With company name npx ai-pdf-builder generate whitepaper ./content.md -o output.pdf --company "Acme Corp" # Document types: whitepaper, memo, agreement, termsheet, safe, nda, report, proposal
AI Content Generation (New!)
# Generate a whitepaper from a prompt npx ai-pdf-builder ai whitepaper "Write a whitepaper about decentralized identity" -o identity.pdf # Generate with company branding npx ai-pdf-builder ai whitepaper "AI in healthcare" -o healthcare.pdf --company "HealthTech Inc" # Generate other document types npx ai-pdf-builder ai termsheet "Series A for a fintech startup" -o termsheet.pdf npx ai-pdf-builder ai memo "Q4 strategy update" -o memo.pdf --company "TechCorp"
Enhance Existing Content (New!)
# Improve and expand existing markdown npx ai-pdf-builder enhance ./draft.md -o enhanced.md # Enhance and convert to PDF in one step npx ai-pdf-builder enhance ./draft.md -o enhanced.pdf --pdf
Summarize Documents (New!)
# Generate executive summary npx ai-pdf-builder summarize ./long-document.md -o summary.md # Summarize as PDF npx ai-pdf-builder summarize ./report.pdf -o summary.pdf --pdf
Generate via Code
import { generateWhitepaper, generateTermsheet, generateSAFE, aiGenerate, enhance, summarize } from 'ai-pdf-builder'; // AI-Generated Whitepaper const aiResult = await aiGenerate('whitepaper', 'Write about blockchain scalability solutions', { company: 'ScaleChain Labs' } ); // Whitepaper from content const result = await generateWhitepaper( '# My Whitepaper\n\nContent here...', { title: 'Project Name', author: 'Your Name', version: 'v1.0', company: 'Acme Corp' } ); if (result.success) { fs.writeFileSync('whitepaper.pdf', result.buffer); } // Enhance existing content const enhanced = await enhance(existingMarkdown); // Summarize a document const summary = await summarize(longDocument); // Term Sheet with company const termsheet = await generateTermsheet( '# Series Seed Term Sheet\n\n## Investment Amount\n\n$500,000...', { title: 'Series Seed', subtitle: 'Your Company Inc.', company: 'Investor LLC' } ); // SAFE const safe = await generateSAFE( '# Simple Agreement for Future Equity\n\n...', { title: 'SAFE Agreement', subtitle: 'Your Company Inc.' } );
Document Types
| Type | Function | Best For |
|---|---|---|
| | Technical docs, litepapers |
| | Executive summaries |
| | Legal contracts |
| | Investment terms |
| | SAFE agreements |
| | Non-disclosure agreements |
| | Business reports |
| | Business proposals |
Custom Branding
const result = await generateWhitepaper(content, metadata, { customColors: { primary: '#E85D04', // Signal Orange secondary: '#14B8A6', // Coordinate Teal accent: '#0D0D0D' // Frontier Dark }, fontSize: 11, margin: '1in', paperSize: 'letter' });
Agent Instructions
When a user asks to generate a PDF:
- Check what type of document they need (whitepaper, term sheet, memo, etc.)
- Determine if they want AI generation or have existing content
- Get the content - either from their message, a file, or use AI to generate
- Ask for metadata if not provided (title, author, company name)
- Use
flag to inject company branding--company - Check if Pandoc is installed:
which pandoc - If Pandoc missing, provide install instructions or suggest cloud API
- Generate the PDF using the appropriate function
- Send the PDF file to the user
AI Commands Quick Reference:
- Generate new document from promptai <type> "<prompt>"
- Improve existing contentenhance <file>
- Create executive summarysummarize <file>
- Add company branding to any command--company "Name"