Product

A routing layer between your forge and your team.

ForgeRelay does not replace GitHub or GitLab. It decides what reaches chat, who gets mentioned, and how the conversation stays current until the request is merged. Reviews stay in threads. Direct-to-main stays visible.

Routing

A route is a policy, not a single alert.

One repository, one destination, and every event type that belongs to that pairing. Conditions live in a collapsed disclosure so the common case stays readable.

northwind/api rt_01 #eng-reviews

Rule subjects

  • Pull requests
  • Commits

Relayed events

  • opened
  • review_requested
  • approved
  • merged
  • checks failed

Conditions

  • branch = main
  • label ≠ wip
  • author ≠ dependabot

Open the route editor

  • Presets: Review essentials, Full lifecycle (with CI), Pipeline monitoring, Custom
  • Searchable pickers for repositories, workspaces and channels
  • Route summary shows route ID, saved state and how many features are overridden

Threads

One request, one living thread.

The first event posts a summary in the channel. Everything after it updates the same thread, so the channel keeps one line per request instead of six.

Northwind HQ · #eng-reviews
thread · 6 messages
  • FR

    ForgeRelay APP 14:02

    #482 Review requested — cache invalidation

    Status: Awaiting review

    northwind/api · feat/edge-cache main

    Opened by
    dana.k
    Reviewers
    alex.r
    CI
    2 pending, 4 total
    Size
    +128 · −41 · 3 files

    Opened 2 hours ago · Last activity 4 minutes ago · ForgeRelay

    Open pull request

  • FR

    ForgeRelay APP 14:09

    Open pipeline #58217

    2 of 9 jobs failed.

    Passed

    build, typecheck, security, e2e, deploy-preview, docs, coverage

    Failed

    integration-tests, lint

    Duration
    2m
    SHA
    83c1a8e

    ForgeRelay

  • DK

    Dana Køhler 14:16

    Missing lockfile bump. Pushing now.

  • FR

    ForgeRelay APP 14:24

    Open pipeline #58217

    Checks are green again.

    Passed

    integration-tests, lint, build, typecheck, security, e2e, deploy-preview, docs +1 more

    Duration
    2m
    SHA
    83c1a8e

    ForgeRelay

  • FR

    ForgeRelay APP Next day, 09:30

    Still waiting on review · @dana.k

  • FR

    ForgeRelay APP 11:04

    #482 Merged — cache invalidation

    Status: Merged

    northwind/api · feat/edge-cache main

    Opened by
    dana.k
    Reviewers
    None
    CI
    4 passing
    Size
    +128 · −41 · 3 files

    Opened 2 hours ago · Last activity 4 minutes ago · ForgeRelay

    Open pull request

Compact messages off · Include diff summary on · Reminder after 4h

Review health

See the review queue before it becomes a stand-up problem.

One scheduled digest turns open review work into a clear daily rollup. Keep the states that matter to your team, choose the destination channel, and open the queue when something needs a closer look.

Northwind HQ · #eng-reviews
FR

ForgeRelay APP now

Daily review health

3 awaiting review · 1 failing CI · 1 blocked · 2 stale · 4 ready

  • northwind/api #482 Tighten SSO session expiry — Awaiting review · Stale · 3 days
  • northwind/payments #517 Ship the billing meter — Failing CI · 5 hours

Open review queue

Configured for your review ritual

  • Schedule the rollup by weekday, time and timezone
  • Include awaiting review, failing CI, blocked, stale or ready-to-merge work
  • Start with every status on, then narrow the signal for one team
  • Scope the digest to selected repositories or every active repository

Commit digests

When work lands without a pull request.

Opt-in digests for pushes to a watched branch — often main. Same routing discipline as review routes: branch filters, bot suppress, conventional commit types. One digest per push, not one message per commit.

Northwind HQ · #shipped
digest · 1 message
  • FR

    ForgeRelay APP 16:12

    northwind/api main · 4 commits

    • a1b2c3d feat: add digest routing — dana.k
    • d4e5f6a fix: nil guard on author — alex.r
    • e7f8a9b chore: bump deps — dana.k

    1 filtered

    Compare

Subject: Commits · branch = main · bots off · types feat, fix
  • Push webhooks stay off until the workspace opts in
  • Filters decide which commits appear — empty digests are not posted
  • Contents: read on GitHub exists for Push subscription and compare links — see Security

