Semi-consonant. Glide. Approximant.
These are all terms befitting the Latin i, which operates as both a consonant (Iūlius) and a vowel (iter) within the language. The precise rule is this:
The Latin i is a vowel (pronounced long /i/ as in the English feet /fit/ or short as in the English tittle /ɪ/), yet operates as a glide as in the English yes /y/ when placed before another vowel (so with iacet, Iūlius, and Io! Io!).
Recall that Latin didn’t differentiate between these variants within its written script. They are both I.
The Essential AG: 5 and 5n1
(also, for those curious, a ‘tittle’ is the dot over an i)