report-to-google-doc — Claude skill: HTML report to Google Doc
Turns an existing HTML analytics report into a DOCX and uploads it to Google Drive. Handy when the report has to reach someone as a link.
npx skills add openai/plugins --skill report-to-google-doc -a codexWhat report-to-google-doc does
The skill takes one kind of input: an HTML report you already have. That means a local file, a downloaded copy of a blob-hosted report, or output from $build-report in HTML mode with the portable builder. A live report inside an MCP app is not converted.
The flow is HTML → DOCX → Drive upload. A bundled helper, scripts/report_to_google_doc_plan.py, runs against an absolute path and writes skeleton.txt, manifest.json, preflight_checks.json, report.docx and docx_upload_plan.json. Nothing goes to Drive until preflight_checks.json reads status: "passed" with zero errors. The upload itself goes through mcp__codex_apps__google_drive._upload_file, and the returned Drive URL is the deliverable.
Missing dependencies are handled in a local virtual environment: beautifulsoup4, pillow and python-docx are required, while cairosvg and headless Playwright are optional renderers. Pass an absolute path — a relative one leaves the helper without a report to read. The link alone is not the finish line: the uploaded file and the local DOCX structure get compared against the source report, covering headings, tables, links and images.
What it helps with
- build a DOCX from a finished HTML report with charts
- share an analytics report as a Google Drive link
- catch sections and tables dropped during conversion
- keep metric definitions, source notes and links in the document
- produce a document whose tables and charts fit the page width
Example prompts for the agent
- Convert
/tmp/analytics/report.htmlinto a Google Doc and give me the link - Build the DOCX from this HTML report and upload it to Drive
- Check
preflight_checks.jsonand uploadreport.docxif there are no errors
How to install report-to-google-doc
1Skills CLI (Vercel)
npx skills add openai/plugins --skill report-to-google-doc -a codex2Manually: put the files in place
.agents/skills/report-to-google-doc/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add openai/plugins --skill report-to-google-doc -a claude-code2Manually: put the files in place
~/.claude/skills/report-to-google-doc/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/report-to-google-doc/
Manually: put the files in place
.cursor/skills/report-to-google-doc/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install openai/plugins report-to-google-doc2Manually: put the files in place
.github/skills/report-to-google-doc/SKILL.mdPlatform CLI
gemini skills install https://github.com/openai/plugins --path plugins/data-analytics/skills/build-report/report-to-google-docManually: put the files in place
.devin/skills/report-to-google-doc/SKILL.mdThe legacy .windsurf/skills/ path still works
Claude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: Codex skills: how to install, where they live, how to call them
Questions about report-to-google-doc
How do I install report-to-google-doc in Claude?
Run npx skills add openai/plugins --skill report-to-google-doc -a codex, then confirm the skill landed at .agents/skills/report-to-google-doc/SKILL.md.
What does report-to-google-doc do?
It converts an existing HTML report into a DOCX, uploads that file to Google Drive and hands back the link. It also checks the upload against the source so sections, tables and charts survive the trip.
Which reports can the skill convert?
HTML only: a local file, a downloaded blob-hosted report, or $build-report HTML output. A live MCP app report is out of scope.