Repository navigation
chore(git-hooks): run the guardrails git hooks from the claude-code-plugins lefthook remote - #211
Conversation
… jobs Commit the guardrails plugin's commit-msg-convention, pre-commit-content and reference-verify hooks as lefthook jobs so every clone gets them from `lefthook install`, with no per-machine hook settings. - .githooks/guardrails/: plugin-owned copies from install.mjs (0.55.4). - lefthook.yml: the three installer snippets. - .claude/source-control.md: subject_pattern is now the explicit regex the hook enforces (twelve types, optional scope, Merge and Revert). - ShellCheck (CI and .cursor/check.sh) skips the vendored copies. - README inventory lists the new files. 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 findingsThe PR adds one root file, What I checked myself:
Not verified: the PR's Notes, none counted as findings:
|
|
claude-security-review reviewed Security review: PR #211 (head bb87d72)I found one IMPORTANT issue, posted inline on IMPORTANT: unpinned, auto-refreshing remote hook config (lefthook.yml#L1-L6)
I did not read the remote file, since it is outside the diff and I could not fetch it. The PR touches no critical-findings: 0 |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
ℹ️ 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>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: bb87d72984
ℹ️ 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".
No related issue: follow-up to a review finding on #211 (claude-code-plugins#9504 rollout) ## Summary Lists `lefthook.yml` in README's "What's here" inventory, which the tracked-file inventory rule (`AGENTS.md`, Code Review Rules) requires for every added file. ## Fix - `README.md`: new **Git hooks** bullet. `lefthook.yml` holds one `remotes:` entry running the guardrails hooks from `claude-code-plugins`, and the hook scripts are owned there. ## Verification - This commit ran the remote `pre-commit-content` and `commit-msg-convention` hooks (both pass); the push ran `reference-verify`. - Addresses the [Codex finding on #211](#211 (comment)). ## Related - [#211](#211): added `lefthook.yml`. - [claude-code-plugins#9504](melodic-software/claude-code-plugins#9504): the remote config. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
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.That is the whole diff against
main. The earlier revision of this PR vendored copies under.githooks/guardrails/and needed:.github/workflows/pr-require-checks.ymland.cursor/check.sh.subject_patternin.claude/source-control.md.All of that is gone. The subject rule now comes from the standards-synced
commit-convention.yml.No other changes kept.
Verification
install.mjs verify --repo <worktree>(rc 0):install.mjs plan --scope remoteafterwards: no configuration decisions left, only the advisoryno-ci-rerun: no CI workflow re-runs reference-verify's jq check.lefthook install:sync hooks: ✔️(pre-commit, commit-msg, pre-push). This PR's commit ran the remotepre-commit-content(0.11 s) andcommit-msg-convention(0.03 s), and its push ranreference-verify.Observation runs from the earlier revision, still valid because the remote runs the same hook scripts:
reference-verifyorigin/main~182..origin/main(whole history after the root commit; 24 changed.md/.sh/.ps1files), 2 spre-commit-contentcommit-msg-conventionInitial commit(root commit)Related
🤖 Generated with Claude Code