| name | google-canvas |
| description | Use when creating, opening, reading, editing, or collaborating on Google Canvas documents and Gemini Canvas shared applications through browser automation. |
| domain | productivity |
| author | oyi77 |
| license | Apache-2.0 |
| subdomain | productivity |
| tags | ["canvas","google","productivity","time-management","tools"] |
| version | 1.0.0 |
persona:
name: "Domain Expert"
title: "Master of Google Canvas"
expertise: ['Specialized Knowledge', 'Best Practices', 'Industry Standards']
philosophy: "Excellence through expertise."
credentials: ['Industry leader', 'Practiced expert', 'Thought leader']
principles: ['Quality first', 'Continuous improvement', 'Evidence-based decisions', 'Customer focus']
Google Canvas Skill
Overview
Full lifecycle Google Canvas and Gemini Canvas automation — create new documents, open shared canvases by URL, interact with embedded applications, read content, edit existing documents, manage collaboration, and handle permissions. Supports both traditional Canvas documents and Gemini-powered interactive applications.
Access:
- Google Canvas:
canvas.google.com
- Gemini Canvas:
gemini.google.com/share/{id}
Anti-Rationalization Table
| Rationalization | Reality |
|---|
| "I'll figure it out as I go" | A structured approach saves time and reduces errors. Follow the workflow in this skill rather than improvising. |
| "I already know this topic" | Familiarity breeds shortcuts. Use the checklist to verify you haven't missed critical steps. |
| "This doesn't apply to my situation" | The patterns here generalize across contexts. Adapt, don't skip — the underlying principles hold. |
| "One more tool will fix it" | Adding complexity rarely solves process gaps. Master the core workflow first. |
When to Use
Trigger phrases:
-
"google canvas"
-
"Create new Google Canvas documents (doc, sheet, code, data)"
-
"Open and interact with Gemini Canvas shared applications"
-
"Read content from Canvas documents or embedded apps"
-
Create new Google Canvas documents (doc, sheet, code, data)
-
Open and interact with Gemini Canvas shared applications
-
Read content from Canvas documents or embedded apps
-
Edit existing Canvas content (append, replace, modify)
-
Collaborate on shared canvases (comment, suggest)
-
Extract data from Canvas documents
-
Interact with AI-powered applications in Gemini Canvas
-
Manage sharing permissions
When NOT to Use
- Traditional Google Docs/Sheets/Slides at
docs.google.com (use productivity/google-workspace)
- When you need direct API access (use Google Workspace MCP)
- Simple text editing (use local files instead)
Gemini Canvas Shared Applications
This section covers gemini canvas shared applications for the google-canvas skill.
Key operations include input validation, core processing, and output verification.
Refer to the skill overview for detailed usage instructions.
Overview
Gemini Canvas can host interactive AI-powered applications accessible via share links. These apps run in iframes and provide specialized functionality beyond traditional documents.
Accessing Shared Applications
URL Pattern: https://gemini.google.com/share/{share-id}
Login Workflow:
window.location.href = 'https://gemini.google.com/share/e5bf9afa6676';
await new Promise(r => setTimeout(r, 3000));
const centerX = window.innerWidth / 2;
const centerY = window.innerHeight / 2;
Common Login Elements:
- Email input field (usually centered)
- Submit button or Enter key submission
- Verification/loading screen
- Dashboard after successful login
Example: Affiliate GO Foto Studio
Tested Application: AI-powered photo studio for affiliate marketing content generation.
Interface Structure:
Sidebar Navigation
- Beranda (Home): Dashboard with AI Assistant
- Membuat Model: AI model generation from photos
- Mockup Studio: Product visualization templates
- POV Tangan: Hand-holding product shots
- Foto Touring: Travel/car-themed staging
- POV Mirror Selfie: Mirror-style product shots
- Foto Produk Affiliate: Professional product staging
- Affiliate Islami: Ramadan/Lebaran themed content
Header Elements
- Cici Button: AI Assistant chatbot toggle
- Logout Button: End session
- Collapse Sidebar: Expand workspace
Interaction Patterns for Embedded Apps
Navigation
const sidebarX = 100;
const mockupY = 500;
Content Generation Workflow
1. Select Module
- Click sidebar item (e.g., "Mockup Studio")
2. Upload Content
- Find upload zone (dashed rectangle)
- Click or drag-and-drop file
- Supported: PNG, JPG, HEIC (max 10MB)
3. Configure Settings
- Model/Template selection
- Aspect ratio: 1:1, 16:9, 3:4, 9:16
- Theme selection
4. Generate
- Click primary action button
- Example: "Generate 7 Mockup"
5. View Results
- Results appear in "Hasil" (Result) panel
- Download or save generated content
AI Assistant (Cici)
Technical Considerations
Cross-Origin Iframes:
- Apps run in
shim.html iframes
- Direct DOM access limited
- Use pixel-based clicking or keyboard navigation
- Focus iframe before interactions
Element Selectors:
click(centerX, centerY);
pressKey('Tab');
type('text content');
pressKey('Enter');
File Uploads:
- Handle via browser file picker
- Drag-and-drop simulation
- Upload zones are large dashed rectangles
Google Canvas Documents
This section covers google canvas documents for the google-canvas skill.
Key operations include input validation, core processing, and output verification.
Refer to the skill overview for detailed usage instructions.
1. Create New Canvas Document
1. Navigate: https://canvas.google.com
2. Click: "+ New" or "Create new" button
3. Select canvas type:
- Document (rich text)
- Spreadsheet (data/tables)
- Code (programming)
4. Wait for editor to load
5. Enter content via the prompt/input area
6. Title: Click the untitled document name → type title
7. Verify: Content renders correctly
Canvas Types:
| Type | Best For |
|---|
| Document | Reports, notes, articles, plans |
| Spreadsheet | Data analysis, tables, dashboards |
| Code | Programming, scripts, technical docs |
2. Open Shared Canvas by URL
1. Navigate to the shared URL:
- Format: https://canvas.google.com/doc/{document-id}
- Or: Use the full sharing link from the owner
2. Handle auth if prompted:
- If login required → Sign in with Google account
- If permission denied → Request access (click "Request access" button)
3. Wait for document to fully load (check for content area)
4. Identify your access level:
- Viewer: Can read, cannot edit
- Commenter: Can read and add comments
- Editor: Full read/write access
Troubleshooting access:
- "You need access" → Click "Request access" → owner must approve
- "Sign in required" → Authenticate with correct Google account
- "Document not found" → URL may be incorrect or document deleted
- Blank page → Wait longer, Canvas content loads asynchronously
3. Read Content from Canvas
1. Open the Canvas document (new or shared)
2. Wait for content to fully render
3. Select all content:
- Keyboard: Cmd+A (Mac) / Ctrl+A (Windows)
- Or: Manually select specific sections
4. Copy content:
- Keyboard: Cmd+C / Ctrl+C
- Parse clipboard content
5. For structured data (spreadsheets):
- Identify cell ranges
- Read row by row
- Extract headers separately
Reading specific sections:
- Scroll to target section
- Use search (Cmd+F) to find specific text
- Screenshot for visual content (charts, images)
4. Edit Existing Canvas
Prerequisites: Must have Editor access.
Append Content
1. Open the Canvas document
2. Click at the end of existing content
3. Type or paste new content
4. Verify content appears correctly
5. Changes auto-save
Replace/Modify Content
1. Open the Canvas document
2. Find target text:
- Cmd+F → search for text to modify
- Or: Scroll to target section
3. Select the text to replace:
- Click and drag to select
- Or: Double-click for word, triple-click for paragraph
4. Type replacement content
5. Verify modification
6. Changes auto-save
Insert at Specific Position
1. Open the Canvas document
2. Click at the desired insertion point
3. Type or paste content
4. Verify positioning is correct
5. AI-Assisted Editing (Canvas AI Features)
Google Canvas has built-in AI capabilities:
1. Open Canvas document
2. Select text you want AI to work with
3. Look for AI action buttons:
- "Help me write" / "Suggest" / AI sparkle icon
4. Enter your instruction (e.g., "Make this more concise")
5. Review AI suggestion
6. Accept or reject the suggestion
7. Verify final content
6. Collaboration & Sharing
Share a Document
1. Open the Canvas document
2. Click "Share" button (top-right area)
3. Enter email addresses or generate link
4. Set permission level:
- Viewer: Can only read
- Commenter: Can read and comment
- Editor: Full access
5. Click "Send" or "Copy link"
Add Comments
1. Open shared Canvas document (need Commenter+ access)
2. Select the text you want to comment on
3. Click comment icon (or Cmd+Option+M)
4. Type your comment
5. Click "Comment" to post
Resolve Comments
1. Click on the comment thread
2. Read the discussion
3. Click "Resolve" to close the thread
4. Or reply with additional context
7. Export & Download
1. Open the Canvas document
2. Look for menu/settings (three dots or File menu)
3. Select export format:
- PDF
- Plain text
- HTML
4. Download to local storage
Complete Automation Examples
# Basic usage
invoke <skill-name> with appropriate parameters
# Advanced usage with options
invoke <skill-name> --option value --verbose
Example 1: Access Gemini Canvas App
async function accessGeminiCanvasApp(shareUrl, loginEmail) {
window.location.href = shareUrl;
await new Promise(r => setTimeout(r, 5000));
const centerX = window.innerWidth / 2;
const centerY = window.innerHeight / 2;
await new Promise(r => setTimeout(r, 5000));
return 'App loaded successfully';
}
await accessGeminiCanvasApp(
'https://gemini.google.com/share/e5bf9afa6676',
'user@gmail.com'
);
Example 2: Generate Content in Embedded App
async function generateMockup(productImagePath) {
await new Promise(r => setTimeout(r, 2000));
await new Promise(r => setTimeout(r, 30000));
return 'Mockups generated successfully';
}
Troubleshooting
| Symptom | Cause | Fix |
|---|
| Operation times out | Network or service issue | Check connectivity and retry |
| Permission denied | Missing credentials | Verify API keys and access tokens |
| Invalid output | Input format mismatch | Validate input against expected schema |
Common Issues
Issue: Cannot access iframe content
- Cause: Cross-origin restrictions
- Solution: Use pixel-based clicking or keyboard navigation
Issue: Login not working
- Cause: Input field not focused
- Solution: Click center of page first, then Tab to input
Issue: Sidebar navigation not responding
- Cause: Page not fully loaded
- Solution: Wait 5-10 seconds after page load
Issue: Upload not working
- Cause: File picker requires user interaction
- Solution: Use browser automation file upload methods
Issue: Generated content not appearing
- Cause: Generation takes time
- Solution: Wait 30-60 seconds for AI processing
Issue: "You need access" message
- Cause: Not logged in or no permissions
- Solution: Login with authorized email address
URL Patterns
| Action | URL |
|---|
| Google Canvas Home | https://canvas.google.com |
| Canvas Document | https://canvas.google.com/doc/{id} |
| Gemini Canvas Shared App | https://gemini.google.com/share/{id} |
| New Canvas Document | Create via UI from home page |
Integration with Other Skills
productivity/google-flow — For video generation workflows
content/gemini-image-generator — For image generation
marketing/content-creator — Canvas as content drafting tool
marketing/ads-manager — Canvas for campaign planning docs
research/mckinsey-research — Canvas for strategy deliverables
Best Practices
This section covers best practices for the google-canvas skill.
Key operations include input validation, core processing, and output verification.
Refer to the skill overview for detailed usage instructions.
For Gemini Canvas Apps
- Always wait for iframe load: 5-10 seconds after navigation
- Focus iframe first: Click center before interactions
- Use keyboard navigation: Tab, Enter for cross-origin iframes
- Handle file uploads carefully: May require automation-specific methods
- Wait for AI generation: 30-60 seconds for content generation
- Download immediately: Results may be session-based
For Google Canvas Documents
- Wait for content load: Canvas loads asynchronously
- Check permissions: Verify editor access before attempting edits
- Use keyboard shortcuts: Faster than clicking for common actions
- Auto-save is automatic: No manual save needed
- Test with small edits first: Verify access and functionality
Last Updated: 2026-02-16
Tested: ✅ Gemini Canvas shared app (Affiliate GO Foto Studio)
Features: Login workflow, sidebar navigation, content generation, AI assistant
Common Rationalizations
| Rationalization | Reality |
|---|
| "I'll do this later" | Explain why this excuse is wrong for this skill |
| "This is simple, skip steps" | Even simple tasks benefit from process |
Red Flags
- Automation creates duplicate entries across connected platforms
- Agent does not handle timezone differences correctly
- Watch for shortcuts and skipped steps
Verification
After completing this skill, confirm:
Process
- Analyze the task requirements
- Apply domain expertise
- Verify output quality