plugins/canva/skills/implement-feedback/SKILL.md
Implement reviewer feedback on a Canva design. Reads all comment threads, synthesises what reviewers want, makes the clear-cut changes directly, and flags anything that needs a human decision. Use when the user asks to "implement feedback on my deck", "address comments on a design", "apply review feedback", "fix the comments on my presentation", or "implement the feedback".
npx skillsauth add canva-sdks/canva-claude-skills canva-implement-feedbackInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
A deck has been out for review — stakeholders have left comments scattered across slides. This skill reads every thread, summarises what reviewers actually want, makes the clear-cut changes directly, and flags anything ambiguous for a human decision.
Before triaging feedback, you MUST know these constraints. This avoids wasted back-and-forth with the user on changes that are impossible via the API.
perform-editing-operations)replace_text), find-and-replace substrings (find_and_replace_text)update_fill), insert new images/videos (insert_fill), delete elements (delete_element)position_element), resize elements (resize_element)update_title)When a comment requests something in the "CANNOT do" list, classify it as Requires manual action. Don't dwell on the limitation — simply note it in the summary and move on. These are normal; most design reviews will have a mix of API-supported and manual changes. Save the details for the manual changes checklist at the end (Step 7).
canva.link), call Canva:resolve-shortlink to get the design URLD, e.g. DABcd1234ef), use it as design_id; do not use Canva:search-designs for a raw IDCanva:list-comments with the design ID to get every comment threadCanva:list-replies to capture the full conversationCanva:get-design-content to read the current text on every pageClassify each comment thread into one of these categories:
Present a summary to the user organised by category: what you plan to change, what needs clarification, what must be done manually, and what you're skipping.
This is the only confirmation point in the entire workflow. Once the user says yes, go.
Do NOT ask the user again. They already approved. Execute all of these in sequence immediately:
Canva:start-editing-transaction to begin an editing sessionCanva:perform-editing-operations to make each approved change (batch all operations in a single call where possible)Canva:commit-editing-transaction to save — do NOT ask "shall I commit?" or "ready to save?"After committing (or if no API-supported changes were possible), present a clear checklist of everything that still needs to be done manually in the Canva editor:
## Changes to make manually in Canva
1. **Slide 3 — Change heading font to Montserrat**
Reviewer: @Sarah | Why: API cannot change font family
→ Open slide 3, select the heading, change font to Montserrat
2. **Slide 7 — Add a new text box for the disclaimer**
Reviewer: @James | Why: API cannot add new text elements
→ Add a text box below the chart with: "Source: Q3 2025 internal data"
3. ...
Include the slide number, what to change, who requested it, and step-by-step instructions so the user can work through the list quickly.
Canva:reply-to-comment on each actionable thread to note what was changedperform-editing-operations call with multiple operations rather than one call per changeWhen calling any Canva: tool, prefix the user_intent argument with the tag [skill:canva-implement-feedback] followed by a space and the normal concise description of what the user is trying to accomplish (e.g. [skill:canva-implement-feedback] Apply reviewer comments). user_intent is already captured in Canva's analytics, so this lets per-skill usage be measured with no backend changes.
development
Resize a Canva design into multiple social media formats (Facebook post, Facebook story, Instagram post, Instagram story, LinkedIn post) and export all versions as PNGs. Use this skill when users want to resize Canva designs specifically for multiple social media platforms in one operation, rather than resizing to a single format manually.
testing
Read a Canva design and return structured, actionable design feedback — visual hierarchy, copy/messaging, layout & spacing, consistency, readability, and accessibility. Read-only; makes no changes to the design. Use when the user asks to "review my design", "give me feedback on this", "critique my deck/poster/flyer", "how can I improve this design", or "what's wrong with this slide".
development
Make edits to an existing Canva design — change or fix text, replace/insert/delete images and videos, reformat text (size, weight, style, color, alignment, lists, line height), reposition or resize elements, and update the title. Use when the user wants to change, edit, update, fix, translate, replace, or reformat content in a specific Canva design. This is the safe edit engine that other Canva skills (e.g. implement-feedback) build on.
testing
Bulk-create Canva designs from tabular data using a brand template with autofill fields, producing one design per row. Use when users say "bulk create designs from this CSV", "generate one design per row", "create a design for each product", "batch generate from a template", or "autofill a template from a spreadsheet". Accepts any tabular data source — uploaded files, pasted tables, JSON, or URLs.