Your issue is a result of you trying to use single quotes to act as both the delimited of the following <<chat>> arguement..
'Hello <<sheS 'you' '$mName'>>
...as well as the delimiter of each of the child <<sheS>> macro arguments.
You can use single quote pairs and double quote pairs to delimit a String literal value.
'This is a String literal value'
"This is also a String literal value"
You can alternate which quote you use if you need to include the other one within the String value.
"It's OK to include single quotes within a double quote delimited String"
'Bob says "you can use double quotes within a single quote delimited String"'
You can use a backslash \ character if you also need to use the delimiting quotes within the String value.
'Jane says "It\'s OK to use a single quote as long as it\'s escaped with a backslash!"'
"Jane also says \"You can do the same when it's a double quote delimited String too\""
Using the above information try doing the following instead.
<<chat '$name' '$mName' $name "Hello <<sheS 'you' '$mName'>>" $mName 'Hello !'>>