このレッスンでやること
前回でセキュリティチェックまで終わったので、今回はGitHubリポジトリの作成と機密情報の取り扱いを進めていきます。Vercelへデプロイするための準備として必須のステップです。
リポジトリを作るタイミング
個人的にはMVPが完成してからリポジトリを作っても問題ないと考えています。リリース後はリポジトリでブランチを切りながら開発を進めていく形になります。
Claude Codeでリポジトリを作成する
Claude Codeに以下のように依頼すればリポジトリを作成してくれます。
GitHubのリポジトリをプライベートで作ってください。リポジトリ作成には gh コマンド(GitHub CLI)を使う必要があります。GitHub CLIのインストールは Claude Code 入門講座で説明していますので、まだインストールしていない方はそちらを参考にセットアップしてください。
プライベート vs パブリック
今回はプライベートで作成するため、外部に漏れる可能性は低いです。一方、パブリックで公開すると第三者がコードを閲覧できる状態になります。そのため、どちらにしろ以下の機密情報は絶対にGitHubに上げないようにしましょう。
- 環境変数ファイル(
.env.local) - APIのSecret Key、アクセストークン
- MCPサーバー設定ファイル(
.mcp.json)
.gitignoreでアップロードを防ぐ
アップロードしたくないファイルは .gitignore で指定します。例えば以下のように記載します。
.env*
.mcp.json.env* としてアスタリスクを付けることで、.env だけでなく .env.local や .env.production など .env で始まるすべてのファイルを除外できます。
MCP設定ファイルも除外
.mcp.json には接続先のAPIキーを記載しているため、これも必ず除外しましょう。Claude Codeは賢いので自動で慣重に扱ってくれますが、万が一アップロードされると重大ですので、必ず手元で確認してください。
アップロード後の確認
Claude Codeがリポジトリを作り終わったら、GitHubリポジトリを開いて以下を確認します。
- リポジトリがプライベートになっていること
.envファイルがアップロードされていないこと.mcp.jsonがアップロードされていないこと
APIキーはすでにClaudeのサーバーに残っている
これで最低限のAPIキー漏洩は防げます。ただし以前に .env.local をClaude Codeに読み込ませていた場合、Anthropicのサーバー側にログとして残っている可能性があります。
万が一AnthropicがハッキングされたらAPIキーが漏洩する可能性はゼロではありません。Anthropicはセキュリティが強い企業なのでリスクは低いといえますが、例えばTursoのデータベーストークンが漏れたら、データの閲覧や書き換えが起きる可能性もゼロではなく、信頼問題にもつながります。
気になる方は、次の動画で説明するキーのローテーション(再発行)を行ってください。
次のステップ
リポジトリ作成は完了したので、続いてAPIキーのローテーションとClaude Codeのコンテキストにシークレットを残さないMCPサーバーの設定について説明していきます。