For your code

  • Let Caveman pick the model"model": "cave-auto"
  • Skip prompt caching on this requestx-cave-optimize: no-cache
  • Compress this requestx-cave-optimize: compress
  • Reuse the answer to a similar promptx-cave-cache: semantic
  • This request passes through byte-identicalx-cave-optimize: off
  • Tag this request into a traffic slicex-cave-workflow: <slice>
  • Tighten storage for this requestx-cave-retention: zdr
  • Label for spend attributionx-cave-tags: team=search

Every response is a receipt: x-cave-mode · x-cave-optimization · x-caveman-recovery-handle · x-cave-optimize-applied · x-cave-optimize-denied

Guarantees

  • Unless a request asks for compression, the prompt the model sees is exactly the prompt you sent.
  • A request that names a model keeps it, unless you add a route for that model. Only cave-auto is picked for you.
  • If anything goes wrong mid-request, your original request is forwarded unchanged.
Interactive demo · fictional data·Changes reset on reload