mirror of
https://github.com/bitsocialnet/5chan.git
synced 2026-08-03 07:41:04 +02:00
2602.12670 and 2602.11988 findings favoring curated, minimal, modular guidance over comprehensive always-on context
1.9 KiB
1.9 KiB
Agent Hooks Setup
If your AI coding assistant supports lifecycle hooks, configure these for this repo.
Recommended Hooks
| Hook | Command | Purpose |
|---|---|---|
afterFileEdit |
npx oxfmt <file> |
Auto-format files after AI edits |
afterFileEdit |
.cursor/hooks/yarn-install.sh |
Run yarn install when package.json changes |
stop |
`yarn build && yarn lint && yarn type-check && (yarn audit |
Why
- Consistent formatting
- Lockfile stays in sync
- Build/lint/type issues caught early
- Security visibility via
yarn audit
Example Hook Scripts
Format Hook
#!/bin/bash
# Auto-format JS/TS files after AI edits
# Hook receives JSON via stdin with file_path
input=$(cat)
file_path=$(echo "$input" | grep -o '"file_path"[[:space:]]*:[[:space:]]*"[^"]*"' | sed 's/.*:.*"\([^"]*\)"/\1/')
case "$file_path" in
*.js|*.ts|*.tsx|*.mjs) npx oxfmt "$file_path" 2>/dev/null ;;
esac
exit 0
Verify Hook
#!/bin/bash
# Run build, lint, type-check, and security audit when agent finishes
cat > /dev/null # consume stdin
echo "=== yarn build ===" && yarn build
echo "=== yarn lint ===" && yarn lint
echo "=== yarn type-check ===" && yarn type-check
echo "=== yarn audit ===" && (yarn audit || true) # informational
exit 0
Yarn Install Hook
#!/bin/bash
# Run yarn install when package.json is changed
# Hook receives JSON via stdin with file_path
input=$(cat)
file_path=$(echo "$input" | grep -o '"file_path"[[:space:]]*:[[:space:]]*"[^"]*"' | sed 's/.*:.*"\([^"]*\)"/\1/')
if [ -z "$file_path" ]; then
exit 0
fi
if [ "$file_path" = "package.json" ]; then
cd "$(dirname "$0")/../.." || exit 0
echo "package.json changed - running yarn install to update yarn.lock..."
yarn install
fi
exit 0
Configure hook wiring according to your agent tool docs (hooks.json, equivalent, etc.).