Agent skill · Audited from source

Pulling Updates from Skills Repository

skill · obra/superpowers-skillsMIT licenceAudited 28 Oct 2026 · source 6d51b9a892b5

★ 756pushed 378 days agoarchived repositoryversion 1.2.0
✓SAFEGrade B · 89/100 · 28 Oct 2026 · 6d51b9a
756repo stars · whole obra/superpowers-skills

Is it safe? Yes — SAFE, grade B (89/100). We read this skill's source at commit 6d51b9a892b5 and found no filesystem, network or shell access and no hard-coded secrets. What it does: Sync local skills repository with upstream changes from obra/superpowers-skills

Ask an AI about this pageGChatGPTCClaudePPerplexityGeGeminiXGrok
More
Cite

Cite this page

ModelsAtlas. “Pulling Updates from Skills Repository (obra/superpowers-skills)”. Retrieved 28 Oct 2026. https://modelsatlas.com/skills/obra/pulling-updates-from-skills-repository

Trust audit

Audit 0.4.1 · source read 28 Oct 2026

Trust score89/100✓SAFE B
0 critical0 high0 medium0 low0 info

SAFE means nothing in the source contradicts what the skill says it does. Grade B is shared by 13,985 of 14,816 audited skills.

What the source does

  • FilesystemNone observedNo reads or writes in the source
  • NetworkNone observedNo outbound calls in the source
  • ShellNone observedNo commands run in the source
  • DependenciesPinnedNothing floats
  • SecretsNone foundNo keys in source

Five audit layers

LayerWhat we checkResultFindings
L0 ProvenanceRepo owner, licence, archive status, activityPASS0
L1 Static sourceSecrets, path traversal, supply chain, hidden codeNA0
L2 InstructionsPrompt injection, authority framing, hidden directivesPASS0
L3 InventoryThe files and declarations match the sourcePASS0
L4 SandboxRun in isolation and watch behaviourSKIPPED why0

Gates applied: no behavioural pass.

Findings (0)

No findings at any severity. We re-audit when the source changes.

Audit 0.4.1 · source sha 6d51b9a892b5 · 28 Oct 2026Report an issue or request a re-scan

Provenance

Who published it, and what the verdict is pinned to

  • Publisherobra GitHub userOwner of the repository this skill is read from
  • Source folderobra/superpowers-skills/skills/meta/pulling-updates-from-skills-repositoryThe exact folder we audited
  • LicenceMITAs the repository states it
  • Commit pinned for this verdict6d51b9a892b5A new audit runs when the source changes
  • Repository statusArchivedLast push 378 days ago
  • Sandboxed runNot runSkills are read, not executed; layer L4 is skipped

What it tells the agent

Full source on GitHub ↗

Its description: Sync local skills repository with upstream changes from obra/superpowers-skills

---
name: Pulling Updates from Skills Repository
description: Sync local skills repository with upstream changes from obra/superpowers-skills
when_to_use: when session start indicates new upstream skills available, or when manually updating to latest versions
version: 1.2.0
---

# Updating Skills from Upstream

## Overview

Pull and merge upstream changes from obra/superpowers-skills into your local skills repository while preserving your personal modifications.

**Announce at start:** "I'm using the Updating Skills skill to sync with upstream."

## Prerequisites

Your skills repo must have a tracking branch configured. The plugin sets this up automatically (either as a fork with `origin` remote, or with an `upstream` remote).

## The Process

### Step 1: Check Current Status

Run:
```bash
cd ~/.config/superpowers/skills
git status
```

**If working directory is dirty:** Proceed to Step 2 (stash changes)
**If clean:** Skip to Step 3

### Step 2: Stash Uncommitted Changes (if needed)

Run:
```bash
git stash push -m "Temporary stash before upstream update"
```

