# Send Office Document Editor to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "office-document-editor",
    "name": "Office Document Editor",
    "source": "tencent",
    "type": "skill",
    "category": "效率提升",
    "sourceUrl": "https://clawhub.ai/TsukiSama9292/office-document-editor",
    "canonicalUrl": "https://clawhub.ai/TsukiSama9292/office-document-editor",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/office-document-editor",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=office-document-editor",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md",
      "scripts/docx_editor.py",
      "scripts/fetch_file.sh",
      "scripts/generate_diff.py",
      "scripts/interactive_edit.sh",
      "scripts/pptx_editor.py"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "office-document-editor",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T13:47:06.405Z",
      "expiresAt": "2026-05-07T13:47:06.405Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=office-document-editor",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=office-document-editor",
        "contentDisposition": "attachment; filename=\"office-document-editor-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "office-document-editor"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/office-document-editor"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/office-document-editor",
    "downloadUrl": "https://openagent3.xyz/downloads/office-document-editor",
    "agentUrl": "https://openagent3.xyz/skills/office-document-editor/agent",
    "manifestUrl": "https://openagent3.xyz/skills/office-document-editor/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/office-document-editor/agent.md"
  }
}
```
## Documentation

### Universal Office Document Editor

Professional document editing for any DOCX/PPTX file from any source.

### Quick Reference

TaskApproachFetch file from uploadbash scripts/fetch_file.sh uploadFetch file from URLbash scripts/fetch_file.sh https://example.com/file.docxFetch file from SFTPbash scripts/fetch_file.sh sftp://user@host:/path/file.docxEdit DOCXuv run python scripts/docx_editor.py input.docx output.docx edits.jsonEdit PPTXuv run python scripts/pptx_editor.py input.pptx output.pptx edits.jsonGenerate diffuv run python scripts/generate_diff.py old.docx new.docx diff.mdInteractive modebash scripts/interactive_edit.sh

### Uploaded Files (Chat Attachments)

# 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

### Local Filesystem Paths

# 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

### Public URLs

# Download from URL
bash scripts/fetch_file.sh https://example.com/document.docx output.docx

### SFTP/SSH Remote Files

# Fetch via SFTP
bash scripts/fetch_file.sh sftp://user@host:/path/file.docx output.docx

### Creating Edit Rules

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]
    }
  ]
}

### Supported Styles

replace - Direct replacement
highlight - Yellow highlight
delete - Strikethrough
bold - Bold text
underline - Underline

### Slide Actions (PPTX only)

rearrange - Change slide order
add - Add new slide
remove - Delete slide

### Edit DOCX

uv run python scripts/docx_editor.py input.docx output.docx edits.json

Features:

Paragraph text editing
Table cell editing
Format preservation
Multiple replacements
Text additions

### Edit PPTX

uv run python scripts/pptx_editor.py input.pptx output.pptx edits.json

Features:

Slide text replacement
Slide rearrangement
Add/remove slides
Format preservation

### Generate Diff Report

uv run python scripts/generate_diff.py input.docx output.docx diff-report.md

Output: Standard Unified Diff format in Markdown.

### Step 1: Fetch File

# 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

### Step 2: Create Edit Rules

{
  "description": "IRB Review Response",
  "replacements": [
    {
      "search": "2026 年 2 月 28 日",
      "replace": "2026 年 8 月 31 日",
      "style": "highlight"
    }
  ]
}

### Step 3: Execute Edit

uv run python scripts/docx_editor.py input.docx output.docx edits.json

### Step 4: Generate Reports

# 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

### Step 5: Version Control

git add *.docx *.md diff.md
git commit -m "Edit: Description of changes"

### Interactive Mode

For guided editing:

bash scripts/interactive_edit.sh

This will prompt you through:

File source selection
Edit type selection
Details collection
Output location

### Example 1: Text Replacement with Highlight

{
  "replacements": [
    {
      "search": "February 28, 2026",
      "replace": "August 31, 2026",
      "style": "highlight"
    }
  ]
}

### Example 2: Add Text After Question

{
  "additions": [
    {
      "after": "What is the research topic?",
      "text": "[ANSWER] Data Structures and Algorithms",
      "style": "highlight"
    }
  ]
}

### Example 3: Rearrange Slides

{
  "slides": [
    {
      "action": "rearrange",
      "order": [0, 2, 1, 3, 4]
    }
  ]
}

### Format Preservation

✅ Text, paragraphs, tables: Fully preserved
✅ Highlights, strikethrough, bold: Supported
⚠️ Complex styles (custom themes): May be lost
❌ Images, charts: Manual handling required

### Table Text Replacement

python-docx requires exact match (including spaces, punctuation, newlines) for table text.

Solutions:

Use shorter search strings
Use markitdown to preview table content first
Use exact match in JSON

### Git Best Practices

Use local Git repo (do not upload to GitHub)
Add sensitive files to .gitignore
Backup to secure location regularly

### Dependencies

uv: Package management and virtual environment
python-docx: DOCX editing
python-pptx: PPTX editing
mammoth: DOCX to Markdown conversion
markitdown: Universal document conversion
curl: URL downloads
sftp: SFTP file transfers (optional)

### Installation

cd ~/.openclaw/workspace/skills/office-document-editor
uv sync

### "No replacements made"

Cause: Text doesn't match exactly

Solution:

# Preview content
uv run markitdown input.docx

# Use exact text from preview

### "Virtual environment not found"

Solution:

cd ~/.openclaw/workspace/skills/office-document-editor
uv sync

### "File not found"

Solutions:

Check file path is correct
Try uploading the file again
Verify URL is accessible
Check SFTP credentials

### fetch_file.sh

Universal file fetcher for all source types.

bash scripts/fetch_file.sh <source> [output_filename]

Sources:

upload - Latest uploaded file
/path/to/file - Local path
https://... - Public URL
sftp://... - SFTP remote

### docx_editor.py

Edit Word documents with formatting.

uv run python scripts/docx_editor.py input.docx output.docx edits.json

### pptx_editor.py

Edit PowerPoint presentations.

uv run python scripts/pptx_editor.py input.pptx output.pptx edits.json

### generate_diff.py

Generate Unified Diff reports.

uv run python scripts/generate_diff.py old.docx new.docx diff.md

### interactive_edit.sh

Interactive guided editing.

bash scripts/interactive_edit.sh

### workflow_complete.sh

Complete automated workflow.

bash scripts/workflow_complete.sh input.docx edits.json
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: TsukiSama9292
- Version: 1.0.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-04-30T13:47:06.405Z
- Expires at: 2026-05-07T13:47:06.405Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/office-document-editor)
- [Send to Agent page](https://openagent3.xyz/skills/office-document-editor/agent)
- [JSON manifest](https://openagent3.xyz/skills/office-document-editor/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/office-document-editor/agent.md)
- [Download page](https://openagent3.xyz/downloads/office-document-editor)