# Read-only caching (llmcpp) **Read-only caching** allows reuse while preventing cache writes. It does not prohibit generation on a miss: ```bash # Reuse matching bodies; generate misses without saving them. $ llmc++ -fllm-cache-read-only main.cpp -o main # Also prohibit generation on misses. $ llmc++ \ -fllm-cache-read-only -fllm-offline \ main.cpp -o main ``` The first command can contact an agent if policy permits it. Accepted code is used for that build without replacing stored entries. The second requires eligible cached bodies unless regeneration is explicitly enabled. Read-only mode does not enable caching when `no_cache` disables it. Use `-fllm-explain-cache` to inspect hit, miss, bypass, and write decisions. Separating generation permission from persistence lets a build consume a reviewed cache without silently modifying it.