Skip to content

Add HolmesGPT GitHub Actions integration documentation#2051

Open
arikalon1 wants to merge 2 commits intomasterfrom
claude/add-github-action-docs-KZ6tM
Open

Add HolmesGPT GitHub Actions integration documentation#2051
arikalon1 wants to merge 2 commits intomasterfrom
claude/add-github-action-docs-KZ6tM

Conversation

@arikalon1
Copy link
Copy Markdown
Contributor

Summary

This PR adds comprehensive documentation for the new HolmesGPT GitHub Actions integration, enabling users to automatically review pull requests using HolmesGPT within their GitHub workflows.

Key Changes

  • New documentation structure: Created docs/configuration/github-actions/ directory with index and integration guides
  • HolmesGPT PR Review guide (holmes-pr-review.rst): Complete setup and usage documentation including:
    • Overview of how the integration works
    • Prerequisites (GitHub integration setup)
    • Step-by-step setup instructions (API key creation, account/cluster ID retrieval, GitHub secrets configuration)
    • Ready-to-use GitHub Actions workflow template with curl-based Holmes Chat API integration
    • Customization guidance for review prompts
    • Configuration reference and troubleshooting section
  • GitHub Actions index (index.rst): Landing page for GitHub Actions integrations with links to available actions
  • Documentation navigation: Updated main docs/index.rst to include new GitHub Actions section in the table of contents

Notable Implementation Details

  • The workflow uses curl to call the Holmes Chat API with PR context and custom review prompts
  • Includes error handling with retry logic and JSON response parsing
  • Provides clear troubleshooting guidance for common setup issues (missing credentials, invalid cluster ID, disabled GitHub integration)
  • Emphasizes that the integration requires the GitHub toolset to be enabled in HolmesGPT
  • Includes visual aids (API key generation screenshot) for better user experience

https://claude.ai/code/session_01KKnLu24WBHBc4SjbpxPrMM

Adds a new "GitHub Actions" section to the docs sidebar, next to "HTTP APIs",
documenting the HolmesGPT PR review action: prerequisites, Robusta API key and
cluster setup, required GitHub secrets, the workflow file, and troubleshooting.

https://claude.ai/code/session_01KKnLu24WBHBc4SjbpxPrMM
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 20, 2026

Docker image ready for 463b3fb (built in 41s)

⚠️ Warning: does not support ARM (ARM images are built on release only - not on every PR)

Use this tag to pull the image for testing.

📋 Copy commands

⚠️ Temporary images are deleted after 30 days. Copy to a permanent registry before using them:

gcloud auth configure-docker us-central1-docker.pkg.dev
docker pull us-central1-docker.pkg.dev/robusta-development/temporary-builds/robusta-runner:463b3fb
docker tag us-central1-docker.pkg.dev/robusta-development/temporary-builds/robusta-runner:463b3fb me-west1-docker.pkg.dev/robusta-development/development/robusta-runner-dev:463b3fb
docker push me-west1-docker.pkg.dev/robusta-development/development/robusta-runner-dev:463b3fb

Patch Helm values in one line:

helm upgrade --install robusta robusta/robusta \
  --reuse-values \
  --set runner.image=me-west1-docker.pkg.dev/robusta-development/development/robusta-runner-dev:463b3fb

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 20, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 5efe19b2-b4d8-4c9b-b8ba-93be8c08964a

📥 Commits

Reviewing files that changed from the base of the PR and between cf9c8c9 and 2c4de9a.

