Skip to content

feat(cli): rename plugin command to plugins (keep plugin alias)#224

Merged
bomly-guy merged 1 commit into
mainfrom
claude/compassionate-wozniak-1ce29d
Jun 30, 2026
Merged

feat(cli): rename plugin command to plugins (keep plugin alias)#224
bomly-guy merged 1 commit into
mainfrom
claude/compassionate-wozniak-1ce29d

Conversation

@bomly-guy

Copy link
Copy Markdown
Collaborator

What

Renames the top-level bomly plugin command to bomly plugins, keeping plugin as a backward-compatible alias.

Why

The command manages a collection of plugins (list, info, install, enable, verify, doctor, …), so the plural plugins reads more naturally as the management noun. Keeping plugin as an alias means existing scripts, CI configs, and muscle memory keep working with no breakage.

How

  • internal/cli/plugin_cmd.go: Use: "plugins" + Aliases: []string{"plugin"}. No other command wiring changes — the newPluginCmd symbol and root.AddCommand stay as-is. The custom help template already renders NameAndAliases, so bomly plugins --help shows Aliases: plugins, plugin for free.
  • Updated in-code examples/help text (plugin_cmd.go, help_cmd.go, internal/support/component_docs.go) and regenerated component docs.
  • Updated user-facing docs to the canonical plugins form: README.md, docs/PLUGINS.md, docs/DETECTORS.md, docs/MATCHERS.md, docs/GLOSSARY.md, docs/plugins/how-to-implement-*.md, dev-docs/ARCHITECTURE.md.

Tests

  • Added TestPluginCommandAlias asserting both plugins and plugin resolve to the same command.
  • Existing plugin tests still invoke the command as plugin, so they now also exercise the alias path.
  • Updated help-text assertions in help_cmd_test.go / root_cmd_test.go (footer string + a new canonical plugins --help case alongside the plugin alias case).

Verification

  • make build
  • go test ./...
  • make generate ✓ (only the intended plugins doc diffs)
  • Manual: bomly plugins list --all and bomly plugin list --all produce identical output; bomly plugins --help shows the Aliases: line; bomly --help lists the command as plugins.

Reviewer notes

This is marked feat: to land as a minor bump given it's a user-visible command surface change. The alias is intended to remain indefinitely for backward compatibility.

🤖 Generated with Claude Code

The top-level command manages a collection of plugins (list, info,
install, enable, verify, doctor, …), so the plural `plugins` reads more
naturally as the management noun.

`plugins` is now the canonical command, with `plugin` registered as a
Cobra alias so existing scripts, CI configs, and muscle memory keep
working. The custom help template already renders `NameAndAliases`, so
`bomly plugins --help` surfaces the alias automatically.

Also updates in-code examples/help text and all user-facing docs to the
canonical `plugins` form, and adds TestPluginCommandAlias asserting both
names resolve to the same command (existing tests continue to invoke the
`plugin` alias, exercising the backward-compat path).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

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

Next review available in: 30 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: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: a2784f7d-6c65-4142-9476-df36708c97a8

📥 Commits

Reviewing files that changed from the base of the PR and between e8f3cd4 and 1d7d180.

📒 Files selected for processing (15)
  • README.md
  • dev-docs/ARCHITECTURE.md
  • docs/DETECTORS.md
  • docs/GLOSSARY.md
  • docs/MATCHERS.md
  • docs/PLUGINS.md
  • docs/plugins/how-to-implement-auditor.md
  • docs/plugins/how-to-implement-detector.md
  • docs/plugins/how-to-implement-matcher.md
  • internal/cli/help_cmd.go
  • internal/cli/help_cmd_test.go
  • internal/cli/plugin_cmd.go
  • internal/cli/plugin_cmd_test.go
  • internal/cli/root_cmd_test.go
  • internal/support/component_docs.go
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/compassionate-wozniak-1ce29d

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.

@github-actions

Copy link
Copy Markdown
Contributor

Bomly Diff Summary

Compared e8f3cd43d6502c110f864c924fa5334efeed4b90 to 1d7d180ae57662aa2c0ee79a0803fa100723b350.

Overview

Status Manifests Dependencies Findings Duration
✅ Pass +0 / ~0 / -0 +0 / ~0 / -0 0 introduced / 0 persisted / 0 resolved 1m 9s

Dependency Changes

✅ No dependency changes.

Vulnerabilities

✅ No vulnerability changes.

License Changes

✅ No license changes.

Project Posture

✅ No project posture changes (--matchers +scorecard was not selected).

Policy Findings

✅ No policy differences were identified.

@bomly-guy bomly-guy merged commit 1d53d67 into main Jun 30, 2026
13 checks passed
@bomly-guy bomly-guy deleted the claude/compassionate-wozniak-1ce29d branch June 30, 2026 09:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant