본문으로 건너뛰기
cccskills
무료GitHub에 공개

prompt-caching

Cache the parts of the prompt that don't change so a long-running loop stops paying full price on every turn. Use when the system prompt, tool defs, or reference docs are stable across many turns.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md2.9 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Prompt Caching

Every turn of a Plan→Act→Verify loop resends the same system prompt, the same tool definitions, and (usually) the same reference docs. Without cache breakpoints you pay full input price on all of it, every turn. With them, cached reads cost ~10% of the write.

Where to put breakpoints

Cache from the top of the prompt down. The cache is prefix-matched — a break in the middle invalidates everything after it.

  1. System prompt — mark the end of it as a breakpoint if it's >1024 tokens (Sonnet/Opus) or >2048 (Haiku).
  2. Tool definitions — cache immediately after, if the tool set is stable across the loop.
  3. Large stable docs — repo map, style guide, spec — before any turn-specific user text.
  4. User message stem — only if the same preamble repeats every turn.

Everything past the last breakpoint is billed fresh every turn. That's fine — that's where the changing content goes.

TTL choice

  • 5-minute cache (default) — for tight loops where turns are seconds apart. Free to write.
  • 1-hour cache — for slow loops (human in the loop, background jobs). Write cost is higher; break-even is ~2 hits.

Pick 5m unless you know turns are minutes apart.

Staleness rules — cache invalidation is silent

  • Any byte change above the breakpoint invalidates the cache from that point.
  • Reordering tools or messages counts as change.
  • Trailing whitespace counts as change.
  • A different model version counts as change.

If cost isn't dropping, log the cache-hit metric. Do not assume.

When NOT to cache

  • Prompt <1024 tokens — below the minimum block size, no savings.
  • One-shot calls — no reuse, cache write is wasted.
  • Highly dynamic system prompt (per-user templating) — cache misses will exceed hits.

Red flags

  • Cost graph flat after adding breakpoints — you're invalidating on every turn. Diff two consecutive requests byte-for-byte above the breakpoint.
  • Breakpoint after user message — pointless; the user message changes every turn.
  • Four+ breakpoints — max is four; extras are ignored silently.
  • Caching a prompt that gets edited mid-session — one edit above the cut wipes all downstream savings.

The math

Cache write ≈ 1.25× normal input. Cache read ≈ 0.1× normal input. So a stable 20K-token prefix hit N times: N=1 costs more than no-cache; N=2 breaks even; N=10 costs ~15% of no-cache. Long loops win big; short chats lose.

Cache is the single biggest cost lever on a long-running agent. Set it once at the start of the loop, verify hits, forget it.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

a11y-pass

무료

Catch the accessibility failures that ship in almost every AI-built UI. Use after building any interactive component.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Archive228/loopkit7552026년 7월 15일 업데이트

Before compaction Loopkit extracts decisions into claude-decisions.json (machine-readable). Read it alongside claude-progress.txt at session start — prose is for humans, JSON is for the loop.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Archive228/loopkit7552026년 7월 15일 업데이트

Review a diff against the goal spec assuming the code is BROKEN. The reviewer that lives in the maker's head always agrees with itself — this pulls review into a hostile, separate pass. Invoke after every code change before marking work done.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Archive228/loopkit7552026년 7월 15일 업데이트

Verify that an endpoint checks ownership, not just authentication. Use on any handler that reads or mutates user data.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Archive228/loopkit7552026년 7월 15일 업데이트

Find the exact commit that introduced a bug. Use when something worked before and broke, and you don't know which change did it.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Archive228/loopkit7552026년 7월 15일 업데이트

Before picking new work, smoke-test the last "completed" feature. If it's broken, revert and re-open it before touching anything else. Kills the "looks shipped, isn't shipped" bug across sessions.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Archive228/loopkit7552026년 7월 15일 업데이트

Archive228의 스킬 모두 보기

이 스킬의 문제 신고