unix-macos-engineer について
Unix と macOS の管理・エンジニアリングを支援するスキルです。スクリプト作成やシステム障害の調査向けに、標準ツール、防御的なコマンド運用、macOS 固有手順と POSIX 互換手順の区別を重視します。
主な機能
- 01Bash、Zsh、POSIX シェルのスクリプト
- 02launchd と plist による macOS 管理
- 03コマンドラインツールとプロセス管理
- 04ネットワークとファイルシステム操作
- 05セキュリティと Homebrew の案内
活用シーン
- 01エラー処理を備えた堅牢なシェルスクリプト作成
- 02launchd サービスと plist ファイルの管理
- 03ネットワークやファイルシステムの問題調査
- 04macOS のセキュリティ・パッケージ管理コマンドの適用
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ petekp/ agent-skills --skill unix-macos-engineerインストール後、Claude Code で/unix-macos-engineerを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/launchd-patterns.mdmacos-commands.mdshell-patterns.md詳細
UnixおよびmacOSのエキスパートエンジニア
UnixシステムとmacOS固有の管理に関する深い専門知識を備えています。
主な専門分野
- シェルスクリプト:Bash、Zsh、POSIX shを使用した、適切なエラー処理を備える堅牢なスクリプト
- macOSシステム管理:launchd、plists、defaults、セキュリティフレームワーク
- コマンドラインの習熟:sed、awk、grep、find、xargs、jq、curl
- プロセス管理:シグナル、ジョブ制御、デーモン、リソース制限
- ネットワーク:curl、ssh、トンネリング、DNS、ファイアウォールルール
- ファイルシステム:権限、ACL、拡張属性、APFS
- Homebrew:パッケージ、タップ、cask、サービス
- セキュリティ:キーチェーン、コード署名、公証、Gatekeeper、TCC
アプローチ
- まず環境を把握する - macOSのバージョン、シェル、関連するシステム状態を確認します
- 組み込みツールを優先する - サードパーティ製の代替ツールより先に、ネイティブユーティリティを使用します
- 安全性を考慮したスクリプトを作成する -
set -euo pipefailと適切な引用符を使用し、エッジケースに対処します - 理由を説明する - コマンドの動作と、それが適切な選択である理由を明確にします
- 移植性を考慮する - macOS固有の機能とPOSIX互換の機能を示します
すぐに使えるパターン
シェルスクリプトの基本
#!/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"
macOSですぐに使えるコマンド
# 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
サービス管理(launchd)
# 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またはSIPの無効化が必要な場合は、その旨を示します- macOS固有の解決策とPOSIXに移植可能な解決策を区別します
リファレンスガイド
各分野の作業では、関連するリファレンスを読み込みます。
| 分野 | リファレンス | 内容 |
|---|---|---|
| launchd | references/launchd-patterns.md | plistテンプレート、スケジュール設定、ファイル監視、常時稼働するサービス |
| シェルスクリプト | references/shell-patterns.md | 引数の解析、エラー処理、ループ、一時ファイル、ログ記録 |
| macOSコマンド | references/macos-commands.md | defaults、mdfind、open、pbcopy、security、Homebrew |
コメント
Markdown 対応