refresh-index
Re-ingest every already-enabled repo in data/skill-index-resources.json: sync the working tree, run preindex, rebuild the catalog for verification, summarize updated/unchanged/failed/skipped, then gate commit + PR behind explicit confirmation. Use when asked to refresh the index, re-ingest indexed repos, or batch-maintain already-indexed skill sources. Don't use for adding new repos (use skill-index-updater), improving a single skill (use skill-auto-improver), or installing/updating skills on the local machine (use asm install or asm update).
npx skills add luongnv89/asm --skill refresh-index --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# Refresh Index You are refreshing every enabled repository in the ASM curated skill index. The goal is to re-ingest each source so `data/skill-index/{owner}_{repo}.json` reflects the latest upstream state, classify each repo as **updated / unchanged / failed / skipped**, verify the catalog still rebuilds cleanly, and open a single PR that ships only the data changes — with explicit user confirmation before any commit or push. This is the inverse of `skill-index-updater`. That skill **adds new repos** from URLs the user supplies. This skill **refreshes the repos that are already enabled** in `data/skill-index-resources.json`. ## Repo Sync Before Edits (mandatory) Before re-ingesting anything, pull the latest remote branch: ```bash branch="$(git rev-parse --abbrev-ref HEAD)" dirty=0 if [ -n "$(git status --porcelain)" ]; then git stash push -u -m "pre-refresh-index: ${branch}" dirty=1 fi git fetch origin git pull --rebase origin "$branch" if [ "$dirty" -eq 1 ]; then git stash pop || { echo "✗ Stash pop failed — recover with: git stash list && git stash show -p stash@{0}" exit 1 } fi ``` If `origin` is missing or rebase conflicts occur, **stop and ask the user** before continuing. Ne
- Repo Sync Before Edits (mandatory)
- Prerequisites
- Pipeline
- Step 1: Enumerate the index
- Step 2: Snapshot pre-run skill counts
- Step 3: Run npm run preindex
- Step 4: Classify each repo
- Step 5: Rebuild the website catalog (verification only)
- Step 6: Detect unexpected diff scope
- Step 7: Print the four-bucket summary
- Step 8: Confirmation gate, commit, and PR
- Edge Cases & Error Handling
- Cleanup
if [ -n "$(git status --porcelain)" ]; then
git stash push -u -m "pre-refresh-index: ${branch}"
fi
git fetch origin
git pull --rebase origin "$branch"
if [ "$dirty" -eq 1 ]; then
git stash pop || {
echo "✗ Stash pop failed — recover with: git stash list && git stash show -p stash@{0}"
exit 1
jq -r '.repos[] | select(.enabled == true) | .source' "$RES" # e.g. github:anthropics/skillsWhat does the refresh-index skill do?
Re-ingest every already-enabled repo in data/skill-index-resources.json: sync the working tree, run preindex, rebuild the catalog for verification, summarize updated/unchanged/failed/skipped, then gate commit + PR behind explicit confirmation. Use when asked to refresh the index, re-ingest indexed repos, or batch-maintain already-indexed skill sources. Don't use for adding new repos (use skill-index-updater), improving a single skill (use skill-auto-improver), or installing/updating skills on the local machine (use asm install or asm update).
How do I install it?
Run `npx skills add luongnv89/asm --skill refresh-index --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From luongnv89/asm, a repository with 782 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.