Skip to content

feat: trim-claude-plugins - #851

Merged
yxtay merged 10 commits into
mainfrom
feat/trim-claude-plugins
Jul 2, 2026
Merged

feat: trim-claude-plugins#851
yxtay merged 10 commits into
mainfrom
feat/trim-claude-plugins

Conversation

@yxtay

@yxtay yxtay commented Jul 2, 2026

Copy link
Copy Markdown
Owner

What

  • Trim Claude plugins — reduce the auto-installed plugin list. Drop code-review, code-simplifier, feature-dev, ralph-loop, security-guidance, commit-commands, pr-review-toolkit. Add gopls-lsp. Keep claude-md-management, LSP plugins, caveman, context-mode, memsearch, superpowers. Rename memsearch source to memsearch@memsearch-plugins.
  • Share agent instructions via chezmoi template — extract AGENTS.md into a reusable .chezmoitemplates/ entry consumed by both the agents dir (AGENTS.md.tmpl) and opencode. CLAUDE.md and opencode AGENTS.md become modify-templates that regenerate the shared content while preserving plugin edits appended after a CHEZMOI_END marker.
  • Exclude modify_*.md from markdownlint — the hook mangled the chezmoi {{- /* ... */ -}} comment syntax.
  • Ignore .memsearch/** in git.

Why

Single source of truth for agent instructions across Claude and opencode, and a leaner plugin set.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Refreshed the default Claude plugin selection by updating the official plugin list (including adding the Go language server plugin) and changing the memsearch plugin source.
    • Added Git ignore rules for the memsearch directory.
  • Documentation
    • Improved AGENTS.md handling so agent instructions are consistently rendered and appended across Claude and Opencode flows, with safer marker-based updating.
    • Removed an obsolete AGENTS symlink template.
    • Adjusted markdown linting to exclude modify_*.md files from auto-fixes.

@coderabbitai

coderabbitai Bot commented Jul 2, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@yxtay, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 49 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 54cd89c5-9138-4f8d-bc82-24b6f3d919e7

📥 Commits

Reviewing files that changed from the base of the PR and between 225f0db and cdbd405.

📒 Files selected for processing (3)
  • chezmoi/private_dot_claude/modify_CLAUDE.md
  • chezmoi/private_dot_config/git/ignore.tmpl
  • chezmoi/private_dot_config/opencode/modify_AGENTS.md
📝 Walkthrough

Walkthrough

This change updates Claude plugin installation, renders AGENTS.md into generated templates, and adjusts linting and git ignore rules for generated markdown and .memsearch/ paths.

Changes

Claude and AGENTS Template Updates

Layer / File(s) Summary
Revise Claude plugins
chezmoi/.chezmoiscripts/run_onchange_setup_claude.sh.tmpl
The Claude plugin install list removes several official plugins, adds gopls-lsp@claude-plugins-official, and changes the memsearch identifier to memsearch@memsearch-plugins.
Render AGENTS content in templates
chezmoi/private_dot_agents/AGENTS.md.tmpl, chezmoi/private_dot_claude/modify_CLAUDE.md, chezmoi/private_dot_config/opencode/modify_AGENTS.md
AGENTS.md is rendered into the template flow, and the modify-templates append @AGENTS.md plus a <!-- CHEZMOI_END --> marker while extracting content after that marker when it already exists.
Adjust repo ignore filters
.pre-commit-config.yaml, chezmoi/private_dot_config/git/ignore.tmpl
Markdown linting skips modify_*.md files, and git ignore rules now exclude .memsearch/ paths.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

  • yxtay/dotfiles#817: Modifies the same Claude plugin installation list in chezmoi/.chezmoiscripts/run_onchange_setup_claude.sh.tmpl.
  • yxtay/dotfiles#847: Updates AGENTS.md content, which is now rendered through the AGENTS template wiring in this PR.
  • yxtay/dotfiles#850: Also changes the Claude setup script’s memsearch plugin entry.

Suggested labels: docs

Poem

A bunny hops through template flow,
With AGENTS pages set to glow;
Plugins shift and markers gleam,
Tiny tools in one neat stream. 🐇

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title matches the main change of trimming the Claude plugin list, even though the PR also includes related template and config updates.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/trim-claude-plugins

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the Claude setup script (run_onchange_setup_claude.sh.tmpl) by removing several plugins from the installation list, including code-review, code-simplifier, feature-dev, ralph-loop, security-guidance, commit-commands, claude-code-setup, and pr-review-toolkit. There are no review comments to address, and I have no additional feedback to provide.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

⚠️MegaLinter analysis: Success with warnings

Descriptor Linter Files Fixed Errors Warnings Elapsed time
✅ BASH shfmt 3 0 0 0 0.02s
✅ JSON prettier 2 0 0 0 0.36s
⚠️ MARKDOWN markdownlint 6 0 2 0 0.61s
✅ MARKDOWN markdown-table-formatter 6 0 0 0 0.17s
✅ YAML prettier 10 0 0 0 0.49s

Detailed Issues

⚠️ MARKDOWN / markdownlint - 2 errors
chezmoi/private_dot_claude/modify_CLAUDE.md:1 error MD041/first-line-heading/first-line-h1 First line in a file should be a top-level heading [Context: "{{- /*chezmoi:modify-template*..."]
chezmoi/private_dot_config/opencode/modify_AGENTS.md:1 error MD041/first-line-heading/first-line-h1 First line in a file should be a top-level heading [Context: "{{- /*chezmoi:modify-template*..."]

Notices

📣 MegaLinter 9.5.0 is out! Discover the new features and security recommendations in the release announcement. (Skip this info by defining SECURITY_SUGGESTIONS: false)

See detailed reports in MegaLinter artifacts

Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)

  • Documentation: Custom Flavors
  • Command: npx mega-linter-runner@9.5.0 --custom-flavor-setup --custom-flavor-linters BASH_SHFMT,JSON_PRETTIER,MARKDOWN_MARKDOWNLINT,MARKDOWN_MARKDOWN_TABLE_FORMATTER,YAML_PRETTIER

MegaLinter is graciously provided by OX Security
Show us your support by starring ⭐ the repository

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

⚠️MegaLinter analysis: Success with warnings

Descriptor Linter Files Fixed Errors Warnings Elapsed time
✅ BASH bash-exec 3 0 0 0.03s
✅ BASH shellcheck 3 0 0 0.14s
✅ REPOSITORY checkov yes no no 24.71s
✅ REPOSITORY devskim yes no no 2.19s
✅ REPOSITORY dustilock yes no no 0.02s
✅ REPOSITORY gitleaks yes no no 2.16s
✅ REPOSITORY grype yes no no 49.42s
✅ REPOSITORY kingfisher yes no no 8.96s
⚠️ REPOSITORY osv-scanner yes 1 no 0.11s
✅ REPOSITORY secretlint yes no no 2.0s
✅ REPOSITORY syft yes no no 2.17s
✅ REPOSITORY trivy yes no no 13.07s
✅ REPOSITORY trivy-sbom yes no no 0.14s
✅ REPOSITORY trufflehog yes no no 4.54s

Detailed Issues

⚠️ REPOSITORY / osv-scanner - 1 error
Scanning dir .
Starting filesystem walk for root: /
End status: 40 dirs visited, 134 inodes visited, 0 Extract calls, 2.925239ms elapsed, 2.925459ms wall time
No package sources found, --help for usage information.

Notices

📣 MegaLinter 9.5.0 is out! Discover the new features and security recommendations in the release announcement. (Skip this info by defining SECURITY_SUGGESTIONS: false)

See detailed reports in MegaLinter artifacts

Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)

  • Documentation: Custom Flavors
  • Command: npx mega-linter-runner@9.5.0 --custom-flavor-setup --custom-flavor-linters BASH_EXEC,BASH_SHELLCHECK,REPOSITORY_CHECKOV,REPOSITORY_DEVSKIM,REPOSITORY_DUSTILOCK,REPOSITORY_GITLEAKS,REPOSITORY_GRYPE,REPOSITORY_OSV_SCANNER,REPOSITORY_SECRETLINT,REPOSITORY_SYFT,REPOSITORY_TRIVY,REPOSITORY_TRIVY_SBOM,REPOSITORY_TRUFFLEHOG,REPOSITORY_KINGFISHER

MegaLinter is graciously provided by OX Security
Show us your support by starring ⭐ the repository

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

⚠️MegaLinter analysis: Success with warnings

Descriptor Linter Files Fixed Errors Warnings Elapsed time
✅ ACTION actionlint 5 0 0 0.57s
✅ ACTION zizmor 5 0 0 0 0.83s
✅ BASH bash-exec 3 0 0 0.01s
✅ BASH shellcheck 3 0 0 0.06s
✅ BASH shfmt 3 0 0 0 0.01s
✅ COPYPASTE jscpd yes no no 0.55s
✅ EDITORCONFIG editorconfig-checker 63 0 0 0.12s
✅ JSON prettier 2 0 0 0 0.36s
✅ JSON v8r 2 0 0 4.25s
⚠️ MARKDOWN markdownlint 6 0 2 0 0.63s
✅ MARKDOWN markdown-table-formatter 6 0 0 0 0.16s
✅ REPOSITORY checkov yes no no 21.57s
✅ REPOSITORY gitleaks yes no no 2.01s
✅ REPOSITORY git_diff yes no no 0.01s
✅ REPOSITORY grype yes no no 50.71s
⚠️ REPOSITORY osv-scanner yes 1 no 0.18s
✅ REPOSITORY secretlint yes no no 1.12s
✅ REPOSITORY syft yes no no 2.59s
✅ REPOSITORY trivy yes no no 10.98s
✅ REPOSITORY trivy-sbom yes no no 0.15s
✅ REPOSITORY trufflehog yes no no 4.32s
⚠️ SPELL lychee 20 2 0 1.05s
✅ YAML prettier 10 0 0 0 0.55s
✅ YAML v8r 10 0 0 5.51s
✅ YAML yamllint 10 0 0 0.36s

Detailed Issues

⚠️ SPELL / lychee - 2 errors
📝 Summary
---------------------
🔍 Total...........20
🔗 Unique..........15
✅ Successful......18
⏳ Timeouts.........0
🔀 Redirected.......3
👻 Excluded.........0
❓ Unknown..........0
🚫 Errors...........2
⛔ Unsupported......2

Errors in chezmoi/private_dot_config/mcp/mcp_servers.json
[406] https://mcp.deepwiki.com/mcp (at 12:15) | Rejected status code: 406 Not Acceptable

Errors in chezmoi/private_dot_config/opencode/create_opencode.jsonc
[406] https://mcp.deepwiki.com/mcp (at 28:15) | Rejected status code: 406 Not Acceptable

Hint: Followed 3 redirects. You might want to consider replacing redirecting URLs with the resolved URLs. Use verbose mode (`-v`/`-vv`) to see redirection details.
Hint: You can configure accepted/rejected response codes with `-a` or `--accept`
⚠️ MARKDOWN / markdownlint - 2 errors
chezmoi/private_dot_claude/modify_CLAUDE.md:1 error MD041/first-line-heading/first-line-h1 First line in a file should be a top-level heading [Context: "{{- /*chezmoi:modify-template*..."]
chezmoi/private_dot_config/opencode/modify_AGENTS.md:1 error MD041/first-line-heading/first-line-h1 First line in a file should be a top-level heading [Context: "{{- /*chezmoi:modify-template*..."]
⚠️ REPOSITORY / osv-scanner - 1 error
Scanning dir .
Starting filesystem walk for root: /
End status: 40 dirs visited, 134 inodes visited, 0 Extract calls, 1.983832ms elapsed, 1.983987ms wall time
No package sources found, --help for usage information.

Notices

📣 MegaLinter 9.5.0 is out! Discover the new features and security recommendations in the release announcement. (Skip this info by defining SECURITY_SUGGESTIONS: false)

See detailed reports in MegaLinter artifacts

Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)

  • Documentation: Custom Flavors
  • Command: npx mega-linter-runner@9.5.0 --custom-flavor-setup --custom-flavor-linters ACTION_ACTIONLINT,ACTION_ZIZMOR,BASH_EXEC,BASH_SHELLCHECK,BASH_SHFMT,COPYPASTE_JSCPD,EDITORCONFIG_EDITORCONFIG_CHECKER,JSON_V8R,JSON_PRETTIER,MARKDOWN_MARKDOWNLINT,MARKDOWN_MARKDOWN_TABLE_FORMATTER,REPOSITORY_CHECKOV,REPOSITORY_GIT_DIFF,REPOSITORY_GITLEAKS,REPOSITORY_GRYPE,REPOSITORY_OSV_SCANNER,REPOSITORY_SECRETLINT,REPOSITORY_SYFT,REPOSITORY_TRIVY,REPOSITORY_TRIVY_SBOM,REPOSITORY_TRUFFLEHOG,SPELL_LYCHEE,YAML_PRETTIER,YAML_YAMLLINT,YAML_V8R

MegaLinter is graciously provided by OX Security
Show us your support by starring ⭐ the repository

@github-actions github-actions Bot added size/S and removed size/XS labels Jul 2, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
chezmoi/.chezmoiscripts/run_onchange_setup_claude.sh.tmpl (1)

20-30: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value

Plugin ids verified valid; minor grouping inconsistency.

Confirmed via search that gopls-lsp, claude-code-setup, and superpowers are legitimate plugins in anthropics/claude-plugins-official. One nit: superpowers@claude-plugins-official (line 29) is placed after the non-official caveman/context-mode/memsearch entries, breaking the otherwise clean grouping of official plugins (lines 21-25) ahead of other-marketplace plugins (lines 26-28). Purely cosmetic since install order doesn't affect behavior.

♻️ Optional grouping fix
 plugins=(
   claude-code-setup@claude-plugins-official
   claude-md-management@claude-plugins-official
   gopls-lsp@claude-plugins-official
   pyright-lsp@claude-plugins-official
   typescript-lsp@claude-plugins-official
+  superpowers@claude-plugins-official
   caveman@caveman
   context-mode@context-mode
   memsearch@memsearch
-  superpowers@claude-plugins-official
 )
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@chezmoi/.chezmoiscripts/run_onchange_setup_claude.sh.tmpl` around lines 20 -
30, The plugin list in the setup template has a grouping inconsistency: official
Claude plugins are split by non-official entries. Reorder the plugins in the
plugins array in run_onchange_setup_claude.sh.tmpl so the official entries stay
together, keeping superpowers@claude-plugins-official with the other
anthropics/claude-plugins-official items before caveman, context-mode, and
memsearch.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@chezmoi/.chezmoiscripts/run_onchange_setup_claude.sh.tmpl`:
- Around line 20-30: The plugin list in the setup template has a grouping
inconsistency: official Claude plugins are split by non-official entries.
Reorder the plugins in the plugins array in run_onchange_setup_claude.sh.tmpl so
the official entries stay together, keeping superpowers@claude-plugins-official
with the other anthropics/claude-plugins-official items before caveman,
context-mode, and memsearch.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 860e68b5-4bf6-4042-9a1d-fc92b248a6f9

📥 Commits

Reviewing files that changed from the base of the PR and between dd6922d and 7b25d51.

📒 Files selected for processing (1)
  • chezmoi/.chezmoiscripts/run_onchange_setup_claude.sh.tmpl

yxtay and others added 3 commits July 2, 2026 13:01
Extract AGENTS.md into a reusable .chezmoitemplates entry consumed by
opencode and the agents dir. CLAUDE.md and opencode AGENTS.md become
modify-templates that preserve plugin edits after a CHEZMOI_END marker.
Exclude those templates from markdownlint so it can't mangle the
chezmoi comment syntax. Rename memsearch plugin source and ignore
.memsearch dirs.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-actions github-actions Bot added size/M and removed size/S labels Jul 2, 2026
@yxtay

yxtay commented Jul 2, 2026

Copy link
Copy Markdown
Owner Author

/gemini review

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request reorganizes and prunes the list of Claude plugins, introduces chezmoi modify-templates for CLAUDE.md and AGENTS.md, ignores the .memsearch directory in git, and excludes modify templates from markdown linting. A critical issue was identified in the plugin setup script where changing the memsearch plugin source to memsearch-plugins will cause installation failure due to a missing marketplace alias.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread chezmoi/.chezmoiscripts/run_onchange_setup_claude.sh.tmpl
@yxtay
yxtay merged commit 922eb7b into main Jul 2, 2026
19 of 20 checks passed
@yxtay
yxtay deleted the feat/trim-claude-plugins branch July 2, 2026 05:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant