Run code when double clicking custom scriptable object in editor.

I got a scriptable object class called “NarratorGraph”. I got a graph editor ready to go but now I need to save and load data into a scriptable object. How would I go about opening the graph editor when double clicking a instance of that scriptable object? Just like how shader graph and animation graph. I been looking and can’t find any info on it.


Here is what I got so far. I made a custom editor with a NEW open button. How do I program the default open button?