Skip to content
FunCoding

officecli-commonly-templates

Use this skill when producing a polished, Commonly-branded deliverable (.docx brief / memo, .xlsx data matrix, .pptx deck) and you do not have specific brand guidance from the user. Trigger on: 'write me a brief', 'one-pager', 'memo', 'data sheet', 'status matrix', 'short deck', 'summary deck', 'closing slide', 'final deliverable'. Routes to `officecli merge` with one of three pre-built starter templates that already carry the Commonly palette, fonts, and structure — so you populate content with one merge call instead of 30 individual `officecli set` commands. DO NOT use for fundraising decks (use `officecli-pitch-deck`), academic papers (use `officecli-academic-paper`), or financial models (use `officecli-financial-model`).

Star
1,361
License
Apache-2.0
Last commit
Oct 10, 2026

backend/commonly-bundled-skills/officecli/skills/officecli-commonly-templates/SKILL.md

View on GitHub

OfficeCLI Commonly Templates

A skill that does NOT teach you officecli syntax — it teaches you officecli merge. Three pre-built starter files at /opt/commonly-bundled-skills/officecli/templates/ carry the Commonly palette, font choices, and basic structure for the three deliverable shapes you most commonly produce. You substitute content via --data JSON; the styling is inherited.

When to use this vs. the base officecli-{docx,xlsx,pptx} skills

Use this skillUse base officecli sub-skill
Generic brief, memo, status update, executive summaryCustom layout the templates don't cover
Data status matrix (≤ ~50 rows, 5 columns)Multi-sheet workbook, formulas, charts
Short summary deck (3 slides)10+ slide deck, custom slide masters
You don't have specific brand guidance from the userUser specified palette / fonts / layout
Speed matters — one merge call vs. 30 set callsYou need fine-grained control

If the user asked for a fundraising deck (Series A/B/C, seed round, VC), route to officecli-pitch-deck. If they asked for an academic paper, officecli-academic-paper. If a financial model, officecli-financial-model. This skill is for everyday Commonly-branded business deliverables.

The three templates

All under /opt/commonly-bundled-skills/officecli/templates/:

Placeholder keys (pass via --data):

title           — H1, accent-blue, top of page
subtitle        — italic gray, just below title
context         — body paragraph under "Context" heading
finding_1       — bullet under "Findings" heading
finding_2       — bullet
finding_3       — bullet
recommendation  — body paragraph under "Recommendation" heading
footer          — small gray text, right-aligned (e.g. "Lily · 2026-05-06")

commonly-data.xlsx — 5-column status matrix with frozen header

Header row is pre-styled (white text on accent-strong blue, frozen). Row 2 has placeholders for one sample row; for additional rows, use officecli add after the merge to append.

Placeholder keys for row 2:

sample_item, sample_status, sample_owner, sample_notes, sample_updated

For multi-row data, use the docx or pptx template instead — XLSX merge only works for fixed cells. If you genuinely need a styled multi-row sheet, this template's value is the header styling and freeze pane; produce the data via merge for row 2 then officecli add the rest.

commonly-deck.pptx — 3-slide branded deck

Slide 1 (cover): accent bar + big title + subtitle + footer. Slide 2 (content): thin accent bar + heading + 3 bulleted body paragraphs + page number. Slide 3 (closing): full-bleed accent panel left + closing heading on it + body + meta-line on right.

Placeholder keys:

title, subtitle                                  — slide 1
slide2_heading, slide2_p1, slide2_p2, slide2_p3  — slide 2
closing_heading, closing_body, closing_meta      — slide 3

The flow

# 1. Pick the template
TEMPLATE="/opt/commonly-bundled-skills/officecli/templates/commonly-deck.pptx"
OUT="/workspace/$(basename "$PWD")/out/q4-strategy-deck.pptx"

# 2. Write the data file
cat > /tmp/data.json <<'EOF'
{
  "title": "Q4 Strategy",
  "subtitle": "Engineering priorities · 2026-Q4",
  "slide2_heading": "What ships this quarter",
  "slide2_p1": "Marketplace frontend reaching demo-quality",
  "slide2_p2": "Theo + Nova heartbeat reliability above 99%",
  "slide2_p3": "Mobile responsive Phase 2 (drawer pods, slide-over inspector)",
  "closing_heading": "Decision needed",
  "closing_body": "Approve the marketplace-frontend resourcing for Nov / Dec.",
  "closing_meta": "Lily · 2026-11-06 · #strategy"
}
EOF

# 3. Merge — produces a fully-styled, fully-populated output
officecli merge "$TEMPLATE" "$OUT" --data /tmp/data.json

# 4. (Optional) view the result before posting
officecli view "$OUT" text | head -30

# 5. Attach to the pod via the runtime tool
# commonly_attach_file({podId, filePath: "out/q4-strategy-deck.pptx"})

Verifying the output

The empty-office-stub guard at the upload route will reject a deliverable with no actual content — but a successful merge always produces non-empty files because every placeholder gets substituted (or stays as {{key}} literal text if the data file omits the key, which is itself non-empty content).

For peace of mind:

# Confirm placeholders are gone — none should remain
officecli view "$OUT" text | grep -E '\{\{[a-z_]+\}\}'
# (no output = clean; any output = caller forgot to supply that key)

Reverse handoff

If the user asks for something the templates don't cover:

  • More than 3 slides → fall through to base officecli-pptx. Use the merge output as your starting point if it speeds you up; otherwise officecli create + add.
  • Multi-section docx with custom heading hierarchy → fall through to officecli-docx.
  • Anything fundraising-stage-specific → officecli-pitch-deck.
  • User-supplied palette / brand guide → fall through to base sub-skill and follow their guide. The Commonly palette is a default, not a constraint.

Why this exists

Without templates, every deliverable started from officecli create (blank canvas) and required the agent to type out 30+ officecli set commands to produce styled output. Most attempts came back as plain default-styling files — the model couldn't reliably reproduce the Commonly palette / font / layout from memory each time. These templates encode that judgment once.

Building blocks: python-docx, openpyxl, and python-pptx were used to author the source templates; the .docx / .xlsx / .pptx files in this directory are the build output. To regenerate or rebrand, see backend/commonly-bundled-skills/officecli/templates/build_templates.py in the commonly repo.

Similar Skills

Featured

pdf

Read and edit PDFs: extract text and tables, merge, split, rotate, and fill forms.

ANanthropics/skills181k1,119 new stars in the last 7 days

Featured

canvas-design

Create posters and visual art as PNG or PDF, guided by a design philosophy.

ANanthropics/skills181k1,119 new stars in the last 7 days

Featured

docx

Create and edit Word docs with TOC, page numbers, headers and more.

ANanthropics/skills181k1,119 new stars in the last 7 days

Featured

doc-coauthoring

Co-write specs, proposals and decision docs through a structured, iterative workflow.

ANanthropics/skills181k1,119 new stars in the last 7 days

Featured

xlsx

Read and edit spreadsheets: add columns, compute formulas, format, and clean messy data.

ANanthropics/skills181k1,119 new stars in the last 7 days

Featured

pptx

Create and edit slide decks, generate slides from templates, and extract text.

ANanthropics/skills181k1,119 new stars in the last 7 days