Master defensive Bash programming techniques for production-grade scripts. Use when writing robust shell scripts, CI/CD pipelines, or system utilities requiring fault tolerance and safety.
63
55%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/bash-defensive-patterns/SKILL.mdQuality
Discovery
75%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description has a solid structure with an explicit 'Use when' clause and a distinctive niche focus on defensive Bash programming. However, it lacks specific concrete actions (e.g., error trapping, input validation, strict mode) and could benefit from more natural trigger terms that users would actually type when seeking this kind of help.
Suggestions
Add specific concrete actions such as 'set error traps, validate inputs, use strict mode (set -euo pipefail), handle signals' to improve specificity.
Include additional natural trigger terms users might say, such as 'error handling', 'bash best practices', 'script safety', 'shellcheck', or 'bash debugging'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain ('defensive Bash programming') and mentions some contexts ('production-grade scripts', 'CI/CD pipelines', 'system utilities') but does not list specific concrete actions like 'set error traps', 'validate inputs', 'handle signals', or 'use strict mode'. | 2 / 3 |
Completeness | Clearly answers both 'what' (master defensive Bash programming techniques for production-grade scripts) and 'when' (Use when writing robust shell scripts, CI/CD pipelines, or system utilities requiring fault tolerance and safety) with an explicit 'Use when' clause. | 3 / 3 |
Trigger Term Quality | Includes some relevant keywords like 'Bash', 'shell scripts', 'CI/CD pipelines', 'fault tolerance', and 'safety', but misses common natural terms users might say such as 'error handling', 'set -e', 'trap', 'shellcheck', 'bash best practices', or 'script debugging'. | 2 / 3 |
Distinctiveness Conflict Risk | The focus on 'defensive Bash programming' with 'fault tolerance and safety' is a clear niche that is unlikely to conflict with general scripting skills, Python skills, or other shell-adjacent skills. The combination of Bash + defensive/production-grade is quite distinctive. | 3 / 3 |
Total | 10 / 12 Passed |
Implementation
35%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill is essentially a thin wrapper that defers all substantive content to an external playbook. While the structure and progressive disclosure approach is reasonable, the SKILL.md itself lacks any concrete, actionable guidance — no code examples, no specific commands, no executable patterns. The instructions are too abstract to be useful on their own.
Suggestions
Add a concrete 'Quick Start' section with an executable Bash script template showing strict mode (`set -euo pipefail`), a trap handler, and basic input validation — this is the minimum actionable content the skill should contain inline.
Replace the vague instruction steps with specific commands and patterns, e.g., show `set -euo pipefail`, `trap cleanup EXIT`, quoting examples like `"${var}"`, and a concrete logging function.
Add a validation/verification step to the workflow, such as running shellcheck on the script or a dry-run flag pattern, especially since the skill covers destructive operations like deployment automation.
Trim the 'Use this skill when' list to 3-4 items and remove the introductory paragraph that restates the title to improve conciseness.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The 'Use this skill when' and 'Do not use this skill when' sections are somewhat verbose and list obvious cases Claude could infer. The introductory paragraph also restates the title. However, the instructions section itself is lean. | 2 / 3 |
Actionability | The instructions are entirely abstract ('Enable strict mode and safe defaults', 'Validate inputs, quote variables') with zero concrete code, commands, or examples. There's nothing executable or copy-paste ready — all substance is deferred to an external file. | 1 / 3 |
Workflow Clarity | There is a numbered 4-step sequence, but the steps are vague and lack validation checkpoints. For a skill involving potentially destructive operations (deployment automation, system utilities), there are no explicit feedback loops or verification steps beyond a mention of 'basic tests'. | 2 / 3 |
Progressive Disclosure | The skill references an external playbook file which is good progressive disclosure, but the SKILL.md itself provides almost no substantive content — it's essentially just a pointer. The overview should contain at least a quick-start example or key patterns before deferring to the detailed resource. | 2 / 3 |
Total | 7 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
43280f9
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.