To call a Lotusscript agent from an Xpage on saving you need to do the following:
Click on the Xpage or the Custom Control that the document is binded to.
Click on Events.
Expand Data and document1 and then postSaveDocument
Add this code into the script editor:
var agent=database.getAgent("wqsAgentName");
var doc:NotesDocument = document1.getDocument();
agent.runOnServer(doc.getNoteID());
In the agent (which should be of trigger On Event , Action menu selection, with Target: none).
Set s = New notessession
Set db= s.currentdatabase
Dim ag As NotesAgent
Set ag=s.Currentagent
Dim doc As NotesDocument
Set doc = db.GetDocumentByID(ag.ParameterDocID):
'etc
NB documentcontext should not be used.