Furnace features such as session management, conversation scope and asides need to modify URLs in links and redirects, and insert hidden form fields, to implement state on top of the stateless HTTP protocol. In order to decouple the server-side state management code from the HTML templating code, a series of hooks are used.

Responders can implement methods on the following generic words:
modify-query ( query responder -- query' )

modify-redirect-query ( query responder -- query' )

link-attr ( tag responder -- )

modify-form ( responder -- xml/f )


Presentation-level code can call the following words:
adjust-url ( url -- url' )

adjust-redirect-url ( url -- url' )