35 lines
1.1 KiB
Bash
35 lines
1.1 KiB
Bash
|
|
#!/bin/bash
|
|||
|
|
# Extract actionable items from core CLI output
|
|||
|
|
# Called PostToolUse on Bash commands that run core
|
|||
|
|
|
|||
|
|
read -r input
|
|||
|
|
COMMAND=$(echo "$input" | jq -r '.tool_input.command // empty')
|
|||
|
|
OUTPUT=$(echo "$input" | jq -r '.tool_output.output // empty')
|
|||
|
|
|
|||
|
|
CONTEXT_SCRIPT="$(dirname "$0")/capture-context.sh"
|
|||
|
|
|
|||
|
|
# Extract actionables from specific core commands
|
|||
|
|
case "$COMMAND" in
|
|||
|
|
"core go qa"*|"core go test"*|"core go lint"*)
|
|||
|
|
# Extract error/warning lines
|
|||
|
|
echo "$OUTPUT" | grep -E "^(ERROR|WARN|FAIL|---)" | head -5 | while read -r line; do
|
|||
|
|
"$CONTEXT_SCRIPT" "$line" "core go"
|
|||
|
|
done
|
|||
|
|
;;
|
|||
|
|
"core php test"*|"core php analyse"*)
|
|||
|
|
# Extract PHP errors
|
|||
|
|
echo "$OUTPUT" | grep -E "^(FAIL|Error|×)" | head -5 | while read -r line; do
|
|||
|
|
"$CONTEXT_SCRIPT" "$line" "core php"
|
|||
|
|
done
|
|||
|
|
;;
|
|||
|
|
"core build"*)
|
|||
|
|
# Extract build errors
|
|||
|
|
echo "$OUTPUT" | grep -E "^(error|cannot|undefined)" | head -5 | while read -r line; do
|
|||
|
|
"$CONTEXT_SCRIPT" "$line" "core build"
|
|||
|
|
done
|
|||
|
|
;;
|
|||
|
|
esac
|
|||
|
|
|
|||
|
|
# Pass through
|
|||
|
|
echo "$input"
|