Files
nodnarbnitram__claude-code-…/.claude/hooks/post_tool_use.py
Brandon Martin 3a465848a0 Initial Commit
2025-09-29 16:34:01 -05:00

47 lines
1.2 KiB
Python
Executable File

#!/usr/bin/env -S uv run --script
# /// script
# requires-python = ">=3.8"
# ///
import json
import sys
from pathlib import Path
def main():
try:
# Read JSON input from stdin
input_data = json.load(sys.stdin)
# Ensure log directory exists
log_dir = Path.cwd() / 'logs'
log_dir.mkdir(parents=True, exist_ok=True)
log_path = log_dir / 'post_tool_use.json'
# Read existing log data or initialize empty list
if log_path.exists():
with open(log_path, 'r') as f:
try:
log_data = json.load(f)
except (json.JSONDecodeError, ValueError):
log_data = []
else:
log_data = []
# Append new data
log_data.append(input_data)
# Write back to file with formatting
with open(log_path, 'w') as f:
json.dump(log_data, f, indent=2)
sys.exit(0)
except json.JSONDecodeError:
# Handle JSON decode errors gracefully
sys.exit(0)
except Exception:
# Exit cleanly on any other error
sys.exit(0)
if __name__ == '__main__':
main()