Agent skill

GitHub Cache Hygiene

by steipete in steipete/agent-scripts

GitHub quota/cache hygiene: Gitcrawl archives, Octopool-backed gh, freshness, limits.

MITAuto-check passed

Install GitHub Cache Hygiene

skills CLI
$ npx skills add steipete/agent-scripts --skill github-cache-hygiene -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install steipete/agent-scripts github-cache-hygiene --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/steipete/agent-scripts.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/github-cache-hygiene .claude/skills/github-cache-hygiene && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
github-cache-hygiene
GitHub stars
7.3k
Token cost
~1.7k tokens
SKILL.md length
817 words
Files
2
Skills in repo
45
Repo updated
First seen
Licence
MIT

At a glance

GitHub quota/cache hygiene: Gitcrawl archives, Octopool-backed gh, freshness, limits.

  • SKILL.md covers Default Path, Freshness, Octopool and Agent Etiquette
  • Calls gh

What it does

GitHub Cache Hygiene is an agent skill from steipete/agent-scripts. GitHub quota/cache hygiene: Gitcrawl archives, Octopool-backed gh, freshness, limits.

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).

It works with GitHub. The repository describes itself as: Scripts for agents, shared between my repositories. The licence is MIT.

Example prompts

  • “/github-cache-hygiene”

What it can do on your machine

Read from SKILL.md and the folder at commit 79150cf. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • gh

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use gh, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

GitHub Cache Hygiene loads about 1.7k tokens when it runs. Until then it costs about 27 tokens; SKILL.md has 817 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~27
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from steipete/agent-scripts at commit 79150cf, republished under its MIT licence (© steipete). 817 words, ~1,694 tokens.

Download SKILL.mdSave it as .claude/skills/github-cache-hygiene/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
github-cache-hygiene
description
GitHub quota/cache hygiene: Gitcrawl archives, Octopool-backed gh, freshness, limits.

GitHub Cache Hygiene

Goal: discover in the local Gitcrawl archive first, then use the existing Octopool-backed gh shim for current GitHub metadata and authorized writes.

Default Path

Start with local archive reads:

bash
gitcrawl search prs "<terms>" -R owner/repo --state open --json number,title,url
bash
gitcrawl threads owner/repo --numbers 123 --include-closed --json

--include-closed keeps closed or merged candidates in scope. Archive state can lag GitHub; it is not proof of current state.

Then use bare PATH gh when current metadata is needed. On Peter's machines it is expected to be the Octopool-backed shim, so supported JSON reads share the fleet cache without changing authentication or command routing:

bash
gh search issues "<terms>" -R owner/repo --state open --json number,title,state,url,updatedAt,labels,author
gh search prs "<terms>" -R owner/repo --state open --json number,title,state,url,updatedAt,isDraft,author
gh issue list -R owner/repo --state open --author user --assignee user --label bug --json number,title,url
gh pr list -R owner/repo --state open --author user --label dependencies --json number,title,url
gh issue view 123 -R owner/repo --json number,title,state,body,labels,url
gh pr view 123 -R owner/repo --json number,title,state,url,headRefName,headRefOid
gh pr checks 123 -R owner/repo --json name,state,bucket,link
gh run list -R owner/repo --branch branch-name --json databaseId,workflowName,status,conclusion,url
gh pr diff 123 -R owner/repo --patch

Use exact refs and narrow fields. --json selects output, not a reader identity. In Octopool 0.7.1, PR mergeStateStatus and issue comments select native gh for the entire field bundle. PR comment/review/commit exports also retain native handling. Request those fields when needed, but omit them from descriptive reads that do not consume them. Never remove merge/review gates merely to raise cache reuse, or split one decision into separately timed reads without preserving its consistency contract.

Supported human output and recognized landing GraphQL projections can also relay. Supported gh api --paginate/--slurp and --hostname github.com reads need not bypass Octopool. Use the installed version's CLI contract and observed routing; an absolute gh path alone does not establish that it is the native binary.

Avoid broad loops like one gh issue view per result when a single gh search or gh issue list --json ... can answer the first-pass question.

For CI, avoid tight gh run list / gh run view polling loops. After a push or workflow dispatch, identify one exact run, then use an exact-run watcher or poll that run at 30s, 60s, then 120s intervals. Check the expected head SHA and run attempt. A broad or filtered list can lag even on a fresh upstream acquisition; its newest row is not final CI evidence. Fetch logs once, only after failure or explicit request. Reuse prior output instead of re-reading completed runs.

Freshness

Local answers are good for discovery, duplicate search, old thread review, author/label triage, and "is there likely already an issue/PR?" checks.

Use a live call when:

  • writing, commenting, closing, merging, rerunning, or editing
  • checking final current state before a maintainer action
  • verifying CI status after a push
  • the local result is missing or obviously stale
  • the user asks for latest/live state

