Skip to content

Latest commit

 

History

History
94 lines (69 loc) · 2.49 KB

File metadata and controls

94 lines (69 loc) · 2.49 KB

Summarize commits & send client email

Turn recent commits into polished client-facing update emails automatically.

This action uses OpenAI to summarize commit activity and generate an HTML email you can send to clients via SMTP.

Features

  • Summarizes recent commit messages with OpenAI
  • Rewrites technical changes into client-friendly language
  • Generates HTML email output
  • Works with reusable workflows across many client repos

Inputs

Name Required Default Description
openai-model No gpt-5.4-mini OpenAI model used to generate the summary
site-label No "" Optional site or client label

Outputs

Name Description
email_body Generated HTML email body
skip_email true when email sending should be skipped

Required secrets

  • OPENAI_API_KEY
  • SMTP_USERNAME
  • SMTP_PASSWORD
  • CLIENT_EMAIL

Reusable workflow usage

name: Commit Email Summary

on:
  push:
    branches: [main, master]

jobs:
  email_summary:
    uses: Serbyte-Development/actions/.github/workflows/send_commit_email.yaml@v1
    with:
      openai_model: gpt-5.4-mini
      site_label: "Acme Dental"
    secrets:
      OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
      SMTP_USERNAME: ${{ secrets.SMTP_USERNAME }}
      SMTP_PASSWORD: ${{ secrets.SMTP_PASSWORD }}
      CLIENT_EMAIL: ${{ secrets.CLIENT_EMAIL }}

Direct action usage

name: Send Client Update

on:
  push:
    branches: [main, master]

jobs:
  send_update:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v4

      - name: Generate summary
        id: summarize
        uses: Serbyte-Development/actions@v1
        with:
          openai-model: gpt-5.4-mini
          site-label: Acme Dental
        env:
          OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}

Notes

  • Reusable workflow inputs use underscores: site_label, openai_model
  • Direct action inputs should use hyphens: site-label, openai-model
  • The direct action also accepts underscore aliases for backward compatibility
  • Add a skip token such as <skip_email> to any commit message to skip the email for that push

License

MIT

Built by Serbyte Development