[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6G33PC9DF80B4PA0PDMNQKE":3,"skill-same:01M6G33PC9DF80B4PA0PDMNQKE":75},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":53,"commitSha":54,"skillDirectory":55,"forksCount":14,"repositoryHtmlUrl":56,"repositoryHomepageUrl":6,"ownerHtmlUrl":57,"ownerBlogUrl":58,"ownerDescription":59,"updatedAt":60,"install":61,"resources":74},"01M6G33PC9DF80B4PA0PDMNQKE","google-drive-automation",null,"Automate Google Drive file operations (upload, download, search, share, organize) via Rube MCP (Composio). Upload\u002Fdownload files, manage folders, share with permissions, and search across drives pr...","reikiplanet\u002Fdaoskills","reikiplanet","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F96377599?v=4","01M6CVWCMD740YHQDK7E9QYBW4","Reiki Planet","01M6CVWCS4KXVA2CWFVJ43EAXK",0,"MIT","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fskills\u002Fdevelopment\u002Fgoogle-drive-automation\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"google","automation","google drive","google drive automation","drive","with","MCP","via","across","upload","community","manage","files","operations","file operations","file","search","share","permissions","pr","2026-11-10 10:12:30",false,"---\nname: google-drive-automation\ndescription: \"Automate Google Drive file operations (upload, download, search, share, organize) via Rube MCP (Composio). Upload\u002Fdownload files, manage folders, share with permissions, and search across drives pr...\"\nrequires:\n  mcp: [rube]\nrisk: unknown\nsource: community\n---\n\n# Google Drive Automation via Rube MCP\n\nAutomate Google Drive workflows including file upload\u002Fdownload, search, folder management, sharing\u002Fpermissions, and organization through Composio's Google Drive toolkit.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active Google Drive connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `googledrive`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `googledrive`\n3. If connection is not ACTIVE, follow the returned auth link to complete Google OAuth\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. Upload and Download Files\n\n**When to use**: User wants to upload files to or download files from Google Drive\n\n**Tool sequence**:\n1. `GOOGLEDRIVE_FIND_FILE` - Locate target folder for upload [Prerequisite]\n2. `GOOGLEDRIVE_UPLOAD_FILE` - Upload a file (max 5MB) [Required]\n3. `GOOGLEDRIVE_RESUMABLE_UPLOAD` - Upload large files [Fallback]\n4. `GOOGLEDRIVE_DOWNLOAD_FILE` - Download a file by ID [Required]\n5. `GOOGLEDRIVE_DOWNLOAD_FILE_OPERATION` - Track long-running downloads [Fallback]\n6. `GOOGLEDRIVE_GET_FILE_METADATA` - Verify file after upload\u002Fdownload [Optional]\n\n**Key parameters**:\n- `file_to_upload`: Object with `name`, `mimetype`, and `s3key` (file must be in internal storage)\n- `folder_to_upload_to`: Target folder ID (optional; uploads to root if omitted)\n- `file_id`: ID of file to download\n- `mime_type`: Export format for Google Workspace files only (omit for native files)\n\n**Pitfalls**:\n- `GOOGLEDRIVE_UPLOAD_FILE` requires `file_to_upload.s3key`; files must already be in internal storage\n- For non-Google formats (Excel, PDF), do NOT set `mime_type`; it causes errors for native files\n- Download responses provide a temporary URL at `data.downloaded_file_content.s3url`, not inline bytes\n- Use `GOOGLEDRIVE_RESUMABLE_UPLOAD` for files >5MB or when basic uploads fail\n\n### 2. Search and List Files\n\n**When to use**: User wants to find specific files or browse Drive contents\n\n**Tool sequence**:\n1. `GOOGLEDRIVE_FIND_FILE` - Search by name, content, type, date, or folder [Required]\n2. `GOOGLEDRIVE_LIST_FILES` - Browse files with folder scoping [Alternative]\n3. `GOOGLEDRIVE_LIST_SHARED_DRIVES` - Enumerate shared drives [Optional]\n4. `GOOGLEDRIVE_GET_FILE_METADATA` - Get detailed file info [Optional]\n5. `GOOGLEDRIVE_GET_ABOUT` - Check storage quota and supported formats [Optional]\n\n**Key parameters**:\n- `q`: Drive query string (e.g., \"name contains 'report'\", \"mimeType = 'application\u002Fpdf'\")\n- `corpora`: Search scope ('user', 'domain', 'drive', 'allDrives')\n- `fields`: Response fields to include (e.g., 'files(id,name,mimeType)')\n- `orderBy`: Sort key ('modifiedTime desc', 'name', 'quotaBytesUsed desc')\n- `pageSize`: Results per page (max 1000)\n- `pageToken`: Pagination cursor from `nextPageToken`\n- `folder_id`: Scope search to a specific folder\n\n**Pitfalls**:\n- 403 PERMISSION_DENIED if OAuth scopes insufficient for shared drives\n- Pagination required; files are in `response.data.files`; follow `nextPageToken` until exhausted\n- `corpora=\"domain\"` may trigger 400; try `\"allDrives\"` with `includeItemsFromAllDrives=true`\n- Query complexity limits: >5-10 OR clauses may error \"The query is too complex\"\n- Wildcards (*) NOT supported in `name`; use `contains` for partial matching\n- 'My Drive' is NOT searchable by name; use `folder_id='root'` for root folder\n- User email searches: use `'user@example.com' in owners` (NOT `owner:user@example.com`)\n\n### 3. Share Files and Manage Permissions\n\n**When to use**: User wants to share files or manage access permissions\n\n**Tool sequence**:\n1. `GOOGLEDRIVE_FIND_FILE` - Locate the file to share [Prerequisite]\n2. `GOOGLEDRIVE_ADD_FILE_SHARING_PREFERENCE` - Set sharing permission [Required]\n3. `GOOGLEDRIVE_LIST_PERMISSIONS` - View current permissions [Optional]\n4. `GOOGLEDRIVE_GET_PERMISSION` - Inspect a specific permission [Optional]\n5. `GOOGLEDRIVE_UPDATE_PERMISSION` - Modify existing permission [Optional]\n6. `GOOGLEDRIVE_DELETE_PERMISSION` - Revoke access [Optional]\n\n**Key parameters**:\n- `file_id`: ID of file to share\n- `type`: 'user', 'group', 'domain', or 'anyone'\n- `role`: 'owner', 'organizer', 'fileOrganizer', 'writer', 'commenter', 'reader'\n- `email_address`: Required for type='user' or 'group'\n- `domain`: Required for type='domain'\n- `transfer_ownership`: Required when role='owner'\n\n**Pitfalls**:\n- Invalid type\u002Femail combinations trigger 4xx errors\n- Using `type='anyone'` or powerful roles is risky; get explicit user confirmation\n- Org policies may block certain sharing types, causing 403\n- Permission changes may take time to propagate\n- Use `GMAIL_SEARCH_PEOPLE` to resolve contact names to emails before sharing\n\n### 4. Create and Organize Folders\n\n**When to use**: User wants to create folder structures or move files between folders\n\n**Tool sequence**:\n1. `GOOGLEDRIVE_FIND_FILE` - Check if folder already exists [Prerequisite]\n2. `GOOGLEDRIVE_CREATE_FOLDER` - Create a new folder [Required]\n3. `GOOGLEDRIVE_GET_FILE_METADATA` - Verify created folder [Optional]\n4. `GOOGLEDRIVE_MOVE_FILE` - Move files between folders [Optional]\n5. `GOOGLEDRIVE_UPDATE_FILE_PUT` - Update file metadata\u002Fparents [Alternative]\n\n**Key parameters**:\n- `name`: Folder name\n- `parent_id`: Parent folder ID (NOT name); omit for root\n- `file_id`: File to move\n- `add_parents`: Destination folder ID for move\n- `remove_parents`: Source folder ID to remove from\n\n**Pitfalls**:\n- `GOOGLEDRIVE_CREATE_FOLDER` requires `parent_id` as an ID, not a folder name\n- Using `parent_id=\"root\"` creates at top level; for nested paths, chain folder IDs\n- `GOOGLEDRIVE_FIND_FILE` returns ~100 items\u002Fpage; follow `nextPageToken` for large drives\n- Move operations can leave items with multiple parents; use `remove_parents` for true moves\n- Always verify parent folder exists before creating children\n\n## Common Patterns\n\n### ID Resolution\n- **File\u002Ffolder name -> ID**: `GOOGLEDRIVE_FIND_FILE` with `q` parameter\n- **Root folder**: Use `folder_id='root'` or `'root' in parents`\n- **Shared drive -> driveId**: `GOOGLEDRIVE_LIST_SHARED_DRIVES`\n- **Contact name -> email**: `GMAIL_SEARCH_PEOPLE` (for sharing)\n\n### Query Syntax\nGoogle Drive uses a specific query language:\n- Name search: `\"name contains 'report'\"` or `\"name = 'exact.pdf'\"`\n- Type filter: `\"mimeType = 'application\u002Fpdf'\"` or `\"mimeType = 'application\u002Fvnd.google-apps.folder'\"`\n- Folder scoping: `\"'FOLDER_ID' in parents\"`\n- Date filter: `\"modifiedTime > '2024-01-01T00:00:00'\"`\n- Combine with `and`\u002F`or`\u002F`not`: `\"name contains 'report' and trashed = false\"`\n- Boolean filters: `\"sharedWithMe = true\"`, `\"starred = true\"`, `\"trashed = false\"`\n\n### Pagination\n- Follow `nextPageToken` until absent for complete results\n- Set `pageSize` explicitly (default 100, max 1000)\n- De-duplicate results if running multiple searches\n\n### Export Formats\nFor Google Workspace files, set `mime_type` to export:\n- **Docs**: `application\u002Fpdf`, `text\u002Fplain`, `text\u002Fhtml`, `application\u002Fvnd.openxmlformats-officedocument.wordprocessingml.document`\n- **Sheets**: `text\u002Fcsv`, `application\u002Fvnd.openxmlformats-officedocument.spreadsheetml.sheet`\n- **Slides**: `application\u002Fpdf`, `application\u002Fvnd.openxmlformats-officedocument.presentationml.presentation`\n\n## Known Pitfalls\n\n- **Internal storage required**: Upload requires files in internal S3 storage (s3key)\n- **Export vs download**: Set `mime_type` ONLY for Google Workspace files; omit for native files\n- **Temporary URLs**: Downloaded content via `s3url` is temporary; fetch promptly\n- **Query complexity**: >5-10 OR clauses may error; split complex searches into multiple queries\n- **Shared drive scoping**: Missing drive permissions yield empty results; verify access first\n- **No wildcards**: Use `contains` operator instead of `*` for partial name matching\n- **Folder creation chains**: Always pass folder IDs (not names) as `parent_id`\n- **Multiple parents**: Move operations may leave items with multiple parents; use `remove_parents`\n- **Rate limits**: Heavy searches\u002Fexports can trigger 403\u002F429; implement backoff\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| Search files | `GOOGLEDRIVE_FIND_FILE` | `q`, `corpora`, `pageSize` |\n| List files | `GOOGLEDRIVE_LIST_FILES` | `folderId`, `q`, `orderBy` |\n| Upload file | `GOOGLEDRIVE_UPLOAD_FILE` | `file_to_upload`, `folder_to_upload_to` |\n| Resumable upload | `GOOGLEDRIVE_RESUMABLE_UPLOAD` | file data |\n| Download file | `GOOGLEDRIVE_DOWNLOAD_FILE` | `file_id`, `mime_type` (Workspace only) |\n| File metadata | `GOOGLEDRIVE_GET_FILE_METADATA` | `fileId`, `fields` |\n| Create folder | `GOOGLEDRIVE_CREATE_FOLDER` | `name`, `parent_id` |\n| Move file | `GOOGLEDRIVE_MOVE_FILE` | `file_id`, `add_parents`, `remove_parents` |\n| Share file | `GOOGLEDRIVE_ADD_FILE_SHARING_PREFERENCE` | `file_id`, `role`, `type`, `email_address` |\n| List permissions | `GOOGLEDRIVE_LIST_PERMISSIONS` | `fileId` |\n| Update permission | `GOOGLEDRIVE_UPDATE_PERMISSION` | file_id, permission_id |\n| Delete permission | `GOOGLEDRIVE_DELETE_PERMISSION` | file_id, permission_id |\n| List shared drives | `GOOGLEDRIVE_LIST_SHARED_DRIVES` | `pageSize` |\n| Drive info | `GOOGLEDRIVE_GET_ABOUT` | (none) |\n| Create shortcut | `GOOGLEDRIVE_CREATE_SHORTCUT_TO_FILE` | target file_id |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n","# Google Drive Automation via Rube MCP\n\nAutomate Google Drive workflows including file upload\u002Fdownload, search, folder management, sharing\u002Fpermissions, and organization through Composio's Google Drive toolkit.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active Google Drive connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `googledrive`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `googledrive`\n3. If connection is not ACTIVE, follow the returned auth link to complete Google OAuth\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. Upload and Download Files\n\n**When to use**: User wants to upload files to or download files from Google Drive\n\n**Tool sequence**:\n1. `GOOGLEDRIVE_FIND_FILE` - Locate target folder for upload [Prerequisite]\n2. `GOOGLEDRIVE_UPLOAD_FILE` - Upload a file (max 5MB) [Required]\n3. `GOOGLEDRIVE_RESUMABLE_UPLOAD` - Upload large files [Fallback]\n4. `GOOGLEDRIVE_DOWNLOAD_FILE` - Download a file by ID [Required]\n5. `GOOGLEDRIVE_DOWNLOAD_FILE_OPERATION` - Track long-running downloads [Fallback]\n6. `GOOGLEDRIVE_GET_FILE_METADATA` - Verify file after upload\u002Fdownload [Optional]\n\n**Key parameters**:\n- `file_to_upload`: Object with `name`, `mimetype`, and `s3key` (file must be in internal storage)\n- `folder_to_upload_to`: Target folder ID (optional; uploads to root if omitted)\n- `file_id`: ID of file to download\n- `mime_type`: Export format for Google Workspace files only (omit for native files)\n\n**Pitfalls**:\n- `GOOGLEDRIVE_UPLOAD_FILE` requires `file_to_upload.s3key`; files must already be in internal storage\n- For non-Google formats (Excel, PDF), do NOT set `mime_type`; it causes errors for native files\n- Download responses provide a temporary URL at `data.downloaded_file_content.s3url`, not inline bytes\n- Use `GOOGLEDRIVE_RESUMABLE_UPLOAD` for files >5MB or when basic uploads fail\n\n### 2. Search and List Files\n\n**When to use**: User wants to find specific files or browse Drive contents\n\n**Tool sequence**:\n1. `GOOGLEDRIVE_FIND_FILE` - Search by name, content, type, date, or folder [Required]\n2. `GOOGLEDRIVE_LIST_FILES` - Browse files with folder scoping [Alternative]\n3. `GOOGLEDRIVE_LIST_SHARED_DRIVES` - Enumerate shared drives [Optional]\n4. `GOOGLEDRIVE_GET_FILE_METADATA` - Get detailed file info [Optional]\n5. `GOOGLEDRIVE_GET_ABOUT` - Check storage quota and supported formats [Optional]\n\n**Key parameters**:\n- `q`: Drive query string (e.g., \"name contains 'report'\", \"mimeType = 'application\u002Fpdf'\")\n- `corpora`: Search scope ('user', 'domain', 'drive', 'allDrives')\n- `fields`: Response fields to include (e.g., 'files(id,name,mimeType)')\n- `orderBy`: Sort key ('modifiedTime desc', 'name', 'quotaBytesUsed desc')\n- `pageSize`: Results per page (max 1000)\n- `pageToken`: Pagination cursor from `nextPageToken`\n- `folder_id`: Scope search to a specific folder\n\n**Pitfalls**:\n- 403 PERMISSION_DENIED if OAuth scopes insufficient for shared drives\n- Pagination required; files are in `response.data.files`; follow `nextPageToken` until exhausted\n- `corpora=\"domain\"` may trigger 400; try `\"allDrives\"` with `includeItemsFromAllDrives=true`\n- Query complexity limits: >5-10 OR clauses may error \"The query is too complex\"\n- Wildcards (*) NOT supported in `name`; use `contains` for partial matching\n- 'My Drive' is NOT searchable by name; use `folder_id='root'` for root folder\n- User email searches: use `'user@example.com' in owners` (NOT `owner:user@example.com`)\n\n### 3. Share Files and Manage Permissions\n\n**When to use**: User wants to share files or manage access permissions\n\n**Tool sequence**:\n1. `GOOGLEDRIVE_FIND_FILE` - Locate the file to share [Prerequisite]\n2. `GOOGLEDRIVE_ADD_FILE_SHARING_PREFERENCE` - Set sharing permission [Required]\n3. `GOOGLEDRIVE_LIST_PERMISSIONS` - View current permissions [Optional]\n4. `GOOGLEDRIVE_GET_PERMISSION` - Inspect a specific permission [Optional]\n5. `GOOGLEDRIVE_UPDATE_PERMISSION` - Modify existing permission [Optional]\n6. `GOOGLEDRIVE_DELETE_PERMISSION` - Revoke access [Optional]\n\n**Key parameters**:\n- `file_id`: ID of file to share\n- `type`: 'user', 'group', 'domain', or 'anyone'\n- `role`: 'owner', 'organizer', 'fileOrganizer', 'writer', 'commenter', 'reader'\n- `email_address`: Required for type='user' or 'group'\n- `domain`: Required for type='domain'\n- `transfer_ownership`: Required when role='owner'\n\n**Pitfalls**:\n- Invalid type\u002Femail combinations trigger 4xx errors\n- Using `type='anyone'` or powerful roles is risky; get explicit user confirmation\n- Org policies may block certain sharing types, causing 403\n- Permission changes may take time to propagate\n- Use `GMAIL_SEARCH_PEOPLE` to resolve contact names to emails before sharing\n\n### 4. Create and Organize Folders\n\n**When to use**: User wants to create folder structures or move files between folders\n\n**Tool sequence**:\n1. `GOOGLEDRIVE_FIND_FILE` - Check if folder already exists [Prerequisite]\n2. `GOOGLEDRIVE_CREATE_FOLDER` - Create a new folder [Required]\n3. `GOOGLEDRIVE_GET_FILE_METADATA` - Verify created folder [Optional]\n4. `GOOGLEDRIVE_MOVE_FILE` - Move files between folders [Optional]\n5. `GOOGLEDRIVE_UPDATE_FILE_PUT` - Update file metadata\u002Fparents [Alternative]\n\n**Key parameters**:\n- `name`: Folder name\n- `parent_id`: Parent folder ID (NOT name); omit for root\n- `file_id`: File to move\n- `add_parents`: Destination folder ID for move\n- `remove_parents`: Source folder ID to remove from\n\n**Pitfalls**:\n- `GOOGLEDRIVE_CREATE_FOLDER` requires `parent_id` as an ID, not a folder name\n- Using `parent_id=\"root\"` creates at top level; for nested paths, chain folder IDs\n- `GOOGLEDRIVE_FIND_FILE` returns ~100 items\u002Fpage; follow `nextPageToken` for large drives\n- Move operations can leave items with multiple parents; use `remove_parents` for true moves\n- Always verify parent folder exists before creating children\n\n## Common Patterns\n\n### ID Resolution\n- **File\u002Ffolder name -> ID**: `GOOGLEDRIVE_FIND_FILE` with `q` parameter\n- **Root folder**: Use `folder_id='root'` or `'root' in parents`\n- **Shared drive -> driveId**: `GOOGLEDRIVE_LIST_SHARED_DRIVES`\n- **Contact name -> email**: `GMAIL_SEARCH_PEOPLE` (for sharing)\n\n### Query Syntax\nGoogle Drive uses a specific query language:\n- Name search: `\"name contains 'report'\"` or `\"name = 'exact.pdf'\"`\n- Type filter: `\"mimeType = 'application\u002Fpdf'\"` or `\"mimeType = 'application\u002Fvnd.google-apps.folder'\"`\n- Folder scoping: `\"'FOLDER_ID' in parents\"`\n- Date filter: `\"modifiedTime > '2024-01-01T00:00:00'\"`\n- Combine with `and`\u002F`or`\u002F`not`: `\"name contains 'report' and trashed = false\"`\n- Boolean filters: `\"sharedWithMe = true\"`, `\"starred = true\"`, `\"trashed = false\"`\n\n### Pagination\n- Follow `nextPageToken` until absent for complete results\n- Set `pageSize` explicitly (default 100, max 1000)\n- De-duplicate results if running multiple searches\n\n### Export Formats\nFor Google Workspace files, set `mime_type` to export:\n- **Docs**: `application\u002Fpdf`, `text\u002Fplain`, `text\u002Fhtml`, `application\u002Fvnd.openxmlformats-officedocument.wordprocessingml.document`\n- **Sheets**: `text\u002Fcsv`, `application\u002Fvnd.openxmlformats-officedocument.spreadsheetml.sheet`\n- **Slides**: `application\u002Fpdf`, `application\u002Fvnd.openxmlformats-officedocument.presentationml.presentation`\n\n## Known Pitfalls\n\n- **Internal storage required**: Upload requires files in internal S3 storage (s3key)\n- **Export vs download**: Set `mime_type` ONLY for Google Workspace files; omit for native files\n- **Temporary URLs**: Downloaded content via `s3url` is temporary; fetch promptly\n- **Query complexity**: >5-10 OR clauses may error; split complex searches into multiple queries\n- **Shared drive scoping**: Missing drive permissions yield empty results; verify access first\n- **No wildcards**: Use `contains` operator instead of `*` for partial name matching\n- **Folder creation chains**: Always pass folder IDs (not names) as `parent_id`\n- **Multiple parents**: Move operations may leave items with multiple parents; use `remove_parents`\n- **Rate limits**: Heavy searches\u002Fexports can trigger 403\u002F429; implement backoff\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| Search files | `GOOGLEDRIVE_FIND_FILE` | `q`, `corpora`, `pageSize` |\n| List files | `GOOGLEDRIVE_LIST_FILES` | `folderId`, `q`, `orderBy` |\n| Upload file | `GOOGLEDRIVE_UPLOAD_FILE` | `file_to_upload`, `folder_to_upload_to` |\n| Resumable upload | `GOOGLEDRIVE_RESUMABLE_UPLOAD` | file data |\n| Download file | `GOOGLEDRIVE_DOWNLOAD_FILE` | `file_id`, `mime_type` (Workspace only) |\n| File metadata | `GOOGLEDRIVE_GET_FILE_METADATA` | `fileId`, `fields` |\n| Create folder | `GOOGLEDRIVE_CREATE_FOLDER` | `name`, `parent_id` |\n| Move file | `GOOGLEDRIVE_MOVE_FILE` | `file_id`, `add_parents`, `remove_parents` |\n| Share file | `GOOGLEDRIVE_ADD_FILE_SHARING_PREFERENCE` | `file_id`, `role`, `type`, `email_address` |\n| List permissions | `GOOGLEDRIVE_LIST_PERMISSIONS` | `fileId` |\n| Update permission | `GOOGLEDRIVE_UPDATE_PERMISSION` | file_id, permission_id |\n| Delete permission | `GOOGLEDRIVE_DELETE_PERMISSION` | file_id, permission_id |\n| List shared drives | `GOOGLEDRIVE_LIST_SHARED_DRIVES` | `pageSize` |\n| Drive info | `GOOGLEDRIVE_GET_ABOUT` | (none) |\n| Create shortcut | `GOOGLEDRIVE_CREATE_SHORTCUT_TO_FILE` | target file_id |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n",{"name":5,"risk":49,"source":34,"requires":50,"description":7},"unknown",{"mcp":51},[52],"rube","master","dff58085da947e81e8418c922055644bf0082b1b","skills\u002Fdevelopment\u002Fgoogle-drive-automation","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills","https:\u002F\u002Fgithub.com\u002Freikiplanet","https:\u002F\u002Fwww.reiki-planet.com","Reiki Planet Game","2026-03-29 06:02:29",{"source":8,"skillName":5,"commands":62,"prompt":72,"zipAvailable":73},[63,66,69],{"tool":64,"command":65},"npx","npx skills add reikiplanet\u002Fdaoskills --skill google-drive-automation",{"tool":67,"command":68},"bunx","bunx skills add reikiplanet\u002Fdaoskills --skill google-drive-automation",{"tool":70,"command":71},"pnpm","pnpm dlx skills add reikiplanet\u002Fdaoskills --skill google-drive-automation","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fskills\u002Fdevelopment\u002Fgoogle-drive-automation\u002FSKILL.md",true,[],[76,102,114,129,148,171],{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":44},"01M6G614JTEQJHPT8AKK3YQ18S","web-games","Web browser game development principles. Framework selection, WebGPU, optimization, PWA.","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fweb-games\u002FSKILL.md",[],[83,84,85,86,87,88,34,89,90,91,92,93,94,95,96,97,98,99,100,101],"games","web games","web","grep","principles","selection","framework selection","edit","write","read","pwa","game","web browser","game development","Optimization","framework","browser","development","webgpu",{"skillNo":103,"name":104,"nameZh":6,"description":105,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":106,"categories":107,"keywords":108,"publishedAt":44},"01M6G611H2YGV0GZFP90D38ZMJ","vr-ar","VR\u002FAR development principles. Comfort, interaction, performance requirements.","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fvr-ar\u002FSKILL.md",[],[109,110,100,111,112,34,90,91,92,86,113,87],"ar","vr ar","interaction","requirements","performance",{"skillNo":115,"name":116,"nameZh":6,"description":117,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":118,"categories":119,"keywords":120,"publishedAt":44},"01M6G60XNMHAMV1SV0EJ1CX0AY","templates","Project scaffolding templates for new applications. Use when creating new projects from scratch. Contains 12 templates for various tech stacks.","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Ftemplates\u002FSKILL.md",[],[116,121,122,123,124,125,34,126,92,127,128,86],"project scaffolding","From Scratch","tech","project","scaffolding","use","projects","applications",{"skillNo":130,"name":131,"nameZh":6,"description":132,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":133,"categories":134,"keywords":135,"publishedAt":44},"01M6G60T0GATMK3Q5H8GDC1Z8S","wcag-audit-patterns","Conduct WCAG 2.2 accessibility audits with automated testing, manual verification, and remediation guidance. Use when auditing websites for accessibility, fixing WCAG violations, or implementing ac...","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fskills\u002Fsecurity\u002Fwcag-audit-patterns\u002FSKILL.md",[],[136,137,138,139,140,34,141,29,142,143,126,144,145,146,147],"wcag audit patterns","wcag audit","patterns","WCAG","audit","manual","automated testing","guidance","remediation","verification","accessibility","testing",{"skillNo":149,"name":150,"nameZh":6,"description":151,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":152,"categories":153,"keywords":154,"publishedAt":44},"01M6G60PMCHW1FRZ63F931QK3R","vulnerability-scanner","Advanced vulnerability analysis principles. OWASP 2025, Supply Chain Security, attack surface mapping, risk prioritization.","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fskills\u002Fsecurity\u002Fvulnerability-scanner\u002FSKILL.md",[],[155,156,157,158,159,160,161,162,34,92,86,163,87,164,165,166,167,168,169,170],"scanner","vulnerability scanner","vulnerability","prioritization","2025","mapping","chain","supply chain","Bash","analysis","risk","owasp","supply chain security","security","supply","advanced",{"skillNo":172,"name":173,"nameZh":6,"description":174,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":175,"categories":176,"keywords":177,"publishedAt":44},"01M6G60JZBB8DK0W3DSG1WNMZK","threat-modeling-expert","Expert in threat modeling methodologies, security architecture review, and risk assessment. Masters STRIDE, PASTA, attack trees, and security requirement extraction. Use for security architecture r...","https:\u002F\u002Fgithub.com\u002Freikiplanet\u002Fdaoskills\u002Fblob\u002Fmaster\u002Fskills\u002Fsecurity\u002Fthreat-modeling-expert\u002FSKILL.md",[],[178,179,180,181,182,183,184,185,168,126,186,187,188,34,189,190,191,165,192,193],"modeling","threat modeling expert","threat modeling","expert","threat","risk assessment","architecture review","architecture","security architecture review","trees","security architecture","security requirement extraction","assessment","extraction","review","stride"]