Ms Forms Auto
Skill by claireaicodes
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/claireaicodes/ms-forms-autoname: ms-forms-auto description: Automate Microsoft Forms submission with dual-calendar integration and M365 MFA support. Use when: automating daily productivity log submissions, submitting Microsoft Forms with calendar-based auto-fill, setting up scheduled form submissions with training/content-dev/learning hour calculations, or working with org MS Forms that require M365 number-matching MFA. Triggers on phrases like "fill out MS form", "automate form submission", "daily form report", "submit Microsoft form", "daily productivity log", "training hours form".
MS Forms Auto
Automate Microsoft Forms submission with Playwright, dual-calendar auto-fill, and M365 number-matching MFA support.
Quick Start
1. Install Dependencies
cd <skill-directory>
npm install
npx playwright install chromium
2. Set Up Credentials (one-time)
node scripts/setup-credentials.js
Creates config/credentials.json (gitignored) with M365 email/password.
3. First Login with MFA
xvfb-run --auto-servernum node scripts/mfa-login.js
When prompted, enter the 6-digit code from your Authenticator app. Saves auth state to config/storageState.json for headless reuse.
4. Fetch Calendar Data
node scripts/calendar-fetch.js # Today (SGT)
node scripts/calendar-fetch.js --date 2026-03-18 # Specific date
Returns JSON with all form fields auto-populated from both calendars.
5. Submit the Form
node scripts/submit-daily.js
Reads today's entry from daily-entries/YYYY-MM-DD.json and submits.
Architecture
Dual Calendar System
| Calendar | URL Source | Purpose |
|---|---|---|
| Training (TMS) | Built into script | Training Hours (source of truth) |
| Outlook | Built into script | Content Dev Hours, Other Items |
Field Logic
| # | Field | Source |
|---|---|---|
| 1 | Date | Today (M/d/yyyy) |
| 2 | Training Hours | Training calendar events |
| 3 | Content Dev Hours | Outlook calendar (content dev blockouts) |
| 4 | Content Dev Topic | Event description from Outlook |
| 5 | Learning Hours | max(0, 8 - training - contentDev) |
| 6 | Learning Topic | 2-3 random topics + any KT Sessions |
| 7 | Other Items | "Preparation, testing, and rehearsal for my next class" + Outlook events (excludes KT Sessions, training duplicates) |
| 8 | Team Hours | Blank |
| 9 | Team Description | Blank |
Fallback Defaults (if calendars fail)
| Field | Fallback |
|---|---|
| Training Hours | 0 |
| Content Dev Hours | 0 |
| Content Dev Topic | NA |
| Learning Hours | 8 |
| Learning Topic | 3 random topics from pool |
| Other Items | "Preparation, testing, and rehearsal for my next class" |
Scripts
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-claireaicodes-ms-forms-auto": {
"enabled": true,
"auto_update": true
}
}
}Related Skills
exa-tool
Exa MCP integration for advanced search, research, and crawling.
Openclaw Paragraph
Skill by claireaicodes
knowledge-management
Organize and classify OpenClaw knowledge entries into local folders by content type (Research, Decision, Insight, Lesson, Pattern, Project, Reference, Tutorial).
Paragraph Skill
Skill by claireaicodes
Paragraph Test
Skill by claireaicodes