Back to Templates

Monitor GitHub Releases with Gemini AI Chinese Translation & Slack Notifications

Created by

Created by: tbphp || tbphp

tbphp

Last update

Last update a month ago

Share


Overview

This n8n template monitors specified GitHub repositories. When a new release is published, it automatically fetches the information, uses AI (Google Gemini by default) to summarize and translate it into Chinese, and sends a formatted notification to a designated Slack channel.

Core Features:

  • Automated Monitoring: Checks for updates on a predefined schedule.
  • Intelligent Processing: Uses AI to extract key information and translate.
  • Error Handling: Sends an error notification if fetching RSS for a single repository fails, without affecting others.
  • Duplicate Prevention: Remembers the last processed release ID using Redis to ensure only new content is pushed.

Prerequisites

  • Slack: Configure your Slack app credentials in n8n.
  • Redis: Have an available Redis service and configure its credentials in n8n.
  • AI Provider (Gemini): Configure credentials for Google Gemini (or your chosen AI model) in n8n.

Configuration Instructions

After importing the template, you need to modify the following key nodes:

  1. Cron Trigger:
    • Adjust the Rule setting to change the update check frequency (default is 0 */10 9-23 * * *, checking every 10 minutes between 9 AM and 11 PM daily).
  2. GitHub Config (Repository List - Code Node):
    • Edit the JavaScript array within this node's code area.
    • Modify or add the repositories you want to follow. Each repository object needs a name (custom display name) and github (format: owner/repo).
    • Example:
      {
        "name": "n8n", // Custom display name
        "github": "n8n-io/n8n" // GitHub path
      },
      {
        "name": "LobeChat",
        "github": "lobehub/lobe-chat"
      }
      // ... add more repositories
      
  3. Redis and Redis2 (Redis Connection):
    • Select your configured Redis credentials in both nodes.
  4. Gemini (AI Model):
    • Select your configured Google Gemini credentials.
    • (Optional) Replace with a different supported AI model node and select its credentials.
  5. Information Extractor (AI Processing & Translation):
    • Main Configuration: Review the System Prompt. By default, it asks the AI to extract information and translate it into Chinese. Modify this prompt if you need a different language or summary style.
  6. Send Message and Send Error (Slack Notifications):
    • Select your configured Slack credentials in both Slack nodes.
    • Set the target Channel ID for notifications.

Workflow Overview

  1. Start: Cron Trigger initiates the workflow on schedule.
  2. Load Config: GitHub Config provides the list of repositories to monitor.
  3. Loop: The Loop node iterates through each repository.
  4. Fetch & Check:
    • The RSS node attempts to fetch the repository's releases feed.
    • If No Error checks for success:
      • Failure: Send Error posts an error to Slack, skips this repository.
      • Success: Continues.
  5. Check for New Release:
    • The Redis node retrieves the last recorded Release ID for this repository.
    • The If New node compares the latest Release ID with the recorded ID:
      • Different IDs (New Release): Proceeds to processing.
      • Same ID (Already Processed): Skips this repository.
  6. Process & Notify (Only for New Releases):
    • Information Extractor (with Gemini) extracts, summarizes, and translates the content.
    • The Code node formats the information into Slack Block Kit.
    • Send Message sends the formatted message to Slack.
    • The Redis2 node stores the current Release ID in Redis.
  7. End: The workflow finishes after processing all repositories.

Conclusion

Once configured, this template automates GitHub release monitoring, uses AI to distill key information, and delivers it efficiently to your Slack workspace.