A GameObject is any in-game item or structure that the player or NPCs can interact with. This includes things like weapons, doors, vending machines, lootable containers, and even some environmental elements.
name (of action) is allowed but using known object (e.g. [PlayerPuppet]) as listener is a source of potential issues. Mods should always declare and use a custom listener object, like in this example.