Repository navigation
chore(git-hooks): run the guardrails git hooks from the claude-code-plugins lefthook remote - #493
Conversation
… jobs Commit the guardrails plugin's three git-hook entries (commit-msg-convention, pre-commit-content, reference-verify) as shared lefthook jobs so every clone gets them from `lefthook install`, and record the subject_pattern they enforce in .claude/source-control.md. The vendored copies under .githooks/guardrails/ are plugin-owned, so the ShellCheck, shfmt and machine-path lanes skip them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
claude-review reviewed Code review: no findings. I read the full diff, which is one new file,
|
|
claude-security-review reviewed Security review: PR 493 (head 997186e)The diff adds one file, Finding (1, SUGGESTION): Nothing else turned up. There is no CRITICAL finding, so no hold is needed. critical-findings: 0 |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 1479f956f9
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…lugins lefthook remote Replace the vendored .githooks/guardrails/ copies, their lefthook jobs and the lint exclusions they needed with one lefthook remotes: entry pointing at melodic-software/claude-code-plugins (ref main, refetched every 24h). The commit subject rule comes from docs/conventions/source-control/commit-convention.yml, so .claude/source-control.md keeps no subject_pattern. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…s' into chore/guardrails-shared-git-hooks
No related issue: rolls out the guardrails lefthook remote (claude-code-plugins#9504)
Summary
Runs the guardrails plugin's three git-hook entries in every clone of this repository from one committed lefthook
remotes:entry, so each machine gets the same hooks fromlefthook installand picks up upstream fixes automatically:commit-msg-convention(commit-msg): the subject against the rule indocs/conventions/source-control/commit-convention.yml.pre-commit-content(pre-commit): secrets and machine-specific paths on added lines.reference-verify(pre-push): CLI flags,/plugin:skillreferences and deleted paths on pushed lines.Fix
lefthook.yml(new; the repository had no hook manager): oneremotes:entry,git_url: https://github.com/melodic-software/claude-code-plugins,ref: main,refetch_frequency: 24h, configplugins/guardrails/git-hooks/lefthook-remote.yml.main. The earlier revision of this PR vendored copies under.githooks/guardrails/and needed ShellCheck, shfmt and machine-path exclusions for them in.github/workflows/pr-require-checks.yml, plus asubject_patternin.claude/source-control.md; all of that is gone. The subject rule now comes from the standards-syncedcommit-convention.yml.Verification
install.mjs verify --repo <worktree>(rc 0):install.mjs plan --scope remoteafterwards: no decisions left.lefthook install:sync hooks: ✔️(commit-msg, pre-push, pre-commit). This PR's commits ran the remotepre-commit-contentandcommit-msg-convention, and its push ranreference-verify.Observation runs from the earlier revision, still valid because the remote runs the same hook scripts:
reference-verifyorigin/main~200..origin/main, 28 changed.md/.sh/.ps1files, 6 sREADME.md, 31,947 bytes)pre-commit-content/home/<name>/...probe was caught (rc 1), so the replay exercises the checkcommit-msg-conventionInitial commitRelated
🤖 Generated with Claude Code