OfficeCLI Document Editing
Sylinko/Everywhere
Creates, reads, proofreads and edits Word, Excel and PowerPoint files through the officecli command line tool, with no Office installation needed.
Generates local PPTX, DOCX, XLSX, report and image files for an OpenClaw agent through officecli agent-bridge, then sends the finished file back to the channel.
$ npx skills add officecli/officecli --skill openclaw-officecli -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install officecli/officecli openclaw-officecli --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/officecli/officecli.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/openclaw-officecli .claude/skills/openclaw-officecli && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "openclaw-officecli" agent skill from https://github.com/officecli/officecli/tree/main/skills/openclaw-officecli into .claude/skills/openclaw-officecli/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openclaw-officecli", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/officecli/officecli/tree/main/skills/openclaw-officecliType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add officecli/officecli --skill openclaw-officecli -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install officecli/officecli openclaw-officecli --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/officecli/officecli.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/openclaw-officecli .agents/skills/openclaw-officecli && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "openclaw-officecli" agent skill from https://github.com/officecli/officecli/tree/main/skills/openclaw-officecli into .agents/skills/openclaw-officecli/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openclaw-officecli", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add officecli/officecli --skill openclaw-officecli -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install officecli/officecli openclaw-officecli --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/officecli/officecli.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/openclaw-officecli .cursor/skills/openclaw-officecli && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "openclaw-officecli" agent skill from https://github.com/officecli/officecli/tree/main/skills/openclaw-officecli into .cursor/skills/openclaw-officecli/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openclaw-officecli", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/officecli/officecli.git --path skills/openclaw-officecli--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add officecli/officecli --skill openclaw-officecli -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install officecli/officecli openclaw-officecli --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/officecli/officecli.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/openclaw-officecli .gemini/skills/openclaw-officecli && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "openclaw-officecli" agent skill from https://github.com/officecli/officecli/tree/main/skills/openclaw-officecli into .gemini/skills/openclaw-officecli/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openclaw-officecli", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install officecli/officecli openclaw-officecliInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add officecli/officecli --skill openclaw-officecli -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/officecli/officecli.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/openclaw-officecli .github/skills/openclaw-officecli && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "openclaw-officecli" agent skill from https://github.com/officecli/officecli/tree/main/skills/openclaw-officecli into .github/skills/openclaw-officecli/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openclaw-officecli", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add officecli/officecli --skill openclaw-officecli -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install officecli/officecli openclaw-officecli --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/officecli/officecli.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/openclaw-officecli .opencode/skills/openclaw-officecli && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "openclaw-officecli" agent skill from https://github.com/officecli/officecli/tree/main/skills/openclaw-officecli into .opencode/skills/openclaw-officecli/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openclaw-officecli", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
openclaw-officecliGenerates local PPTX, DOCX, XLSX, report and image files for an OpenClaw agent through officecli agent-bridge, then sends the finished file back to the channel.
This skill lets an OpenClaw agent produce local pptx, docx, xlsx, report and standalone image files when you clearly want a file, such as a five-slide deck, a customer-facing Word document, a budget spreadsheet or a launch image, and then returns the result to the current channel as an attachment. It does not trigger for plain explanations, brainstorming, outlines or analysis with no file deliverable.
Generation goes through officecli agent-bridge, a structured protocol with stdio transport, Content-Length framing, JSON-RPC 2.0 and an office.generate tool, instead of parsing human CLI output. The agent first runs fix-officecli-env.sh and check-officecli-env.sh to refresh the bundle and confirm officecli is installed and reachable, reads the bridge's capabilities, turns your request into a document type, topic, prompt and optional mode, language, style, audience or ratio, and follows task events such as progress, questions, output and completion. Images in decks can be switched off on request, and standalone images use the img type. An uninstall script is included.
12 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 3442550. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (Shell), which the agent can run.
Shell commands in SKILL.md call:
npmbrewFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
OpenClaw OfficeCLI Bridge loads about 2.2k tokens when it runs. Until then it costs about 56 tokens; SKILL.md has 1,118 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from officecli/officecli at commit 3442550, republished under its MIT licence (© officecli). 1,118 words, ~2,225 tokens.
.claude/skills/openclaw-officecli/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.This skill lets an OpenClaw agent generate local pptx, docx, xlsx, report, and standalone img files through officecli agent-bridge, then send the generated file back to the current channel as an attachment.
Trigger when the user clearly wants a file artifact, for example:
generate a five-slide PPT about an enterprise collaboration platformwrite a customer-facing docx for mecreate a budget excel sheetgenerate a launch imageturn this into slideswrite a docx for customersDo not trigger for:
The skill must use officecli agent-bridge as the local execution protocol.
Do not treat officecli new ... stdout as a protocol.
Always prefer the structured bridge:
stdioContent-LengthJSON-RPC 2.0office.generateRequired bridge methods:
initializecapabilities/getsession/opentask/invoketask/respondtask/statustask/cancelPrimary event types:
task.startedtask.progresstask.questiontask.outputtask.completedtask.failedtask.cancelledfix-officecli-env.sh before starting any bridge session so the skill bundle is refreshed and any missing officecli setup is repaired.check-officecli-env.sh after the repair step.officecli is installed, configured, and reachable.officecli agent-bridge can be started locally.initialize or capabilities/get before invoking generation, and cache document_generation.pptx.image_support and top-level image_generation.update; if available=true, use update_command or your own repair flow instead of parsing human CLI update prompts.document_typetopicpromptmodelangstyleaudienceratio for imgpptx, set enable_images=false; otherwise follow the bridge capability default instead of hard-coding a client default.img, call office.generate with document_type=img; do not call office.render, do not set mode=best, and do not use local image provider config.interactive=true by default so the chat can handle follow-up questions.mode=fast by default unless the user explicitly asks for a higher-quality, more iterative workflow and the document type is not img.task.question, present the question naturally in the channel and forward the answer via task/respond.task.output, read result.file_path and send the file as an attachment in the current channel.task.failed, convert the error into a user-friendly message.task/cancel.officecli config runtime to inspect the local default runtime mode when the host asks how OfficeCLI is configuredofficecli config set-runtime hosted when the host explicitly wants platform-managed hosted generation by defaultofficecli config set-runtime external when the host wants local/external generation by defaultofficecli, do not suggest or run npm install -g officecli on top of itFor all OpenClaw agents using this skill:
document_generation.pptx.image_support.default_enabled during capability discoveryupdate.available during capability discoverydocument_generation.pptx.image_support.disable_flag when explaining how to produce a text-only deckupdate.available=true, prefer a structured repair/refresh path and show update_command when the host asks how to updatedocument_generation.pptx.image_support.config_command and config_fields when the user reports missing imagestask.output, task.completed, or task/status includes result_meta.image_support.attention_required=true, surface that immediately in the chatresult_meta.image_support.reason=image_generation_degraded, tell the user the deck was downgraded to a no-image version and they should check image_base_url, image_api_key, and image_modelresult_metaofficecli stdout; use bridge capability fieldsFor standalone img requests:
image_generation during capability discoveryoffice.generate with document_type=imgratio=square|landscape|portrait when the user asks for a shape; default to squarereference_image local path or http/https URL when the user provides a reference imageexternal mode one successful standalone image consumes one generation count, while in hosted mode it consumes hosted credits; free image usage has a separate 3-per-day bucket from free document generationpublish=false only for local-only outputoffice.render, local config set-generation image settings, mode=best, source files, or local previewofficecli setup on every task by running fix-officecli-env.shofficecli binary unless the host explicitly opts in, for example with OFFICECLI_REFRESH_BINARY=1officecli, run uninstall-officecli.shbrew uninstall officecli/homebrew-officecli/officecli first; if their formula uses the short name, use brew uninstall officecli, then run npm install -g officeclicheck-officecli-env.sh as the single readiness probe for binary, config, and bridgefix-officecli-env.sh as the single repair entrypointOFFICECLI_SKIP_PUBLISH_SETUP=1 before running the fix scriptagent-bridge until the check script returns readyofficecli environment error; when repair fails, use the fix script's final structured status as the source of truth, and do not fall back to any other PPT/DOC/XLS generation tool without explicit user approvalWhen generation succeeds:
task.output.payload.result.file_pathresult_meta.image_support.messageDo not only send a local file path unless attachment upload is impossible on the current channel.
task.question, relay it instead of inventing your own replacement question.office.review / office.score automatically after generation unless the user explicitly asks for scoring, review, validation, or quality checkingExpected local setup:
officecli available in PATH, or repairable by fix-officecli-env.shimg requires license config; document/PPT image assets also require generation config© officecli, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 8 other files in skills/openclaw-officecli of officecli/officecli.
Open the folder on GitHubat commit 3442550
OpenClaw OfficeCLI Bridge next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| OpenClaw OfficeCLI Bridge this skillofficecli/officecli | 106 | — | ~2.2k | Automated safety check: Pass | MIT | |
| OfficeCLI Document EditingSylinko/Everywhere | 6.3k | 8 repos | ~6.3k | Automated safety check: Pass | Custom licence | |
| MarkitdownImCa0/just-laws | 781 | 14 repos | ~3.2k | Automated safety check: Notes | MIT | |
| Office File TransformCherryHQ/cherry-studio | 52k | — | ~4.7k | Automated safety check: Pass | AGPL-3.0 | |
| MinerU Document Readeropendatalab/MinerU | 81k | — | ~9.4k | Automated safety check: Warn | Custom licence | |
| GenOffice Document CLIgenspark-ai/genoffice | 8.8k | — | ~19k | Automated safety check: Pass | Apache-2.0 |
Sylinko/Everywhere
Creates, reads, proofreads and edits Word, Excel and PowerPoint files through the officecli command line tool, with no Office installation needed.
ImCa0/just-laws
Convert files and office documents to Markdown. An agent skill from ImCa0/just-laws.
CherryHQ/cherry-studio
Derives new files from a selected part of a spreadsheet, Word document, PDF or slide deck, such as a cell range, paragraph, page or slide, without ever modifying the source file.
opendatalab/MinerU
Reads, OCRs, searches and cites local documents through the mineru CLI, covering PDF, images, Office files, EPUB, HTML and CSV.
genspark-ai/genoffice
Creates, converts, reads and edits real pptx, xlsx, docx and PDF files locally through the genoffice command line.
plutext/docx4j
A skill your agent uses when writing Java code that creates, reads or edits Word (.docx), PowerPoint (.pptx) or Excel (.xlsx) files with docx4j — including generating documents, editing existing…
officecli/officecli
Routes Office document and image tasks to the OfficeCLI tool for creating, editing and converting PPTX, DOCX, XLSX, reports and generated images, after checking it supports the workflow.
Categories
Generates local PPTX, DOCX, XLSX, report and image files for an OpenClaw agent through officecli agent-bridge, then sends the finished file back to the channel. This skill lets an OpenClaw agent produce local pptx, docx, xlsx, report and standalone image files when you clearly want a file, such as a five-slide deck, a customer-facing Word document, a budget spreadsheet or a launch image, and then returns the result to the current channel as an attachment. It does not trigger for plain explanations, brainstorming, outlines or analysis with no file deliverable.
OpenClaw OfficeCLI Bridge fits situations like: generating a PPTX deck, Word document or Excel sheet from a prompt; producing a standalone image such as a launch graphic; sending generated Office files back to a chat channel as attachments.
Run `npx skills add officecli/officecli --skill openclaw-officecli -a claude-code`. Or copy the skill folder (skills/openclaw-officecli in officecli/officecli) into .claude/skills/openclaw-officecli in your project. Claude Code loads it when a task matches its description.
Run `npx skills add officecli/officecli --skill openclaw-officecli -a codex`. Or copy the skill folder (skills/openclaw-officecli in officecli/officecli) into .agents/skills/openclaw-officecli in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add officecli/officecli --skill openclaw-officecli -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/openclaw-officecli, .gemini/skills/openclaw-officecli, .github/skills/openclaw-officecli and .opencode/skills/openclaw-officecli in your project.
Going by SKILL.md and its folder, OpenClaw OfficeCLI Bridge needs a shell for the scripts in its folder and the command-line tools its instructions call (npm and brew). Our summary lists: officecli installed, configured and reachable; An OpenClaw agent environment.
SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
OpenClaw OfficeCLI Bridge is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 8.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with OpenClaw OfficeCLI Bridge: OfficeCLI Document Editing (Sylinko/Everywhere, 6.3k stars), Markitdown (ImCa0/just-laws, 781 stars), Office File Transform (CherryHQ/cherry-studio, 52k stars) and MinerU Document Reader (opendatalab/MinerU, 81k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
officecli (a GitHub organization) maintains it in officecli/officecli, which has 106 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on August 10, 2026.
Source: officecli/officecli on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.