Dendrite uses agents to build scripts and caching to run them
click("search button")
for example, inspect the DOM, and create a new script which will be re-cached upon success.
This gives your scripts self healing capabilities, for when the underlying DOM changes, while still keeping the general elements your looking for.