← 返回 Skills 市场
devincodel

GitHub 通知自动分拣

作者 DevincodeL · GitHub ↗ · v1.0.1 · MIT-0
cross-platform ⚠ suspicious
123
总下载
0
收藏
0
当前安装
2
版本数
在 OpenClaw 中安装
/install github-triage
功能描述
GitHub notification auto-triage via email channel. Classifies incoming GitHub notification emails into three tiers: (1) CI failures and security alerts → imm...
使用说明 (SKILL.md)

GitHub Triage

Automatically classify and route GitHub notification emails.

Prerequisites

  • mail-cli installed (npm i -g @clawemail/mail-cli) with API key configured
  • Email channel plugin (@clawmail/email) enabled in OpenClaw
  • A dedicated sub-mailbox for GitHub notifications (created via setup script)

Setup

Run the setup script to create the sub-mailbox:

bash scripts/setup.sh [prefix]
  • prefix — sub-mailbox prefix (default: ghbot)

Main email (for receiving urgent forwards and daily summaries) is automatically resolved at runtime via:

mail-cli clawemail master-user

After setup:

  1. Add the new sub-mailbox as an email channel account in openclaw.jsonchannels.email.accounts
  2. Go to GitHub → Settings → Notifications → Custom routing → set email to \x3Cworkspace>[email protected]
  3. Restart OpenClaw gateway

Triage Workflow

When an email arrives on the ghbot account:

  1. Identify priority — read subject and body, match against rules in references/triage-rules.md
  2. Act on priority:
    • P0 (urgent): Resolve main email via mail-cli clawemail master-user, then forward immediately via mail-cli --profile ghbot compose send; prepend [紧急] to subject
    • P1 (buffer): Append to today's buffer file at memory/gh-triage-buffer-YYYY-MM-DD.json; do NOT reply or forward
    • P2 (archive): Mark as read via mail-cli --profile ghbot mail mark --ids \x3Cid> --fid 1 --read; no reply

Forwarding (P0)

First, resolve the main email:

MAIN_EMAIL=$(mail-cli clawemail master-user)

Then forward:

mail-cli --profile ghbot compose send \
  --to "$MAIN_EMAIL" \
  --subject "[紧急] \x3Coriginal-subject>" \
  --body "\x3Coriginal-body>" \
  --html

Buffering (P1)

Append entry to workspace file memory/gh-triage-buffer-YYYY-MM-DD.json:

[
  {
    "repo": "owner/repo",
    "type": "review_request",
    "title": "PR title",
    "number": 123,
    "url": "https://github.com/...",
    "author": "username",
    "receivedAt": "ISO-8601"
  }
]

Read existing file first (create [] if missing), append new entry, write back.

Archiving (P2)

mail-cli --profile ghbot mail mark --ids "\x3Cmessage-id>" --fid 1 --read

No reply, no forward.

Daily Summary

A cron job fires daily at the configured time (default 0 18 * * *). The job:

  1. Resolve main email: MAIN_EMAIL=$(mail-cli clawemail master-user)
  2. Read memory/gh-triage-buffer-YYYY-MM-DD.json for today
  3. If empty or missing → do nothing
  4. Group entries by repo and type
  5. Compose summary email following format in references/triage-rules.md → "Daily Summary Format"
  6. Send via mail-cli --profile ghbot compose send --to "$MAIN_EMAIL" --subject "[GitHub 日报] ..." --body "..." --html
  7. After successful send, rename buffer file to memory/gh-triage-buffer-YYYY-MM-DD.sent.json

Cron Setup

Create the daily summary cron job in OpenClaw:

schedule: { kind: "cron", expr: "0 18 * * *", tz: "Asia/Shanghai" }
sessionTarget: "isolated"
payload: { kind: "agentTurn", message: "Run GitHub triage daily summary. Read today's buffer file, compose and send the summary email." }

Configuration

  • main_email — automatically resolved at runtime via mail-cli clawemail master-user; no manual configuration needed
  • summary_time — cron expression for daily summary (default: 0 18 * * *)

Detailed Rules

See references/triage-rules.md for complete matching patterns and output formats.

