How to use a forked module, with versioned Go Modules (v1.11+, GO111MODULE=on)

You have the following replace:

replace go.larrymyers.com/protoc-gen-twirp_typescript => github.com/rynop/protoc-gen-twirp_typescript master

which if I've followed, is effectively replace originalname => forkname

I think the issue is that you are importing using the name of the fork, rather than the original name:

import (
    // protocol buffer compiler plugins
    _ "github.com/golang/protobuf/protoc-gen-go"
    _ "github.com/mwitkow/go-proto-validators/protoc-gen-govalidators"
    _ "github.com/twitchtv/twirp/protoc-gen-twirp"
    _ "github.com/rynop/protoc-gen-twirp_typescript"   <<<< PROBLEM, using fork name
)

The error message you see seems to be the go command complaining about that.

I suspect it would work if you used the original name in the import statement:

import (
    ...
    _ "go.larrymyers.com/protoc-gen-twirp_typescript"   <<<< original name
)

You should also run go list -m all to see the final selected versions, including it shows the outcome of any replace and exclude directives.