Is there any chance to configure
If you have to consider all hashes from your repo, this is not likely because it wouldn't scale well (if you have several hundreds of commits, tags, ... each with their own hashes, this would quickly take a long time to list them all unless you have some caching system for this hash list)
If you limit the hashes to a fairly recent list (on the current branch for instance), may be, but that won't cover all use cases.
You have here an example of git shell with different kind if tab expansion (in PowerShell), further enhanced here.
Even if your environment has no use for PowerShell, that gives you an idea of "tab expansion" implementation.