decentralized distributed system sounds a lot like a clustered file system to me. Probably because I've never used clustered file systems, so I probably don't understand all the gritty details. But if you had a shared clustered (decentralized) folder that all hosts can see and write to, then each host could generate a unique "foo.host.txt" file in said shared folder (without need for worrying about locks and race conditions) and then each host could scan the directory for every other foo.host.txt file (file name pattern match) and apply what ever 'agree' logic you desire. You either trust the 'other' host file or ignore it, maybe with a verified start and end key to let you know you've read the whole file top to bottom without it (or any underlying buffers) changing on you. The file system should take care of the rest of any buffering/locking issues.
Just thinking out loud. Depending on your definition of 'agree', reading host files may be the least of your worries.