Guide · Agent skill
How to use the Google Drive File Upload agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
gws-drive-upload is an agent skill that lets an AI agent take a file from your computer and upload it to Google Drive using the gws command-line tool. This guide explains what the skill does, how to install it, how to ask for an upload in plain language, and what to check before anything is written to your Drive. You do not need prior experience with agent skills to follow it.
Quick start
- 1Install the gws tool and set up authentication. Install the gws command-line tool and configure Google Workspace or Google Drive authentication for it. The skill cannot work without both.
- 2Create the gws-shared file if it is missing. If the gws-shared skill file is not present, run gws generate-skills to create it.
- 3Download and unzip the skill. Download the ZIP from this page and unzip it so the folder containing SKILL.md is ready to place.
- 4Place the skill in your skills folder. Copy the folder into ~/.claude/skills/ for personal use, or into a project's .claude/skills/ folder. Alternatively, upload the ZIP under Settings, Capabilities, Skills in the Claude apps.
- 5Check the command help. Run gws drive +upload --help to confirm the command is available and see its options.
- 6Ask for an upload and confirm. Ask the agent in plain language to upload a file, naming the file and any folder or new name. When the agent asks for confirmation, check the path, folder and filename before approving.
What the gws-drive-upload skill makes the agent do
A skill is a set of instructions, packaged as a folder with a SKILL.md file, that tells an agent how to perform one task. This skill covers one task: uploading a local file to Google Drive. Its description in the source is 'Upload a file with automatic metadata.'
When the skill is installed and the agent uses it, the agent runs the gws drive +upload command on a file you point to. The tool detects the file type automatically, and the filename is taken from the local path unless you specify a new name. You can also ask for the file to be placed in a particular Drive folder.
- Uploads one file from your computer to Google Drive
- Sets the Drive filename from the local file name, or from a name you provide
- Places the file in a specific folder when you give a parent folder ID
- Detects the MIME type automatically
What you need before installing
The skill does not work on its own. It depends on the gws command-line tool and on Google Workspace or Google Drive authentication that is configured for gws. The skill also relies on a companion file called gws-shared, which the skill's prerequisite note says to read for authentication, global flags and security rules.
If that companion file is missing, the source says to run gws generate-skills to create it.
- The gws command-line tool (googleworkspace CLI)
- Google Workspace or Google Drive authentication configured for gws
- The gws-shared skill file, generated with gws generate-skills if it is missing
gws generate-skillsInstall the skill from the ZIP download
Download the ZIP for this skill from this page and unzip it. The unzipped folder should contain SKILL.md. Put that folder in one of these locations:
For all of your projects, place it in your personal skills folder, ~/.claude/skills/. For a single project, place it in that project's .claude/skills/ folder.
If you use the Claude apps instead, you can upload the ZIP under Settings, then Capabilities, then Skills.
- Personal install: ~/.claude/skills/
- Project install: the .claude/skills/ folder inside your project
- Claude apps: Settings → Capabilities → Skills, then upload the ZIP
Ask the agent for an upload in plain language
Once the skill is installed and gws is set up, you can make requests in ordinary language, such as asking the agent to upload a named report to Drive or to file a spreadsheet in a particular folder. The agent decides when to use the skill based on what you ask, so mention the file and, if relevant, the folder or new name.
If you want to see the exact options the command accepts, run the help command shown here. The flags table below summarises them.
- 'Upload ./report.pdf to my Google Drive.'
- 'Put ./data.csv in Drive folder FOLDER_ID.'
- 'Upload ./data.csv to Drive and name it Sales Data.csv.'
gws drive +upload --helpCommand reference and examples
The command takes one required argument, the path to the file. Two optional flags change where the file goes and what it is called. --parent takes a Drive parent folder ID. --name sets the target filename and defaults to the source filename.
The source gives these examples:
- <file> (required): path to the file to upload
- --parent: parent folder ID (optional)
- --name: target filename, defaults to the source filename (optional)
gws drive +upload ./report.pdf
gws drive +upload ./report.pdf --parent FOLDER_ID
gws drive +upload ./data.csv --name 'Sales Data.csv'Safety: what the skill runs and where it sends data
This skill runs scripts and uses the network. Its purpose is to write to your Google Drive, so every upload changes your real account. The skill's own instructions tell the agent to confirm with you before running the upload. Read that confirmation carefully and check the file path, the target folder and the filename.
The skill does not cover downloading files, changing sharing settings or deleting files. For broader file, folder and shared drive management, the related gws-drive skill is listed in the source's See Also section.
- Check that the file path points to the correct local file before confirming
- Check the parent folder ID so sensitive files do not land in a shared or wrong folder
- Remember the upload writes to your real Drive account
- Use the global flags and security rules in gws-shared as the reference for auth and safety
What people use it for
- Filing a weekly PDF report from your computer into a shared team folder in Drive
- Uploading a CSV export under a cleaner name, such as renaming data.csv to Sales Data.csv
- Scripting routine Drive uploads for developers or ops staff who already use the gws CLI
- Letting an agent handle routine filing so you do not need to remember command syntax
Frequently asked questions
Is the gws-drive-upload skill free to use?
The skill is published under the Apache-2.0 licence, as listed on this page. Check the gws tool and your own Google account terms for any costs that apply to them.
What do I need before the gws-drive-upload skill works?
You need the gws command-line tool, Google Workspace or Google Drive authentication configured for gws, and the gws-shared skill file. If gws-shared is missing, run gws generate-skills to create it.
Where do I install an agent skill like this one?
Unzip the downloaded ZIP and place the folder in ~/.claude/skills/ for personal use or in a project's .claude/skills/ folder. In the Claude apps, you can upload the ZIP under Settings, then Capabilities, then Skills.
Can the skill upload to a specific folder or rename the file?
Yes. Use --parent with a Drive parent folder ID to choose the folder, and --name to set the filename. If you omit --name, the local filename is used.
Does the skill download files, share them or delete them?
No. The source says this skill only uploads. For other file, folder and shared drive commands, see the related gws-drive skill.
What should I check before the agent uploads a file?
Confirm the local file path, the target folder ID and the filename, because the upload writes to your real Google Drive account. The skill tells the agent to ask you before running the upload.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
This skill suits people who regularly move reports, spreadsheets or exports into Google Drive, and developers or ops staff who script those uploads with gws. It is a poor fit if you have not set up gws and Google authentication, or if you need downloads, sharing changes or deletions, which it does not do. If you are uploading sensitive files, check the destination folder each time before approving.
Download the skill