Record: Whether changes were stashed (you'll need to unstash later)

### Step 3: Determine Tracking Remote and Fetch

First, detect which remote to use:
```bash
TRACKING_REMOTE=$(git rev-parse --abbrev-ref --symbolic-full-name @{u} 2>/dev/null | cut -d'/' -f1 || echo "")
```

Then fetch from the appropriate remote:
```bash
if [ -n "$TRACKING_REMOTE" ]; then
    git fetch "$TRACKING_REMOTE" 2>/dev/null || true
else
    git fetch upstream 2>/dev/null || git fetch origin 2>/dev/null || true
fi
```

Expected: Fetches latest commits from the tracking remote (or falls back to upstream/origin)

### Step 4: Check What's New

Run:
```bash
git log HEAD..@{u} --oneline
```

Show user: List of new commits being pulled

Note: `@{u}` refers to the upstream tracking branch for your current branch

### Step 5: Merge Changes

First, try a fast-forward merge (cleanest option):
```bash
git merge --ff-only @{u}
```

**If fast-forward succeeds:** Skip to Step 7 (no conflicts possible with fast-forward)
**If fast-forward fails:** Your branch has diverged. Try regular merge:
```bash
git merge @{u}
```

**If merge succeeds cleanly:** Proceed to Step 7
**If conflicts occur:** Proceed to conflict resolution

### Step 6: Handle Merge Conflicts (if any)

If conflicts:
1. Run `git status` to see conflicted files
2. For each conflict, explain to user what changed in both versions
3. Ask user which version to keep or how to merge
4. Edit files to resolve
5. Run `git add <resolved-file>` for each
6. Run `git commit` to complete merge

### Step 7: Unstash Changes (if stashed in Step 2)

If you stashed changes:
```bash
git stash pop
```

**If conflicts with unstashed changes:** Help user resolve them

### Step 8: Verify Everything Works

Run:
```bash
${SUPERPOWERS_SKILLS_ROOT}/skills/using-skills/find-skills
```

Expected: Skills list displays correctly

### Step 9: Announce Completion

Tell user:
- How many new commits were merged
- Whether any conflicts were resolved
- Whether their stashed changes were restored
- That skills are now up to date

## Common Issues

**"Already up to date"**: Your local repo is current, no action needed

**"fatal: no upstream configured"**: Your branch isn't tracking a remote branch. Check `git remote -v` to see available remotes, then set tracking with `git branch --set-upstream-to=<remote>/<branch>`

**Detached HEAD**: You're not on a branch. Ask user if they want to create a branch or check out main.

**Fast-forward fails, diverged branches**: Your local branch has commits that aren't in the remote. Regular merge will be needed, which may cause conflicts.

## Remember

- Always stash uncommitted work before merging
- Explain conflicts clearly to user
- Test that skills work after update
- User's local commits/branches are preserved

Excerpt, first 3,858 characters of SKILL.md, verbatim from the audited commit. It is text from someone else’s repository, quoted so you can judge it before your agent reads it.

Install

Pinned to the audited commit 6d51b9a

Download folder ↗
git clone https://github.com/obra/superpowers-skills
git -C superpowers-skills checkout 6d51b9a892b5

The author documents no install command, so this uses the repository directly. Our verdict covers commit 6d51b9a892b5 only.

Works in

The author has not said which agents this skill supports, and we have not tested it in any.

Audit history

Every audit, every source change

  1. ✓SAFE B 89 / 100

    first audit · source 6d51b9a892b5

Similar skills

Questions about Pulling Updates from Skills Repository

What does the Pulling Updates from Skills Repository skill do?
Community-editable skills for Claude Code's superpowers plugin
Is Pulling Updates from Skills Repository safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can Pulling Updates from Skills Repository access on my machine?
The audit observed no filesystem, network or shell use at all in its source.
How current is this page?
The grade is for one exact copy of the source (6d51b9a892b5), read on 2026-10-28. The repository is watched, and a new audit runs when it changes — this is the first audit.

Sources

Spotted something wrong? Report a correction · Methodology

Keep going in your AI

Opens with this page as the source. We add nothing else to the prompt.