office-document-editorProfessional DOCX/PPTX document editing with tracked changes, formatting preservation, highlights, strikethrough, and Git version control.
Install via ClawdBot CLI:
clawdbot install TsukiSama9292/office-document-editorProfessional document editing for any DOCX/PPTX file from any source.
| Task | Approach |
|------|----------|
| Fetch file from upload | bash scripts/fetch_file.sh upload |
| Fetch file from URL | bash scripts/fetch_file.sh https://example.com/file.docx |
| Fetch file from SFTP | bash scripts/fetch_file.sh sftp://user@host:/path/file.docx |
| Edit DOCX | uv run python scripts/docx_editor.py input.docx output.docx edits.json |
| Edit PPTX | uv run python scripts/pptx_editor.py input.pptx output.pptx edits.json |
| Generate diff | uv run python scripts/generate_diff.py old.docx new.docx diff.md |
| Interactive mode | bash scripts/interactive_edit.sh |
# Get latest uploaded DOCX
bash scripts/fetch_file.sh upload output.docx
# Get latest uploaded PPTX
bash scripts/fetch_file.sh upload output.pptx
Location: ~/.openclaw/workspace/media/inbound/file_*.docx
# Copy from local path
bash scripts/fetch_file.sh ~/Documents/report.docx output.docx
# Or direct path
bash scripts/fetch_file.sh /absolute/path/file.pptx output.pptx
# Download from URL
bash scripts/fetch_file.sh https://example.com/document.docx output.docx
# Fetch via SFTP
bash scripts/fetch_file.sh sftp://user@host:/path/file.docx output.docx
Create edits.json with your editing instructions:
{
"description": "Edit description",
"replacements": [
{
"search": "old text",
"replace": "new text",
"style": "highlight"
}
],
"additions": [
{
"after": "after this text",
"text": "add this text",
"style": "highlight"
}
],
"slides": [
{
"action": "rearrange",
"order": [0, 2, 1, 3]
}
]
}
replace - Direct replacementhighlight - Yellow highlightdelete - Strikethroughbold - Bold textunderline - Underlinerearrange - Change slide orderadd - Add new slideremove - Delete slideuv run python scripts/docx_editor.py input.docx output.docx edits.json
Features:
uv run python scripts/pptx_editor.py input.pptx output.pptx edits.json
Features:
uv run python scripts/generate_diff.py input.docx output.docx diff-report.md
Output: Standard Unified Diff format in Markdown.
# From upload
bash scripts/fetch_file.sh upload input.docx
# From URL
bash scripts/fetch_file.sh https://example.com/file.docx input.docx
# From local path
bash scripts/fetch_file.sh ~/Documents/file.docx input.docx
{
"description": "IRB Review Response",
"replacements": [
{
"search": "2026 年 2 月 28 日",
"replace": "2026 年 8 月 31 日",
"style": "highlight"
}
]
}
uv run python scripts/docx_editor.py input.docx output.docx edits.json
# Unified Diff
uv run python scripts/generate_diff.py input.docx output.docx diff.md
# Convert to Markdown
uv run markitdown output.docx > output.md
git add *.docx *.md diff.md
git commit -m "Edit: Description of changes"
For guided editing:
bash scripts/interactive_edit.sh
This will prompt you through:
{
"replacements": [
{
"search": "February 28, 2026",
"replace": "August 31, 2026",
"style": "highlight"
}
]
}
{
"additions": [
{
"after": "What is the research topic?",
"text": "[ANSWER] Data Structures and Algorithms",
"style": "highlight"
}
]
}
{
"slides": [
{
"action": "rearrange",
"order": [0, 2, 1, 3, 4]
}
]
}
python-docx requires exact match (including spaces, punctuation, newlines) for table text.
Solutions:
markitdown to preview table content first.gitignorecd ~/.openclaw/workspace/skills/office-document-editor
uv sync
Cause: Text doesn't match exactly
Solution:
# Preview content
uv run markitdown input.docx
# Use exact text from preview
Solution:
cd ~/.openclaw/workspace/skills/office-document-editor
uv sync
Solutions:
Universal file fetcher for all source types.
bash scripts/fetch_file.sh <source> [output_filename]
Sources:
upload - Latest uploaded file/path/to/file - Local pathhttps://... - Public URLsftp://... - SFTP remoteEdit Word documents with formatting.
uv run python scripts/docx_editor.py input.docx output.docx edits.json
Edit PowerPoint presentations.
uv run python scripts/pptx_editor.py input.pptx output.pptx edits.json
Generate Unified Diff reports.
uv run python scripts/generate_diff.py old.docx new.docx diff.md
Interactive guided editing.
bash scripts/interactive_edit.sh
Complete automated workflow.
bash scripts/workflow_complete.sh input.docx edits.json
Generated Mar 1, 2026
Law firms can use this skill to edit contracts and legal briefs, applying tracked changes like highlights and strikethroughs for revisions. It supports version control via Git, enabling collaborative editing and audit trails for compliance.
Researchers and students can edit DOCX files for papers or theses, replacing text with highlights for feedback and generating diff reports for peer review. It handles formatting preservation to maintain academic standards.
Marketing teams can edit PPTX files to update slide content, rearrange slides for better flow, and add new slides with highlighted text. This streamlines presentation revisions for client meetings or internal reports.
Software companies can edit technical manuals or SOPs in DOCX format, replacing outdated terms with new ones and adding notes via text additions. Diff reports help track changes across versions for documentation audits.
Financial institutions can edit regulatory reports in DOCX, applying highlights to key changes and using Git for version control to ensure audit readiness. It supports fetching files from secure sources like SFTP for data handling.
Offer a monthly subscription for businesses to access automated document editing tools, with tiered plans based on usage volume. Revenue comes from recurring fees and premium support for complex edits.
Provide a free version with basic editing capabilities, while charging for advanced features like batch processing, custom styles, or priority diff reports. Monetize through in-app purchases or enterprise licenses.
Sell consulting packages to integrate this skill into existing workflows, such as legal or academic systems, with custom training and support. Revenue is generated from one-time project fees and ongoing maintenance contracts.
💬 Integration Tip
Integrate with existing Git workflows for version control and use the fetch scripts to automate file retrieval from diverse sources like URLs or SFTP.
Write persuasive copy for landing pages, emails, ads, sales pages, and marketing materials. Use when you need to write headlines, CTAs, product descriptions, ad copy, email sequences, or any text meant to drive action. Covers copywriting formulas (AIDA, PAS, FAB), headline writing, emotional triggers, objection handling in copy, and A/B testing. Trigger on "write copy", "copywriting", "landing page copy", "headline", "write a sales page", "ad copy", "email copy", "persuasive writing", "how to write [marketing text]".
Write compelling UX copy, marketing content, and product messaging. Use when writing button labels, error messages, landing pages, emails, CTAs, empty states, tooltips, or any user-facing text.
Use when you have a spec or requirements for a multi-step task, before touching code
You are a Writing Team Lead managing specialized writers via MCP tools. Please ANALYZE the writing task and then:1. if exist references, create a detailed co...
Creates high-quality, SEO-optimized content that ranks in search engines. Applies on-page SEO best practices, keyword optimization, and content structure for...
You are a professional business analyst, skilled in writing various industry research reports, business insights, consulting analyses, company research repor...