In general, *CONTACT_AUTOMATIC_SINGLE_SURFACE, *CONTACT_AUTOMATIC_GENERAL, or *CONTACT_AUTOMATIC_NODES_TO_SURFACE should handle a beam-to-shell-surface contact situation. All of these contact types take into account thickness offsets. The first two contact types mentioned above are single surface contacts and so both the shell and beams parts should be included on the slave side with the master side being null. For an automatic_nodes_to_surface contact, the beam part (or its nodes) should be slave, the shell part (or its segments) should be master. For any of the above, a search is made for penetration of beam nodes (or more precisely, a sphere around each beam node) through shell surfaces.
If the contact situation is beam-to-shell-EDGE, one might have a problem. In that case, one have to stick with *CONTACT_AUTOMATIC_GENERAL AND add null beams (low density beams utilizing *MAT_NULL) along (merged to) the outer edges of the shells. The null beam part should be added to the slave side of the contact.