Como usar os Service Workers nas extensões do Google Chrome para modificar um corpo de resposta HTTP?

Agora que as extensões do Google Chrome podemregistrar trabalhadores de serviço, como posso usá-los para modificar as respostas HTTP de todos os hosts, por exemplo substituindo todas as ocorrências decat comdog?

Abaixo está um código de exemplo deCraig Russell, mas como usá-lo nas extensões do Chrome e vinculá-lo a todos os hosts?

self.addEventListener('fetch', function(event) {
    event.respondWith(
        fetch(event.request).then(function(response) {
            var init = {
                status:     response.status,
                statusText: response.statusText,
                headers:    {'X-Foo': 'My Custom Header'}
            };
            response.headers.forEach(function(v,k) {
                init.headers[k] = v;
            });
            return response.text().then(function(body) {
                return new Response(body.replace(/cat/g, 'dog'), init);
            });
        })
    );
});