# Roo Codeへの貢献 Roo Codeへの貢献に興味を持っていただき、ありがとうございます。バグの修正、機能の追加、またはドキュメントの改善など、すべての貢献がRoo Codeをよりスマートにします!コミュニティを活気に満ちた歓迎的なものに保つため、すべてのメンバーは[行動規範](CODE_OF_CONDUCT.md)を順守する必要があります。 ## コミュニティに参加する すべての貢献者に[Discordコミュニティ](https://discord.gg/roocode)への参加を強く推奨します!Discordサーバーに参加することで以下のメリットがあります: - 貢献に関するリアルタイムのヘルプとガイダンスを得られる - 他の貢献者やコアチームメンバーとつながれる - プロジェクトの開発と優先事項について最新情報を得られる - Roo Codeの将来を形作るディスカッションに参加できる - 他の開発者とのコラボレーションの機会を見つけられる ## バグや問題の報告 バグレポートはRoo Codeをより良くするのに役立ちます!新しい課題を作成する前に、重複を避けるために[既存の課題を検索](https://github.com/RooVetGit/Roo-Code/issues)してください。バグを報告する準備ができたら、関連情報の入力を手助けするテンプレートが用意されている[課題ページ](https://github.com/RooVetGit/Roo-Code/issues/new/choose)にアクセスしてください。
🔐 重要: セキュリティ脆弱性を発見した場合は、Githubセキュリティツールを使用して非公開で報告してください。
## 取り組む内容の決定 良い最初の貢献を探していますか?[Roo Code Issues](https://github.com/orgs/RooVetGit/projects/1) Githubプロジェクトの「Issue [Unassigned]」セクションの課題をチェックしてください。これらは新しい貢献者や私たちが助けを必要としている領域のために特別に選ばれています! また、[ドキュメント](https://docs.roocode.com/)への貢献も歓迎します!タイプミスの修正、既存ガイドの改善、または新しい教育コンテンツの作成など、Roo Codeを最大限に活用するためのコミュニティ主導のリソースリポジトリの構築を目指しています。任意のページで「Edit this page」をクリックすると、ファイルを編集するためのGithubの適切な場所にすぐに移動できます。または、https://github.com/RooVetGit/Roo-Code-Docs に直接アクセスすることもできます。 より大きな機能に取り組む予定がある場合は、Roo Codeのビジョンに合致するかどうかを議論するために、まず[機能リクエスト](https://github.com/RooVetGit/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop)を作成してください。 ## 開発のセットアップ 1. リポジトリを**クローン**します: ```sh git clone https://github.com/RooVetGit/Roo-Code.git ``` 2. **依存関係をインストール**します: ```sh npm run install:all ``` 3. **ウェブビュー(Vite/ReactアプリとHMR)を起動**します: ```sh npm run dev ``` 4. **デバッグ**: VSCodeで`F5`キー(または**実行**→**デバッグの開始**)を押すと、Roo Codeがロードされた新しいセッションが開きます。 ウェブビューへの変更はすぐに反映されます。コア拡張機能への変更は、拡張機能ホストの再起動が必要です。 または、.vsixファイルをビルドしてVSCodeに直接インストールすることもできます: ```sh npm run build ``` `bin/`ディレクトリに`.vsix`ファイルが作成され、以下のコマンドでインストールできます: ```sh code --install-extension bin/roo-cline-.vsix ``` ## コードの作成と提出 誰でもRoo Codeにコードを貢献できますが、貢献がスムーズに統合されるように以下のガイドラインに従ってください: 1. **プルリクエストを焦点を絞ったものにする** - PRを単一の機能またはバグ修正に限定する - より大きな変更を小さく関連したPRに分割する - 変更を独立してレビューできる論理的なコミットに分ける 2. **コード品質** - すべてのPRはlintingとフォーマットの両方を含むCIチェックに合格する必要がある - 提出前にESLintの警告やエラーを解決する - 自動コードレビューツールであるEllipsisからのすべてのフィードバックに対応する - TypeScriptのベストプラクティスに従い、型の安全性を維持する 3. **テスト** - 新機能にはテストを追加する - `npm test`を実行してすべてのテストが合格することを確認する - 変更が影響する既存のテストを更新する - 適切な場合は単体テストと統合テストの両方を含める 4. **コミットガイドライン** - 明確で説明的なコミットメッセージを書く - #issue-number を使用してコミットで関連する課題を参照する 5. **提出前に** - 最新のmainブランチに対してあなたのブランチをリベースする - あなたのブランチが正常にビルドされることを確認する - すべてのテストが合格していることを再確認する - デバッグコードやコンソールログがないか変更を見直す 6. **プルリクエストの説明** - 変更内容を明確に説明する - 変更をテストするための手順を含める - 破壊的変更がある場合はリストアップする - UI変更の場合はスクリーンショットを追加する ## 貢献同意 プルリクエストを提出することにより、あなたの貢献がプロジェクトと同じライセンス([Apache 2.0](../LICENSE))の下でライセンスされることに同意したものとみなします。