Skip to content
activity

GitHub Action

ChatGPT Integration

v0.3 Latest version

ChatGPT Integration

activity

ChatGPT Integration

This action integrates ChatGPT into your CI

Installation

Copy and paste the following snippet into your .yml file.

              

- name: ChatGPT Integration

uses: kxxt/[email protected]

Learn more about this action in kxxt/chatgpt-action

Choose a version

chatgpt-action

Let chatgpt review your PR.

Please note: this repo is a WIP and I do not recommend you to use it in production!

Ideas

  • Create a vscode extension that asks ChatGPT to refactor or point out the bugs of a selected range of code. I don't have time to learn vscode extension and implement it.
  • Implement ChatGPT's review feedback as a commit or suggested change (#27)

Warning

  • code of experimental quality!
  • ChatGPT often generates misleading comments which could confuse your contributors and that's one reason against using this action in production.
  • Sometimes you will get 403 errors when the generated prompt is too long or considered an attack(perhaps?).
    • Split the prompt and let ChatGPT comment on every single file should resolve this issue most of the time.
    • This feature has been implemented but it is unstable. Add split: true to with node in your config to enable this feature.

Showcase

YOLO Mode: Give all the info to ChatGPT in one go

Using Unstable Split Feature

Usage

on: [pull_request]

name: ChatGPT CodeReview

jobs:
  chatgpt_comment:
    runs-on: ubuntu-latest
    name: Let chatgpt comment on your PR.
    steps:
      - name: ChatGPT comment
        uses: kxxt/[email protected]
        id: chatgpt
        with:
          number: ${{ github.event.pull_request.number }}
          sessionToken: ${{ secrets.CHATGPT_SESSION_TOKEN }}
          split: 'yolo'  # Use true to enable the unstable split feature.
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}