Since 2.1.0 version, it's possible to use FrameOpenEvent and FrameTag.
To change the GUI we will cancel the event passively and then call our own inventory.
One of the way of using FrameOpenEvent is call frame from the event declaration:
my_gui:type:worldevents:on frame clanlist open:-determine passively cancelled-inventory open d:my_inventory_script