Skip to content

[feat] New skill: language-bash #95

@lugassawan

Description

@lugassawan

Goal

A language-bash skill encodes shell scripting idioms and safety patterns that shellcheck does not enforce, so agents give principled guidance when reviewing or writing bash scripts.

Motivation

scripts/release.sh (10.9 KB, must remain idempotent and resumable) demonstrates that non-trivial bash is a first-class concern in this repo. Shellcheck catches syntax errors but not semantic patterns: array vs $IFS splitting, idempotency patterns, or trap usage for cleanup. No language skill currently covers bash.

Surface

  • Skill — language-*

Sketch (optional)

File: skills/language-bash/SKILL.md

Key topics:

  • set -euo pipefail — semantics and gotchas (-u with arrays, -e in subshells)
  • Arrays vs $IFS word splitting — when to use each
  • Quoting discipline: when "$var" vs 'literal' vs unquoted is correct
  • trap for cleanup on EXIT/ERR
  • Idempotency patterns: check-before-act, sentinel files, mkdir -p
  • Script resumability: detect and continue over fail-fast
  • Heredoc usage and indentation (<<-EOF)
  • Portability: bash vs POSIX sh distinctions

Acceptance (optional)

  • skills/language-bash/SKILL.md exists with valid frontmatter
  • scripts/validate.py passes

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions