fix: Claude Codeプラグイン設定エラーを修正 - #170
Conversation
- 存在しないマーケットプレイスのプラグインを削除 - キャッシュに未インストールのプラグインを削除 - Dockerfile に known_marketplaces.json のコピーを追加 - setup-claude.sh に plugins ディレクトリの同期を追加 - known_marketplaces.json を環境固有のため同期対象外に設定 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
📝 WalkthroughWalkthroughUpdates Claude plugin configuration by curating the plugin list to cache-verified entries, adds known_marketplaces.json copying to the development container Dockerfile, and modifies the setup script to skip marketplace data synchronization while ensuring plugin directory inclusion. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 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 |
プルリクエストレビュー: Claude Codeプラグイン設定エラー修正全体評価このPRは Claude Code プラグイン設定のエラーを修正し、Docker 環境とローカル環境での一貫性を向上させる優れた改善です。以下、詳細なフィードバックを提供します。 ✅ 良い点1. 問題の適切な特定と対処
2. コードの品質
3. ドキュメンテーション
|
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
.devcontainer/Dockerfile (1)
79-79: Consider documenting whyknown_marketplaces.jsonis treated specially.The file exists and is properly tracked in the repository, so the Docker build will succeed. However, the handling pattern warrants clarification:
- The Dockerfile copies
known_marketplaces.jsonfrom the repository as the initial container configuration.- The
setup-claude.shscript explicitly skips syncing this file (line ~130: "environment-specific, don't sync"), preserving environment-specific customizations on updates.This pattern is intentional and defensible—provide defaults in the repo/image, then avoid overwriting them on subsequent syncs. However, since the file contains instance-specific data (timestamps, customized marketplace URLs), consider adding a comment in the Dockerfile explaining why this file is treated differently from other
.claude/pluginsassets. This clarifies the design intent for future maintainers.
📜 Review details
Configuration used: defaults
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (3)
.claude/plugins/plugins.txt.devcontainer/Dockerfilescript/setup-claude.sh
🧰 Additional context used
🧠 Learnings (1)
📓 Common learnings
Learnt from: CR
Repo: keito4/config PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-01T03:45:17.253Z
Learning: Applies to .github/workflows/claude.yml : Trigger automatic AI assistance on claude mentions in issues, PRs, and comments using .github/workflows/claude.yml
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: claude-review
🔇 Additional comments (5)
script/setup-claude.sh (2)
122-127: LGTM! Correctly handles environment-specific file.The skip logic for
known_marketplaces.jsonis well-implemented and aligns with the PR objective to treat this file as environment-specific. The implementation:
- Follows the existing code pattern
- Properly increments the skipped counter
- Provides clear Japanese logging consistent with the codebase
This ensures that local marketplace data won't be overwritten during synchronization.
243-243: LGTM! Completes the plugin synchronization strategy.Adding the plugins directory sync ensures
plugins.txtis synchronized while respecting the environment-specific nature ofknown_marketplaces.json(skipped at lines 122-127). This aligns with the PR objective to properly sync plugin configurations..claude/plugins/plugins.txt (3)
6-11: LGTM! Cache-verified plugin curation.The Code Plugins section correctly lists only cache-verified plugins from the
claude-code-pluginsmarketplace. This directly addresses the PR objective to eliminate errors from non-existent or uninstalled plugins.The reduction to 4 plugins is significant but appropriate given the background context about
/plugincommand errors.
13-16: LGTM! Consistent curation approach.The Workflow Plugins section follows the same cache-verification approach, retaining only
backend-development. This consistency ensures reliable plugin installation across environments.
17-27: Excellent documentation of removed plugins!The detailed comments documenting removed plugins and their reasons (non-existent marketplace vs. cache-uninstalled) is a best practice. This:
- Provides historical context for future reference
- Makes it easy to restore plugins if they become available
- Prevents confusion about why certain plugins are missing
- Aligns with the PR test plan to verify error-free
/pluginexecution
|
🎉 This PR is included in version 1.5.1 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
Summary
Claude Code プラグイン設定のエラーを修正し、Docker環境とローカル環境で正しく動作するように改善しました。
Changes
.claude/plugins/plugins.txt: 実際に存在し動作するプラグインのみに整理.devcontainer/Dockerfile: プラグインマーケットプレイス設定のコピーを追加known_marketplaces.jsonをコンテナにコピーするよう追加script/setup-claude.sh: プラグイン同期ロジックを改善pluginsディレクトリの同期を追加known_marketplaces.jsonは環境固有のため同期対象外に設定Test Plan
/pluginコマンドを実行しエラーが表示されないことを確認setup-claude.shを実行し設定が正しく同期されることを確認Background
/pluginコマンド実行時に以下のエラーが発生していました:これは Docker コンテナビルド時と、ローカル環境での自動インストール時にプラグインエラーを引き起こしていました。
🤖 Generated with Claude Code
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.