classroom-submitlisted
Install: claude install-skill yolo-labz/claude-classroom-submit
# Google Classroom Autonomous Submission (macOS)
The Google Classroom web client uses a **cross-origin Drive Picker iframe** (`drive.google.com/picker` embedded in `classroom.google.com`) for file attachments. This iframe is unreachable from parent-page JavaScript (Trusted Types + cross-origin boundary), and AppleScript mouse clicks require Accessibility permission that is typically not granted to `osascript`. Result: **no amount of JS/keystroke injection can click "Entregar" reliably**.
This skill sidesteps the entire picker UI by going **straight to the Classroom REST API**, which accepts a Drive file ID and an assignment ID and performs the attach + turn-in atomically.
## When to use
Trigger this skill when the user wants any of:
- "submit this file to Classroom", "entregar no Classroom", "upload this to Atividade X"
- "turn in my submission for [assignment name]"
- "attach [file] to [course] assignment and mark as done"
- Batch-submitting multiple deliverables at once
- Finding the `courseId`/`courseWorkId` for a given assignment (the CLI's `find` subcommand searches by title)
Do **not** use this skill for:
- Browsing or viewing Classroom content (use `chrome-multi-profile` or the browser)
- Assignments that require text/link attachments only (the CLI currently handles Drive file attachments)
- Commenting on assignments
## One-time setup (required)
The plugin cannot work until the user creates an OAuth 2.0 client in their own Google Cloud project and grants Classr