ia-linux-bash-scripting SKILL.md skillA

ia-linux-bash-scripting from iliaal/whetstone is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add iliaal/whetstone/ia-linux-bash-scripting@git:20261011.93783df

Pins git:20261011.93783df in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
iliaal/whetstone
Path
plugins/whetstone/skills/ia-linux-bash-scripting/SKILL.md
Versions recorded
11
Latest version
git:20261011.93783df, committed Oct 11, 2026
First version recorded
Aug 19, 2026
Size
5,241 bytes
Repository stars
35
License
MIT

Defensive Bash scripting for Linux: safe foundations, argument parsing, production patterns, ShellCheck compliance. Use when writing bash scripts, shell scripts, cron jobs, or CLI tools in bash.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

# Linux Bash Scripting

Produce bash scripts that pass `shellcheck --enable=all` and `shfmt -d` with zero warnings.

Target: GNU Bash 4.4+ on Linux. No macOS/BSD workarounds, no Windows paths, no POSIX-only restrictions.

## Script Foundation

```bash
#!/usr/bin/env bash
set -Eeuo pipefail
shopt -s inherit_errexit

SCRIPT_DIR=$(dirname -- "${BASH_SOURCE[0]}") || exit "$?"
SCRIPT_DIR=$(cd -- "${SCRIPT_DIR}" && pwd -P) || exit "$?"
readonly SCRIPT_DIR

trap 'printf "Error at %s:%d\n" "${BASH_SOURCE[0]}" "$LINENO" >&2' ERR
trap 'rm -rf -- "${_tmpdir:-}"' EXIT
```

- `-E` propagates ERR traps into functions
- `inherit_errexit` propagates errexit into `$()`  command substitutions
- Resolve the script's own data files against `SCRIPT_DIR`, never the caller's cwd or `git rev-parse --show-toplevel`. A shared linter invoked from another project's git hook, a cron job, or a wrapper runs with someone else's cwd, so a caller-relative rules path resolves to a file that does not exist: the rule set loads empty, zero violations are found, exit 0. It is a silent no-op, not an error, and running it from inside its own repo passes for the wrong reason. Exercise it once from a scratch directory that
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add iliaal/whetstone/ia-linux-bash-scripting@sha256:351c7810feae77c8

The line at the top of this page pins the label git:20261011.93783df, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_r4tutv5ysw3ghs4e.svg)](https://markdownregistry.com/a/art_r4tutv5ysw3ghs4e)

4 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 11 versions of this file, between Aug 19, 2026 and Oct 11, 2026, about one every 5 days.

versioncommittedcommitsizeaudit
git:20261011.93783df latest2026-10-11 93783df 5,241 BA view · diff
git:20261011.2911a262026-10-11 2911a26 5,006 BA view · diff
git:20261009.1856a422026-10-09 1856a42 5,000 BA view · diff
git:20260927.f2100bf2026-09-27 f2100bf 4,990 BA view · diff
git:20260923.1fe69082026-09-23 1fe6908 4,708 BA view · diff
git:20260913.9fa1f0d2026-09-13 9fa1f0d 4,712 BA view · diff
git:20260907.228ec832026-09-07 228ec83 4,425 BA view · diff
git:20260906.35b18c42026-09-06 35b18c4 15,395 BA view · diff
git:20260906.5eab8612026-09-06 5eab861 11,943 BA view · diff
git:20260829.7a804662026-08-29 7a80466 11,144 BA view · diff
git:20260819.19890d22026-08-19 19890d2 7,809 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (5241 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

iliaal/whetstone · 35 stars · license MIT · pushed 2026-11-04 · branch master

API

GET https://markdownregistry.com/api/v1/artifacts/art_r4tutv5ysw3ghs4e
GET https://markdownregistry.com/api/v1/resolve?ref=iliaal/whetstone/ia-linux-bash-scripting
GET https://markdownregistry.com/api/v1/blob/351c7810feae77c866ae88cc89406fc04d64012e6f44f6d345c7bf4224cb26d8

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from iliaal/whetstone

analyze-misfires SKILL.md skill
iliaal/whetstone · .agents/skills/analyze-misfires/SKILL.md · Analyze Whetstone skill injection misfires when asked to investigate overly broad triggers or irrelevant injected…
git:20260907.228ec83 · audit A · 35 stars
announce SKILL.md skill
iliaal/whetstone · .agents/skills/announce/SKILL.md · Draft an X announcement for a Whetstone release when asked to announce that release.
git:20260907.228ec83 · audit A · 35 stars
audit-plugin SKILL.md skill
iliaal/whetstone · .agents/skills/audit-plugin/SKILL.md · Audit Whetstone skills, agents, and commands when asked for a plugin quality or consistency audit.
git:20260907.228ec83 · audit A · 35 stars
diagnose-negatives SKILL.md skill
iliaal/whetstone · .agents/skills/diagnose-negatives/SKILL.md · Investigate negative session feedback for a Whetstone skill when asked to diagnose its failures.
git:20260907.228ec83 · audit A · 35 stars
eval-skills SKILL.md skill
iliaal/whetstone · .agents/skills/eval-skills/SKILL.md · Evaluate Whetstone skills from session evidence when asked to compare procedure-following results or optimization…
git:20260907.228ec83 · audit A · 35 stars
evolve-skill SKILL.md skill
iliaal/whetstone · .agents/skills/evolve-skill/SKILL.md · Revise and evaluate a Whetstone skill when asked to evolve or optimize that skill.
git:20260907.228ec83 · audit A · 35 stars
prune-sync-log SKILL.md skill
iliaal/whetstone · .agents/skills/prune-sync-log/SKILL.md · Prune stale Whetstone sync decision entries when asked to clean the sync log.
git:20260907.228ec83 · audit A · 35 stars
release SKILL.md skill
iliaal/whetstone · .agents/skills/release/SKILL.md · Run the Whetstone release workflow when explicitly asked to release this plugin.
git:20260907.228ec83 · audit A · 35 stars
skillopt SKILL.md skill
iliaal/whetstone · .agents/skills/skillopt/SKILL.md · Prepare or run Whetstone SkillOpt optimization when asked to optimize a process skill using SkillOpt.
git:20260907.228ec83 · audit A · 35 stars
sync-from-repos SKILL.md skill
iliaal/whetstone · .agents/skills/sync-from-repos/SKILL.md · Compare Whetstone with reference repositories when asked to sync cross-repository improvements.
git:20260907.228ec83 · audit A · 35 stars
triage-prs SKILL.md skill
iliaal/whetstone · .agents/skills/triage-prs/SKILL.md · Triage Whetstone pull requests when explicitly asked to group, label, and review open PRs.
git:20260907.228ec83 · audit A · 35 stars
write-skill SKILL.md skill
iliaal/whetstone · .agents/skills/write-skill/SKILL.md · Author a new Whetstone plugin skill when asked to write a skill without upstream skills.sh sources.
git:20260907.228ec83 · audit A · 35 stars

Every file in iliaal/whetstone

Browse by kind, by grade A, or by owner.