Source code for sagi and friends from ScummVM:
var_type = opcode & 0x3; // Gets the variable type: g, l, t or p
var_number = opparams[0] + (opcode >= op_sagi ? s->r_acc.requireSint16() : 0);
if (opcode >= op_sagi) // load the actual value to store in the accumulator
s->r_acc = POP32();
write_var(s, var_type, var_number, s->r_acc);
break;
Source code for ssgi and friends from ScummVM:
var_type = opcode & 0x3; // Gets the variable type: g, l, t or p
var_number = opparams[0] + (opcode >= op_ssgi ? s->r_acc.requireSint16() : 0);
write_var(s, var_type, var_number, POP32());
break;
The only difference between them seems to be that sagi changes the accumulator, and ssgi doesn't. I guess that's why it was declared useless.
It is true that ssgi/friends do not appear in the Sierra games at all (much like lofss doesn't, despite its equivalent, lofsa/push being prevalent). I don't know why Sierra didn't use them, and I'm not sure how I would use them myself if I was writing a compiler.