Stirling engines and adiabatic compressed-air energy storage both depend for their efficiency on a regenerator, which can be something as simple as a pebble bed or packed column, or as elaborate as a ceramic honeycomb.
I think regenerators have some significant tradeoffs, though. In particular they tend to impose a fairly large pressure loss on the air (or other fluid) passing through them, and they cool off significantly if left to sit, just through the diffusion of heat through the regenerator itself. And I think — though I’m not sure — that the thermal mass of the regenerator itself slows down the ramp time of Stirling engines.
You can cut a regenerator’s head loss by making it shorter, so the air travels less distance while constricted by it, but this puts a low ceiling on the total amount of thermal energy that can be stored, and also worsens the diffusion problem.
A countercurrent heat exchanger with a different, probably liquid, coolant — a recuperator — could solve these problems. This allows you to keep separate superinsulated hot and cold reservoirs, connected to the heat exchanger with long, thin pipes, and pump the coolant either direction through the pipes to keep the heat exchanger at a constant temperature.
Countercurrent heat exchangers with very low pressure drops and very high heat fluxes are feasible — in biology they are called “retia mirabilia” and were discovered 1800 years ago. They intertwine two fractal branching structures in such a way that they come in contact throughout a surface with a large fractal dimension vaguely resembling the surface of a piece of broccoli. As far as I know, nobody has ever built an artificial rete mirabile, although there have been a number of papers and books on process intensification that come close. It will be best to build them from a solid material with low thermal conductivity such as a glass or ceramic, since if you can get the fluid passages below 100μm in diameter, the distance between them is very small and the surface area between them is very large, so it’s probably more important to slow lengthwise heat diffusion than to promote transverse heat diffusion.
(See Heat exchangers modeled on retia mirabilia might reach 4 TW/m³ for more about such heat exchangers.)
If the secondary coolant is a liquid, it may be necessary to use more than one liquid, because most liquids have a narrow usable temperature range. For example, ethanol spans -120° to about +100°, propylene glycol spans -59° to +188°, and glycerol spans about 0° to +290°, but organic liquids in general start not merely to boil but to break down chemically somewhere between 200° and 300°. Molten nitrate salts span a somewhat larger temperature range but are solid anywhere near room temperature. Liquid metals cover the 200° to 1000° range reasonably well, but most of them are also solid at room temperature, potentially posing difficulties for a cold start.
I think this is important because Carnot efficiency is 1 - Tₖ/Tₕ, where Tₖ is the temperature of the kold reservoir and Tₕ the temperature of the hot one, so a wide temperature swing is crucial for heat engine efficiency; this clearly applies to Stirling engines, but I’m not yet clear on whether it’s necessary for adiabatic compressed air energy storage.