Installation guide

moonlight-lupin/agent-skills installation guide

MIT-licensed collection of 29 self-contained Agent Skills built for Hermes Agent, plus a Hermes-only BM25 skill-retrieval plugin; Claude Code can install the SKILL.md packages, but workflows may require mapping Hermes tool names and the plugin itself is explicitly incompatible with Claude Code.

Installation guide: `moonlight-lupin/agent-skills` on macOS Tahoe (Apple silicon)

What this repository is

This public MIT-licensed repository is a collection of Agent Skills primarily built for **Hermes Agent**. It contains research, creative, productivity, web-scraping, MLOps, agent-operations, and DevOps workflows. Each skill is kept in its own folder and normally uses a `SKILL.md` entry point; some also include Python scripts, references, examples, or tests.

Relationship to Claude Code

**Classification:** Claude Code skill/context extension, with **context injection** as the supported mechanism. Base setup effort is **low**, but individual skills may require extra software, credentials, or network access.

The repository documents installation into `.claude/skills/`, and its one-command installer says Claude Code receives a symlinked copy. This makes the skills available as instructions and workflows that Claude Code can load. It is **not evidence of a native Claude Code plugin suite**. The skills were written around Hermes tool names such as `web_search`, `web_extract`, `terminal`, `delegate_task`, and `cronjob`; the README says other agents, including Claude Code, must map those tools and adjust their skill-loading conventions.

The included `skill-retrieval` plugin is especially important to distinguish: its own documentation says it is a **Hermes Agent plugin**, is **not a Claude Code plugin**, and will not load in Claude Code. Do not put that plugin in Claude Code’s plugin system.

Before you begin

You will use **Terminal**, found in Applications → Utilities → Terminal. Commands below can be copied exactly unless a placeholder such as an API key or file path is visibly present.

The supplied files do not document how to install Claude Code, Node.js/`npx`, GitHub CLI (`gh`), Git, or Python on macOS. This guide therefore does not invent installation commands for those tools. Choose an installation route only if its command is already available on your Mac:

There is no documented Apple-silicon-specific package, Rosetta requirement, or Tahoe-only adjustment. Some optional Python skills have their own runtime requirements, discussed later.

Recommended route: install the complete catalog

In Terminal, run:

npx skills add moonlight-lupin/agent-skills

According to the repository README, this installs every skill into `.agents/skills/`, creates the Claude Code copy under `.claude/skills/`, and writes a hash-pinned `skills-lock.json`. The installer can also present an interactive skill picker when a specific skill is not supplied.

This is the simplest documented Claude Code setup. After it finishes, restart Claude Code so it begins a fresh session and can discover the newly installed skill files. Restarting Claude Code is a sensible application step, not a shell command; no undocumented command is needed.

The README states that the lock file allows later refreshes with:

npx skills update

Run updates deliberately. Skills are instructions that can influence agent behavior, and some contain scripts that access files, networks, or paid APIs. Review changes before relying on an updated workflow.

Alternative: install one skill with GitHub CLI

If GitHub CLI already provides the documented `gh skill` command on your Mac, the repository gives this exact example for `image-studio`:

gh skill install moonlight-lupin/agent-skills creative/image-studio/SKILL.md

To target Claude Code at user scope explicitly, use the repository’s documented variant:

gh skill install moonlight-lupin/agent-skills creative/image-studio/SKILL.md --agent claude-code --scope user

These commands install the particular `SKILL.md` at the supplied path. The README describes this as the fastest route because it avoids scanning the whole tree. Do not substitute a guessed path: choose an exact skill path shown by the repository, such as `creative/image-studio/SKILL.md`.

Alternative: clone for inspection or manual selection

If Git is already installed, download the repository with the URL documented in the root README and GitHub metadata:

git clone https://github.com/moonlight-lupin/agent-skills.git
cd agent-skills

You can now inspect each skill folder before deciding whether to use it. The repository says manually selected folders can be copied into an agent’s skills directory, including `~/.claude/skills/`, but it does not supply a universal copy command. Folder names and nesting differ, so this guide does not invent one. Use Finder for manual copying if desired: open your home folder, reveal hidden files with macOS’s Finder controls, and place only the chosen self-contained skill folder under `.claude/skills/`.

Cloning alone does not install every optional dependency. It only gives you the files.

Choosing skills safely

Many skills are prompt-only or use Python’s standard library, while others require extra packages or accounts. Read the selected skill’s own README and `SKILL.md` before allowing Claude Code to run its scripts.

Examples from the supplied first-party files include:

Do not install every dependency merely because it appears somewhere in the catalog. Install dependencies only for a skill you intend to use, following that skill’s documented commands.

Optional example: set up `library-rag`

This is a more involved skill and illustrates why requirements vary. From a cloned repository, enter its folder:

cd agent-skills/research/library-rag

Create and activate the documented virtual environment:

python3 -m venv .venv
source .venv/bin/activate

Install its declared requirements:

pip install -r requirements.txt

Verify that SQLite can load `sqlite-vec`:

python3 -c "import sqlite_vec, sqlite3; \
c = sqlite3.connect(':memory:'); c.enable_load_extension(True); \
sqlite_vec.load(c); print('sqlite-vec OK:', c.execute('select vec_version()').fetchone()[0])"

The skill warns that macOS’s system Python may disable SQLite extension loading. Its first-party documentation suggests Python from python.org, pyenv/Homebrew, or conda if this error occurs, but supplies only this Homebrew command:

brew install python

Use it only if Homebrew is already installed. On Apple silicon, do not guess at alternate prefixes or architecture flags.

For a temporary NVIDIA key in the current shell, the documented form is:

export NVIDIA_API_KEY=nvapi-...

Replace `nvapi-...` with your actual key. Avoid committing keys or sharing Terminal output containing them. The repository also documents a persistent Hermes `.env` location, but that is Hermes-oriented rather than necessary for Claude Code.

Verification and first use

There is no repository-supplied command that universally proves Claude Code loaded every skill. Verify practically:

  1. Start a new Claude Code session.
  2. Ask it which installed skills are available.
  3. Request a harmless workflow, preferably a prompt-only skill such as `task-brief`.
  4. Confirm that it identifies the relevant skill and follows its staged workflow.
  5. If a workflow refers to Hermes-only tools, stop and map the operation consciously to tools Claude Code actually provides rather than assuming exact compatibility.

For any script-bearing skill, begin with a documented dry-run or self-test when one exists. For example, `people-enrichment` documents:

python scripts/enrich.py --self-test

and:

python scripts/enrich.py person-enrich --input people.csv --dry-run

Only use the second command after replacing `people.csv` with an appropriate existing input file.

Security, privacy, and cost checklist

At this point, the base catalog is installed through the chosen supported route. Add dependencies and credentials only when a selected skill’s first-party documentation requires them.