# gitea-review-bot — deployment config (EXAMPLE). Copy to config.toml (gitignored) and fill in. # Credentials live in the gitignored .env, NOT here. [homeserver] url = "https://" user = "@reviewer:" # the bot's OWN Matrix account (not matrix-bridge's @agent) # How the bot reaches the Mac (reuses matrix-bridge's Spark→Mac seam + wrappers). [mac] ssh_alias = "mac-bridge" # The review runs `claude -p` in the repo — matrix-bridge's ask-claude.sh does exactly that. review_launcher = "/Users/macpro/Projects/matrix-bridge/scripts/ask-claude.sh" # Post-merge publish (per-repo, opt-in) — matrix-bridge's deploy-site.sh (ff-pull master + deploy). deploy_launcher = "/Users/macpro/Projects/matrix-bridge/scripts/deploy-site.sh" hostname = "10.59.211.5" # the Mac over WireGuard (container generates ~/.ssh/config) user = "macpro" [gitea] api_base = "https://:/api/v1" # use the LAN IP if only a .local name exists # (a slim container can't resolve mDNS .local) owner = "grant" # repos are / verify_tls = false # StartOS Gitea serves a self-signed cert on the LAN # Commit emails that are MINE. Required by the per-repo push watch below: it notifies on commits # authored by anyone NOT on this list, so an unrecognised email notifies rather than slips through. my_emails = ["you@example.com"] [defaults] poll_interval_seconds = 60 review_timeout_seconds = 600 # a `claude -p` review (with subagents) can take minutes watch_timeout_seconds = 480 # a push assessment: tighter, so one push can't park the poll # Optional per-repo overrides (all OFF unless set here). Keyed by repo/room name. # [repo.ten31-site] # deploy_on_merge = true # Push watch: notify in the room whenever someone who isn't me pushes commits, with a `claude -p` # assessment of what they did. Any branch, except branches with an open PR (that PR's review already # covers those commits). Needs [gitea] my_emails set. # [repo.ten31-brand] # watch_pushes = true # # The collaborator's expected territory. Files outside it are flagged in the notice and called out # # to the assessor. fnmatch-style globs where `*` crosses `/`. Omit for no path policy. # expected_paths = ["design/deck/interactive/**"]