i had this requirement today and just added HCMworkerRecId in the two methods mentioned in Andre's post above (class WorkflowLimitHierarchyProvider). After this you need to Generate Increment CIL and then go to Workflow , you would see 'Worker' option there.
Below is the code section for both methods
1) for getSupportedDataType - i added HCMWorkerRecId at the end.
-----------------------------------------------------------------------------
Set supportedDataTypes = new Set(Types::String);
supportedDataTypes.add(extendedTypeStr(HcmPersonnelNumberId));
supportedDataTypes.add(extendedTypeStr(UserId));
supportedDataTypes.add(extendedTypeStr(DirPartyRecId));
supportedDataTypes.add(extendedTypeStr(PurchReqPreparerRefRecId));
supportedDataTypes.add(extendedTypeStr(PurchReqRequesterRefRecId));
supportedDataTypes.add(extendedTypeStr(PurchRequester));
supportedDataTypes.add(extendedTypeStr(TSWorker));
supportedDataTypes.add(extendedTypeStr(TrvHcmWorkerRecId));
supportedDataTypes.add(extendedTypeStr(HcmWorkerRecId));
return supportedDataTypes;
2) for convertToNodeDataType - i added HCMworkerRecId at the end
------------------------------
else if ( dictType.id() == extendedTypeNum(PurchReqPreparerRefRecId)
|| dictType.id() == extendedTypeNum(PurchReqRequesterRefRecId)
|| dictType.id() == extendedTypeNum(PurchRequester)
|| dictType.id() == extendedTypeNum(TSWorker) || dictType.isExtending(extendedTypeNum(TSWorker))
|| dictType.id() == extendedTypeNum(TrvHcmWorkerRecId)
|| dictType.id() == extendedTypeNum(HcmWorkerRecId)
-------------------------------------------------------------------------------