A CLI-first git forge.

cli forge git self-hosted

https://gitbay.org

Commit e3ed3de7c8

e3ed3de7c807ef96141ab3dc0a225b93ffa2ddb9

parent: 53f8811759

Verified · cmc

cmc <hello@cleberg.net> · 2026-08-24T15:22:00Z

roadmap: security phase (software and host); tracked as #28 with #14
docs/roadmap.org +23
@@ -76,6 +76,29 @@ Bigger bets, each valuable independently; order by appetite.
7676 - [[https://gitbay.org/krz/gitbay/issues/21][#21]] teams within orgs
7777 - [[https://gitbay.org/krz/gitbay/issues/25][#25]] wikis
7878
79* Phase S — security (cross-cutting)
80
81Not a sequential phase: items land alongside whatever phase is active,
82and the whole set gates flipping gitbay.org to open registration.
83
84 [[https://gitbay.org/krz/gitbay/issues/14][#14]] audit logging, rate limiting, quotas, user disable — the
85 multi-user half
86 [[https://gitbay.org/krz/gitbay/issues/28][#28]] hardening umbrella — the rest, both layers:
87 - software: fuzz all attacker-facing parsers (pkt-line, SSHSIG,
88 commit, armor), web security headers (CSP et al.), govulncheck,
89 constant-time comparison audit, a written threat model, signed
90 releases
91 - host: unattended OS patching, tighter systemd sandboxing
92 (SystemCallFilter and friends), auth throttling on both SSH
93 surfaces, database file modes and continuous replication,
94 service/disk/cert monitoring
95
96Already true and worth preserving (the threat model will write these
97down): the forge never executes repository content; no server signing
98key; repo-authored HTML never renders on the forge origin; tokens and
99sessions stored as hashes only; SSRF guards at registration and dial
100time; private repositories indistinguishable from nonexistent.
101
79102 * Explicitly not planned
80103
81104 Recorded so their absence reads as a decision, not an oversight: