PowerSkills
Skill aloth/PowerSkills
Windows PowerShell toolkit for AI agents: Microsoft 365 (mail, calendar, Teams, SharePoint, OneDrive) via Work IQ + Microsoft Graph, Outlook COM, Edge browser (CDP), desktop, and system control - all returning structured JSON.
npx -y skills add aloth/PowerSkillsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Windows automation toolkit for AI agents. Provides Outlook email/calendar (COM), Microsoft 365 mail/calendar/Teams/SharePoint/OneDrive via Work IQ CLI, Edge browser (CDP), desktop screenshots/window management, and shell commands via PowerShell. Install this for the full suite, or install individual sub-skills (powerskills-outlook, powerskills-workiq, powerskills-browser, powerskills-desktop, powerskills-system) separately.
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
2.7 KB, as published. Nobody here has run it
PowerSkills
Windows capabilities for AI agents via PowerShell. Each skill in skills/ is independently discoverable.
Setup
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
Getting the executable scripts
AgentSkills (npx skills add aloth/PowerSkills) only publishes the Markdown skill definitions into ~\.agents\skills\powerskills\ (and the per-skill sub-folders). The .ps1 files that actually do the work are not copied there. To run any action you need a working copy of this repository on disk:
# Clone once, anywhere you like
git clone https://github.com/aloth/PowerSkills.git C:\Tools\PowerSkills
Invoke the CLI with the full path to powerskills.ps1:
powershell -NoProfile -ExecutionPolicy Bypass `
-File C:\Tools\PowerSkills\powerskills.ps1 <skill> <action> [--param value ...]
To avoid repeating the path, either store it agent-side once or set an env var and reference that from any shell:
[Environment]::SetEnvironmentVariable("POWERSKILLS_ROOT", "C:\Tools\PowerSkills", "User")
# New shells then use:
powershell -NoProfile -ExecutionPolicy Bypass -File "$env:POWERSKILLS_ROOT\powerskills.ps1" list
Usage
.\powerskills.ps1 <skill> <action> [--param value ...]
.\powerskills.ps1 list # Discover available skills
.\powerskills.ps1 outlook inbox --limit 10 # Run an action
Output Format
All actions return JSON:
{"status": "success", "exit_code": 0, "data": {...}, "timestamp": "..."}
Configuration
Edit config.json:
{
"edge_debug_port": 9222,
"default_timeout": 30,
"outlook_body_max_chars": 5000
}
Skills
| Skill | Description |
|---|---|
| outlook | Email & calendar via Outlook COM |
| workiq | Microsoft 365 (mail/calendar/Teams/SharePoint/OneDrive) via Work IQ CLI |
| browser | Edge automation via CDP |
| desktop | Screenshots, window management, keystrokes |
| system | Shell commands, processes, system info |