Tracking opens isn't feasible in the same way that it is with email (we use tracking pixels). For clicks, you can potentially report on this metric. However, the solution to your problem is not so much a Marketing Cloud question, but rather would have to be solved by your Custom Activity or by your third party provider.
When executing the SMSs through MobileConnect, if you place a bit.ly URL in a MobileConnect message, Marketing Cloud retrieves reporting from bit.ly for that URL to display in metrics in MobileConnect for click throughs. You could potentially implement similar in your Custom Activity where you parse out URLs from the message created by the user, create shortened URLs using bit.ly's shorten API and replace the URLs in the content with shortened versions as the user saves their configuration of your Custom Activity. You could then display metrics from bit.ly for these URLs in your runningModel UI - see Load a Custom UI for Your Activity.
Tracking click throughs down to the individual subscriber level would require a somewhat more elaborate solution where you generate unique URLs through something like bit.ly when your execute route is hit by Journey Builder. You could then have bit.ly stream click events back to a service you host to capture these events for use later in reporting or in something like a Custom Engagement Split activity.
I'd investigate the capabilities of your third party SMS provider to see if they can provide some solutions to remove the need for you to implement the solution alone.