Telegram/Matrix to Forgejo bridge
  • Rust 93.2%
  • Just 6.8%
Find a file
charles 9b0b40b9d9
All checks were successful
qa / qa-1 (push) Successful in 1m8s
qa / qa (push) Successful in 0s
fix(ci): add missing CI contract recipes (fmt-check, lint, test)
2026-06-13 19:45:24 +00:00
.forgejo/workflows ci: bump forge-base to v0.4.3 (fixes corrupted v0.4.x) 2026-06-13 08:19:55 +00:00
src feat: add speech-to-text support via Speaches 2026-05-26 23:30:40 +02:00
.gitignore feat: initial implementation 2026-05-22 02:34:01 +02:00
Cargo.lock release: v0.9.0 2026-05-26 23:48:15 +02:00
Cargo.toml release: v0.9.0 2026-05-26 23:48:15 +02:00
justfile fix(ci): add missing CI contract recipes (fmt-check, lint, test) 2026-06-13 19:45:24 +00:00
README.md remove Signal bridge entirely 2026-05-25 23:47:43 +02:00
rusty-hook.toml feat: initial implementation 2026-05-22 02:34:01 +02:00

forge-notifier

Matrix → Forgejo bridge. Receives task descriptions via Matrix, creates a Forgejo issue, applies a label to trigger an AI agent, then notifies when a pull request is opened.

Configuration

All config via environment variables:

Variable Required Default Description
FORGEJO_URL No https://forge.jacquin.app Forgejo instance URL
FORGEJO_TOKEN Yes API token with repo read/write
FORGE_REPO Yes owner/name of target repo
AGENT_LABEL No pi-agent Label to apply to trigger the agent
POLL_INTERVAL_SECS No 30 How often to poll for new PRs
MATRIX_HOMESERVER No Matrix server URL (disables Matrix if unset)
MATRIX_ACCESS_TOKEN No Matrix access token
MATRIX_CHARLES_ROOM_ID No Matrix room ID for Charles
MATRIX_SARAH_ROOM_ID No Matrix room ID for Sarah

Usage

Send any text message to the Matrix bot. The first line becomes the issue title, the rest becomes the body. The bot replies with the issue URL and notifies you when a PR is ready.

Building

just build-release

Development

just setup   # first time
just dev     # watch mode
just qa      # full check