A abordagem típica para espelhar repositórios Git é implementar um post-receive
hook que envia as novas referências para o repositório espelho. As coisas no Github serão um pouco mais complicadas, porque você não tem acesso direto aos ganchos - em vez disso, você precisará usar um "webhook" do Github para notificar um serviço externo de que o envio ocorreu e causar um pull / push para acontecer do repositório do Github para o repositório mantido internamente.
Francamente, o espelhamento - especialmente o espelhamento bidirecional - é quase sempre um sinal de disfunção organizacional. Responda a pergunta: "por que todo mundo não deveria simplesmente enviar diretamente para o Github?" (ou "diretamente para Gogs?") para determinar o que você precisa corrigir, o que tornará o espelhamento desnecessário.