Typically the workflow for creating a Metasound subgraph will be 1) Get a Metasound::Frontend::FGraphHandle (typically through the two steps described in the first paragraph) 2) Build a FMetasoundFrontendClassMetadata struct with whatever name/author/description you want to give the subgraph, 3) call Metasound::Frontend::FGraphHandle::CreateEmptySubgraphNode, which will return that subgraph as it as a FNodeHandle for that subgraph in the current graph. 4) class Metasound::Frontend::FNodeHandle::AsGraph which provides access to edit the subgraphs internal structure as well as externally facing inputs and outputs.