Open PRs, issues and failing CI across GitHub, GitLab, Gitea and Forgejo, in one Grafana dashboard
148
forge-scout puts the open pull requests, open issues and failing CI workflows across your repositories on GitHub, GitLab, Gitea and Forgejo on one Grafana dashboard, with a link on every row, and adds code-scanning alerts on GitHub. It only reads from your forges.

forge-scout shows you what is waiting for you across all your repositories and forges, in one place:
forge-scout is built for people with repositories on one or more forges, private ones included: github.com or GitHub Enterprise Server, gitlab.com or a self-managed GitLab, and Gitea or Forgejo instances. It checks every repository of the owners you name every 15 minutes.
forge-scout reports through its log, so its dashboard and alerts come from your Grafana, Loki and Alertmanager, which the monitoring guide sets up. You also need an access token for each forge, read-only where the forge allows it.
Other tools suit other needs:
forge-scout is free software under the GPL-3.0-or-later license.
docker pull cplieger/forge-scout:latest
Also published to ghcr.io/cplieger/forge-scout with identical images and tags. Release versions are tagged vX.Y.Z alongside latest.
# Example compose for forge-scout. See the README for all configuration options and hardening.
services:
forge-scout:
image: ghcr.io/cplieger/forge-scout:latest
container_name: forge-scout
restart: unless-stopped
# Must own the ./data host folder. If .env sets PUID and PGID, those numbers are used.
user: "${PUID:-1000}:${PGID:-1000}"
environment:
# Every token the config file names as ${...}. Put each in a .env file beside this file.
# The github connection in config.example.yaml reads this token. Delete this line when you remove that connection.
GITHUB_TOKEN: "${GITHUB_TOKEN:-}"
# The forgejo connection in config.example.yaml reads this token. Delete this line when you remove that connection.
FORGEJO_TOKEN: "${FORGEJO_TOKEN:-}"
volumes:
# Run "mkdir -p config && cp config.example.yaml config/config.yaml", then edit
# config/config.yaml before the first start.
- "./config:/config:ro"
# The run state. Run "mkdir -p data && sudo chown 1000:1000 data" before the first start.
# If .env sets PUID and PGID, use those numbers.
- "./data:/data"
GPL-3.0-or-later. See LICENSE. The image carries the license text of every bundled component under /usr/share/licenses/.
Third-party attributions are in THIRD_PARTY_NOTICES.md.
Content type
Image
Digest
sha256:db7710c2e…
Size
4.5 MB
Last updated
1 day ago
docker pull cplieger/forge-scout