skills/unix-macos-engineer/SKILL.md
Expert Unix and macOS systems engineer for shell scripting, system administration, command-line tools, launchd, Homebrew, networking, and low-level system tasks. Use when the user asks about Unix commands, shell scripts, macOS system configuration, process management, or troubleshooting system issues.
npx skillsauth add petekp/claude-skills unix-macos-engineerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Deep expertise in Unix systems and macOS-specific administration.
set -euo pipefail, proper quoting, handle edge cases#!/usr/bin/env bash
set -euo pipefail
# Always quote variables
echo "$variable"
# Check command existence
command -v git &>/dev/null || { echo "git not found"; exit 1; }
# Use [[ ]] for conditionals in Bash
[[ -f "$file" ]] && echo "exists"
# Read/write preferences
defaults read com.apple.finder AppleShowAllFiles
defaults write com.apple.dock autohide -bool true
# Spotlight search
mdfind -name "file.txt"
mdfind "search term" -onlyin ~/Documents
# Clipboard
echo "text" | pbcopy
pbpaste
# Open files/URLs
open https://example.com
open -a "Visual Studio Code" file.txt
# Load/unload agents
launchctl load ~/Library/LaunchAgents/com.example.agent.plist
launchctl unload ~/Library/LaunchAgents/com.example.agent.plist
# Check plist syntax
plutil -lint com.example.agent.plist
sudo or SIP disable is requiredLoad the relevant reference when working in that domain:
| Domain | Reference | Contents | |--------|-----------|----------| | launchd | references/launchd-patterns.md | Plist templates, scheduling, file watchers, keep-alive services | | Shell Scripts | references/shell-patterns.md | Argument parsing, error handling, loops, temp files, logging | | macOS Commands | references/macos-commands.md | defaults, mdfind, open, pbcopy, security, Homebrew |
tools
Comprehensively manually test the Circuit plugin's user-facing surface in either Claude Code or Codex. Use this skill whenever the user asks to "manually test Circuit", "QA the Circuit plugin", "exercise the Circuit surface", "run the Circuit checklist", "smoke test Circuit", "find regressions in Circuit", "test the Claude Circuit plugin", "test the Codex Circuit plugin", or when preparing a Circuit release for marketplace publication. Argument is the host package to test — `claude` or `codex`. Produces a Markdown report with per-command pass/fail, exploratory findings ranked by severity, run-folder evidence links, and a concise terminal summary. Use even if the user does not say the word "test" — phrases like "go through every Circuit command" or "make sure Circuit still works end-to-end" should also trigger.
development
Turn the prompt supplied with this skill into a concise, auditable Codex Goal or explain why a Goal is not the right fit. Use when the user asks to draft, formulate, rewrite, tighten, or create a `/goal` from a plain-language task, especially for multi-step work that needs a durable objective, evidence-based completion, constraints, iteration policy, and a default adversarial review loop.
development
Give the human a fast, plain-English catch-up on what changed in the project: what the agents did, why, and what decisions need their input. Use this whenever the user asks to "catch me up", "what changed", "where are we", "recap", "brief me", "give me the rundown", "what did you do", "summarize the session", "fill me in", or otherwise signals they have been away and want to get back up to speed quickly. Built for someone steering several agent-driven projects at once who does not read the code closely but needs to grasp the core ideas, the choices made, and the open decisions well enough to steer. Trigger even if they do not use these exact words: any request to get oriented on recent progress should use this skill.
development
Extract a DDD-style ubiquitous language glossary from the current conversation, flagging ambiguities and proposing canonical terms. Saves to UBIQUITOUS_LANGUAGE.md. Use when user wants to define domain terms, build a glossary, harden terminology, create a ubiquitous language, or mentions "domain model" or "DDD".