What you are providing is a perfectly good description of the product as far as a textbook is concerned. Alas, GAP is really picky in that objects are not just "somehow" as you describe, but very exact. E.g. an automorphism of $G$ is not automatically an automorphism of $G\times H$ or of $G/N$. Typically this requires to attach suitable homomorphisms (which often are called ``natural'' or similar terms in a textbook). So in your case, I would create SL$_2(8)$ and $C_2\times C_2$ first, construct the automorphisms there, form the direct product and the corresponding automorphisms and so on.
This gives the following construction (there are shortcuts, it is deliberately detailled and thus boring). One obvious way to make it perform faster would be to represent both C and L by permutation groups so that the whole calculation can stay in the category of permutation groups.
First create $C_\times C_2$ and find an element of order 3 in the automorphism group.
<pc group of size 2 with 1 generators>
<pc group of size 4 with 2 generators>
<group with 4 generators>
[ f1, f2 ] -> [ f1*f2, f1 ]
Then do the same with SL$_2(8)$. We want an outer automorphism and do a random search (one could take a pre-image under a natural homomorphism... but its messy enough as is)
<group of size 1512 with 3 generators>
<group of size 504 with 2 generators>
gap> repeat r:=Random(au);until not r in inn and Order(r)=3;
CompositionMapping([... very messy]
Now we form the direct product and embedding and projection maps and constructs the automorphisms of this direct product induced by the two automorphisms by looking what they do to the generators of either direct factor (and trivial on the other factor)
<group of size 2016 with 4 generators>
[ DirectProductElement( [ f1, [ [ Z(2)^0, 0*Z(2) ], [ 0*Z(2), Z(2)^0 ] ] ] ),
DirectProductElement( [ f2, [ [ Z(2)^0, 0*Z(2) ], [ 0*Z(2), Z(2)^0 ] ] ] ) ]
[ DirectProductElement( [ f1*f2, [ [ Z(2)^0, 0*Z(2) ], [ 0*Z(2),
Z(2)^0 ] ] ] ), DirectProductElement( [ f1, [ [ Z(2)^0, 0*Z(2) ],
[ 0*Z(2), Z(2)^0 ] ] ] ) ]
[ DirectProdu[... complicated]
Both seem to be of right order. So now make a map from a new $C_3$ to the group generators by these two automorphisms that maps the generator to the product of the two automorphisms (as that is the action you want).
[ f1 ] -> [...]
Finally we can form the semidirect product. GAP decided to represent it as a permutation group but it will have appropriate
Projections that you can recover your original group.
<permutation group with 5 generators>
Uff! That was hard work. Now we know why the textbook is sloppy.