Use a executionflowlistener on start of workflow that gets the nodes in your workflowpackage and then adds the "user home" noderef as a secondary parent.
Get workflow package nodes :
ActivitiScriptNode packageItemsbpm = (ActivitiScriptNode) execution.getVariable(BPM_PACKAGE);
List<ChildAssociationRef> packageitemAssociations = nodeService.getChildAssocs(packageItemsbpm.getNodeRef());
Then iterate these wf package nodes, and add them to the assignees home folders:
for(String assigneeName : assigneesList) {
ResultSet rs = getServiceRegistry().getSearchService().query(StoreRef.STORE_REF_WORKSPACE_SPACESSTORE, SearchService.LANGUAGE_LUCENE, "PATH:\"/app:company_home/app:user_homes/cm:"+ assigneeName +"\"");
if(rs.length() > 0){
NodeRef assigneeHome = rs.getNodeRef(0);
nodeService.addChild(assigneeHome, nodeRef, ContentModel.ASSOC_CONTAINS, nodeService.getPrimaryParent(nodeRef).getQName());
}
}