As far as I can tell, custom linters receive only the modified filenames, one file at a time. Certainly script-and-regex linters have this limitation.
This makes certain kinds of linters that you might reasonably want to write very difficult. For example, I would like to add to LLVM a linter that checks that all lines modified are formatted according to clang-format. There are scripts [1] [2] that can take as input a git commit range or a unified diff and reformat them -- using either these, it would be simple to construct a linter, if one had access to either a diff or a commit range. But with just a list of files, there's not much to be done.
Apologies if this already exists; I read the docs a few times and didn't see anything that looked promising.
[1] https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/git-clang-format
[2] https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/clang-format-diff.py