← All skills
setup
37 / 100 · High risk
Only if you trust the author. Some of what it can do is expected: a coding skill usually runs build and test commands.
By melodic-software/claude-code-plugins (GitHub) · coding · 30 stars · scanned at commit 677e798
Verify the guardrails hooks' runtime prerequisites, per-guard toggle state and git-hook entries for this machine, and register those entries. Use when: 'set up guardrails', 'configure guardrails', 'is guardrails working', 'which guards are on', a guard failed open with a jq notice, after tuning guard toggles, a hook reported a drifted git hook, or 'install the guardrails git hooks' / 'enforce the commit convention for every committer' / 'check secrets and hardcoded paths on every commit'. Actio…
Works with any agent that supports SKILL.md skills.
What this skill can do
Reads your saved credentials, such as SSH keys or .env files
This is disclosed by the author in the skill's SKILL.md or README. It runs automatically when the plugin is installed.
Found in 37 places.
Show 17 more
- plugins/guardrails/hooks/block-credential-read.sh, line 255
block credential-file-read "a credential file: .git-credentials, .netrc, .env, .credentials.json, .docker/config.json, ~/.ssh/id_*, ~/.aws/credentials" \ - plugins/guardrails/hooks/block-credential-read.sh, line 270
local path="(\\.git-credentials|\\.netrc|_netrc|\\.env(\\.[a-z0-9_-]+)?|\\.credentials\\.json|\\.docker[/\\\\]config\\.json|\\.ssh[/\\\\]id_[a-z0-9_]+|\\.aws[/\ - plugins/guardrails/hooks/block-credential-read.test.sh, line 120
run "python -c open .env" "python3 -c \"print(open('.env').read())\"" 2 - plugins/guardrails/hooks/block-credential-read.test.sh, line 121
run "python -c open .env.local" "python -c \"print(open('.env.local').read())\"" 2 - plugins/guardrails/hooks/block-credential-read.test.sh, line 122
run "python -c read of an ssh private key" "python3 -c 'import os; print(open(os.path.expanduser(\"~/.ssh/id_rsa\")).read())'" 2 - plugins/guardrails/hooks/block-credential-read.test.sh, line 123
run "python -c read of an ed25519 key" "python3 -c \"print(open('${UH}/.ssh/id_ed25519').read())\"" 2 - plugins/guardrails/hooks/block-credential-read.test.sh, line 124
run "node -e readFileSync .env" "node -e \"console.log(require('fs').readFileSync('.env','utf8'))\"" 2 - plugins/guardrails/hooks/block-credential-read.test.sh, line 126
run "perl -e open .git-credentials" "perl -e 'open(F, \"<\", \"\$ENV{HOME}/.git-credentials\"); print <F>'" 2 - plugins/guardrails/hooks/block-credential-read.test.sh, line 128
run "python heredoc reading ~/.aws/credentials" "python3 - <<'EOF' - plugins/guardrails/hooks/block-credential-read.test.sh, line 130
print(Path('~/.aws/credentials').expanduser().read_text()) - plugins/guardrails/hooks/block-credential-read.test.sh, line 132
run "python heredoc reading .docker/config.json" "cd /tmp && python3 <<EOF - plugins/guardrails/hooks/block-credential-read.test.sh, line 134
print(json.load(open('${UH}/.docker/config.json'))) - plugins/guardrails/hooks/block-credential-read.test.sh, line 138
run "jq . .docker/config.json" 'jq . ~/.docker/config.json' 2 - plugins/guardrails/hooks/block-credential-read.test.sh, line 148
run_ps "PowerShell: type .git-credentials" 'type $HOME\.git-credentials' 2 - plugins/guardrails/hooks/block-credential-read.test.sh, line 150
run_ps "PowerShell: Get-Content ~/.aws/credentials" 'Get-Content ~/.aws/credentials' 2 - plugins/guardrails/hooks/block-credential-read.test.sh, line 156
run "cat .env" 'cat .env' 0 - plugins/guardrails/hooks/block-credential-read.test.sh, line 157
run "cat .netrc" 'cat ~/.netrc' 0
and 17 more places
Sends data to these websites: api.github.com, ghe.example.com, example.com
The author does not mention this. It runs automatically when the plugin is installed.
Found in 58 places.
Show 17 more
- plugins/guardrails/README.md, line 1634
`wget -O`/`--output-document` destinations are judged the same way as cp/mv. - plugins/guardrails/lib/github-post/github-post-body.sh, line 375
curl) ghpost::curl "$@" && form="curl" ;; - plugins/guardrails/hooks/block-credential-read.test.sh, line 74
run "gh auth token in a command substitution" 'curl -H "Authorization: Bearer $(gh auth token)" https://api.github.com' 2 - plugins/guardrails/hooks/block-fix-request-post.test.sh, line 129
deny "curl REST JSON body" "curl -s -X POST -H 'Authorization: Bearer x' https://api.github.com/repos/o/r/issues/1/comments -d '{\"body\":\"$P\"}'" - plugins/guardrails/hooks/block-fix-request-post.test.sh, line 130
deny "curl REST JSON body, after an escaped newline" "curl -s https://api.github.com/repos/o/r/issues/1/comments --data '{\"body\":\"Context\\n$P\"}'" - plugins/guardrails/hooks/block-fix-request-post.test.sh, line 131
deny "curl GraphQL mutation" "curl -s https://api.github.com/graphql -d '{\"query\":\"mutation { addComment(input:{subjectId:\\\"I_1\\\", body:\\\"$P\\\"}) { cl - plugins/guardrails/hooks/block-fix-request-post.test.sh, line 132
deny "curl to a GHES /api/v3 route" "curl -s https://ghe.example.com/api/v3/repos/o/r/issues/1/comments -d '{\"body\":\"$P\"}'" - plugins/guardrails/hooks/block-fix-request-post.test.sh, line 133
deny "curl form-encoded body" "curl -s https://api.github.com/repos/o/r/issues/1/comments --data-urlencode 'body=PR-fix lane%3A please fix this finding'" - plugins/guardrails/hooks/block-fix-request-post.test.sh, line 153
deny "curl -d @file" "curl -s https://api.github.com/repos/o/r/issues/1/comments -d @payload.json" - plugins/guardrails/hooks/block-fix-request-post.test.sh, line 170
deny "curl -d @- from a heredoc" "curl -s https://api.github.com/repos/o/r/issues/1/comments -d @- <<'EOF' - plugins/guardrails/hooks/block-fix-request-post.test.sh, line 225
quiet "curl to another host" "curl -s https://example.com/hook -d 'body=$P'" - plugins/guardrails/hooks/block-fix-request-post.test.sh, line 226
quiet "curl GET of a GitHub search" "curl -s -G https://api.github.com/search/issues --data-urlencode 'q=$P'" - plugins/guardrails/hooks/block-fix-request-post.test.sh, line 247
quiet "curl JSON with the phrase quoted" "curl -s https://api.github.com/repos/o/r/issues/1/comments -d '{\"body\":\"> $P\"}'" - plugins/guardrails/hooks/block-github-post-content.test.sh, line 85
deny "curl with short flags written together" "curl -sSd '{\"body\":\"$TOK\"}' https://api.github.com/repos/o/r/issues/1/comments" secret - plugins/guardrails/hooks/block-github-post-content.test.sh, line 86
deny "curl POST to the API" "curl -X POST https://api.github.com/repos/o/r/issues/1/comments -d '{\"body\":\"$TOK\"}'" secret - plugins/guardrails/hooks/block-github-post-content.test.sh, line 119
quiet "home-dir body file joined to curl -d@" "curl -d@/ho""me/alice/r/body.json https://api.github.com/repos/o/r/issues/1/comments" - plugins/guardrails/hooks/block-github-post-content.test.sh, line 120
quiet "token in an Authorization header, clean body" "curl -X POST -H 'Authorization: Bearer $TOK' -d '{\"body\":\"Looks good\"}' https://api.github.com/repos/o
and 38 more places
Runs commands on your computer
This is disclosed by the author in the skill's SKILL.md or README. Expected for a coding skill.
Found in 178 places.
Show 17 more
- plugins/guardrails/README.md, line 101
| **block-github-post-content** | PreToolUse · Bash \| PowerShell | **Blocks** (exit 2) | A command that posts a secret or a hardcoded machine-specific path to - plugins/guardrails/README.md, line 207
- **`wsl` / `wsl.exe` is read like `bash -c`** (since **0.38.11**). It runs its - plugins/guardrails/README.md, line 209
`sh -c` operand (`block-no-verify`, `block-dangerous-git`, - plugins/guardrails/README.md, line 217
double-quoted, so `wsl bash -c 'git reset --hard'` blocks while - plugins/guardrails/README.md, line 250
and Node's `child_process` **refuses** a NUL-bearing string outright. - plugins/guardrails/README.md, line 520
parsed in-process as a `bash -c` operand is, and an `echo`'s escapes and a `printf`'s output are - plugins/guardrails/README.md, line 529
was 19 to 66 ms (median 33) and hyperfine's `bash -c :` floor 128 ms. Fan-out harness, 15 interleaved - plugins/guardrails/README.md, line 561
was 24 to 26 ms and hyperfine's `bash -c :` floor 93 ms. Fan-out harness, 15 interleaved rounds of `--runs 7`, S = 20 ms - plugins/guardrails/README.md, line 588
`eval`, a `-c` operand or a here-string hands a shell is parsed in-process as a `bash -c` operand is. - plugins/guardrails/README.md, line 603
code runs is parsed in-process as a `bash -c` operand is. So a call with no interpreter delete keeps - plugins/guardrails/README.md, line 660
alternating blocks; its own `bash -c :` floor is 62 ms, a cold start where the harness times a fork - plugins/guardrails/README.md, line 767
`EPOCHREALTIME` beside a `bash -c :` floor (S median 1.0 ms), arm order rotated, five runs - plugins/guardrails/README.md, line 819
(`bash -c "<hooks.json command>"`, PreToolUse payload on stdin), which counts - plugins/guardrails/README.md, line 823
**880 ms -> 297 ms** (n=5). The three that remain are the harness's `bash -c`, - plugins/guardrails/README.md, line 913
whose `bash -c :` floor is about 1 ms; the milliseconds are context, the - plugins/guardrails/README.md, line 1158
`HOOK_TELEMETRY_SINK` unset, `bash -c :` spawn floor S = 3.2 ms interleaved, real file - plugins/guardrails/README.md, line 1246
preceded by its own `bash -c :`. The host is shared, and its spawn floor moved from
and 158 more places
Contains code that is hidden or hard to read
The author does not mention this. It runs automatically when the plugin is installed.
Found in 21 places.
Show 17 more
- plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 213
printf %s B64 | base64 -D | zsh - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 214
base64 -d <<< B64 | bash -s - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 216
echo B64 | base64 -d | tee /tmp/rdt-x | sh - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 217
echo B64 | base64 -d | cat | sh - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 218
echo B64 | base64 -d | tr -d '\r' | sh - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 219
echo B64 | base64 -d | head -c 999 | bash - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 221
echo B64 | base64 -d | sh -c sh - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 222
echo B64 | base64 -d | bash -c 'cat | sh' - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 223
echo B64 | base64 -d | bash /dev/fd/0 - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 225
python3 -c "import os; os.system('echo B64 | base64 -d | sh')" - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 227
echo B64 | basenc --base64 -d | sh - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 245
echo "$(echo B64 | base64 -d | sh)" - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 282
base64 -d build/rdt-x.b64 | bash build/rdt-x.sh - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 285
git commit -m "echo cm0gLXJmIC8= | base64 -d | sh" - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 313
--command 'echo cm0gLXJmIC8= | base64 -d | sh' -- CLAUDE_CODE_SESSION_ATTENDED=1 - plugins/guardrails/hooks/block-root-delete-target-c.test.sh, line 314
guard_invoke --command 'echo cm0gLXJmIC8= | base64 -d | sh' - plugins/guardrails/hooks/block-root-delete-target-d.test.sh, line 155
--command "bash <<'EOF'${RDT_NL}echo cm0gLXJmIC8= | base64 -d | sh${RDT_NL}EOF"
and 1 more places
Changes files outside its own folder
This is disclosed by the author in the skill's SKILL.md or README. It runs automatically when the plugin is installed.
Found in 102 places.
Show 17 more
- plugins/guardrails/hooks/block-cross-domain.test.sh, line 669
idw_each deny "an append redirection to ~/.gitconfig" 'echo "[user]" >> ~/.gitconfig' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 670
idw_each deny 'a redirection to $HOME/.gitconfig-work' 'printf x > "$HOME/.gitconfig-work"' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 672
idw_each deny "tee -a ~/.gitconfig" 'printf x | tee -a ~/.gitconfig' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 673
idw_each deny "touch a *.gitconfig file" 'touch ~/identities/work.gitconfig' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 674
idw_each deny "cp to ~/.gitconfig" 'cp /placeholder/template ~/.gitconfig' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 675
idw_each deny "cp -t naming a *.gitconfig destination" 'cp -t ~/.gitconfig.d/x.gitconfig /placeholder/template' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 676
idw_each deny "ln -sf onto ~/.gitconfig" 'ln -sf /placeholder/dotfiles/gitconfig ~/.gitconfig' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 677
idw_each deny "cp -T is --no-target-directory, the last operand is the destination" 'cp -T /placeholder/template ~/.gitconfig' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 678
idw_each deny "ln -T onto ~/.gitconfig" 'ln -T /placeholder/dotfiles/gitconfig ~/.gitconfig' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 679
idw_each deny "mv ~/.gitconfig away" 'mv ~/.gitconfig ~/.gitconfig.bak' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 680
idw_each deny "rm ~/.gitconfig" 'rm -f ~/.gitconfig' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 684
idw_each deny "sudo tee" 'sudo tee ~/.gitconfig' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 685
idw_each deny "an &> redirection, which the parse splits" 'echo x &> ~/.gitconfig' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 686
idw_each deny "an &>> redirection" 'echo x &>>~/.gitconfig' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 709
idw_each allow "cp from ~/.gitconfig" 'cp ~/.gitconfig /placeholder/backup' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 710
idw_each allow "cp -T from ~/.gitconfig" 'cp -T ~/.gitconfig /placeholder/backup' - plugins/guardrails/hooks/block-cross-domain.test.sh, line 743
tel "an identity write from a domain cwd" "$A_ROOT/repo" 'echo x >> ~/.gitconfig' identity-write-deny domain blocked
and 82 more places
Downloads and installs other software
The author does not mention this. It runs automatically when the plugin is installed.
Found in 3 places.
Safer alternatives
Low-risk skills in the same category (coding) that look related. Check that one does what you need.
Other copies in this repository
melodic-software/claude-code-plugins has 64 more folders with a skill named setup. This page shows the lowest-scoring copy.
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/melodic-software/claude-code-plugins' "$d" && git -C "$d" checkout --quiet '677e7988f432dacb5e2d4df2b124f96da8e8f9f3' -- 'plugins/guardrails/skills/setup' && mkdir -p ~/.agents/skills && cp -R "$d"/'plugins/guardrails/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 melodic-software/claude-code-plugins shows the score of its lowest-scoring skill.

[](https://zalavijaysinh.github.io/skilltrust/repos/melodic-software/claude-code-plugins/)
Score history
| Date | Version | Score |
|---|
| 2026-11-09 | 677e798 | 37 |
| 2026-11-07 | 81c7244 | 37 |