ConceptsPrompt Caching

Prompt Caching

Prompt caching lets the Syntic model reuse work it has already done on repeated context, so Amara responds faster and each session costs less. It happens automatically, but knowing how it works helps you get the most from it.

The idea

Every turn sends a lot of stable content to the model: your rules and memory from the .syntic/ directory, the system instructions, and files that have not changed since the last turn. Without caching, the model would reprocess all of that from scratch each time. With caching, the Syntic model stores the processed form of that stable prefix and reuses it on the next request, only doing fresh work on what is new — your latest message and any newly read code.

What you gain

The practical result is lower latency and lower cost. Because the cached prefix is skipped, the model reaches your new request sooner, which is especially noticeable in long sessions where the standing context is large. Cached input is also billed at a reduced rate compared to processing it fresh, so repeated turns over the same files become substantially cheaper.

Getting the most from it

Caching rewards stability. Keep the parts of your context that rarely change — rules, memory, project conventions — consistent across a session so they stay cached. Frequent, unnecessary edits to those standing files invalidate the cache and force reprocessing. This complements compaction: compaction keeps the window small, while caching keeps the stable portion cheap to reuse. Together they let you run long, productive sessions without paying the full price on every turn.