Assuming that the circles are always close together I'd try creating a working set of circles with the same centers as the existing but with radius 1.1X the existing radius. The scale factor might need to be adjusted depending on circle spacing to assure that the new circles always overlap. I would then shrinkwrap [bounding box, offset the BB outward, hatch, get hatch boundary, get rid of all but the hatch boundary] to get an outer boundary. The resulting polyline could be iterated to create the lines between the circle centers in order.