Setup Guide
Get ReviewBot running in your GitLab CI/CD pipeline.
Prefer video? Watch the setup walkthrough
Quick Start
Fork our template repo, change 2 lines, add your credentials, and run.
Fork Template on GitLabPrerequisites
- 1. A GitLab account (free tier works)
- 2. An Android app on Google Play
- 3. A Google Play service account with reply permissions
- 4. An OpenAI API key
1 Fork the Template
Go to the ReviewBot template on GitLab and click Fork. This gives you a ready-to-use repo with:
.gitlab-ci.yml— pre-configured pipelineprompt.txt— prompt template with all placeholders
2 Edit Your App Details
Open .gitlab-ci.yml and change these two lines:
GP_PACKAGE_NAME: "com.example.yourapp" # Your Android package name
GP_APP_NAME: "Your App Name" # Your app's display name 3 Add CI/CD Variables
Go to Settings → CI/CD → Variables and add these (all masked):
| Variable | Value |
|---|---|
| GOOGLE_APPLICATION_CREDENTIALS_JSON | Full JSON of your service account key |
| OPENAI_API_KEY | Your OpenAI API key (sk-...) |
| REVIEWBOT_GITLAB_TOKEN | GitLab PAT with api scope |
| LICENSE_KEY | Free beta key (copy from below) |
Free Beta License Key (valid until April 30, 2026):
eyJ0eXBlIjoiZnJlZV90cmlhbCIsImV4cGlyZXMiOiIyMDI2LTA0LTMwIiwiY3VzdG9tZXIiOiJldmVyeW9uZSJ9.gloyc8X5U/abEnA7X8rJQMalAbkgXKrhFFj3r/g+uRDGrb0jMrtcoyKVMgKgHC+Xiwbv6sJq7//7cNaSJ0ocqX1grQVmbJ8dIs4+bo7Nso4pw4YCQrTOl+hwjc9N9qXBMxWn8rDWvd+gRkd99CbAGdei4GvVtmB4g4r2bSWSqV/7am+tLI3BRF6fQ6ZVxV98wLG5+nx2iH5U7CfsUcYdIEs3hBgUNJS+RpQpCMkRQVG+Tlxj1qzVxbPR3SZhcPyck8dBjJfAcPKnDGFjhVSY22mwa6amWtBtq6b307OPCXWSZjAQtNZ4OVlSUnS5DhnwLGtFvE+YDk2192JsH82P9Q==
Don't have the other credentials yet? See the detailed guides below.
4 Run the Pipeline
- Go to CI/CD → Pipelines → Run pipeline
- Wait for the pipeline to complete
- Check Merge Requests — you'll see suggested replies
- Review and edit if needed
- Merge to publish replies to Google Play
+ Set Up a Schedule (Optional)
For automatic daily runs:
- Go to CI/CD → Schedules
- Create a new schedule (e.g., daily at 9:00 AM)
- Target branch:
main
Add Slack Integration (Optional)
Review, edit, and approve replies directly from Slack. No need to open GitLab.
Step 2: Run the Setup Command
In any Slack channel, type:
/reviewbot setup You'll need your GitLab Project ID and the same REVIEWBOT_GITLAB_TOKEN from Step 3.
Step 3: Invite the Bot
In your notification channel, run:
/invite @ReviewBot Required for both public and private channels.
What You Get
- • Instant notifications — See new reviews in Slack when your pipeline runs
- • Edit in Slack — Modify reply text without opening GitLab
- • One-click publish — Approve all replies and publish to Google Play instantly
For more details, see the Slack Integration page.
Credential Setup Guides
GOOGLE_APPLICATION_CREDENTIALS_JSON
What: The full JSON content of a Google Play service account key.
Why: ReviewBot uses this to access the Google Play Developer API — fetching reviews and posting replies on your behalf.
Part A: Create a Service Account in Google Cloud Console
- Go to console.cloud.google.com
- Create a new project (or select an existing one)
- Go to APIs & Services → Library
- Search for "Google Play Android Developer API" and click Enable
- Go to IAM & Admin → Service Accounts
- Click Create Service Account
- Give it a name (e.g., "reviewbot") — skip the optional role steps
- Click the newly created service account
- Go to the Keys tab
- Click Add Key → Create new key → JSON
- A JSON file downloads — save this file, you'll need it later
Part B: Grant Permissions in Google Play Console
- Go to play.google.com/console
- Go to Users and permissions (left sidebar, under Settings)
- Click Invite new users
- Paste the service account email (found in the JSON file as
"client_email", e.g.,reviewbot@your-project.iam.gserviceaccount.com) - Under App permissions: click Add app and select your app
- Check the "Reply to reviews" permission
- Click Invite
Part C: Add to GitLab
- Open the downloaded JSON file in a text editor
- Copy the entire content (including the curly braces)
- In GitLab, go to Settings → CI/CD → Variables
- Add a new variable named
GOOGLE_APPLICATION_CREDENTIALS_JSON - Paste the full JSON as the value
- Check Mask variable (if it fails due to special characters, that's OK — the variable is still hidden in the UI)
OPENAI_API_KEY
What: Your OpenAI API key (starts with sk-...).
Why: ReviewBot uses OpenAI's language models to generate professional, context-aware reply suggestions for each review.
How to generate:
- Go to platform.openai.com
- Sign up or log in
- Go to API Keys (left sidebar) or visit platform.openai.com/api-keys
- Click Create new secret key
- Copy the key — you won't be able to see it again
- Make sure you have billing set up (API usage is pay-as-you-go — expect ~$1-3 per 1,000 reviews with
gpt-4o-mini)
REVIEWBOT_GITLAB_TOKEN
What: A GitLab Personal Access Token (PAT) with api scope.
Why: ReviewBot creates a branch, commits the suggestions file, and opens a Merge Request in your repository. This requires API access to your project.
How to generate:
- Go to GitLab → click your avatar → Preferences
- Go to Access Tokens (left sidebar)
- Click Add new token
- Set a name (e.g., "ReviewBot") and expiration date
- Select the "api" scope (full API access)
- Click Create personal access token
- Copy the token immediately — you won't see it again
Tip: For better security, you can use a Project Access Token instead (limited to this project only). Create it under Settings → Access Tokens with api scope and at least Developer role.
LICENSE_KEY
What: Your ReviewBot license key (a long encoded string).
Why: ReviewBot requires a valid license to run. The license is cryptographically signed and cannot be modified or forged.
Copy the free beta license key from the box above, or visit the pricing page.
Customize Your Prompt
The template includes a generic prompt.txt that works well out of the box.
To tailor replies to your app's voice, edit the prompt and add context about your app's domain.
See the Prompt Guide for tips on writing effective prompts.