About powerskills
PowerSkills provides Windows capabilities to AI agents through PowerShell. Its skills cover Outlook, Microsoft 365, Edge, desktop actions, and system operations, returning results as JSON.
Key features
- 01Discover and run skills from the CLI
- 02Access Outlook email and calendar
- 03Use Work IQ for Microsoft 365
- 04Automate Edge through CDP
- 05Perform desktop and system actions
Use cases
- 01Inspect an Outlook inbox or calendar
- 02Work with Microsoft 365 mail and files
- 03Automate actions in Edge
- 04Inspect processes or manage desktop windows
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ aloth/ powerskills --skill powerskillsAfter installing, type/powerskillsin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
README.mdCITATION.cff.gitignoreconfig.jsonLICENSEpowerskills.ps1.github/ISSUE_TEMPLATE/bug_report.mdfeature_request.mddocs/robots.txtindex.htmlsitemap.xmllib/bootstrap.ps1skills/browser/browser.ps1skills/desktop/desktop.ps1skills/outlook/outlook.ps1skills/system/system.ps1skills/workiq/workiq.ps1tests/test-all.ps1Details
From the project READMEPowerSkills
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 |