安全使用建议
This skill appears to implement email triage, but the package metadata understates its runtime requirements. Before installing, verify you are willing to give the agent access to your mail-cli account and associated API key (the skill will call 'mail-cli clawemail master-user' and create a sub-mailbox). Confirm mail-cli and jq are installed on the host and that you trust the @clawemail/mail-cli package source. Be aware the setup will create/print an auth code for the new sub-mailbox — store it securely. Review where buffer files (memory/gh-triage-buffer-YYYY-MM-DD.json) will be stored and who can read them. If you need stronger guarantees, ask the author to update the skill manifest to explicitly list required binaries and environment variables and to document exactly how credentials are stored/used.
功能分析
Type: OpenClaw Skill Name: github-triage Version: 1.0.1 The github-triage skill automates the classification and routing of GitHub notification emails into urgent forwards, daily summaries, or archives. It utilizes a local `mail-cli` utility and a bash setup script (`scripts/setup.sh`) to manage sub-mailboxes and email routing. The logic in `SKILL.md` and `references/triage-rules.md` is transparent, aligns with the stated purpose, and contains no evidence of malicious intent, data exfiltration, or unauthorized execution.
能力评估
Purpose & Capability
The name/description match the runtime instructions: the skill triages GitHub notification emails, forwards urgent items, buffers others, and archives the rest. Requested capabilities (creating a sub-mailbox, sending/marking mail) are consistent with that purpose. However, the skill metadata claims 'no required binaries/env vars' while SKILL.md explicitly requires mail-cli (npm @clawemail/mail-cli) and the setup script uses jq; this mismatch is unexpected and worth attention.
Instruction Scope
Instructions stay within the stated purpose: they read incoming GitHub emails, match patterns in references/triage-rules.md, forward or archive via mail-cli, and write a local buffer file for daily summaries. They do not demand unrelated files or external endpoints beyond the mail system and the user's main email.
Install Mechanism
There is no install spec (instruction-only plus a small setup script), so nothing arbitrary is downloaded or installed by the skill bundle itself. The setup step relies on external tooling (mail-cli and jq) that must already be present — no third-party install URLs are embedded in the skill.
Credentials
The SKILL.md and setup script require mail-cli configured with an API key and use mail-cli to resolve the master user email, but the skill metadata lists no required environment variables or primary credential. That omission is disproportionate: the skill needs access to mail-cli credentials (and will display auth codes when creating sub-mailboxes), yet the manifest does not declare or request them. The setup script also uses jq but this is not declared.
Persistence & Privilege
The skill does not request always:true and does not modify other skills or system-wide settings. It instructs adding a cron schedule inside OpenClaw for daily summary runs (normal for an email automation). Autonomous invocation is allowed (default) which is expected for a triage automation.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install github-triage
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /github-triage 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.1
- Main email address for urgent forwards and daily summaries is now automatically resolved using `mail-cli clawemail master-user`; manual configuration is no longer required. - Setup instructions updated: the setup script now only requires an optional `[prefix]` argument (removes manual entry of main email). - All workflows involving the main email updated to fetch the address at runtime instead of relying on a preconfigured value. - Documentation streamlined to reflect these changes; buffer files and cron jobs no longer reference a statically set email address.
v1.0.0
Initial release: Automates email triage for GitHub notifications. - Classifies GitHub notification emails into urgent, daily summary, or archive tiers. - Urgent items (CI failures, security alerts) are immediately forwarded with a [紧急] tag. - Pull request reviews/merges are grouped for a daily summary email at a scheduled time. - All other notifications are silently marked as read and archived. - Integrates with mail-cli and ClawEmail's email channel; setup and configuration details included. - Supports custom routing from GitHub and configurable daily summary time.
元数据
Slug github-triage
版本 1.0.1
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 2
常见问题

GitHub 通知自动分拣 是什么?

GitHub notification auto-triage via email channel. Classifies incoming GitHub notification emails into three tiers: (1) CI failures and security alerts → imm... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 123 次。

如何安装 GitHub 通知自动分拣?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install github-triage」即可一键安装,无需额外配置。

GitHub 通知自动分拣 是免费的吗?

是的,GitHub 通知自动分拣 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

GitHub 通知自动分拣 支持哪些平台?

GitHub 通知自动分拣 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 GitHub 通知自动分拣?

由 DevincodeL(@devincodel)开发并维护,当前版本 v1.0.1。

💬 留言讨论