I have a LPC55S28 project that uses SDK 2.12.0

I am trying to get the USBHSD (usb_device_interface_0_cic_vcom .c/.h) working with fsl_shell .c/.h - it is the first time using both of these, and I see the vcom loopback, and see the receive and transmit buffers, and call to USB_DeviceCdcAcmSend.
What I am unsure about is how to hook this into fsl_shell. What I want is to generate a shell that is accessible over the USB vcom interface, so I can send the device commands from the PC.

SHELL_Init seems to need a serial_handle_t

In the SDK components I notice serial_manager_usb_cdc
I was sort of hoping that this would expose the usb vcom port as a serial handle that could be passed to SHELL_Init. But I could not work it out. Am I on the right path, or is this incorrect?

Any clues on how to get USB VCOM being passed to SHELL_Init, so that I can build up a command system easily accessible over USB?
An example project for the LPC55S28-EVK would be really nice.
When I install fsl_component_serial_port_usb.c there are compile errors.

A basic example of using fsl_component_serial_port_usb.c with fsl_shell and USBHSD would be good.