As mentioned before, you could implement your own function. (Call Print(OnSetsSets) to get an idea how a putative OnSetsSetsSets etc. would have to look like.) However at some point you pay a price in time and memory for the indirections.
What I would do is to create an action of the group on sets of sets. For example (say the sets of sets can be seeded with orbits of a and b):
gap> g:=TransitiveGroup(8,20);;
gap> a:=[[1,3,5],[2,4,8]];;b:=[[1,2,7,8],[3,5]];;
gap> domain:=Orbit(g,a,OnSetsSets);;
gap> domain:=Union(domain,Orbit(g,b,OnSetsSets));;Length(domain);
32
gap> act:=ActionHomomorphism(g,domain,OnSetsSets,"surjective");
<action homomorphism>
gap> h:=Image(act);
Then every sets of sets is an element of domain and thus a number for h. A chain would be a set of such numbers and you could get orbits by letting h act OnSets, using domain to translate back to your original representation.
Concerning you comment question about cloudsage I have no clue, never having used it. Installing GAP is not hard and probably worth doing if you have any nontrivial calculation, rather than relying on a cloud platform.
OnPoints,OnRight,OnLeftInverse,OnSets,OnTuples,OnPairs,OnSetsSets,OnSetsDisjointSets,OnSetsTuples,OnTuplesSets,OnTuplesTuples,OnLines,OnIndeterminates,Permuted,OnSubspacesByCanonicalBasis, and also explains the syntax of a GAP function to implement an action if is not one of these. – Olexandr Konovalov Jun 18 '15 at 19:55