We are not explicitly told how Zipporah knew the cause of the problem. Indeed, the pulpit commentary observes:
A bloody husband. Literally, "a bridegroom of blood." The words are
clearly a reproach; and the gist of the reproach seems to be that
Moses was a husband who cost her dear, causing the blood of her sons
to be shed in order to keep up a national usage which she regarded as
barbarous.
How did she know? we have the following possibilities:
- Zipporah and Moses had had some arguments about this previously where Zipporah had refused to allow her sons to be circumcised. However, this does not fully explain the problem.
- When the angel appeared, the angel said something about circumcision that she was in danger unless she circumcised her sons.
I am inclined to think it is a combination of both.