⛔ Files ignored due to path filters (2)
  • docs/images/holmes-pr-review-example.png is excluded by !**/*.png
  • docs/images/new-api-key.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • docs/configuration/github-actions/holmes-pr-review.rst
✅ Files skipped from review due to trivial changes (1)
  • docs/configuration/github-actions/holmes-pr-review.rst

Walkthrough

Adds documentation pages for GitHub Actions integration with HolmesGPT PR Review: setup steps, required secrets and API key scopes, example workflow (.github/workflows/holmes-pr-review.yaml), prompt customization, end-to-end flow, and troubleshooting. No code changes.

Changes

Cohort / File(s) Summary
GitHub Actions docs
docs/configuration/github-actions/holmes-pr-review.rst, docs/configuration/github-actions/index.rst
New documentation explaining HolmesGPT PR Review GitHub Actions workflow: availability notes, required Robusta API key and secrets, example workflow that posts PR comments via Holmes Chat API, PROMPT customization, and troubleshooting guidance.
Docs index update
docs/index.rst
Added toctree entries linking the new GitHub Actions overview and HolmesGPT PR Review pages to the main docs navigation.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

Suggested reviewers

  • aantn
  • pavangudiwada
🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: adding documentation for HolmesGPT GitHub Actions integration, which aligns with the three new documentation files created.
Description check ✅ Passed The description is directly related to the changeset, providing detailed context about the new documentation structure, setup guides, and implementation details for the GitHub Actions integration.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/add-github-action-docs-KZ6tM

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
docs/configuration/github-actions/holmes-pr-review.rst (1)

93-97: Add explicit HTTP timeouts to improve workflow reliability.

The curl example has retries but no timeout bounds. Add connect/overall time limits so failed calls fail fast and don’t stall CI jobs.

Suggested hardening for the example command
-              curl -fsS --retry 2 \
+              curl -fsS --retry 2 --connect-timeout 10 --max-time 90 \
                 -H "Authorization: Bearer $API_KEY" \
                 -H "Content-Type: application/json" \
                 --data-binary `@body.json` \
                 "$RELAY_BASE_URL/api/holmes/$ACCOUNT_ID/chat" > response.json
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/configuration/github-actions/holmes-pr-review.rst` around lines 93 - 97,
The curl example currently retries but lacks timeout bounds; update the curl
invocation (the long command that posts body.json to
"$RELAY_BASE_URL/api/holmes/$ACCOUNT_ID/chat") to include explicit connect and
overall timeouts (e.g., add --connect-timeout 10 and --max-time 30) so requests
fail fast in CI, and keep the existing -fsS/--retry flags intact; ensure the
timeout options are placed alongside the existing headers and --data-binary
options.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/configuration/github-actions/holmes-pr-review.rst`:
- Around line 4-6: Update the GitHub Actions workflow example to remove
ambiguity about the relay endpoint by either (A) documenting the self-hosted
relay URL and showing how to set it via an env var (use RELAY_BASE_URL in the
workflow example and explain the self-hosted value), or (B) explicitly state in
the note that self-hosted commercial deployments use the SaaS relay
(https://api.robusta.dev) so no change is needed; ensure the docs around the
workflow example reference RELAY_BASE_URL and include a short example of setting
it as an environment variable for self-hosted installs.

---

Nitpick comments:
In `@docs/configuration/github-actions/holmes-pr-review.rst`:
- Around line 93-97: The curl example currently retries but lacks timeout
bounds; update the curl invocation (the long command that posts body.json to
"$RELAY_BASE_URL/api/holmes/$ACCOUNT_ID/chat") to include explicit connect and
overall timeouts (e.g., add --connect-timeout 10 and --max-time 30) so requests
fail fast in CI, and keep the existing -fsS/--retry flags intact; ensure the
timeout options are placed alongside the existing headers and --data-binary
options.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 90383609-9f3b-4e5c-8ecf-96e505f690da

📥 Commits

Reviewing files that changed from the base of the PR and between c22a51e and cf9c8c9.

📒 Files selected for processing (3)
  • docs/configuration/github-actions/holmes-pr-review.rst
  • docs/configuration/github-actions/index.rst
  • docs/index.rst

Comment on lines +4 to +6
.. note::
This integration is available with the Robusta SaaS platform and self-hosted commercial plans. It is not available in the open-source version.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Verify whether docs already define alternative/self-hosted relay endpoints.
rg -n -C2 "api\\.robusta\\.dev|RELAY_BASE_URL|self-hosted|holmes chat api|/api/holmes/" docs

Repository: robusta-dev/robusta

Length of output: 40026


Clarify self-hosted relay URL configuration in the GitHub Actions example.

Line 5 claims self-hosted commercial deployments are supported, but the workflow example at line 75 hardcodes RELAY_BASE_URL: https://api.robusta.dev. This creates ambiguity: if self-hosted deployments use a different relay endpoint, users will need to modify the example, but the documentation provides no guidance. Either document the alternative self-hosted relay URL (if one exists) and make it configurable via environment variables, or clarify in the note that self-hosted deployments also use the SaaS relay endpoint.

Example fix (if self-hosted uses a different endpoint)
-          RELAY_BASE_URL: https://api.robusta.dev
+          # Configure this based on your deployment: SaaS uses api.robusta.dev; self-hosted uses your configured relay URL
+          RELAY_BASE_URL: ${{ vars.ROBUSTA_RELAY_BASE_URL || 'https://api.robusta.dev' }}

Also applies to: 75-76

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/configuration/github-actions/holmes-pr-review.rst` around lines 4 - 6,
Update the GitHub Actions workflow example to remove ambiguity about the relay
endpoint by either (A) documenting the self-hosted relay URL and showing how to
set it via an env var (use RELAY_BASE_URL in the workflow example and explain
the self-hosted value), or (B) explicitly state in the note that self-hosted
commercial deployments use the SaaS relay (https://api.robusta.dev) so no change
is needed; ensure the docs around the workflow example reference RELAY_BASE_URL
and include a short example of setting it as an environment variable for
self-hosted installs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants