When developing DeepSeek agents or tuning models with DeepSeek Harness (DSH), debugging Prompt cache hit rates often relies on feedback from the Provider console, making it difficult to quickly identify locally which part of the input change caused a cache miss. The CacheScope plugin records llm/stream attempts directly on the DSH side and provides a desktop dashboard displaying the cached Token usage reported by the Provider, while comparing differences between adjacent logical inputs on the DSH side.
Core Features¶
CacheScope primarily provides the following capabilities:
- Desktop dashboard: Records and displays observed LLM call attempts without modifying model requests or registering model-visible tools.
- Diagnostic capabilities:
- Compare two rounds of conversation to analyze Provider cache read rate.
- Inspect adjacent input diagnostics and the color-coded input tree.
- Filtering and management: Supports filtering by session, provider, model, purpose, lifecycle, and evidence, as well as diagnostic sorting, live follow, and metadata copying.
Installation and Enablement¶
Install the plugin in the Web configuration file and start DSH:
dsh plugin --profile web add @kober-basket/dsh-cachescope
dsh web
After installation, access the dashboard in the browser at http://127.0.0.1:3080/cachescope.
Typical Usage: Quick Start¶
Taking “Quick Start: Compare two rounds of conversation” as an example:
- Send the first message in the DSH conversation. This step creates a local comparison baseline.
- Send a second message in the same Session, keeping the Provider, model, System Prompt, and enabled tools unchanged.
- In CacheScope, select the second conversation invocation. Check the Provider Cache Read ratio at the top, then inspect adjacent input diagnostics and the color-coded input tree.
Applicable Scenarios and Notes¶
- Applicable scenarios: Developers who need to intuitively understand Prompt cache usage and troubleshoot causes of cache hit rate changes.
- Privacy note: The installed plugin package enables
captureInput: fullby default. By default, the DSH process retains up to the latest 12 complete logical inputs in memory, with each input up to 2,000,000 UTF-8 JSON bytes. If you do not need to inspect complete inputs, it is recommended to usecaptureInput: metadatain the configuration.
- id: cachescope
name: '@kober-basket/dsh-cachescope'
config:
captureInput: metadata
- Data and access:
- Attempt records and retained complete inputs exist only in DSH process memory; after the DSH process stops, the server-side copies disappear.
- The dashboard is registered only when the DSH WebServer is bound to
127.0.0.1. - The copy JSON feature writes the selected complete input to the operating system clipboard.
- Fingerprint explanation: Metadata fingerprints are generated using an in-process random HMAC key and cannot be compared across process restarts.
CacheScope provides local Prompt cache observability, helping developers quickly diagnose the relationship between input changes and cache strategies without relying on external consoles. For more details, refer to the plugin catalog or GitHub repository.