Codeberg
Codeberg is a public Forgejo instance, and mrman claims
codeberg.org automatically. There is nothing to configure — set a token
and go.
Authenticate
Section titled “Authenticate”Generate a token under Settings → Applications → Access Tokens with repository read and write permission, then:
- add issue read for the review-requested filter (
rin the merge-request list); - add user read for “commits since your last review”, which needs to know who you are. Without it the review still works, only that shortcut is off.
export FORGEJO_TOKEN=...# CODEBERG_TOKEN works too, and is checked secondBoth variables are read for codeberg.org only, so they never travel to a
self-hosted instance. If you prefer config:
[[forge.hosts]]host = "codeberg.org"forge = "forgejo"token_cmd = "pass show codeberg-token"A public repository needs no token at all — you can browse and review one unauthenticated, and only need credentials to submit.
Open a merge request
Section titled “Open a merge request”mrman pr 12 # from inside the checkoutmrman pr owner/repo#12mrman pr https://codeberg.org/owner/repo/pulls/12mrman # then Tab to Merge RequestsNo [[forge.hosts]] entry is needed for any of these: codeberg.org is one of
the well-known SaaS hosts mrman recognizes, alongside github.com,
gitlab.com and dev.azure.com. It is also the default host when
[forge] default = "forgejo" and you pass a bare owner/repo#N from outside a
checkout.
Capabilities
Section titled “Capabilities”Codeberg runs Forgejo, so it behaves exactly as described on the Forgejo & Gitea page — including the two things worth knowing before you review:
- Thread resolution and outdated state are approximated, because Forgejo’s API returns comments rather than threads. If a resolved state looks wrong, believe the web UI.
- Multi-line comments downgrade to their end line with a
Lines X–Y:prefix in the body, since Forgejo accepts one position rather than a span.
On the plus side, Forgejo gives mrman atomic submit and real draft reviews —
your review either posts entirely or not at all, and :submit draft creates a
PENDING review you publish later.
Read Forgejo & Gitea for the detail; everything there applies here, minus the host configuration.