agentleFS
kasperjungekasperjunge/agent-resources/skills/agr-cli/SKILL.md

agr-cli

Skill451 starsChanged 7 months agoMITView on GitHub

Install, share, sync, and create AI agent skills across coding tools (Claude Code, Cursor, Codex, OpenCode, Copilot, Pi) using the agr CLI. Use whenever the user mentions agr, agr.toml, agr.lock, agrx, or asks to: add a skill ("install the pdf skill", "agr add ..."), sync agent resources across tools, share skills with their team, scaffold a new SKILL.md, run a skill ephemerally (agrx), set up a repo to manage AI agent dependencies, or configure tools/sources/instruction-syncing. Also use whenever an agr.toml or agr.lock is present in the project and the user is doing resource-management work.

  • Reads credentials

1 other project uses a version of this.

Adopted by

Most recently taken up by

  • Other versions1 project uses a version of this.

    Word for word · 1

    1. kasperjunge/agent-resources-project★ 451100% same

    Edited · 0

    None found.

    Wrote their own version · 0

    None found.

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • In this repository4 other files it gives its agents.

The file

Show its rules and text

We split this skill into the rules it gives an agent

13 rules. About 0 are common, 6 are distinctive, and 7 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈6

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 7

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this skill when the user wants to:

    line 25
  2. Very specific:

    Run a skill once without persisting it (agrx ...) or invoke an installed one (agr run).

    line 30
  3. Distinctive:

    Add a local in-repo skill to the project's dependency list.

    line 33
  4. Distinctive:

    Do NOT use this skill for:

    line 37
  5. Distinctive:

    Before running anything, verify agr is installed:

    line 49
  6. Very specific:

    If missing, the standard install is uv tool install agr.

    line 55
  7. Distinctive:

    When the user wants to start using agr in a project that has none configured:

    line 83
  8. Very specific:

    Run agr init. agr auto-detects which AI tools the repo uses (.claude/, CLAUDE.md, .cursor/, .cursorrules, .codex/, .opencode/, …

    line 85
  9. Very specific:

    If the user maintains a canonical instruction file (e.g.

    line 90
  10. Very specific:

    Commit agr.toml. (agr.lock will appear after the first agr add or agr sync — commit it too.)

    line 94
  11. Very specific:

    Place project-specific skills under skills/ at the repo root (or at the root of a relevant submodule).

    line 118
  12. Very specific:

    Add -g to operate on ~/.agr/agr.toml instead of the project file.

    line 208
  13. Distinctive:

    All keys with defaults: references/configuration.md.

    line 210

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

agr CLI

agr is the package manager for AI agent skills. It installs, shares, and syncs SKILL.md folders across Claude Code, Cursor, Codex, OpenCode, GitHub Copilot, and Pi. This skill helps you operate the agr CLI on the user's behalf — set up new repos, install and sync skills, manage agr.toml / agr.lock, and scaffold in-repo skills under skills/.

When to use

Use this skill when the user wants to:

  • Install or remove a remote skill (agr add anthropics/skills/pdf).
  • Sync agr.toml after pulling teammates' changes (agr sync).
  • Upgrade an installed skill past its pinned commit (agr upgrade).
  • Run a skill once without persisting it (agrx ...) or invoke an installed one (agr run).
  • Scaffold a new skill (agr init my-skill) — especially as in-repo skills under skills/.
  • Set up a repo from scratch to use agr (multi-tool config, instruction syncing, sources).
  • Add a local in-repo skill to the project's dependency list.
  • Inspect, edit, or troubleshoot agr.toml / agr.lock / agr config.
  • Or whenever agr.toml is present and the user is doing resource-management work.

Do NOT use this skill for:

  • Authoring the body of a SKILL.md. This skill scaffolds and registers; for writing effective skill instructions, defer to the user or to a dedicated authoring skill such as anthropics/skills/skill-creator.
  • Iterating on an existing skill based on session feedback or a retrospective. That's a separate workflow — listen, propose, edit, commit, re-install. If the user has a dedicated debrief / improvement skill installed (e.g. skill-debrief), use it; otherwise just do the workflow directly.

Prerequisites

Before running anything, verify agr is installed:

agr --version

If missing, the standard install is uv tool install agr. Do not install agr without checking with the user first — they may prefer pipx, brew, or a pinned version in CI.

Mental model — read first

  • A skill is a folder containing a SKILL.md. agr copies the whole folder into each configured AI tool's skills directory (.claude/skills/, .cursor/skills/, .opencode/skills/, .agents/skills/, etc.).
  • A handle identifies a remote skill: user/skill (assumes a repo named skills), user/repo/skill (any repo), or ./local/path (on disk).
  • agr.toml is the manifest (hand-edited or written by agr add). agr.lock is the lockfile (auto-generated, pins commit SHAs and content hashes — never edit by hand).
  • Project-local vs global scope: every command takes -g to operate on ~/.agr/agr.toml and global tool dirs.
  • agr sync only installs missing deps. To move past a pinned commit, use agr upgrade.
  • Resource types: skill (consumed by AI tools), ralph (autonomous agent loop), package (a folder with its own agr.toml, expanded transitively). agr add auto-detects the type.

For the full conceptual model: references/handles.md.

Workflows

1. Set up a new repo for agr

When the user wants to start using agr in a project that has none configured:

  1. Run agr init. agr auto-detects which AI tools the repo uses (.claude/, CLAUDE.md, .cursor/, .cursorrules, .codex/, .opencode/, .github/copilot-instructions.md, .pi/, .agents/) and writes agr.toml.
  2. Confirm or adjust the detected tools. For multi-tool: agr config set tools claude codex opencode.
  3. If the user maintains a canonical instruction file (e.g. CLAUDE.md) and wants it mirrored to others (AGENTS.md), enable instruction syncing: agr config set sync_instructions true then agr config set canonical_instructions CLAUDE.md.
  4. Commit agr.toml. (agr.lock will appear after the first agr add or agr sync — commit it too.)

Full details: references/setup.md.

2. Install a skill

agr add anthropics/skills/pdf

Notes:

  • Multi: agr add user/skill1 user/skill2 (skills from the same repo are batched into one download).
  • --overwrite / -o to replace.
  • -g for global (available in every project).
  • agr add auto-creates agr.toml if missing — no need to agr init first.

For handle formats and private repos: references/handles.md and references/installing-skills.md.

3. In-repo skills (the recommended workflow for skills shipping with the codebase)

Place project-specific skills under skills/ at the repo root (or at the root of a relevant submodule). This keeps the skill in version control, reviewable in PRs, and sharable across the team via agr.toml.

agr init my-skill                  # scaffolds my-skill/SKILL.md in CWD
mkdir -p skills && mv my-skill skills/
agr add ./skills/my-skill          # records {path = "./skills/my-skill", type = "skill"} in agr.toml

Iterate: edit skills/my-skill/SKILL.md, then agr upgrade my-skill to reinstall the fresh on-disk copy into each configured tool and refresh agr.lock. (agr add ./skills/my-skill --overwrite also works, but reach for it when you've changed the dependency's path or are re-adding it — for plain edits to an already-registered skill, agr upgrade is shorter and lock-aware.)

Teammates pick it up with agr sync after pulling. The local path dependency travels with the repo, so contributors don't need network access to use it.

For structuring (scripts/, references/, assets/), iteration patterns, and testing with agrx: references/in-repo-skills.md.

4. Sync after pulling teammates' changes

agr sync

This (1) syncs instruction files, (2) runs directory migrations, (3) installs any deps missing for any tool, (4) refreshes agr.lock.

CI flags:

  • agr sync --frozen — install exactly what agr.lock says; fail if lock is missing or doesn't cover all deps. Use in deploy pipelines for byte-identical installs.
  • agr sync --locked — fail if agr.lock is stale vs agr.toml. Use in PR checks to enforce lockfile hygiene.
  • --frozen and --locked are mutually exclusive.

Full lifecycle: references/syncing.md.

5. Upgrade past pinned commits

agr sync only installs what is missing. To pull the latest upstream code for a skill that is already installed, use agr upgrade:

agr upgrade                                # everything in scope
agr upgrade pdf                            # short-name match (errors on ambiguity)
agr upgrade anthropics/skills/pdf          # full handle

Gotcha: upgrading one skill from a multi-skill repo (e.g. anthropics/skills/pdf) does NOT refresh siblings. Run agr upgrade with no args, or name each sibling explicitly, to refresh the whole repo together.

6. Run a skill

agr run pdf                               # invoke installed skill in default tool
agr run pdf -- "summarise report.pdf"     # extra prompt
agr run pdf -i                            # interactive
agr run pdf --tool cursor                 # override tool
agrx anthropics/skills/pdf -p "Extract"   # ephemeral, no install

agr run requires the skill to be already installed. agrx downloads, runs, and cleans up. Difference and tool-resolution rules: references/running-skills.md.

7. Configure agr

Keys: tools, default_tool, default_owner, default_source, sync_instructions, canonical_instructions, sources.

agr config show
agr config set tools claude codex opencode
agr config add tools cursor
agr config remove tools cursor      # ⚠ DELETES that tool's skills directory

Private repos / custom Git hosts:

agr config add sources gitlab --url "https://gitlab.com/{owner}/{repo}.git"
export GITHUB_TOKEN="..."           # auth for private GitHub repos

Add -g to operate on ~/.agr/agr.toml instead of the project file.

All keys with defaults: references/configuration.md.

8. List and inspect

agr list           # status of every dep: installed / partial / not synced / invalid
agr list -g        # global skills
cat agr.toml       # the manifest
cat agr.lock       # the lockfile (READ ONLY)

partial (claude, cursor) means a skill is installed in some tools but not others — agr sync to fan it out to the rest.

Boundaries

  • Never edit agr.lock by hand. It's regenerated by agr add/agr sync/ agr remove/agr upgrade. If it looks wrong, run agr sync (or agr sync --locked to confirm hygiene).
  • agr config remove tools <name> deletes that tool's skills directory. Confirm with the user before running it. The skills can be re-installed by re-adding the tool.
  • Don't author the body of a new skill on the user's behalf unless they explicitly asked. This skill scaffolds and registers; SKILL.md content authoring is a separate task.
  • Always confirm before --overwrite on a skill the user has been editing locally — overwriting will replace their working copy.
  • Don't install agr globally without checking — the user may have a pinned version, alternative install method, or CI constraints.
  • Don't push or git tag as part of these workflows. Commit changes locally; let the user push.

Troubleshooting pointers

  • "Skill not found" → check the handle format (2 vs 3 parts), see references/handles.md.
  • "agr.lock out of date" in CI → user added a dep but didn't commit the lockfile; run agr sync locally and commit.
  • partial install status → agr sync to fan out to all configured tools.
  • Auth errors on private repos → check GITHUB_TOKEN is exported.
  • Type errors after manually editing agr.toml → run agr add to let agr rewrite the entry with the correct type field.

Full list: references/troubleshooting.md.

References

  • setup.md — repo bootstrap, multi-tool, instruction syncing
  • handles.md — handle formats, resolution, resource types, scopes
  • installing-skills.md — agr add / agr remove, sources, private repos
  • syncing.md — agr sync / agr upgrade, lockfile, CI patterns
  • in-repo-skills.md — skills/ workflow, scaffolding, iterating
  • configuration.md — all agr config keys, sources, scopes
  • running-skills.md — agr run vs agrx
  • troubleshooting.md — common errors and fixes

For the canonical CLI reference, point the user at https://computerlovetech.github.io/agr/reference/ or run agr <command> --help.

Related capabilities (separate skills if installed)

  • Greenfield skill authoring — scaffolding a brand-new SKILL.md from a blank slate. Canonical option: anthropics/skills/skill-creator.
  • Retrospective-driven skill improvement — listening to feedback after a session and updating an existing skill. If the user has a dedicated workflow skill for this, use it; otherwise the workflow is editing the source under skills/<name>/, committing, and agr upgrade <name>.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.