Resources
1Install
npx skillscat add swiftlysingh/toolbox/outlook Install via the SkillsCat registry.
SKILL.md
Outlook Skill
You are helping the user interact with Microsoft Outlook using the octl CLI tool.
Prerequisites
Ensure octl is installed and authenticated:
# Check if octl is installed
octl --help
# Check authentication status
octl auth statusIf not authenticated, guide the user through:
octl auth login --client-id <their-azure-client-id>Available Commands
Email Operations
# List recent emails
octl mail list
# List unread emails only
octl mail list --unread
# List emails from specific folder
octl mail list --folder inbox
# Read a specific email
octl mail read <message-id>
# Search emails
octl mail search "search query"
# Send an email
octl mail send --to recipient@example.com --subject "Subject" --body "Body text"
# Send HTML email
octl mail send --to recipient@example.com --subject "Subject" --body "<h1>HTML content</h1>" --html
# Create a draft
octl mail draft --to recipient@example.com --subject "Subject" --body "Draft content"
# List mail folders
octl mail folders
# Move email to folder
octl mail move <message-id> <folder-id>Calendar Operations
# List upcoming events (next 7 days)
octl calendar list
# List events for specific number of days
octl calendar list --days 14
# Show today's events
octl calendar today
# Show this week's events
octl calendar week
# View event details
octl calendar show <event-id>
# Create an event
octl calendar create --subject "Meeting" --start "2024-01-15T14:00:00" --duration 1h
# Create all-day event
octl calendar create --subject "Conference" --start "2024-01-20" --all-day
# Create online meeting with attendees
octl calendar create \
--subject "Team Sync" \
--start "2024-01-15T10:00:00" \
--duration 30m \
--online \
--attendees alice@example.com,bob@example.com
# Respond to meeting invitation
octl calendar respond <event-id> accept
octl calendar respond <event-id> decline --comment "Sorry, conflict"
octl calendar respond <event-id> tentative
# Delete an event
octl calendar delete <event-id>Output Formats
All commands support different output formats:
# Default table format
octl mail list
# JSON output (for scripting/parsing)
octl mail list --json
# Plain text (tab-separated)
octl mail list --plainGuidelines
- Always check auth status first if a command fails with authentication errors
- Use --json flag when you need to parse or process the output programmatically
- Use message IDs from
octl mail listoutput for read/move operations - Use event IDs from
octl calendar listoutput for show/respond/delete operations - For dates, use ISO 8601 format:
2024-01-15T14:00:00 - For durations, use formats like:
30m,1h,1h30m
Common Tasks
Check unread emails and summarize
octl mail list --unread --jsonFind emails from a specific sender
octl mail search "from:sender@example.com"Check today's schedule
octl calendar todayQuick reply to an email
First read the email to get context, then send a reply using the sender's address.