Agent Skill
2/7/2026python-function-caching
Provide a reusable pattern for memoizing deterministic function calls to reduce latency and repeated computation. Backed by the `python` diskcache package. Use skill when updating or editing everything.
G
gordonwatts
1GitHub Stars
1Views
npx skills add gordonwatts/atlas-mcp
SKILL.md
| Name | python-function-caching |
| Description | Provide a reusable pattern for memoizing deterministic function calls to reduce latency and repeated computation. Backed by the `python` diskcache package. Use skill when updating or editing everything. |
name: python-function-caching
description: Provide a reusable pattern for memoizing deterministic function calls to reduce latency and repeated computation. Backed by the python diskcache package. Use skill when updating or editing everything.
Python Function Caching Skill
Purpose
- Caching the function result. Works for pure functions that depend only on their inputs and have no side effects.
- Perfect for expensive calls (calculations, or calls to external services like LLM's).
Workflow
- Copy the contents of the file
assets/disk_cache.pyinto the project. - In the file update the
project_namein the linecache = Cache("~/.cache/project_name")to be the appropriate name. Also replaceproject_namefurther down in the docstring. - Use
@diskcache_decoratoror@diskcache_decorator(seconds-till-expired)for any function the user wants cached.- By default, the cache should not expire.
- If it makes sense that it should expire, 1 hour (3600 seconds seconds), 1 day (86400 seconds), or 1 week (604800 seconds) are common settings.
- Tricky part is invoking tests to make sure that the cache isn't used. Tests should use the
ignore_cache=Trueto get around this unless otherwise requested by the user.
Behavior
- Uses the function arguments to compute the hash
- Unless
ignore_cacheisTrue, the result is returned right away. - If the function is called, the result is always stored in the cache.
- Current code does not have an eviction policy.
Skills Info
Original Name:python-function-cachingAuthor:gordonwatts
Download