I've been extensively looking into ways of adding or updating a Notes Hotspot or Button or Embedded Image into the generated emails. For all versions at least up to Notes 8.5.3, is NOT possible to achieve this in ordinary LotusScript (no native functions exist, and AppendRTItem behaviour is restrictive). Therefore, barring hacking into Notes using C++ and DLLs, the simplest solution will probably involve re-writing this agent to use DXL manipulation. I'll think about this as a major v1.5 enhancement.
The problem with native LotusScript is the bug/restriction on the AppendRTItem function that can only append one rich-text item above or below an existing rt item; it is not possible to replace some text with richtext somewhere in the middle. See this issue with AppendRtItem: "Method not available" https://www-304.ibm.com/support/docview.wss?uid=swg21114718
The solution is likely to involve converting the document into DXL and replacing using XML constructs. As offered here: http://www.cubetoon.com/2008/notes-rich-text-manipulation-using-dxl/
http://ozinisle.blogspot.com.au/2010/11/lotusscript-code-to-append-hotspot-to.html suggests that DXL required is simply: (urllink showborder='false' href='mailto:|+url+|')(run)|+url+|(/run)(/urllink) -- Replace () with <>.
'** create a new doc using the DXL above
Set db = session.CurrentDatabase
Set importer = session.CreateDXLImporter(dxl, db)
importer.ReplicaRequiredForReplaceOrUpdate = False
importer.DocumentImportOption = DXLIMPORTOPTION_CREATE
'** get the button from the doc we just created and append it to
'** the rich text item we were given
Set doc = db.GetDocumentByID(importer.GetFirstImportedNoteId)
Set body = doc.GetFirstItem("Body")
'** try to delete the temporary doc. In case we can't delete it for some
'** reason, a scheduled agent should be written to globally delete
'** docs that use the form name specified in the DXL above.
On Error Resume Next