Triage GitHub notifications and issue/PR queues.
npx skills add https://github.com/notque/vexjoy-agent --skill github-notification-triage
Fetch, classify, and report on GitHub notifications. The script does the heavy lifting — this skill orchestrates invocation and presents results.
# Report-only (default): show what needs attention, no modifications
python3 scripts/github-notification-triage.py
# Mark informational notifications as read after reporting
python3 scripts/github-notification-triage.py --mark-read
# Save report to ~/.claude/reports/notifications/
python3 scripts/github-notification-triage.py --save
# Cron/scheduled mode: auto-clear noise and save report
python3 scripts/github-notification-triage.py --mark-read --save
Run report-only by default:
python3 scripts/github-notification-triage.py
Display the script output directly to the user. The report classifies notifications into:
If the user responds with any of the following, re-run with --mark-read:
python3 scripts/github-notification-triage.py --mark-read
Confirm how many notifications were marked read after the run completes.
When invoked on a schedule (no interactive user), use both flags to auto-clear and persist the report:
python3 scripts/github-notification-triage.py --mark-read --save
| Signal | Load These Files | Why |
|---|---|---|
| triaging an issue or pull-request queue | item-card-contract.md | Defines the required per-item report card. |
When the task is triaging a queue of issues or PRs (not just notifications), report one card per item using the contract in references/item-card-contract.md:
git status --short empty) before any local work on an item.| Code | Meaning |
|------|---------|
| 0 | Success |
| 1 | Error (auth failure, API error, script not found) |
Use when building HTML email templates with React components, adding a visual email editor to an application using the React Email visual editor, rendering emails to HTML, or sending emails with Resend. Covers welcome emails, password resets, notifications, order confirmations, newsletters, transactional emails, and the embeddable email editor component.
MCP Agent Mail - Mail-like coordination layer for multi-agent workflows. Identities, inbox/outbox, file reservations, contact policies, threaded messaging, pre-commit guard, Human Overseer, static exports, disaster recovery. Git+SQLite backed. Python/FastMCP.
Chat UI building blocks for React/Next.js from ui.inference.sh. Components: container, messages, input, typing indicators, avatars. Capabilities: chat interfaces, message lists, input handling, streaming. Use for: building custom chat UIs, messaging interfaces, AI assistants. Triggers: chat ui, chat component, message list, chat input, shadcn chat, react chat, chat interface, messaging ui, conversation ui, chat building blocks
\"Chat UI building blocks for React/Next.js from ui.inference.sh. Components: container, messages, input, typing indicators, avatars. Capabilities: chat interfaces, message lists, input handling, streaming. Use for: building custom chat UIs, messaging interfaces, AI assistants. Triggers: chat ui, chat component, message list, chat input, shadcn chat,\" react chat, chat interface, messaging ui, conversation ui, chat building blocks
Add DeltaChat channel integration via @deltachat/stdio-rpc-server. Native adapter — no Chat SDK bridge. Email-based messaging with end-to-end encryption.
Add Resend (email) channel integration via Chat SDK.
Build a Zoom meeting bot, recorder, or real-time media workflow. Use when joining meetings programmatically, processing live media or transcripts, or combining Meeting SDK, RTMS, and backend services.
Reference skill for Zoom Meeting SDK. Use after routing to a meeting-embed workflow when implementing real Zoom meeting joins, platform-specific SDK behavior, auth and join flows, waiting room issues, or meeting bot patterns.
Take notque/github-notification-triage from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.