Hydrate exact PR details only when the local archive needs files, commits, checks, or run summaries for repeated review:

bash
gitcrawl sync owner/repo --numbers 123 --with pr-details

This refresh spends GitHub API calls and updates Gitcrawl's archive, not Octopool's separate gh cache. Bare gh reads do not auto-hydrate the Gitcrawl archive.

gitcrawl gh is retired and exits 2 with a migration note. Replace those recipes with archive reads followed by bare gh; the note is not an authentication failure. Do not run octopool login, change tokens/auth/PATH/config, or bypass the existing shim to repair a retired command.

After a write, do one targeted fresh readback, not a broad rescan. Use OCTOPOOL_FRESH=1 or an explicit Cache-Control: max-age=0 for relay reads. Supported PR decision fields such as state, headRefOid and statusCheckRollup automatically revalidate. Descriptive fields such as title can reuse cache.

gh api --include uses native gh and caller credentials. It changes identity, quota and potentially visibility; it is not a freshness switch or a guaranteed stale-list workaround. Keep caller-owned permission and merge decisions on their required identity path. A fresh relay MISS with an old list does not by itself prove expired cache reuse, and a HIT after revalidation does not prove zero upstream requests.

Show full SKILL.md (245 more words)Show less

Octopool

Inspect cache behavior when rate limits are suspected:

bash
octopool whoami
octopool health
octopool stats --since 1h
octopool stats --since 24h --json

Prioritize cached eligible responses divided by eligible requests. Retain the UTC window, numerator, denominator, misses, bypasses and coalesced requests. Compare route/client mix, explicit freshness and latency before attributing a change. These are response-reuse metrics, not GitHub quota savings. Pool totals cover all callers, while client tables cover the authenticated caller. Native GraphQL and direct clients are outside relay metrics; absence from a bounded sample is not proof of a broken installation.

Check the actual execution context. A host shim can work while a container uses a separate native read-only wrapper. Preserve that wrapper's allowlist and credential boundary; never mount host mutation credentials to gain cache coverage.

Use OCTOPOOL_NO_FALLBACK=1 only for a bounded, known-supported relay read. It blocks a relay-to-native handoff, but deliberately unsupported commands can still delegate directly. Success alone is therefore not universal relay proof. Pair it with a known supported command and observed route/cache evidence. A separate native wrapper may ignore this variable entirely. Do not set it globally; mutations and unsupported reads still need real gh.

For relay-only proof:

bash
OCTOPOOL_NO_FALLBACK=1 gh api repos/owner/repo --jq .full_name

Agent Etiquette

Batch questions by repo and state. Reuse data already printed in the session. Back off CI polling; inspect logs only once for a failed run. Use bare PATH gh for ordinary reads and authorized writes; let Octopool own fallback to the real CLI. Do not bypass the shim with an absolute real-gh path or a binary override to replace retired Gitcrawl recipes.

© steipete, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/github-cache-hygiene of steipete/agent-scripts.

  • SKILL.md
  • agents/openai.yaml

Open the folder on GitHubat commit 79150cf

Compare with similar skills

GitHub Cache Hygiene next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

GitHub Cache Hygiene compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
GitHub Cache Hygiene this skillsteipete/agent-scripts7.3k—~1.7kAutomated safety check: PassMIT
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Diagnosing Superpowers Sessionsobra/superpowers296k3 repos~1.7kAutomated safety check: PassMIT
GitHub Deep Researchbytedance/deer-flow83k5 repos~1.3kAutomated safety check: PassMIT
Greplooponyx-dot-app/onyx32k4 repos~3.3kAutomated safety check: PassMIT
Update V8 Versionopeninterpreter/openinterpreter69k2 repos~845Automated safety check: PassApache-2.0

Similar skills

  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Investigates a session where Superpowers went wrong, reads the transcripts on disk and produces an evidence-cited report, optionally prepared as a bug report for the maintainers.

    296k GitHub starsUsed in 3 repos~1.7k tokens
    Agent WorkflowsAuto-check passed
  • GitHub Deep Research

    bytedance/deer-flow

    Researches a GitHub repository over four rounds using the GitHub API and web search, then writes a structured markdown report with timeline, metrics and Mermaid diagrams.

    83k GitHub starsUsed in 5 repos~1.3k tokens
    Research & ScienceAuto-check passed
  • Greploop

    onyx-dot-app/onyx

    Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.

    32k GitHub starsUsed in 4 repos~3.3k tokens
    DevelopmentAuto-check passed
  • Update V8 Version

    openinterpreter/openinterpreter

    Bumps the pinned v8 and rusty_v8 versions in Codex, validates the release-candidate path with the v8-canary check, and traces failures to upstream build changes.

    69k GitHub starsUsed in 2 repos~845 tokens
    DevOps & CloudAuto-check passed
  • Check PR

    onyx-dot-app/onyx

    Checks a GitHub, GitLab, or Perforce (p4) pull request (or merge request, or shelved changelist) for unresolved review comments, failing status checks, and incomplete PR descriptions.

    32k GitHub starsUsed in 2 repos~2.3k tokens
    DevelopmentAuto-check passed