Status colours

Make request state readable at a glance.

Choose the accents for Open, Draft, Awaiting review, Changes requested, Merged and Closed. The same organisation palette is used for PR and MR cards in Slack and Discord, with a live preview before you save.

Organisation status palette

One set of colours across every destination.

  • Open #286653
  • Draft #99AAB5
  • Awaiting review #F2C744
  • Changes requested #E03E3E
  • Merged #9B59B6
  • Closed #6B7280

Pick colours in Preferences and preview them before saving.

  • Set once for the whole organisation
  • Applied to both Slack and Discord deliveries
  • Reset to the ForgeRelay defaults at any time
  • Included on every plan

People

Mentions that reach a person.

Identity mapping links forge accounts to Slack and Discord users. Suggested matches show why they were suggested, and anything unmapped falls back to a plain handle.

  • priya.raman Priya Raman Matching verified email mapped
  • dana.k Dana Køhler Matching display name mapped
  • t.oyelaran No confident match needs mapping

Reminders

Quiet, once, then silence.

A stale review reminder posts into the existing thread and mentions the mapped reviewer. The elapsed delay is configured once for the workspace; each route can enable or disable the reminder.

stale review reminder workspace default: 4h rt_04 override: off

Still waiting on review · #482

Open for 19 hours with one reviewer requested.

@dana.k

Reminders stop as soon as a review lands, and are never repeated for the same threshold.

Pipeline status

Failures, and the recovery that follows.

Choose failures only, failures and recovery, or all changes. Post into the existing request thread or as a new message, with failed jobs, duration, SHA and a pipeline link.

Open pipeline #58217

2 of 9 jobs failed.

Passed

build, typecheck, security, e2e, deploy-preview, docs, coverage

Failed

integration-tests, lint

Duration
2m
SHA
83c1a8e

ForgeRelay

Open pipeline #58217

Checks are green again.

Passed

integration-tests, lint, build, typecheck, security, e2e, deploy-preview, docs +1 more

Duration
2m
SHA
83c1a8e

ForgeRelay

Delivery reliability

Every relay is recorded.

Deliveries carry the event, route, destination, status and payload. When a destination rejects a message, replay it from the log once the channel is healthy.

Event Route Destination Status
evt_9042 rt_01 #eng-reviews ok
evt_9038 rt_01 #eng-reviews ok
evt_8836 rt_04 #deploys ok
evt_8791 rt_02 #eng-reviews failed

Comparison

Basic webhook notifications vs ForgeRelay.

A forge webhook can post an event. A relay decides which events matter, who they concern, and how the conversation ends.

  • Per-repository destinations

    Basic forge-to-chat notifications
    One webhook per repository, per channel
    ForgeRelay
    Routes chosen from searchable repositories and channels
  • Multiple event types per rule

    Basic forge-to-chat notifications
    No
    ForgeRelay
    One route relays review, merge and pipeline events
  • One thread per request

    Basic forge-to-chat notifications
    No
    ForgeRelay
    Yes
  • Reviewer mentions

    Basic forge-to-chat notifications
    Plain forge handle
    ForgeRelay
    Mapped Slack or Discord user
  • Stale review reminders

    Basic forge-to-chat notifications
    No
    ForgeRelay
    One quiet nudge per threshold
  • Daily review health

    Basic forge-to-chat notifications
    No
    ForgeRelay
    Scheduled queue of awaiting, failing, blocked, stale and ready work
  • Pipeline failure and recovery

    Basic forge-to-chat notifications
    Failure only, as a separate message
    ForgeRelay
    Failure and recovery inside the request thread
  • Commit digests

    Basic forge-to-chat notifications
    Every push as a separate message
    ForgeRelay
    One filtered digest per push — branch, author, type
  • Per-route message behaviour

    Basic forge-to-chat notifications
    No
    ForgeRelay
    Default / On / Off per feature
  • Custom PR/MR status colours

    Basic forge-to-chat notifications
    No
    ForgeRelay
    One organisation palette across Slack and Discord
  • Delivery history and replay

    Basic forge-to-chat notifications
    No
    ForgeRelay
    Recorded payloads, replay on demand

A longer version of this comparison lives on the compare page .

Put the review where the team already is.

Free for up to 3 mapped people. Unlimited repos and notifications. No credit card.