feat: add prepare-commit-msg hook for agent identity trailers (bd-luso)
Automatically adds trailers to commits when running in Gas Town agent context: - Executed-By: agent identity (e.g., beads/crew/dave) - Rig: the rig name - Role: crew, polecat, witness, etc. - Molecule: pinned molecule ID (if any) Detection sources: 1. GT_ROLE environment variable (set by Gas Town sessions) 2. cwd path patterns (crew/, polecats/, witness/, refinery/) Trailers are skipped for: - Human commits (no agent context detected) - Merge commits (have their own format) - Commits that already have Executed-By trailer (avoid duplicates) Executed-By: beads/crew/dave Rig: beads Role: crew
This commit is contained in:
24
cmd/bd/templates/hooks/prepare-commit-msg
Executable file
24
cmd/bd/templates/hooks/prepare-commit-msg
Executable file
@@ -0,0 +1,24 @@
|
||||
#!/bin/sh
|
||||
# bd-shim v1
|
||||
# bd-hooks-version: 0.41.0
|
||||
#
|
||||
# bd (beads) prepare-commit-msg hook - thin shim
|
||||
#
|
||||
# This shim delegates to 'bd hooks run prepare-commit-msg' which contains
|
||||
# the actual hook logic. This pattern ensures hook behavior is always
|
||||
# in sync with the installed bd version - no manual updates needed.
|
||||
#
|
||||
# Arguments:
|
||||
# $1 = path to the commit message file
|
||||
# $2 = source of commit message (message, template, merge, squash, commit)
|
||||
# $3 = commit SHA-1 (if -c, -C, or --amend)
|
||||
|
||||
# Check if bd is available
|
||||
if ! command -v bd >/dev/null 2>&1; then
|
||||
echo "Warning: bd command not found in PATH, skipping prepare-commit-msg hook" >&2
|
||||
echo " Install bd: brew install steveyegge/tap/bd" >&2
|
||||
echo " Or add bd to your PATH" >&2
|
||||
exit 0
|
||||
fi
|
||||
|
||||
exec bd hooks run prepare-commit-msg "$@"
|
||||
Reference in New Issue
Block a user