I would prefer this logic inverted. Hide by default, enable for local as per caret manager. Also, the empty string should be using the shadow cursor id constant