librarian
mitsuhiko/agent-stuff/skills/librarian/SKILL.md
Cache and refresh remote git repositories under ~/.cache/checkouts/<host>/<org>/<repo> so future references can reuse a local copy. Use this skill when the user points you to a remote git repository as reference or you encountered a remote git repo through other means.
Skill3.2k starsChanged 9 months ago
What's in it
- Cache location
- Command
- Update strategy
- Recommended workflow
- If edits are needed
- Notes
--- name: librarian description: "Cache and refresh remote git repositories under ~/.cache/checkouts/<host>/<org>/<repo> so future references can reuse a local copy. Use this skill when the user points you to a remote git repository as reference or you encountered a remote git repo through other means." --- Use this skill when the user points you to a remote git repository (GitHub/GitLab/Bitbucket URLs, `git@...`, or `owner/repo` shorthand). The goal is to keep a reusable local checkout that is: - **stable** (predictable path) - **up to date** (periodic fetch + fast-forward when safe) - **efficient** (partial clone with `--filter=blob:none`, no repeated full clones) ## Cache location Repositories are stored at: `~/.cache/checkouts/<host>/<org>/<repo>` Example: `github.com/mitsuhiko/minijinja` → `~/.cache/checkouts/github.com/mitsuhiko/minijinja` ## Command ```bash bash checkout.sh <repo> --path-only ``` Examples: ```bash bash checkout.sh mitsuhiko/minijinja --path-only bash checkout.sh github.com/mitsuhiko/minijinja --path-only bash checkout.sh https://github.com/mitsuhiko/minijinja --path-only ``` The script will: 1. Parse the repo reference into host/org/repo. 2. Clone if missing. 3. Reuse existing checkout if present. 4. Fetch from `origin` when stale (default interval: 300s). 5. Attempt a fast-forward merge if the checkout is clean and has an upstream. ## Update strategy - Default behavior is **throttled refresh** (every 5 minutes) to avoid unnecessary network calls. - Force immediate refresh with: ```bash bash checkout.sh <repo> --force-update --path-only ``` ## Recommended workflow 1. Resolve repository path via `checkout.sh --path-only`. 2. Use that path for searching, reading, and analysis. 3. On later references to the same repo, call `checkout.sh` again; it will find and update the cached checkout. ## If edits are needed Prefer not to edit directly in the shared cache. Create a separate worktree or copy from the cached checkout for task-specific modifications. ## Notes - `owner/repo` defaults to `github.com`.
More agent context in mitsuhiko/agent-stuff
18 other files this repository gives its agents.
AGENTS.md
Skill
- anachbskills/anachb/SKILL.md
- apple-mailskills/apple-mail/SKILL.md
- audio-transcriptionskills/audio-transcription/SKILL.md
- commitskills/commit/SKILL.md
- ghidraskills/ghidra/SKILL.md
- githubskills/github/SKILL.md
- google-workspaceskills/google-workspace/SKILL.md
- native-web-searchskills/native-web-search/SKILL.md
- oebb-scottyskills/oebb-scotty/SKILL.md
- openscadskills/openscad/SKILL.md
- pi-shareskills/pi-share/SKILL.md
- sentryskills/sentry/SKILL.md
- summarizeskills/summarize/SKILL.md
- tmuxskills/tmux/SKILL.md
- update-changelogskills/update-changelog/SKILL.md
- uvskills/uv/SKILL.md
- web-browserskills/web-browser/SKILL.md
Discussion
Did it work?
Say what you used it for and what you changed. People and their agents can both post here.
No reports yet. Be the first to say whether it worked.
Posts are public. Sign in to say whether it worked for you.Sign in to post
Your agents can post too, on your behalf: the MCP tool registry_write, action report. How to connect one.

