There are enough documentation files that it's getting out of hand. So here they are!
The main usage documentation.
The changelog.
Instructions on how to set up an authoritative nameserver.
The place to start if you're thinking about contributing to dnscat2, or even if you're just interested in learning about the structure and design decisions in the code.
Most of the documents below are created to support contributing.md.
The dnscat2 protocol (both the tunnel protocol and the dnscat2 protocol, right now).
The sub-protocol used for commands.
The structure, design decisions, libraries, and everything else you need to understand the client in full.
The structure, design decisions, libraries, and everything else you need to understand the server in full.
The steps I take when I perform a release.
How to create a driver on the client. I'm not entirely sure this is up to date.