More from steipete/agent-scripts

All 45 skills in this repo
  • Mac Fleet Maintenance

    steipete/agent-scripts

    Inventories and maintains a fleet of Macs from a desired-state file: package updates, repo and Xcode sync, and disk, backup and security health reports.

    7.3k GitHub stars~4.8k tokensUpdated 2 days ago
    Auto-check passed
  • Agent Transcript for PRs

    steipete/agent-scripts

    Finds a coding agent's session log, trims and redacts it, and inserts it into a GitHub PR or issue only when the user has asked for a transcript.

    7.3k GitHub starsUsed in 1 repo~698 tokens
    Auto-check passed
  • Parallels macOS VM Lab

    steipete/agent-scripts

    Uses a clean Parallels macOS VM to test GUI automation, TCC permission prompts and screenshot tools like Peekaboo, verifying results from outside the guest.

    7.3k GitHub stars~1.8k tokensUpdated 2 days ago
    Auto-check passed
  • ClawSweeper Status

    steipete/agent-scripts

    Reports ClawSweeper's status with a bundled script: workflow health, active workers, queue health and recently merged, reviewed, commented and closed items.

    7.3k GitHub stars~972 tokensUpdated 2 days ago
    Auto-check passed
  • GitHub Project Triage

    steipete/agent-scripts

    Produces maintainer-facing triage cards for a project's GitHub issues and pull requests, each with its URL, risk, test state, blockers and a next action.

    7.3k GitHub stars~4k tokensUpdated 2 days ago
    Auto-check passed
  • Nano Banana Image Generation

    steipete/agent-scripts

    Generates and edits images with Google's Nano Banana 2 (Gemini 3.1 Flash Image) through a uv script, with a draft-then-final workflow and sizes from 512 to 4K.

    7.3k GitHub stars~1.4k tokensUpdated 2 days ago
    Auto-check passed

Works with

Questions about GitHub Cache Hygiene

What does GitHub Cache Hygiene do?

GitHub quota/cache hygiene: Gitcrawl archives, Octopool-backed gh, freshness, limits. GitHub Cache Hygiene is an agent skill from steipete/agent-scripts. GitHub quota/cache hygiene: Gitcrawl archives, Octopool-backed gh, freshness, limits.

How do I install GitHub Cache Hygiene in Claude Code?

Run `npx skills add steipete/agent-scripts --skill github-cache-hygiene -a claude-code`. Or copy the skill folder (skills/github-cache-hygiene in steipete/agent-scripts) into .claude/skills/github-cache-hygiene in your project. Claude Code loads it when a task matches its description.

How do I install GitHub Cache Hygiene in Codex?

Run `npx skills add steipete/agent-scripts --skill github-cache-hygiene -a codex`. Or copy the skill folder (skills/github-cache-hygiene in steipete/agent-scripts) into .agents/skills/github-cache-hygiene in your project. Codex loads it when a task matches its description.

Can I use GitHub Cache Hygiene in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add steipete/agent-scripts --skill github-cache-hygiene -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/github-cache-hygiene, .gemini/skills/github-cache-hygiene, .github/skills/github-cache-hygiene and .opencode/skills/github-cache-hygiene in your project.

What does GitHub Cache Hygiene need to run?

Going by SKILL.md and its folder, GitHub Cache Hygiene needs the command-line tools its instructions call (gh).

Does GitHub Cache Hygiene access the network?

SKILL.md contains no URLs. Its commands use gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is GitHub Cache Hygiene safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does GitHub Cache Hygiene use?

GitHub Cache Hygiene is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does GitHub Cache Hygiene use?

About 1.7k tokens (SKILL.md is roughly 6.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to GitHub Cache Hygiene?

Skills that share tags, products or a category with GitHub Cache Hygiene: PR Babysitter (openinterpreter/openinterpreter, 69k stars), Diagnosing Superpowers Sessions (obra/superpowers, 296k stars), GitHub Deep Research (bytedance/deer-flow, 83k stars) and Greploop (onyx-dot-app/onyx, 32k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains GitHub Cache Hygiene?

steipete (a GitHub user) maintains it in steipete/agent-scripts, which has 7,259 GitHub stars. The repository holds 45 skills in this directory. The repository was last updated on October 4, 2026.

Source: steipete/agent-scripts on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.