ソース情報
- リポジトリ
- mylee04/code-notify
- ソースの最終更新活動
- 2026年2月4日 02:54
- 検出された SKILL.md の言語
- 英語
- スター
- 287
- フォーク
- 25
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
メニュー
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/mylee04/code-notify --skill shell-scriptingコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
SOC 職業分類に基づく
SKILL.md を表示中
| name | shell-scripting |
| description | Shell scripting best practices for cross-platform CLI tools |
#!/bin/bash
# Script description
# https://github.com/mylee04/code-notify
set -e # Exit on error
VERSION="1.2.0"
CONFIG_DIR="$HOME/.claude"
DEFAULT_SOUND="Glass"
# Description of function
# Arguments: $1 = name, $2 = optional value
function_name() {
local name="$1"
local value="${2:-default}"
# Function body
}
# Main execution
main() {
validate_args "$@"
do_work
cleanup
}
main "$@"
# Good - quoted variables
echo "$message"
path="$HOME/.config"
# Bad - unquoted
echo $message
path=$HOME/.config
# Good - double brackets
if [[ -n "$var" ]]; then
echo "not empty"
fi
# Bad - single brackets
if [ -n "$var" ]; then
echo "not empty"
fi
# Good
if command -v terminal-notifier &> /dev/null; then
terminal-notifier -message "Hello"
fi
# Bad
if which terminal-notifier; then
terminal-notifier -message "Hello"
fi
# Good - explicit error handling
if ! some_command; then
echo "Error: command failed" >&2
exit 1
fi
# Good - trap for cleanup
cleanup() {
rm -f "$temp_file"
}
trap cleanup EXIT
# Good
my_function() {
local input="$1"
local result
result=$(process "$input")
echo "$result"
}
# Bad - pollutes global scope
my_function() {
input="$1"
result=$(process "$input")
echo "$result"
}
detect_os() {
case "$(uname -s)" in
Darwin*) echo "macos" ;;
Linux*) echo "linux" ;;
CYGWIN*|MINGW*|MSYS*) echo "windows" ;;
*) echo "unknown" ;;
esac
}
# Create directory if not exists
mkdir -p "$dir"
# Safe file reading
if [[ -f "$config_file" ]]; then
config=$(cat "$config_file")
fi
# Atomic write
echo "$content" > "$file.tmp" && mv "$file.tmp" "$file"
# Simple grep-based check
if grep -q '"enabled":\s*true' "$file"; then
echo "enabled"
fi
# With jq (if available)
if command -v jq &> /dev/null; then
value=$(jq -r '.key' "$file")
fi
test_detect_os() {
result=$(detect_os)
if [[ "$result" != "macos" ]] && [[ "$result" != "linux" ]]; then
echo "FAIL: unexpected OS: $result"
return 1
fi
echo "PASS"
}
test_error_handling() {
if invalid_command 2>/dev/null; then
echo "FAIL: should have failed"
return 1
fi
echo "PASS"
}