Cc-skills hooks

Install/uninstall productivity-tools hooks to ~/.claude/settings.json. TRIGGERS - productivity hooks, install productivity hook, calendar alarm hook.

install
source · Clone the upstream repo
git clone https://github.com/terrylica/cc-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/terrylica/cc-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/plugins/productivity-tools/skills/hooks" ~/.claude/skills/terrylica-cc-skills-hooks-8d7093 && rm -rf "$T"
manifest: plugins/productivity-tools/skills/hooks/SKILL.md
source content

productivity-tools Hooks Manager

Manage productivity-tools hook installation in

~/.claude/settings.json
.

The calendar-reminder-sync hook validates sound alarm compliance on Calendar event creation and auto-creates paired Reminders.

Self-Evolving Skill: This skill improves through use. If instructions are wrong, parameters drifted, or a workaround was needed — fix this file immediately, don't defer. Only update for real, reproducible issues.

Actions

ActionDescription
status
Check hook installation status and dependencies
install
Add productivity-tools hooks to settings.json
uninstall
Remove productivity-tools hooks from settings.json

What the Hook Does

TriggerConditionAction
PostToolUse/Bash
osascript
+
make new event
Validates sound alarms, auto-creates 3 Reminders
PostToolUse/BashMissing sound alarmsWarns Claude to recreate with
sound alarm
PostToolUse/BashBanned short sounds usedWarns Claude to use only approved sounds (>= 1.4s)

Execution

Parse

$ARGUMENTS
and run the management script:

/usr/bin/env bash << 'PRODUCTIVITY_TOOLS_HOOKS_SCRIPT'
set -euo pipefail

ACTION="${ARGUMENTS:-status}"

# Auto-detect plugin root
detect_plugin_root() {
    if [[ -n "${CLAUDE_PLUGIN_ROOT:-}" ]]; then
        echo "$CLAUDE_PLUGIN_ROOT"
        return
    fi
    local marketplace="$HOME/.claude/plugins/marketplaces/cc-skills/plugins/productivity-tools"
    if [[ -d "$marketplace/hooks" ]]; then
        echo "$marketplace"
        return
    fi
    local cache_base="$HOME/.claude/plugins/cache/cc-skills/productivity-tools"
    if [[ -d "$cache_base" ]]; then
        local latest
        latest=$(ls -1 "$cache_base" 2>/dev/null | grep -E '^[0-9]+\.[0-9]+' | sort -V | tail -1)
        if [[ -n "$latest" && -d "$cache_base/$latest/hooks" ]]; then
            echo "$cache_base/$latest"
            return
        fi
    fi
    echo ""
}

PLUGIN_DIR="$(detect_plugin_root)"
if [[ -z "$PLUGIN_DIR" ]]; then
    echo "ERROR: Cannot detect productivity-tools plugin installation" >&2
    exit 1
fi

bash "$PLUGIN_DIR/scripts/manage-hooks.sh" "$ACTION"
PRODUCTIVITY_TOOLS_HOOKS_SCRIPT

Post-Action Reminder

After install/uninstall operations:

IMPORTANT: Restart Claude Code session for changes to take effect.

The hooks are loaded at session start. Modifications to settings.json require a restart.

Examples

# Check current installation status
/productivity-tools:hooks status

# Install the calendar-reminder-sync hook
/productivity-tools:hooks install

# Uninstall hooks
/productivity-tools:hooks uninstall

Troubleshooting

IssueCauseSolution
jq not foundjq not installed
brew install jq
bun not foundbun not installed
brew install bun
Plugin root not foundPlugin not installedRe-install via marketplace
Hooks not workingSession not restartedRestart Claude Code session
Reminders not createdHook not installedRun
/productivity-tools:hooks install
Sound alarm not playingNotifications disabledEnable in System Settings > Notifications > Calendar

Post-Execution Reflection

After this skill completes, check before closing:

  1. Did the command succeed? — If not, fix the instruction or error table that caused the failure.
  2. Did parameters or output change? — If the underlying tool's interface drifted, update Usage examples and Parameters table to match.
  3. Was a workaround needed? — If you had to improvise (different flags, extra steps), update this SKILL.md so the next invocation doesn't need the same workaround.

Only update if the issue is real and reproducible — not speculative.