From 670f005f36d313afdf123c980f1f48e235fe82eb Mon Sep 17 00:00:00 2001 From: akubiusa <222856114+akubiusa@users.noreply.github.com> Date: Mon, 26 Jan 2026 15:00:19 +0900 Subject: [PATCH 1/2] =?UTF-8?q?feat:=20AI=20=E3=82=A8=E3=83=BC=E3=82=B8?= =?UTF-8?q?=E3=82=A7=E3=83=B3=E3=83=88=E7=94=A8=E3=83=97=E3=83=AD=E3=83=B3?= =?UTF-8?q?=E3=83=97=E3=83=88=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=82=92?= =?UTF-8?q?=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/copilot-instructions.md | 54 ++++++++++++++++++++++ AGENTS.md | 29 ++++++++++++ CLAUDE.md | 79 +++++++++++++++++++++++++++++++++ GEMINI.md | 42 ++++++++++++++++++ 4 files changed, 204 insertions(+) create mode 100644 .github/copilot-instructions.md create mode 100644 AGENTS.md create mode 100644 CLAUDE.md create mode 100644 GEMINI.md diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md new file mode 100644 index 00000000..44dbfa8e --- /dev/null +++ b/.github/copilot-instructions.md @@ -0,0 +1,54 @@ +# GitHub Copilot Instructions + +## プロジェクト概要 +- 目的: Tomachi アイコンと絵文字の管理および公開 +- 主な機能: アイコン・絵文字の保存、自動的な絵文字取得、README の生成 +- 対象ユーザー: Tomachi アイコンの利用者およびメンテナ + +## 共通ルール +- 会話は日本語で行う。 +- PR とコミットは Conventional Commits に従う。 +- 日本語と英数字の間には半角スペースを入れる。 + +## 技術スタック +- 言語: TypeScript +- 実行環境: Node.js (tsx) +- パッケージマネージャー: pnpm +- 主要ライブラリ: axios, sharp, yargs + +## 開発コマンド +スクリプトは `.github/scripts/` 内の各ディレクトリにあります。 + +### fetch-tomachi-emojis +```bash +cd .github/scripts/fetch-tomachi-emojis +pnpm install +pnpm start # 絵文字の取得 +pnpm lint # Lint 実行 +pnpm fix # Lint 自動修正 +``` + +### generate-readme +```bash +cd .github/scripts/generate-readme +pnpm install +pnpm start # README の生成 +pnpm lint # Lint 実行 +pnpm fix # Lint 自動修正 +``` + +## コーディング規約 +- TypeScript の `skipLibCheck` は使用しない。 +- 関数やインターフェースには日本語で JSDoc を記載する。 +- エラーメッセージは英語で記載する。 +- 既存の `eslint.config.mjs` および Prettier 設定に従う。 + +## テスト方針 +- 現在、自動テストは導入されていません。 + +## セキュリティ / 機密情報 +- Discord トークンなどの認証情報をコミットしない。 +- ログに機密情報を出力しない。 + +## ドキュメント更新 +- アイコンの追加時は、`generate-readme` スクリプトを実行して `README.md` を更新する。 diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 00000000..ff9616cc --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,29 @@ +# AGENTS.md + +## 目的 +エージェント共通の作業方針を定義します。 + +## 基本方針 +- 会話言語: 日本語 +- コメント言語: 日本語 +- エラーメッセージ: 英語 +- コミット規約: [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) + +## 判断記録のルール +- 重要な意思決定については、判断内容、代替案、採用理由、前提条件を明示する。 + +## 開発手順(概要) +1. プロジェクト構成と既存コードの理解 +2. スクリプトディレクトリでの `pnpm install` +3. 実装および `pnpm fix` によるフォーマット修正 +4. 動作確認および `pnpm lint` での検証 + +## セキュリティ / 機密情報 +- Discord トークン等の認証情報を絶対にコミットしない。 +- ログに機密情報を出力しない。 + +## リポジトリ固有 +- アイコン画像は `icons/` に追加します。 +- ステッカー画像は `stickers/` に追加します。 +- `emojis.json` は `.github/scripts/fetch-tomachi-emojis` で更新されます。 +- `README.md` は `.github/scripts/generate-readme` で更新されます。 diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 00000000..d249f627 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,79 @@ +# CLAUDE.md + +## 目的 +Claude Code の作業方針とプロジェクト固有ルールを示します。 + +## 判断記録のルール +- 判断内容の要約 +- 検討した代替案 +- 採用しなかった案とその理由 +- 前提条件・仮定・不確実性 +- 他エージェントによるレビュー可否 + +## プロジェクト概要 +- 目的: Tomachi アイコンと絵文字の管理・公開 +- 主な機能: 画像アセットの管理、Discord 絵文字データの取得、カタログ生成 + +## 重要ルール +- 会話言語: 日本語 +- コミット規約: Conventional Commits +- コメント言語: 日本語 +- エラーメッセージ: 英語 + +## 環境のルール +- ブランチ命名: Conventional Branch (`feat/`, `fix/`) +- GitHub リポジトリ調査: 必要に応じてテンポラリディレクトリに clone して検索 +- Renovate PR: 追加コミットや更新を行わない + +## コード改修時のルール +- 日本語と英数字の間には半角スペースを挿入 +- エラーメッセージの絵文字は全体で統一 +- TypeScript の `skipLibCheck` 禁止 +- docstring (JSDoc) を日本語で記載 + +## 相談ルール +- Codex CLI: 実装レビュー、局所設計、整合性確認 +- Gemini CLI: 外部仕様、最新情報確認 +- 指摘への対応: 黙殺せず、必ず対応または理由を回答 + +## 開発コマンド +リポジトリ内の各スクリプトディレクトリ(`.github/scripts/*`)で実行します。 + +```bash +pnpm install # 依存関係のインストール +pnpm start # スクリプトの実行 +pnpm lint # Lint 実行 +pnpm fix # 自動修正 +``` + +## アーキテクチャと主要ファイル +- `icons/`: アイコン画像ファイル +- `stickers/`: ステッカー画像ファイル +- `emojis.json`: 取得された絵文字データ +- `targetGuilds.json`: 取得対象の Discord サーバー ID +- `.github/scripts/`: 管理用スクリプト (TypeScript) + +## 作業チェックリスト + +### 新規改修時 +1. プロジェクト構成の理解 +2. 適切な作業ブランチの作成 (`feat/` or `fix/`) +3. `pnpm install` による依存関係の解決 + +### コミット・プッシュ前 +1. Conventional Commits の遵守 +2. 機密情報(Discord Token 等)の混入確認 +3. `pnpm lint` でのエラー確認 +4. 動作確認 + +### PR 作成前 +1. ユーザーへの依頼確認 +2. コンフリクトの有無を確認 + +### PR 作成後 +1. PR 本文が日本語で詳細に記載されているか確認 +2. GitHub Actions CI の成功を確認 +3. Copilot レビューへの対応 + +## リポジトリ固有 +- アイコンを追加した際は、必ず `generate-readme` を実行して README を更新する必要があります。 diff --git a/GEMINI.md b/GEMINI.md new file mode 100644 index 00000000..e3a03ba8 --- /dev/null +++ b/GEMINI.md @@ -0,0 +1,42 @@ +# GEMINI.md + +## 目的 +Gemini CLI 向けのコンテキストと作業方針を定義します。 + +## 出力スタイル +- 言語: 日本語 +- トーン: プロフェッショナルかつ簡潔 +- 形式: Monospace でのレンダリングを想定した Markdown + +## 共通ルール +- 会話言語: 日本語 +- コミット規約: Conventional Commits +- 日本語と英数字の間には半角スペースを入れる + +## プロジェクト概要 +- 目的: Tomachi アイコン・絵文字のホスティングとメタデータ管理 +- 主な機能: Discord 絵文字の自動取得、カタログ (README) の自動生成 + +## コーディング規約 +- 言語: TypeScript +- コメント: 日本語 +- エラーメッセージ: 英語 +- `skipLibCheck` の使用禁止 + +## 開発コマンド +`.github/scripts/` 下の各プロジェクトで `pnpm` を使用します。 + +```bash +pnpm install +pnpm start +pnpm lint +pnpm fix +``` + +## 注意事項 +- 認証情報のコミット禁止 +- 既存の命名規則やディレクトリ構成を優先 +- README は自動生成されるため、直接編集する際はテンプレート (`.github/scripts/generate-readme/src/template.md`) を確認すること + +## リポジトリ固有 +- 新しいアイコンが追加された場合、エージェントは README の更新スクリプトを提案または実行すべきです。 From 8c70235698f1b00f01e396e6234ab71181b24b6d Mon Sep 17 00:00:00 2001 From: akubiusa <222856114+akubiusa@users.noreply.github.com> Date: Tue, 27 Jan 2026 09:08:29 +0900 Subject: [PATCH 2/2] =?UTF-8?q?fix:=20GitHub=20Copilot=20=E3=83=AC?= =?UTF-8?q?=E3=83=93=E3=83=A5=E3=83=BC=E6=8C=87=E6=91=98=E3=81=AB=E5=AF=BE?= =?UTF-8?q?=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - プロジェクト概要にステッカーを追加 - 絵文字の取得→絵文字・ステッカーの取得に修正 - README テンプレートパスを正しく修正 - pnpm start の実行例と --help の案内を追記 - stickers.json の更新についても記載 Co-Authored-By: Claude Sonnet 4.5 --- .github/copilot-instructions.md | 10 ++++++---- AGENTS.md | 1 + CLAUDE.md | 10 ++++++++-- GEMINI.md | 12 +++++++++--- 4 files changed, 24 insertions(+), 9 deletions(-) diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 44dbfa8e..86e1421b 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -1,8 +1,8 @@ # GitHub Copilot Instructions ## プロジェクト概要 -- 目的: Tomachi アイコンと絵文字の管理および公開 -- 主な機能: アイコン・絵文字の保存、自動的な絵文字取得、README の生成 +- 目的: Tomachi アイコン・絵文字・ステッカーの管理および公開 +- 主な機能: アイコン・絵文字・ステッカーの保存、自動的な絵文字取得、README の生成 - 対象ユーザー: Tomachi アイコンの利用者およびメンテナ ## 共通ルール @@ -23,7 +23,7 @@ ```bash cd .github/scripts/fetch-tomachi-emojis pnpm install -pnpm start # 絵文字の取得 +pnpm start # 絵文字・ステッカーの取得 pnpm lint # Lint 実行 pnpm fix # Lint 自動修正 ``` @@ -32,7 +32,9 @@ pnpm fix # Lint 自動修正 ```bash cd .github/scripts/generate-readme pnpm install -pnpm start # README の生成 +pnpm start -- --target-emojis ../../emojis --output ../../README.md # README の生成 +# もしくはヘルプを参照: +# pnpm start -- --help pnpm lint # Lint 実行 pnpm fix # Lint 自動修正 ``` diff --git a/AGENTS.md b/AGENTS.md index ff9616cc..9778fee3 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -26,4 +26,5 @@ - アイコン画像は `icons/` に追加します。 - ステッカー画像は `stickers/` に追加します。 - `emojis.json` は `.github/scripts/fetch-tomachi-emojis` で更新されます。 +- `stickers.json` は `.github/scripts/fetch-tomachi-emojis` で更新されます。 - `README.md` は `.github/scripts/generate-readme` で更新されます。 diff --git a/CLAUDE.md b/CLAUDE.md index d249f627..e094c98a 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -12,7 +12,7 @@ Claude Code の作業方針とプロジェクト固有ルールを示します ## プロジェクト概要 - 目的: Tomachi アイコンと絵文字の管理・公開 -- 主な機能: 画像アセットの管理、Discord 絵文字データの取得、カタログ生成 +- 主な機能: 画像アセットの管理、Discord 絵文字・ステッカー データの取得、カタログ生成 ## 重要ルール - 会話言語: 日本語 @@ -41,7 +41,13 @@ Claude Code の作業方針とプロジェクト固有ルールを示します ```bash pnpm install # 依存関係のインストール -pnpm start # スクリプトの実行 + +# 利用可能なサブコマンドや必須オプションを確認 +pnpm start -- --help + +# 必須オプションを指定して実行する(例) +# pnpm start -- --input --output + pnpm lint # Lint 実行 pnpm fix # 自動修正 ``` diff --git a/GEMINI.md b/GEMINI.md index e3a03ba8..b988a506 100644 --- a/GEMINI.md +++ b/GEMINI.md @@ -15,7 +15,7 @@ Gemini CLI 向けのコンテキストと作業方針を定義します。 ## プロジェクト概要 - 目的: Tomachi アイコン・絵文字のホスティングとメタデータ管理 -- 主な機能: Discord 絵文字の自動取得、カタログ (README) の自動生成 +- 主な機能: Discord 絵文字・ステッカーの自動取得、カタログ (README) の自動生成 ## コーディング規約 - 言語: TypeScript @@ -28,7 +28,13 @@ Gemini CLI 向けのコンテキストと作業方針を定義します。 ```bash pnpm install -pnpm start + +# 利用可能なサブコマンドや必須オプションを確認 +pnpm start -- --help + +# 必須オプションを指定して実行する(例) +# pnpm start -- --input --output + pnpm lint pnpm fix ``` @@ -36,7 +42,7 @@ pnpm fix ## 注意事項 - 認証情報のコミット禁止 - 既存の命名規則やディレクトリ構成を優先 -- README は自動生成されるため、直接編集する際はテンプレート (`.github/scripts/generate-readme/src/template.md`) を確認すること +- README は自動生成されるため、直接編集する際はテンプレート (`.github/scripts/generate-readme/template.md`) を確認すること ## リポジトリ固有 - 新しいアイコンが追加された場合、エージェントは README の更新スクリプトを提案または実行すべきです。