>- Applies bundled or SharePoint-hosted organization-approved PowerPoint and Word templates whenever the agent is about to create, generate, export, or substantially rebuild a presentation, slide deck, report, proposal, brief, memo, letter, or other .pptx, .docx, or .dotx deliverable. Use before any file-generation tool or document-creation skill so the output starts from the appropriate brand template instead of a blank file. Do not use for read-only analysis or minor edits that do not create a new Office file.
npx skills add https://github.com/microsoft/cat-agent-skills --skill brand-template-enforcer
Before generating a PowerPoint or Word file, select and apply a compatible
template from assets/.
.pptx.docx or .dotxpresentation, slides, or deck means PowerPoint; report, proposal, brief,
memo, or letter means Word.
assets/ and theagent's configured knowledge sources.
assets/template-manifest.json as optional routing configuration.{{PLACEHOLDER}} values. These starter entries MUST NOT block discovery of
valid templates available elsewhere.
enabled is false.useWhenmatches the deliverable.
assets/ or configured agentknowledge.
filename and available metadata best match the requested deliverable.
sources: use anexisting asset first, then retrieve the exact configured
sharepointKnowledge file.
that exact file from the configured knowledge source where it was found.
previews, or screenshots are not substitutes for the template file.
/app/uploads/, immediately copy it to/app/workspace/template.pptx for PowerPoint or
/app/workspace/template.docx for Word. Pass only the workspace copy to
preprocessing and generation scripts.
analyzing-pptx skill on/app/workspace/template.pptx to inspect slide masters, layouts, and
placeholder indices before generation. Retain the workspace binary for
template-based generation.
inspectionMode is master-layout-only, skip content OCR and inspectlayouts and placeholders directly. If automatic analysis returns zero OCR
characters for every slide, stop further OCR attempts and switch
immediately to master, layout, and placeholder inspection.
template could not be accessed.
user which template formats are required and ask them to add one to
assets/ or configure it as SharePoint knowledge. Generate without a
template only when the user explicitly approves an unbranded exception.
the bundled template.
theme colors, backgrounds, logos, and recurring elements. Create slides
from existing layouts rather than blank slides.
headers, footers, cover pages, page numbering, and recurring elements.
Apply named styles rather than direct formatting.
file-generation tool, script, or skill. Do not merely describe the brand or
approximate its colors in a newly created blank file. NEVER pass an
/app/uploads/ path to a generation script.
10. Return the branded output and identify the template filename and source
used.
See template selection rules for manifest
behavior and PowerPoint generation procedures
for safe template manipulation.
Customize the placeholders below when explicit brand-writing rules are
available. Unresolved placeholders MUST NOT block use of a valid template.
Ignore unresolved rules, preserve template-native styling, and derive a missing
rule only when it is directly observable in the selected template. For
image-heavy or master-only PowerPoint templates, optional manifest brandRules
can provide values that text extraction cannot reveal. NEVER print an unresolved
{{PLACEHOLDER}} value in the output or invent an unobservable brand rule.
{{BRAND_NAME}}{{BRAND_DESCRIPTION}}{{LOGO_USAGE_RULES}}{{TRADEMARK_TEXT}}{{BRAND_VOICE_AND_TONE}}{{DEFAULT_AUDIENCE}}{{READING_LEVEL}}{{PREFERRED_TERMS}}{{PROHIBITED_TERMS}}{{CAPITALIZATION_RULES}}{{DATE_NUMBER_CURRENCY_RULES}}
{{REQUIRED_LEGAL_LANGUAGE}}
Write concise, audience-appropriate content that follows these rules. Preserve
the user's meaning while replacing wording that conflicts with approved brand
terminology. Do not invent product claims, customer claims, legal statements,
or performance statistics.
{{POWERPOINT_TITLE_FONT}}{{POWERPOINT_BODY_FONT}}{{WORD_HEADING_FONT}}{{WORD_BODY_FONT}}{{FALLBACK_FONTS}}{{POWERPOINT_MIN_TITLE_SIZE_PT}}{{POWERPOINT_MIN_BODY_SIZE_PT}}{{WORD_BODY_SIZE_AND_SPACING}}Use fonts and sizes defined by the selected template first. Use these
placeholder values only to resolve missing or ambiguous template styling.
{{PRIMARY_COLOR_HEX}}{{SECONDARY_COLOR_HEX}}{{ACCENT_COLOR_HEX}}{{APPROVED_BACKGROUND_COLORS}}{{APPROVED_TEXT_COLORS}}{{PROHIBITED_COLOR_COMBINATIONS}}{{MINIMUM_CONTRAST_REQUIREMENT}}Use the selected template's theme colors. Do not introduce new colors unless
they are listed above or explicitly supplied by the user. Maintain accessible
contrast for text, icons, charts, and data labels.
{{IMAGERY_STYLE}}{{ICON_STYLE}}{{CHART_STYLE}}{{CONTENT_DENSITY}}{{MARGIN_AND_WHITESPACE_RULES}}{{FOOTER_RULES}}Prefer template-native layouts, components, and image treatments. Keep repeated
elements consistent across every page or slide.
sldIdLst.clear() to remove template slides. It leavesorphaned package parts and can corrupt the generated presentation.
analyzing-pptx against an /app/uploads/ path. Invoke itonly after the binary is available in /app/workspace/.
returns zero OCR characters, inspect masters, layouts, and placeholders
directly.
.potx files are not supported. Convert the template to.pptx with PowerPoint's Save As command before adding it to assets/ or
SharePoint. Do not fix this by renaming the extension.
present in the selected template or supplied by the user.
Word.
code. Do not run macros or embedded executables.
Use either of these source methods:
assets/.knowledge, and configure a sharepointKnowledge source in
assets/template-manifest.json.
.pptx only.docx or .dotxThe manifest is optional. Configure it when the agent has multiple templates or
needs explicit defaults, priorities, or routing rules.
Templates added as SharePoint agent knowledge can be discovered without a
manifest. Configure assets/template-manifest.json when explicit routing is
needed. For each manifest-managed SharePoint template, configure:
sources[].url: Complete SharePoint file URL.sources[].fileName: Exact filename, including extension.sources[].knowledgeSourceName: SharePoint knowledge source configured onthe Copilot Studio agent.
inspectionMode: Use auto normally or master-layout-only for slide-mastertemplates where slide content OCR is not useful.
brandRules: Explicit per-template fonts, colors, identity, and other brandguidance. Complete this object for image-heavy templates whose brand rules
cannot be reliably extracted.
Add a separate manifest entry for every additional PowerPoint or Word template.
The SharePoint URL and filename MUST identify the same file. Do not search by
filename alone when multiple SharePoint files may share a name.
The starter manifest includes disabled entries for:
To use one, replace its source placeholders, complete any required
brandRules, and change enabled from false to true. Delete starter entries
that are not needed.
The current package does not bundle a PowerPoint binary. Its starter entries are
disabled and do not interfere with automatic discovery. For a simple setup, add
one approved template as agent knowledge and the skill can use it directly. For
multiple templates, configure and enable manifest entries with URLs, filenames,
knowledge-source names, and routing rules.
Comprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. When Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks
Comprehensive PDF manipulation toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale.
Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text/tables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting/decrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.
Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of 'Word doc', 'word document', '.docx', or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a 'report', 'memo', 'letter', 'template', or similar deliverable as a Word or .docx file, use this skill. Do NOT use for PDFs, spreadsheets, Google Docs, or general coding tasks unrelated to document generation.
Use this skill any time a .pptx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx file (even if the extracted content will be used elsewhere, like in an email or summary); editing, modifying, or updating existing presentations; combining or splitting slide files; working with templates, layouts, speaker notes, or comments. Trigger whenever the user mentions \"deck,\" \"slides,\" \"presentation,\" or references a .pptx filename, regardless of what they plan to do with the content afterward. If a .pptx file needs to be opened, created, or touched, use this skill.
Create and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax. Use when working with .md files in Obsidian, or when the user mentions wikilinks, callouts, frontmatter, tags, embeds, or Obsidian notes.
Take microsoft/brand-template-enforcer from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.