From aida-core
Manages Claude Code hook configurations in settings.json files. Supports listing, adding, removing, and validating lifecycle hooks.
npx claudepluginhub joshuarweaver/cascade-ai-ml-agents-misc-2 --plugin oakensoul-aida-core-pluginThis skill uses the workspace's default tool permissions.
Manages Claude Code lifecycle hook configurations.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Manages Claude Code lifecycle hook configurations. Hooks are shell commands that execute automatically at specific points in the Claude Code lifecycle, providing deterministic control over formatting, logging, blocking, and notifications.
This skill activates when:
/aida hook list/aida hook add/aida hook remove/aida hook validateShow all configured hooks across settings files.
python {base_directory}/scripts/manage.py --execute \
--context='{"operation": "list", "scope": "all"}'
Scopes:
user -- User-level hooks onlyproject -- Project-level hooks onlylocal -- Local overrides onlyall -- All hooks (default)Add a new hook using the two-phase API.
python {base_directory}/scripts/manage.py \
--get-questions \
--context='{"operation": "add", "description": "..."}'
Returns questions about event type, scope, and whether to use a built-in template.
python {base_directory}/scripts/manage.py --execute \
--context='{"operation": "add", "event": "PostToolUse", "matcher": "Write|Edit", "command": "prettier --write", "scope": "project"}'
Built-in templates:
| Template | Event | Purpose |
|---|---|---|
formatter | PostToolUse | Auto-format after writes |
logger | PostToolUse | Log commands for audit |
blocker | PreToolUse | Block sensitive file writes |
notifier | Notification | Desktop notifications |
Remove a hook by event and matcher.
python {base_directory}/scripts/manage.py --execute \
--context='{"operation": "remove", "event": "PostToolUse", "matcher": "Write|Edit", "scope": "project"}'
Validate hook configurations for correctness.
python {base_directory}/scripts/manage.py --execute \
--context='{"operation": "validate", "scope": "all"}'
Checks:
get_questions(context)Analyzes the operation context and returns:
execute(context, responses)Executes the operation with user responses and returns:
| Scope | Path | Use Case |
|---|---|---|
user | ~/.claude/settings.json | Personal hooks |
project | .claude/settings.json | Shared team hooks |
local | .claude/settings.local.json | Local overrides |
Script entry point:
{base_directory}/scripts/manage.py
Reference docs:
{base_directory}/references/hooks-reference.md
| Script | Purpose |
|---|---|
scripts/manage.py | Two-phase API entry point |
scripts/_paths.py | Path setup for shared utils |
scripts/operations/hooks.py | Hook operations |