docs: Google Slides integration design spec - #114
Conversation
Design spec (no code changes) for a new slides.* tool namespace inside @valet/plugin-google-workspace, covering 13 v1 actions across read, comments, write, and create groups. Motivation: Keisha's 2026-07-13 request in #proj-valet to stitch slide-level Granola call notes + slide comments + deck content into actionable revisions. Also closes the twice-asked 'how do I make slides' gap (Carey, Akshar) from the H1 docs audit.
|
Preview deployment: https://pr-114.dev-valet-turnkey-client.pages.dev |
xBalbinus
left a comment
There was a problem hiding this comment.
Design reads as sound and idiomatic. No new package, the action structure mirrors the existing docs/sheets surface, comments reuse the Drive Comments API exactly as docs.list_comments does, and the 13-action scope with explicit non-goals is a sensible v1 cut.
One design-level item worth resolving before sign-off: §5 adds auth/presentations to WORKSPACE_SCOPES, which forces every Google-connected user — including those who never touch Slides — to re-consent, and until they do slides.* fails with an opaque 401/403 and no in-product reconnect nudge (the plan leans on a Slack post). Google supports incremental authorization — requesting the scope only when a slides.* action first runs — which avoids the blanket re-consent and the silent-failure window. Worth weighing that alternative, or at least adding a reconnect affordance driven by the scope error.
Smaller: the naming table sets the slide parameter as slideObjectId, but the list_slides / get_slide return shapes use id. Aligning the write param with the read output on one key would save callers a mental hop.
Summary
Design spec (no code changes) for a new
slides.*tool namespace inside@valet/plugin-google-workspace, covering 13 v1 actions across four capability groups to close the Slides-blindness gap:read_presentation,list_slides,get_slide,get_presentation_info,get_speaker_noteslist_comments,get_comment,add_comment,reply_to_comment,resolve_comment,delete_commentreplace_all_text,replace_slide_text,insert_text_box,duplicate_slide,delete_slidecreate_presentation,create_from_templateMotivation
Keisha's 2026-07-13 #proj-valet request — stitch together slide-level Granola call notes + slide comments + deck content into actionable revisions. Also closes the twice-asked "how do I make slides" gap (Carey, Akshar) from the H1 docs audit.
Today Valet is blind to Google Slides beyond
drive.list_filesand lossydrive.download_fileexports — zero structured read, zero write, zero comment access.Scope
@valet/plugin-google-workspace(no new package)https://www.googleapis.com/auth/presentations(forces re-consent on next Google reconnect)slides-actions.ts+slides-helpers.ts+skills/google-slides.md; minor edits toactions.ts,provider.ts,labels-guard.ts,workspace-output-schemas.tsFull details in
docs/specs/2026-07-13-google-slides-integration-design.md.Approval requested
Sign-off needed from: