refactor-shell SKILL.md skillA

refactor-shell from univers42/claude-deal-with-the-devil is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add univers42/claude-deal-with-the-devil/refactor-shell@git:20260930.dc5adef

Pins git:20260930.dc5adef in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
univers42/claude-deal-with-the-devil
Path
skills/refactor-shell/SKILL.md
Versions recorded
1
Latest version
git:20260930.dc5adef, committed Sep 30, 2026
Size
2,775 bytes
Repository stars
4
License
none declared

Shell norms: pick the dialect by where the script runs (strict POSIX for portable ones, bash for a gate), quote every expansion, and keep the error path explicit. Use when editing shell scripts.

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

# Shell Refactoring

## Pick the dialect by where the script runs

- **Portable scripts** (an installer, anything run by `/bin/sh` on a host you do not
  control): strict POSIX, the section below.
- **Gates and tools** (this kit's `tools/`, `bin/`, `tests/`, a project's CI helpers):
  bash is allowed. Shebang `#!/usr/bin/env bash`, then `set -uo pipefail`. Leave `-e`
  off where a failing command is data (a gate that found a problem must still report
  it); a script that should stop at the first error adds it. Arrays, `[[ ]]` and
  `local` are fine. A sourced library sets no options at all (`tools/README.md`).

## Strict POSIX compliance (portable scripts)

- No bashisms — no [[]], no arrays, no (( )), no ${var/pat/rep}
- Shebang: #!/bin/sh
- No unset variable access — set -u compatible
- Test with dash, not just bash

## Both dialects

- Quote every variable expansion: "$var" not $var
- Use command -v over which
- printf over echo for anything non-trivial

## Structure

- Max 25 lines per function — keep them short
- Functions at top, execution at bottom
- Local variables via local keyword or subshell isolation
- Cleanup via trap — every temp file cleaned on EXIT
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add univers42/claude-deal-with-the-devil/refactor-shell@sha256:3b592ec9c5660736

The line at the top of this page pins the label git:20260930.dc5adef, 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_p35qmrmurxmtqyms.svg)](https://markdownregistry.com/a/art_p35qmrmurxmtqyms)

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

Versions

The registry has recorded 1 version of this file, committed on Sep 30, 2026.

versioncommittedcommitsizeaudit
git:20260930.dc5adef latest2026-09-30 dc5adef 2,775 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 (2775 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

univers42/claude-deal-with-the-devil · 4 stars · license none declared · pushed 2026-10-19 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_p35qmrmurxmtqyms
GET https://markdownregistry.com/api/v1/resolve?ref=univers42/claude-deal-with-the-devil/refactor-shell
GET https://markdownregistry.com/api/v1/blob/3b592ec9c56607366ef40ba7880f53214f150eaf9be885d260b07cce1ba4db89

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 univers42/claude-deal-with-the-devil

AGENTS.md AGENTS.md file
univers42/claude-deal-with-the-devil · AGENTS.md
git:20261002.ea97c77 · audit A · 4 stars
api-convention SKILL.md skill
univers42/claude-deal-with-the-devil · skills/api-convention/SKILL.md · REST API conventions: resource-oriented and versioned routes, auth and access control on every surface, and one error…
git:20260930.dc5adef · audit A · 4 stars
api-endpoint SKILL.md skill
univers42/claude-deal-with-the-devil · skills/api-endpoint/SKILL.md · Scaffold a new REST endpoint that mirrors the ones already there. Use when a route is missing, a handler needs wiring…
git:20260930.72181e1 · audit A · 4 stars
brainstorm SKILL.md skill
univers42/claude-deal-with-the-devil · skills/brainstorm/SKILL.md · Diverge wide on the options, then converge on evidence and cost, ending in one recommendation, a smallest experiment…
git:20261017.fcaf2cc · audit A · 4 stars
browser-testing SKILL.md skill
univers42/claude-deal-with-the-devil · skills/browser-testing/SKILL.md · Verifies a change in a real browser and returns the artifact: the steps, the viewport, the console. Use when a page is…
git:20260930.00e2d41 · audit A · 4 stars
caveat SKILL.md skill
univers42/claude-deal-with-the-devil · skills/caveat/SKILL.md · Give every heuristic, sample, regex parser, cache, timeout and derived number the one line saying what it gets wrong…
git:20260930.06ed519 · audit A · 4 stars
commit-craft SKILL.md skill
univers42/claude-deal-with-the-devil · skills/commit-craft/SKILL.md · Turn a working tree into a history someone can read, revert and bisect. Use when changes are uncommitted, one commit…
git:20260930.5b26a1e · audit B · 4 stars
context-budget SKILL.md skill
univers42/claude-deal-with-the-devil · skills/context-budget/SKILL.md · Measure and cut what a config costs in context every session: always-on rules, invocable descriptions, skills that…
git:20261017.fcaf2cc · audit A · 4 stars
debug SKILL.md skill
univers42/claude-deal-with-the-devil · skills/debug/SKILL.md · Find the actual cause of a failure instead of guessing at fixes. Use when a test fails, a build breaks, a crash has no…
git:20260930.5b26a1e · audit A · 4 stars
design-review SKILL.md skill
univers42/claude-deal-with-the-devil · skills/design-review/SKILL.md · Judges an interface by hierarchy, rhythm, type, consistency and the states nobody built, then names the smallest fix…
git:20261017.fcaf2cc · audit A · 4 stars
doc-sync SKILL.md skill
univers42/claude-deal-with-the-devil · skills/doc-sync/SKILL.md · Find the documentation a change just made false and fix exactly that, examples copied from a passing run. Use when a…
git:20260930.06ed519 · audit A · 4 stars
frontend SKILL.md skill
univers42/claude-deal-with-the-devil · skills/frontend/SKILL.md · Builds UI that holds up at every width, in both themes, with real data, and for someone on a keyboard. Use when a page…
git:20260930.00e2d41 · audit A · 4 stars

Every file in univers42/claude-deal-with-the-devil

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