ChatScript has always had rejoinders, that can react to new input based on the last output of the chatbot. Now CS automatically tracks rule labels that generated output, back for 4 volleys. You can make rejoinders depend on that context using ^incontext(label). E.g.
t: DAUGHTER() I have a daughter
a: (what is her name) Rosalinda.
?: (<< how old >> ^incontext(DAUGHTER) ) She’s 4.
It can also be used to avoid using gambits that won’t work out of context. Eg.
t: EIFFEL() I love the Eiffel Tower
t: (^incontext(EIFFEL)) It is really tall.
t: Have you been to the Eiffel Tower.
You can say the above 2 gambits in close promixity, but if the user dragged the chatbot off into some other topic for a while, if you return to this topic, it would be confusing to say “it is really tall” because there is no context. The system will skip this gambit and move on to the next.