Answer 1 - Particles

Create an initial geometry nodes setup that simply creates the random attributes that are input to the animation nodes:

With this, we basically don't touch anything in the original setup (other than the instance on points, that is added at the end)
It's important that this node group (or the original geometry) deliver the point cloud.
In the original nodes, we just add an instancer to the end, so we have instances but still not changing anything important:

Then just give the attributes some names and pass these attributes from the first to the second node setup:

(Use the sheet icons beside the inputs to switch between user input and attribute input)
Answer 2 - Multiple "jelly cubes"

Now, if your goal is to have the deformed jelly cube multiplied, then we need to instance the cubes first, and adapt the randomizer to use mesh islands as IDs:

It's basically the same randomizer with three main differences:
- We're instancing and realizing the cubes here in this node group
- All random nodes get the "Mesh Island Index" as ID, so all points of a same island get the same random value.
- The "center of rotation" uses a "mean position" of each island (calculated by the accumulate field nodes)
Of course in this case we don't use "instance on points" a the end of the original nodes.
File

Improvement tip - Randomize the noise!
Since the original nodes are using a noise, there is a pattern that is repeating for all instances.
We can randomize this noise by adding some random value to the W input of the noise. This will increase randomization without breaking the "fish" behavior.

In the randomizer nodes, this means just another random node with island ID and with a great variation:

In the original nodes, we add this to the W input of the noises:

New file
This new file contains the noise variation.
