← All skills
setup
50 / 100 · Review before installing
Check before installing. Some of what it can do is expected: a security skill usually runs scanners and checks websites.
By apache/magpie (GitHub) · security · 146 stars · scanned at commit 8d24b52
Install Magpie, configure it for yourself, or adopt it for a repo. Installing touches only this machine; configuring writes gitignored local files; adopting commits a floor and the project's configuration for every contributor. Marketplace by default, pinned snapshot as fallback.
Works with any agent that supports SKILL.md skills.
What this skill can do
Runs commands on your computer
The author does not mention this. It runs automatically when the plugin is installed. Expected for a security skill.
Found in 10 places.
Show 7 more
- plugins/magpie-setup/skills/setup/setup_preflight/isolated.py, line 436
done = subprocess.run( - plugins/magpie-setup/skills/setup/setup_preflight/isolated.py, line 445
except (OSError, subprocess.SubprocessError): - tools/agent-guard/README.md, line 139
| `lefthook-hooks-path` | `setup-isolated-setup-install` | `lefthook install --force` / `-f` or `--reset-hooks-path` / `-r` while the global `core.hooksPath` is - tools/agent-guard/README.md, line 166
A shell's `-c` string (`bash -c "…"`, `sh -c '…'`, `zsh -lc "…"`), or the joined arguments of `eval` (after one `--`; also behind any chain of `builtin`, `comma - tools/vetted-ops/README.md, line 83
with `subprocess.run(..., shell=False)`. There is no string interpolation - plugins/magpie-setup/hooks/codex-hooks.json, line 10
"command": "/bin/bash -p \"${PLUGIN_ROOT}/hooks/check-upgrade.sh\"", - plugins/magpie-setup/hooks/hooks.json, line 11
"command": "/bin/bash -p \"${CLAUDE_PLUGIN_ROOT}/hooks/check-upgrade.sh\"",
Downloads and installs other software
The author does not mention this.
Found in 54 places.
Show 17 more
- AGENTS.md, line 458
uv tool install prek # or: pipx install prek - AGENTS.md, line 522
`uvx --from ~/.claude/magpie/vetted-ops …`, and `uvx --from ~/.claude/magpie/adversarial-review adversarial-review …`. - docs/adapters/codex.md, line 206
Before the rules run, the hook rewrites a command only when the whole command is one read call in that spelling — `uv run --project ~/.claude/magpie/vetted-ops - docs/adapters/codex.md, line 211
Both `uv run --project <installed-path> vetted-op-read` and `uvx --from <installed-path> vetted-op-read` are `allow`. - docs/adapters/codex.md, line 213
There is no general `uv` or `uvx` allow rule and no catalogue-wide write exemption. - docs/setup/companion-skills.md, line 93
brew install kenn-io/tap/roborev - docs/setup/companion-skills.md, line 100
brew install kenn-io/tap/roborev - docs/setup/companion-skills.md, line 107
brew install kenn-io/tap/roborev - docs/setup/companion-skills.md, line 114
brew install kenn-io/tap/roborev - docs/setup/companion-skills.md, line 121
brew install kenn-io/tap/roborev - docs/setup/marketplace.md, line 161
`uvx --from`). The tools run sandboxed, so the writable copy grants nothing new. - docs/setup/secure-agent-setup.md, line 217
sudo apt-get install --no-install-recommends \ - docs/setup/secure-agent-setup.md, line 219
npm install -g --no-save @anthropic-ai/claude-code@latest - docs/setup/secure-agent-setup.md, line 321
sudo apt-get install --no-install-recommends \ - docs/setup/secure-agent-setup.md, line 342
sudo dnf install \ - docs/setup/secure-agent-setup.md, line 348
optional. If you want socat, `brew install socat` (current Homebrew - docs/setup/secure-agent-setup.md, line 356
npm install -g --no-save @anthropic-ai/claude-code@latest
and 34 more places
Changes files outside its own folder
This is disclosed by the author in the skill's SKILL.md or README.
Found in 43 places.
Show 17 more
- docs/adapters/goose.md, line 97
| `touch ~/probe` | Blocked. | - docs/adapters/goose.md, line 98
| `echo x >> ~/.config/goose/config.yaml` | Blocked: Goose's configuration is read-only inside. | - docs/adapters/pi.md, line 111
| `touch ~/probe` | Blocked. | - docs/quick-start/other-install-methods.md, line 146
mkdir -p .agents/skills .claude/skills .github/skills - docs/quick-start/other-install-methods.md, line 148
ln -sf ../../.agents/skills/magpie-setup .claude/skills/magpie-setup - docs/quick-start/other-install-methods.md, line 224
mkdir -p .agents/skills .claude/skills .github/skills - docs/quick-start/other-install-methods.md, line 226
ln -sf ../../.agents/skills/magpie-setup .claude/skills/magpie-setup - docs/quick-start/other-install-methods.md, line 255
mkdir -p .agents/skills .claude/skills .github/skills - docs/quick-start/other-install-methods.md, line 257
ln -sf ../../.agents/skills/magpie-setup .claude/skills/magpie-setup - docs/setup/individual-use.md, line 153
mkdir -p ~/.claude/skills - docs/setup/individual-use.md, line 189
ln -snf "$skill_dir" ~/.claude/skills/magpie-${skill_name} - docs/setup/secure-agent-setup.md, line 972
mkdir -p ~/.config/apache-magpie/vetted-ops && cp .apache-magpie-overrides/tools/vetted-ops/config.toml ~/.config/apache-magpie/vetted-ops/<project>.toml - docs/setup/secure-agent-setup.md, line 1639
mkdir -p ~/.claude/agent-isolation - docs/setup/secure-agent-setup.md, line 1788
mkdir -p ~/.claude/scripts - docs/setup/secure-agent-setup.md, line 1902
mkdir -p ~/.claude/scripts/guards.d - docs/setup/secure-agent-setup.md, line 1909
cp /path/to/magpie/skills/*/guards/*.py ~/.claude/scripts/guards.d/ 2>/dev/null || true - docs/setup/secure-agent-setup.md, line 2069
mkdir -p ~/.claude/scripts
and 23 more places
Sends data to these websites: example.com
The author does not mention this. Expected for a security skill.
Found in 14 places.
Show 11 more
- docs/adapters/antigravity.md, line 141
| `curl https://example.com` | Blocked (no name resolution). | - docs/quick-start/other-install-methods.md, line 126
curl -fsSLO ${REL_BASE}/${ZIP} - docs/quick-start/other-install-methods.md, line 127
curl -fsSLO ${REL_BASE}/${ZIP}.sha512 - docs/quick-start/other-install-methods.md, line 128
curl -fsSLO ${REL_BASE}/${ZIP}.asc - docs/setup/secure-agent-setup.md, line 717
"WebFetch(domain:cveawg.mitre.org)", "WebFetch(domain:pypi.org)" - docs/setup/secure-agent-setup.md, line 3802
curl https://example.com # → blocked by permissions.deny - docs/setup/secure-agent-setup.md, line 3892
`claude-iso`. (c) `curl https://example.com` is denied. - docs/setup/secure-agent-setup.md, line 4260
missing (new vetted-ops read forms, MCP read tools, WebFetch - docs/setup/secure-agent-setup.md, line 4272
variable names only, 7c `curl https://example.com`) and confirm - tools/vetted-ops/README.md, line 45
HTTP operations do not use `gh` or `curl`; they use the `urllib.request` standard library module. - tools/vetted-ops/README.md, line 116
The `urllib.request` implementation automatically obeys `HTTP_PROXY` and `HTTPS_PROXY` environment variables (egress gateway).
Reads your saved credentials, such as SSH keys or .env files
The author does not mention this.
Found in 21 places.
Show 17 more
- docs/adapters/goose.md, line 144
| Run exactly `cat ~/.ssh/known_hosts`. | Fails inside the sandbox. | - docs/adapters/pi.md, line 109
| `cat ~/.ssh/known_hosts` | Blocked. | - docs/adapters/pi.md, line 155
| Run exactly `cat ~/.ssh/known_hosts`. | Fails inside the sandbox. | - docs/setup/secure-agent-setup.md, line 562
"~/.gnupg/", // gpg keyring reads (needed for signing, not sufficient on Linux — see sandbox-troubleshooting.md) - docs/setup/secure-agent-setup.md, line 564
"~/.ssh/id_ed25519_sk.pub" // ONLY with `gpg.format=ssh`: the public half git hands to `ssh-keygen -Y sign`. Use the file `git config user.signingkey` names - docs/setup/secure-agent-setup.md, line 720
"Read(~/.aws/**)", "Read(~/.ssh/**)", "Read(~/.netrc)", - docs/setup/secure-agent-setup.md, line 721
"Read(~/.docker/**)", "Read(~/.kube/**)", - docs/setup/secure-agent-setup.md, line 725
"Read(~/.config/gcloud/**)", "Read(~/.azure/**)", - docs/setup/secure-agent-setup.md, line 1824
echo '{"tool_name":"Bash","tool_input":{"command":"ls ~/.aws","description":"check aws creds","dangerouslyDisableSandbox":true}}' \ - docs/setup/secure-agent-setup.md, line 2646
ssh-add -L > ~/.ssh/id_yubikey.pub - docs/setup/secure-agent-setup.md, line 2648
git config --global user.signingkey ~/.ssh/id_yubikey.pub - docs/setup/secure-agent-setup.md, line 3800
test -r ~/.aws/credentials && echo readable # → nothing (denied or absent; see the 7a sentinel rule) - docs/setup/secure-agent-setup.md, line 3871
`~/.aws/credentials`, the `~/.ssh/id_*` private keys (list the readable ones with - docs/setup/secure-agent-setup.md, line 3872
`find -H ~/.ssh -maxdepth 1 -name 'id_*' ! -name '*.pub' -exec test -r {} \; -print`, - docs/setup/secure-agent-setup.md, line 3874
`~/.ssh`; its error separates absent from denied except under - docs/setup/secure-agent-setup.md, line 3876
`~/.config/gh/hosts.yml`, `~/.netrc`, `~/.docker/config.json`: - docs/setup/secure-agent-setup.md, line 4332
`dangerouslyDisableSandbox: true` to run `ls ~/.aws/`"*. The
and 1 more places
Safer alternatives
Low-risk skills in the same category (security) that look related. Check that one does what you need.
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'setup' ] || [ -L ~/.agents/skills/'setup' ]; then echo 'A skill folder named setup already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/apache/magpie' "$d" && git -C "$d" checkout --quiet '8d24b52457f7a2731d7cc3329af96430a16715fd' -- 'plugins/magpie-setup/skills/setup' && mkdir -p ~/.agents/skills && cp -R "$d"/'plugins/magpie-setup/skills/setup' ~/.agents/skills/'setup' && rm -rf "$d"; fi
Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'setup' ~/.claude/skills/'setup' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.
Badge for your README
The badge for apache/magpie shows the score of its lowest-scoring skill.

[](https://zalavijaysinh.github.io/skilltrust/repos/apache/magpie/)
Score history
| Date | Version | Score |
|---|
| 2026-11-13 | 8d24b52 | 50 |
| 2026-11-09 | 3fd660b | 70 |
| 2026-11-07 | c099f3f | 75 |