Continue: enable caching defaults
SkillAI & modelsContinue's prompt caching is opt-in via config and off by default. Flip the default to systemAndTools.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Continue: enable caching defaults skill
What this skill tells your AI
The instructions your AI receives, as published by onlyterp/prompt-cache-skills in skills/continue-enable-defaults/SKILL.md and read by ahel’s review.
Target
packages/openai-adapters/src/apis/Anthropic.ts and
core/llm/llms/Bedrock.ts in continuedev/continue.
Symptom
Continue's caching is gated on three config flags:
cacheBehavior.cacheConversation(default: false)cacheBehavior.cacheSystemMessage(default: false)completionOptions.promptCaching(default: false)
A user has to know all three exist and set them in config.yaml.
Most don't. Net effect: the median user gets no caching.
Open issue #5172 ("Anthropic prompt caching doesn't work") is mostly this — users don't realize they need to configure it.
Fix (two-part)
Part A — flip the default strategy
In Anthropic.ts:
--- a/packages/openai-adapters/src/apis/Anthropic.ts
+++ b/packages/openai-adapters/src/apis/Anthropic.ts
@@
- const cachingStrategy = CACHING_STRATEGIES[this.config.cachingStrategy ?? "systemAndTools"];
+ // Default to caching system + tools. Users on supported models pay
+ // the 1.25x write premium on the first call and get 0.1x on every
+ // subsequent call within 5 minutes — strict win above ~3 reads.
+ const cachingStrategy = CACHING_STRATEGIES[this.config.cachingStrategy ?? "systemAndTools"];
(systemAndTools already IS the documented default in the code path
above, but the user-facing config schema treats it as optional with
unclear default. Audit your codebase to confirm the actual fallback
behavior matches the documented one. If not, fix.)
Part B — auto-enable conversation message caching for supported models
@@
- if ((this.config.cachingStrategy ?? "systemAndTools") !== "none") {
- addCacheControlToLastTwoUserMessages(result.messages);
+ // Auto-enable for any model that declares supportsPromptCache.
+ // User can still opt out with cachingStrategy: "none".
+ const strategy = this.config.cachingStrategy ?? "systemAndTools";
+ if (strategy !== "none" && this.modelSupportsPromptCache()) {
+ // NOTE: this is currently buggy — see continue-fix-volatile-msg
+ // skill for the volatile-message fix that should land alongside.
+ addCacheControlToLastTwoUserMessages(result.messages);
}
Same change in Bedrock.ts — auto-enable cachePoint for models
with supportsPromptCache: true unless user explicitly opts out.
Part C — document the change in CHANGELOG
Users coming from older Continue versions will see bills shift (downward, but still a change). Add a CHANGELOG entry calling out that caching is now default-on for supported models.
Verify
- With NO
cacheBehaviororcompletionOptions.promptCachingset in config.yaml, start a Continue chat with Claude. - Capture wire.
- Confirm outbound request body contains
cache_controlmarkers without any user config touching them. - Confirm second-turn response
usage.cache_read_input_tokens > 0.
Background
Caching that requires a config flag to enable is caching that doesn't get used. The 1.25x write premium pays for itself after ~3 reads, which any multi-turn chat clears trivially. There's no scenario where "caching off" is the right default for an agent CLI on a model that supports it.
This skill is best applied alongside continue-fix-volatile-msg (same Cline-family copy-paste bug present in Continue too) so users don't get the cache thrash without knowing.
Full audit: audits/continue.md.
Signals
- GitHub stars
- 114
- Forks
- 9
- Last commit
- Aug 2026
Advanced
- Catalog kind
- skill
- Gateway key
continue-enable-defaults- Source
- github.com/onlyterp/prompt-cache-skills