Cache
/install cache
Cache — Local Key-Value Cache Manager
A lightweight, file-backed key-value cache with TTL (time-to-live) support, search, bulk import/export, and statistics. Ideal for caching API responses, computed results, or any ephemeral data that benefits from quick local retrieval.
Prerequisites
- Python 3.6+
- Bash 4+
Data Storage
Cache entries are stored in ~/.cache-tool/data.jsonl (note: uses cache-tool to avoid conflicts with ~/.cache). Each line is a JSON object with fields: key, value, ttl, created_at, expires_at, tags, etc.
Configuration lives in ~/.cache-tool/config.json.
Commands
Run via: bash scripts/script.sh \x3Ccommand> [options]
| Command | Description |
|---|---|
set |
Store a key-value pair with optional TTL and tags |
get |
Retrieve the value for a given key |
delete |
Remove a key from the cache |
list |
List all cache entries (with optional tag filter) |
flush |
Delete all cache entries or those matching a pattern |
ttl |
Check or update the TTL for an existing key |
stats |
Show cache statistics (size, hit/miss ratio, memory) |
export |
Export the cache to a JSON file |
import |
Import cache entries from a JSON file |
search |
Search keys or values by substring or regex |
config |
View or update cache settings (default TTL, max size) |
help |
Show usage information |
version |
Print the tool version |
Usage Examples
# Set a simple key-value pair
bash scripts/script.sh set --key api_response --value '{"status":"ok"}' --ttl 3600
# Set with tags
bash scripts/script.sh set --key user:42 --value '{"name":"Kelly"}' --tags user,profile
# Get a value
bash scripts/script.sh get --key api_response
# Delete a key
bash scripts/script.sh delete --key old_data
# List all entries
bash scripts/script.sh list
# List entries by tag
bash scripts/script.sh list --tag user
# Check remaining TTL
bash scripts/script.sh ttl --key api_response
# Update TTL
bash scripts/script.sh ttl --key api_response --set 7200
# Flush all entries
bash scripts/script.sh flush
# Flush by pattern
bash scripts/script.sh flush --pattern "user:*"
# Search by key pattern
bash scripts/script.sh search --query "api_" --field key
# Show cache stats
bash scripts/script.sh stats
# Export cache
bash scripts/script.sh export --output cache_backup.json
# Import cache
bash scripts/script.sh import --input cache_backup.json
# Configure defaults
bash scripts/script.sh config --set default_ttl=3600 --set max_entries=10000
Notes
- Expired entries are lazily cleaned: they are skipped on
getand purged duringflushorstats. - The
searchcommand supports both simple substring matching and Python regex patterns. importmerges entries; existing keys are overwritten.statsreports total entries, expired count, active count, and approximate data size.
Output Format
get returns the raw value to stdout. All other commands return JSON objects with status and metadata.
Powered by BytesAgain | bytesagain.com | [email protected]
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install cache - After installation, invoke the skill by name or use
/cache - Provide required inputs per the skill's parameter spec and get structured output
What is Cache?
Manage a local key-value cache store using bash and Python. Use when caching API responses, session data, or computed results with TTL support. It is an AI Agent Skill for Claude Code / OpenClaw, with 236 downloads so far.
How do I install Cache?
Run "/install cache" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Cache free?
Yes, Cache is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Cache support?
Cache is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Cache?
It is built and maintained by bytesagain4 (@xueyetianya); the current version is v2.0.0.