Collection of document processing suite including Excel, Word, PowerPoint, and PDF capabilities
You can install this plugin from any of these themed marketplaces. Choose one, add it as a marketplace, then install the plugin.
Choose your preferred installation method below
A marketplace is a collection of plugins. Every plugin gets an auto-generated marketplace JSON for individual installation, plus inclusion in category and themed collections. Add a marketplace once (step 1), then install any plugin from it (step 2).
One-time setup for access to all plugins
When to use: If you plan to install multiple plugins now or later
Step 1: Add the marketplace (one-time)
/plugin marketplace add https://claudepluginhub.com/marketplaces/all.json
Run this once to access all plugins
Step 2: Install this plugin
/plugin install document-skills-2@all
Use this plugin's auto-generated marketplace JSON for individual installation
When to use: If you only want to try this specific plugin
Step 1: Add this plugin's marketplace
/plugin marketplace add https://claudepluginhub.com/marketplaces/plugins/document-skills-2.json
Step 2: Install the plugin
/plugin install document-skills-2@document-skills-2
A comprehensive collection of specialized skills and capabilities for Claude Code, Claude AI, and Claude API.
/plugin marketplace add Cam10001110101/claude-skills-base
/mnt/skills
├── public/ # Production-ready core skills
│ │
│ ├── docx/ # Word document creation & editing
│ │ ├── SKILL.md # Main documentation
│ │ ├── docx-js.md # JavaScript library guide
│ │ ├── ooxml.md # OOXML format reference
│ │ ├── ooxml/ # OOXML specifications
│ │ └── scripts/ # Helper utilities
│ │
│ ├── pdf/ # PDF manipulation & forms
│ │ ├── SKILL.md # Main documentation
│ │ ├── FORMS.md # Form filling guide
│ │ ├── REFERENCE.md # API reference
│ │ └── scripts/ # Helper utilities
│ │
│ ├── pptx/ # PowerPoint presentation creation
│ │ ├── SKILL.md # Main documentation
│ │ ├── html2pptx.md # HTML to PowerPoint conversion
│ │ ├── css.md # Styling guide
│ │ ├── ooxml.md # OOXML format reference
│ │ ├── ooxml/ # OOXML specifications
│ │ └── scripts/ # Helper utilities
│ │
│ └── xlsx/ # Excel spreadsheet creation
│ ├── SKILL.md # Main documentation
│ └── recalc.py # Formula recalculation
│
└── examples/ # Specialized domain skills
│
├── algorithmic-art/
│ ├── SKILL.md
│ └── templates/ # Generator & viewer templates
│
├── artifacts-builder/
│ ├── SKILL.md
│ └── scripts/ # Bundling & initialization
│ └── shadcn-components.tar.gz
│
├── brand-guidelines/
│ └── SKILL.md
│
├── canvas-design/
│ ├── SKILL.md
│ └── canvas-fonts/ # 40+ TrueType fonts (TTF)
│ ├── GeistMono, IBMPlex, JetBrains, WorkSans
│ ├── Crimson, Lora, LibreBaskerville
│ └── Outfit, Instrument, NationalPark, etc.
│
├── code-to-music/
│ ├── SKILL.md
│ ├── electronic-music-pipeline.md
│ ├── traditional-music-pipeline.md
│ └── scripts/ # MIDI rendering & utilities
│
├── generative-art/
│ ├── SKILL.md
│ └── templates/ # Generator & viewer templates
│
├── internal-comms/
│ ├── SKILL.md
│ └── examples/ # Newsletter, FAQ, update templates
│
├── mcp-builder/
│ ├── SKILL.md
│ ├── reference/ # Best practices & guides
│ │ ├── node_mcp_server.md
│ │ └── python_mcp_server.md
│ └── scripts/ # Connection testing & evaluation
│
├── mcp-server/
│ ├── SKILL.md
│ ├── reference/ # Implementation guides
│ └── scripts/ # Server utilities
│
├── music-generation/
│ ├── SKILL.md
│ └── scripts/ # Synthesizers, MIDI tools
│ ├── drum_synthesizer.py
│ └── melodic_synthesizer.py
│
├── skill-creator/
│ ├── SKILL.md
│ └── scripts/ # Skill scaffolding tools
│ ├── init_skill.py
│ └── package_skill.py
│
├── slack-gif-creator/
│ ├── SKILL.md
│ ├── core/ # Visual effects engine
│ │ ├── gif_builder.py
│ │ ├── typography.py
│ │ └── visual_effects.py
│ └── templates/ # 13 animation templates
│ ├── bounce, explode, fade, flip
│ ├── spin, zoom, wiggle, shake, etc.
│
├── template-skill/
│ └── SKILL.md # Minimal template
│
├── theme-factory/
│ ├── SKILL.md
│ ├── theme-showcase.pdf
│ └── themes/ # 10 pre-built themes
│ ├── midnight-galaxy.md
│ ├── ocean-depths.md
│ └── tech-innovation.md, etc.
│
└── webapp-testing/
├── SKILL.md
├── examples/ # Testing patterns
└── scripts/ # Automation helpers
This repository follows Anthropic's Agent Skills pattern. Agent Skills are modular packages that extend Claude's capabilities by providing domain-specific knowledge, instructions, and executable tools.
As Anthropic explains, "Claude is powerful, but real work requires procedural knowledge and organizational context." Skills transform general-purpose agents into specialized ones through progressive disclosure:
SKILL.md
file with name and description, pre-loaded so Claude knows when to use itSKILL.md
documentationThis keeps context efficient while allowing unbounded skill complexity.
You can register this repository as a Claude Code Plugin from the marketplace by running the following command in Claude Code:
/plugin marketplace add Cam10001110101/claude-skills-base
After installing the plugin, you can use the skills by simply mentioning them. For example:
"use the pdf skill to extract the form fields from path/to/some-file.pdf"
"use the xlsx skill to create a financial model with formulas"
"use the pptx skill to create a presentation from this content"
Skills are available directly in Claude.ai conversations. Simply reference them when working with documents:
Integrate skills into custom agent workflows using the Claude Agent SDK. Skills are automatically discovered and loaded when available in the agent's environment.
See the API Integration section below for details on using skills with the Claude Messages API.
For more information, see the Agent Skills documentation and examples.
When you ask Claude to create a presentation, here's the automated workflow:
Receive content request for presentation creation
Create a .pptx using this content: [EXAMPLE_CONTENT]
Claude scans available PowerPoint skills and templates in the system
/mnt/skills/public/pptx/
├── SKILL.md # Main documentation
├── pptxgenjs.md # PptxGenJS library guide
├── ooxml.md # OOXML format reference
└── scripts/ # PowerPoint utilities
Claude reads the PptxGenJS documentation to understand API and formatting options, reviewing:
Claude creates a JavaScript file with presentation logic, styling, and content structure:
const pptxgen = require("pptxgenjs");
const { renderToStaticMarkup } = require("react-dom/server");
const React = require("react");
const { FiFileText, FiDatabase, FiCpu } = require("react-icons/fi");
const sharp = require("sharp");
// Create presentation
let pres = new pptxgen();
pres.layout = 'LAYOUT_16x9';
pres.author = 'Document Processing Solutions';
pres.title = 'Document Processing Pipelines & Automation';
// Color palette
const colors = {
primary: "185087", // Deep blue
secondary: "2F9477", // Teal
accent: "F56D40", // Orange
text: "2C3E50", // Dark gray
white: "FFFFFF"
};
// Helper function to create icons
async function createIcon(IconComponent, color, size = 100) {
const svgString = renderToStaticMarkup(
React.createElement(IconComponent, {
size, color: `#${color}`, strokeWidth: 2
})
);
const buffer = await sharp(Buffer.from(svgString)).png().toBuffer();
return `data:image/png;base64,${buffer.toString('base64')}`;
}
// Create slides
async function createPresentation() {
const icons = await createAllIcons();
// Slide 1: Title Slide
let slide1 = pres.addSlide();
slide1.background = { color: colors.primary };
slide1.addText("Document Processing Pipelines", {
x: 0.5, y: 1.5, w: 9, h: 1,
fontSize: 48, bold: true, color: colors.white,
fontFace: "Arial", align: "center"
});
// Add more slides with content, charts, and icons...
// Save presentation
await pres.writeFile({
fileName: "/mnt/user-data/outputs/document_processing_pipelines.pptx"
});
}
createPresentation().catch(console.error);
Run the generated script to build the presentation
cd /home/claude && node create_presentation.js
# Output: Presentation created successfully!
Confirm successful file creation and validate output
ls -lh /mnt/user-data/outputs/document_processing_pipelines.pptx
# Output: -rw-r--r-- 1 999 root 174K document_processing_pipelines.pptx
Professional presentation ready for delivery: document_processing_pipelines.pptx
Skills can be used with the Claude Messages API through the code execution tool. For detailed implementation guidance, see the Skills API Guide.
Quick Start Example:
import anthropic
client = anthropic.Anthropic(api_key="your-api-key")
response = client.messages.create(
model="claude-sonnet-4-5-20250929",
max_tokens=4096,
betas=["code-execution-2025-08-25", "skills-2025-10-02"],
container={
"skills": [
{"type": "anthropic", "skill_id": "xlsx", "version": "latest"},
{"type": "anthropic", "skill_id": "pptx", "version": "latest"}
]
},
messages=[
{"role": "user", "content": "Create a financial spreadsheet with charts"}
],
tools=[{"type": "code_execution_20250825", "name": "code_execution"}]
)
Key Points:
xlsx
, docx
, pptx
, pdf
(use "version": "latest"
or specific dates like "20251013"
)code-execution-2025-08-25
, skills-2025-10-02
Creating Custom Skills:
from anthropic.lib import files_from_dir
skill = client.beta.skills.create(
display_title="Financial Analysis",
files=files_from_dir("/path/to/skill"),
betas=["skills-2025-10-02"]
)
# Use custom skill with its generated ID
response = client.messages.create(
model="claude-sonnet-4-5-20250929",
max_tokens=4096,
betas=["code-execution-2025-08-25", "skills-2025-10-02"],
container={
"skills": [
{"type": "custom", "skill_id": skill.id}
]
},
messages=[{"role": "user", "content": "Analyze quarterly financials"}],
tools=[{"type": "code_execution_20250825", "name": "code_execution"}]
)
Production-ready skills for Microsoft Office documents and PDFs. These provide comprehensive Python and JavaScript/TypeScript toolkits for creating, editing, and analyzing professional documents.
# Linux/Ubuntu
sudo apt-get install libreoffice poppler-utils pandoc
# macOS
brew install libreoffice poppler pandoc
pip install openpyxl pandas pypdf pdfplumber reportlab pytesseract pdf2image markitdown
npm install -g pptxgenjs docx-js
from openpyxl import Workbook
from openpyxl.styles import Font
wb = Workbook()
sheet = wb.active
# Add headers
sheet['A1'] = 'Revenue'
sheet['A1'].font = Font(bold=True)
# Add data with formulas
sheet['B1'] = 2024
sheet['C1'] = 2025
sheet['B2'] = 1000000
sheet['C2'] = '=B2*1.1' # 10% growth formula
wb.save('financial_model.xlsx')
# Recalculate formulas
# python xlsx/recalc.py financial_model.xlsx
# 1. Analyze template
python pptx/scripts/thumbnail.py template.pptx
# 2. Rearrange slides (0-indexed)
python pptx/scripts/rearrange.py template.pptx working.pptx 0,5,5,12
# 3. Extract text inventory
python pptx/scripts/inventory.py working.pptx inventory.json
# 4. Replace text (create replacement.json first)
python pptx/scripts/replace.py working.pptx replacement.json final.pptx
# 1. Check if form is fillable
python pdf/scripts/check_fillable_fields.py form.pdf
# 2. Extract field information
python pdf/scripts/extract_form_field_info.py form.pdf fields.json
# 3. Edit fields.json with your data
# 4. Fill the form
python pdf/scripts/fill_fillable_fields.py form.pdf fields.json filled.pdf
# Extract text with tracked changes
pandoc --track-changes=all document.docx -o content.md
# For XML manipulation
python pptx/ooxml/scripts/unpack.py document.docx unpacked/
# Edit XML files
python pptx/ooxml/scripts/validate.py unpacked/ --original document.docx
python pptx/ooxml/scripts/pack.py unpacked/ modified.docx
├── xlsx/ # Excel tools
│ ├── recalc.py # Formula recalculation
│ └── SKILL.md # Excel documentation
│
├── docx/ # Word tools
│ ├── ooxml.md # OOXML documentation
│ └── SKILL.md # Word documentation
│
├── pptx/ # PowerPoint tools
│ ├── scripts/ # PowerPoint utilities
│ │ ├── thumbnail.py # Create slide thumbnails
│ │ ├── rearrange.py # Reorder slides
│ │ ├── inventory.py # Extract text inventory
│ │ └── replace.py # Replace text content
│ ├── ooxml/ # OOXML utilities
│ │ └── scripts/
│ │ ├── unpack.py # Unpack Office files
│ │ ├── validate.py # Validate XML
│ │ └── pack.py # Pack to Office format
│ ├── pptxgenjs.md # PptxGenJS documentation
│ └── SKILL.md # PowerPoint documentation
│
└── pdf/ # PDF tools
├── scripts/ # PDF utilities
│ ├── check_fillable_fields.py
│ ├── extract_form_field_info.py
│ ├── fill_fillable_fields.py
│ └── convert_pdf_to_images.py
├── FORMS.md # PDF forms documentation
└── SKILL.md # PDF documentation
Always use formulas instead of hardcoded values:
# ❌ Wrong - Hardcoded calculation
total = sum([100, 200, 300])
sheet['A4'] = total # Hardcodes 600
# ✅ Correct - Excel formula
sheet['A4'] = '=SUM(A1:A3)' # Dynamic formula
After adding formulas, always recalculate:
python xlsx/recalc.py spreadsheet.xlsx
fill_fillable_fields.py
for forms with interactive fieldsfill_pdf_form_with_annotations.py
for static forms requiring text overlayFor advanced document manipulation:
from pypdf import PdfWriter, PdfReader
writer = PdfWriter()
for pdf_file in ["doc1.pdf", "doc2.pdf"]:
reader = PdfReader(pdf_file)
for page in reader.pages:
writer.add_page(page)
with open("merged.pdf", "wb") as output:
writer.write(output)
import pdfplumber
import pandas as pd
with pdfplumber.open("document.pdf") as pdf:
tables = []
for page in pdf.pages:
for table in page.extract_tables():
if table:
df = pd.DataFrame(table[1:], columns=table[0])
tables.append(df)
if tables:
combined = pd.concat(tables, ignore_index=True)
combined.to_excel("extracted_tables.xlsx", index=False)
import pptxgen from "pptxgenjs";
let pres = new pptxgen();
let slide = pres.addSlide();
slide.addText("Hello World", {
x: 1,
y: 1,
w: 8,
h: 2,
fontSize: 44,
bold: true,
color: "363636"
});
pres.writeFile({ fileName: "presentation.pptx" });
If recalc.py
reports errors:
#REF!
: Check cell references#DIV/0!
: Add zero checks#VALUE!
: Verify data types#NAME?
: Check formula syntaxAlways validate after XML edits:
python pptx/ooxml/scripts/validate.py edited/ --original template.pptx
Remember coordinate transformation:
Advanced domain-specific skills for creative, technical, and business workflows.
All skills follow a standardized structure:
skill-name/
├── SKILL.md # Primary documentation and instructions
├── examples/ # Usage examples and templates
├── utils/ # Helper functions and utilities
└── tests/ # Validation and test cases
Every skill includes comprehensive documentation:
Each skill is self-contained and focused on a specific domain, enabling composition and reuse.
Skills encode proven workflows developed through extensive testing and iteration.
Prioritize professional-quality outputs over quick-and-dirty solutions.
Start with simple use cases and progressively handle complex scenarios.
Process Flow.md
- Detailed workflow example for PowerPoint generationexample-skils-flow-diagram.html
- Visual flow diagram for skill executionCLAUDE.md
- Development guidance for this repositoryEach skill includes comprehensive documentation in its SKILL.md
file:
/mnt/skills/public/xlsx/SKILL.md
- Excel spreadsheet creation/mnt/skills/public/docx/SKILL.md
- Word document processing/mnt/skills/public/pptx/SKILL.md
- PowerPoint presentation creation/mnt/skills/public/pdf/SKILL.md
- PDF manipulation/mnt/skills/public/*/ooxml/
/mnt/skills/examples/
1.0.0