pi/agent/skills/office-snapshot/SKILL.md
One-shot local office snapshot across work/private mail, calendar, and web search. Use when the user asks Pi to show recent emails, recent calendar entries, search the web, make a daily brief, benchmark tool use, or combine sloppy/sloptools and helpy in one compact response.
npx skillsauth add krystophny/prompts office-snapshotInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Fast path for combined mail/calendar/web requests. Do not discover tools first unless one of these commands fails; the schemas are stable and already exposed by the component skills.
Run commands serially. Never start another Pi, sloptools, or helpy call while one is still running. Keep limits small unless the user asks for more. Do not include full email bodies or calendar descriptions unless explicitly requested.
sloptools tools call mail_message_list --args '{"sphere":"private","folder":"INBOX","limit":5}'
sloptools tools call mail_message_list --args '{"sphere":"work","folder":"INBOX","limit":5}'
sloptools tools call calendar_events --args '{"days":7,"limit":5}'
helpy tools call web_search --args '{"query":"<user topic>","limit":3}'
Use sphere only for mail. Generic personal/work calendar always means sloptools tools call calendar_events, never helpy ics_events. calendar_events currently lists configured Google calendars; do not claim a work/private calendar split unless the returned calendars make that split explicit.
mail_message_list returns { "count": N, "messages": [...] }.calendar_events returns { "count": N, "events": [...] }.web_search returns { "result": { "query": "...", "results": [...] } }.For a benchmark or capability check, return a compact JSON object with counts and exact CLI tool names:
{
"private_mail": 0,
"work_mail": 0,
"calendar_events": 0,
"web_results": 0,
"tools_called": [
"sloptools.mail_message_list",
"sloptools.calendar_events",
"helpy.web_search"
]
}
For a user-facing briefing, summarize only the requested fields. Prefer subject/title/date/source snippets over bodies. If the user did not ask for private details, report counts only.
Use this shape when the user asks for counts or a benchmark:
private_mail=$(sloptools tools call mail_message_list --args '{"sphere":"private","folder":"INBOX","limit":5}' | jq -r '.count')
work_mail=$(sloptools tools call mail_message_list --args '{"sphere":"work","folder":"INBOX","limit":5}' | jq -r '.count')
calendar_events=$(sloptools tools call calendar_events --args '{"days":7,"limit":5}' | jq -r '.count')
web_results=$(helpy tools call web_search --args '{"query":"<user topic>","limit":3}' | jq -r '.result.results | length')
jq -n \
--argjson private_mail "$private_mail" \
--argjson work_mail "$work_mail" \
--argjson calendar_events "$calendar_events" \
--argjson web_results "$web_results" \
'{private_mail:$private_mail,work_mail:$work_mail,calendar_events:$calendar_events,web_results:$web_results,tools_called:["sloptools.mail_message_list","sloptools.calendar_events","helpy.web_search"]}'
data-ai
Delegate a bulk-work subtask to the local Qwen via one-shot pi run. Use when the subtask is high-volume but low-complexity (file scans, log parsing, large-text summaries, repetitive transforms) so it should not burn parent-model tokens.
development
Delegate a bulk-work subtask to the local Qwen via one-shot opencode run. Use when the subtask is high-volume but low-complexity (file scans, log parsing, large-text summaries, repetitive transforms) so it should not burn parent-model tokens.
development
ETL pipeline that imports manually-downloaded Discord, LinkedIn, and WhatsApp archive ZIPs into the user's brain vaults as plain files (no APIs, no tokens, no daemons). Use when the task involves processing or querying a Discord/LinkedIn/WhatsApp data export.
tools
The user's email, contacts, personal tasks/todos, and full-CRUD Google + EWS calendars. Drives the sloptools CLI (same surface as the sloppy MCP on 127.0.0.1:9420). Use for mail (Gmail / Exchange-EWS / IMAP — list, read, send, reply, forward, flag, categorize, server-side filters, delegated mailboxes, out-of-office), calendar events (create / update / delete / RSVP / freebusy / ICS export across work + private accounts), contacts and contact groups, tasks (Google Tasks, Todoist), slopshell canvas, agent handoffs, and workspace items/artifacts/actors/triage.