Split skill-set plugin into 5 independent plugins - #3
Conversation
Document the design for splitting skill-set plugin into 5 independent plugins: - browser-automation - consulting-peer-llms - managing-git-workflow - understanding-code-context - coderabbit-feedback Key decisions: - Complete independence (no shared dependencies) - Flat structure (no nested skills/ directory) - Monorepo management - Command grouping by functionality
Created 5 separate plugins from the monolithic skill-set plugin: - browser-automation: Playwright automation with templates - consulting-peer-llms: Peer LLM reviews (Gemini, Codex) - managing-git-workflow: Git workflow automation (commit, push, PR) - understanding-code-context: Code exploration with Serena/Context7 - coderabbit-feedback: CodeRabbit review processing with Linear Changes: - Created flat plugin structure (removed nested skills/ directory) - Generated plugin.json for each plugin - Updated marketplace.json to register all 5 plugins - Updated README.md with individual plugin installation instructions - Removed old skill-set/ directory Each plugin is now independently installable and fully self-contained.
WalkthroughThe PR refactors a monolithic skill-set plugin into five independent, modular plugins within a monorepo structure. Updates include new plugin manifests, a consolidated marketplace configuration, and comprehensive README documentation reflecting the plugin-centric architecture. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes
Possibly related PRs
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (3)
docs/plans/2025-11-11-plugin-separation-design.md (2)
31-31: Add language identifiers to fenced code blocks.Fenced code blocks should specify their language (e.g.,
```json,```bash) for proper syntax highlighting and linting compliance. This applies to lines 31, 47, 57, 69, 87, and 99.Example fix for line 31:
-``` +``` skill-set/ (monorepo root)Note: Lines 112, 125, 138, 153, 167 contain JSON code blocks that should also use
```jsonlanguage specifier.Also applies to: 47-47, 57-57, 69-69, 87-87, 99-99
46-46: Use markdown headings instead of emphasis for section labels.Lines 46, 56, 68, 86, 98 use bold emphasis (e.g.,
**browser-automation/**) where proper markdown headings (e.g.,### browser-automation) would be more semantically correct and aid document navigation.Example fix for line 46:
-**browser-automation/** +### browser-automationAlso applies to: 56-56, 68-68, 86-86, 98-98 </blockquote></details> <details> <summary>README.md (1)</summary><blockquote> `94-96`: **Add language identifier to code block.** Line 94's code block should specify a language (e.g., ` ```text ` or ` ```plaintext `) for consistency with markdown linting standards. ```diff -``` +```text Use the [skill-name] skill to [task description] -``` +```
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (8)
.claude-plugin/marketplace.json(1 hunks)README.md(2 hunks)browser-automation/.claude-plugin/plugin.json(1 hunks)coderabbit-feedback/.claude-plugin/plugin.json(2 hunks)consulting-peer-llms/.claude-plugin/plugin.json(1 hunks)docs/plans/2025-11-11-plugin-separation-design.md(1 hunks)managing-git-workflow/.claude-plugin/plugin.json(1 hunks)understanding-code-context/.claude-plugin/plugin.json(1 hunks)
🧰 Additional context used
🪛 markdownlint-cli2 (0.18.1)
README.md
94-94: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
docs/plans/2025-11-11-plugin-separation-design.md
31-31: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
46-46: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
47-47: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
56-56: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
57-57: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
68-68: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
69-69: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
86-86: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
87-87: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
98-98: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
99-99: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🔇 Additional comments (10)
consulting-peer-llms/.claude-plugin/plugin.json (1)
1-9: LGTM!The manifest is well-structured and clearly describes the plugin's functionality for parallel LLM reviews.
coderabbit-feedback/.claude-plugin/plugin.json (1)
1-25: LGTM!The manifest correctly separates this plugin with its own identity, preserving the Linear MCP server configuration and referencing the appropriate commands and agent directories. Structure aligns with the design specification.
understanding-code-context/.claude-plugin/plugin.json (1)
1-9: LGTM!Clean and focused manifest for a code exploration skill plugin. Description accurately conveys LSP and documentation capabilities.
browser-automation/.claude-plugin/plugin.json (1)
1-9: LGTM!Well-structured manifest clearly defining browser automation capabilities with Playwright and templates.
.claude-plugin/marketplace.json (1)
7-31: LGTM!The marketplace successfully aggregates all five independent plugins with consistent metadata. Descriptions align with the plugin manifests and design specification. The consolidated marketplace.json under
.claude-plugin/correctly supports the monorepo distribution model.managing-git-workflow/.claude-plugin/plugin.json (1)
1-12: LGTM!Manifest properly separates git workflow commands with the appropriate
commandsentry point. Structure aligns with the design specification for command-based plugins.docs/plans/2025-11-11-plugin-separation-design.md (1)
1-282: Comprehensive design document with clear rationale.The document provides thorough architecture details, concrete examples matching the actual implementation, migration steps, and testing plans. The five-plugin separation rationale is well-articulated, and the design decisions clearly justify the independence model.
README.md (3)
3-27: Clear and comprehensive installation guidance.The README effectively communicates the shift to a modular plugin architecture with both sequential and parallel installation options. Installation instructions provide immediate clarity for users transitioning from the monolithic plugin model.
29-88: Well-structured plugin documentation with clear use-case guidance.Each plugin section clearly describes functionality, use cases, and features. The command namespace syntax (
/managing-git-workflow:commit) is consistent and intuitive. Command descriptions and feature lists are comprehensive and user-focused.
1-102: Excellent documentation reflecting the plugin separation strategy.The README successfully reframes the project as a curated collection of independent plugins rather than a monolithic tool. Instructions are clear, plugin purposes are well-articulated, and the namespace-based command syntax provides a clean API for users. The shift from "skills" to "plugins" terminology is appropriately reflected throughout.
Summary
Split the monolithic
skill-setplugin into 5 independent plugins that can be installed separately. Each plugin is now self-contained with its ownplugin.jsonconfiguration.Created Plugins
Changes
skills/directory)plugin.jsonfor each pluginmarketplace.jsonto register all 5 pluginsskill-set/directorydocs/plans/2025-11-11-plugin-separation-design.mdInstallation
Users can now install plugins individually:
/plugin install browser-automation /plugin install managing-git-workflow # etc... Or install all at once: /plugin install browser-automation consulting-peer-llms managing-git-workflow understanding-code-context coderabbit-feedbackBenefits
Summary by CodeRabbit
New Features
Documentation