メインコンテンツへスキップ

Claude Codeで画像生成する方法:SVG描画と画像APIの選び方

Claude Code自体は画像を出力しません。図解や文字入りカバーはコードで描画し、写真やイラストはスクリプトかMCPサーバーから画像モデルを呼びます。

LaoZhang AI Team公開29 分で読めます
目次
Claude Codeで画像生成する方法:SVGをコードで描画、スクリプトをスキル化、MCPサーバーの3つの手段を並べたカバー

Claude Codeで画像を作る経路は2つしかありません。Claudeが書いて実行するコードで描画するか、スクリプトやMCPサーバーを通して外部の画像モデルを呼ぶかです。Claude自身はどのモデル、どのプランでも画像を出力しません。Anthropicのヘルプセンターは「Claudeは画像生成ツールのように写真やイラストを生成しない」と説明し、APIドキュメントもClaudeを画像を理解するだけのモデルと位置づけています(Can Claude produce images?、Vision)。

つまり、ターミナルで「ヒーロー画像を作って」と頼んだときにピクセルを作るのは、Claudeが実行したプログラムか、別の会社の画像モデルです。どちらを使うかは、欲しい画像の種類でほぼ決まります。

  • 図解、グラフ、アイコン、文字入りのカバー画像は、ClaudeにSVGやHTMLを書かせてPNGに変換します。APIキーも追加料金も要りません。
  • 写真やイラストは画像モデルが必要です。APIを呼ぶスクリプトをスキルにまとめるか、画像モデルを提供するMCPサーバーを追加します。

以下の料金、モデルID、Claude Codeの挙動は2026年10月2日時点の各社公式ドキュメントに基づきます。チャットアプリのClaudeで画像を作れるかどうかは別の話なので、そちらはClaudeは画像を生成できる?Claudeの視覚機能完全ガイド(2026年版)を参照してください。

経路の選び方:画像の種類と使える課金で決める

最初に見るのは画像の種類、次に有料APIを有効にできるかどうか、最後に個人で使うのかリポジトリでチームに配るのかです。

状況向いている経路画像を作るもの追加の費用
図解、グラフ、文字入りカバーSVGを書かせてPNGやWebPに変換Claudeが書いたコードなし
写真、イラスト。OpenAIのAPIを使えるスクリプトをスキルにするgpt-image-2.5-flareなどトークン課金
写真、イラスト。Gemini APIの課金を有効にできるスクリプトをスキルにするgemini-3.1-flash-lite-imageなど最安のgemini-3.1-flash-lite-imageが1Kで1枚$0.0336
課金を有効にせず少量だけ試したいHugging FaceのMCPサーバー、またはCloudflare Workers AIFLUXなどのオープンモデル1日あたりの枠の範囲内
多数のモデルを切り替えて試したいfal.aiやReplicateのMCPサーバー各プラットフォームのモデル実行したモデルの料金

画像の種類と使える課金から、SVGのコード描画、スクリプトのスキル、MCPサーバーのどれを選ぶかを示す分岐図

スクリプトとMCPサーバーの違いは、主にファイルの保存先と共有のしやすさに出ます。スクリプトは--outで指定した場所、たとえばプロジェクトのassets/に直接書き出します。.claude/skills/に置けばリポジトリと一緒にチームへ配れて、キーは各自の環境変数に残ります。MCPサーバーは追加コマンド1行で済む反面、返ってきた画像はプロジェクトの外に保存され、キーの保存方法もサーバーごとに違います。

図解と文字入りカバー:SVGを書かせてPNGに変換する

図解や文字が主役の画像は、画像モデルを呼ばないほうが確実です。SVGは座標と文字列でできているので、文字が崩れず、寸法が正確で、「この箱を左に40px」といった修正がそのまま差分になります。

このブログの記事画像はこの方法で作られています。Claude Codeの中でClaudeがSVGを書き、rsvg-convertが指定サイズのPNGにレンダリングし、cwebpがWebPに変換します。カバーは2400×1350、本文画像は2000×1125で、2026年10月2日に公開した別の記事では18枚のWebPがそれぞれ136KB〜192KBに収まりました。前日の小さな計測では、911バイトの手書きSVGが135ミリ秒で1600×600のPNGになっています。1台のマシンでの記録ですが、待ち時間も費用もほぼゼロという規模感はつかめます。

Claude Codeへの頼み方は具体的なほど結果が安定します。

docs/architecture.svg を作ってください。2000×1125、背景は白。
左から「ブラウザ」「API」「DB」の3つの箱を矢印でつなぎ、日本語のラベルを入れてください。
書けたら rsvg-convert で PNG にして、その PNG を自分で読んで文字のはみ出しを確認してください。

変換は次の2行です。rsvg-convertはlibrsvg、cwebpはWebPのコマンドラインツールに含まれます。

bash
rsvg-convert -w 2000 -h 1125 docs/architecture.svg -o docs/architecture.png
cwebp -q 85 docs/architecture.png -o docs/architecture.webp

Anthropicが公開しているanthropics/skillsリポジトリの画像系スキルも同じ考え方です。canvas-design、algorithmic-art、slack-gif-creatorはいずれもコードで描画し、画像モデルは呼びません。

限界ははっきりしています。この経路では新しい写真やイラストは作れません。人物、質感のある背景、手描き風の挿絵が必要になったら、次の経路に切り替えてください。

写真とイラスト:generate.pyで画像APIを呼ぶ

写真やイラストは、画像APIを1回呼んでファイルに保存する小さなスクリプトを用意し、Claude Codeにそれを実行させます。下のgenerate.pyはPythonの標準ライブラリだけで動き、OpenAIの/v1/images/generationsにPOSTして、返ってきたbase64をデコードして保存します。

python
#!/usr/bin/env python3
"""Generate one image with the OpenAI Images API and save it to disk.

Standard library only. Reads the key from OPENAI_API_KEY; never prints it.
"""
import argparse
import base64
import json
import os
import pathlib
import sys
import urllib.error
import urllib.request

MODELS = ("gpt-image-2.5-flare", "gpt-image-2.5-sunburst")


def main() -> int:
    parser = argparse.ArgumentParser()
    parser.add_argument("--prompt", required=True)
    parser.add_argument("--out", required=True, help="output file, e.g. assets/hero.png")
    parser.add_argument("--model", default="gpt-image-2.5-flare", choices=MODELS)
    parser.add_argument("--size", default="1536x1024")
    parser.add_argument("--quality", default="low")
    args = parser.parse_args()

    key = os.environ.get("OPENAI_API_KEY")
    if not key:
        print("OPENAI_API_KEY is not set. Export it in the shell before starting claude.", file=sys.stderr)
        return 2

    out = pathlib.Path(args.out)
    if out.exists():
        print(f"{out} already exists. Choose another --out so nothing is overwritten.", file=sys.stderr)
        return 2

    base = os.environ.get("OPENAI_BASE_URL", "https://api.openai.com/v1").rstrip("/")
    body = json.dumps({
        "model": args.model,
        "prompt": args.prompt,
        "size": args.size,
        "quality": args.quality,
    }).encode()
    request = urllib.request.Request(
        f"{base}/images/generations",
        data=body,
        headers={"Authorization": f"Bearer {key}", "Content-Type": "application/json"},
    )
    try:
        with urllib.request.urlopen(request, timeout=300) as response:
            payload = json.load(response)
    except urllib.error.HTTPError as error:
        print(f"HTTP {error.code}: {error.read().decode(errors='replace')[:600]}", file=sys.stderr)
        return 1
    except urllib.error.URLError as error:
        print(f"Request failed: {error.reason}", file=sys.stderr)
        return 1

    out.parent.mkdir(parents=True, exist_ok=True)
    out.write_bytes(base64.b64decode(payload["data"][0]["b64_json"]))
    print(json.dumps({"saved": str(out), "bytes": out.stat().st_size, "usage": payload.get("usage")}))
    return 0


if __name__ == "__main__":
    sys.exit(main())

このスクリプトで2026年10月2日に確かめられているのは、拒否される経路だけです。実際のキーで画像を生成した記録はありません。

条件結果
OPENAI_API_KEYが未設定メッセージを出して終了コード2。通信は発生しない
偽のキーリクエストはapi.openai.comに届き、HTTP 401 invalid_api_key。終了コード1、ファイルは作られない
許可リストにないモデル、例--model dall-e-3argparseがinvalid choiceで止める
--outが既存ファイル終了コード2。上書きも通信もしない

成功時のusageの形、1枚あたりの費用、既定値の1536x1024とlowが手元のアカウントで通るか、所要時間は未確認です。既定値はOpenAIの画像生成ガイドに載っている値に合わせてあります。同ガイドによると、推奨サイズは1024x1024、1536x1024、1024x1536、品質はlowからmaxまでとautoで、複雑なプロンプトは2分ほどかかることがあります。タイムアウトを300秒にしているのはそのためです。

モデルは2つです。gpt-image-2.5-flareは速度重視の普段使い、gpt-image-2.5-sunburstは編集の精度が必要なとき向けです。スクリプトがモデルを許可リストで絞っているのは、Claudeが気を利かせて古いモデル名や存在しないIDを渡すのを防ぐためです。

OpenAI側には利用条件が1つあります。GPT Imageモデルを使う前にAPI Organization Verificationが求められる場合があり、対応国の政府発行の身分証が必要で、1人が認証できる組織は1つだけです。キーが正しいのにGPT Imageモデルだけ使えない場合は、まずここを確認してください。

Gemini APIのNano Bananaで同じことをする場合は、エンドポイントと応答の形が違うので別のスクリプトになります。スキルのフォルダ構成からスクリプトまではClaude CodeでNano Bananaを動かす設定にまとまっています。

generate.pyをスキルにして/imageで呼び出す

スクリプトをスキルにすると、「画像を作って」と頼むだけでClaudeが正しい引数で実行するようになります。プロジェクト用なら.claude/skills/image/、個人用なら~/.claude/skills/image/に次の2ファイルを置きます。

.claude/skills/image/
├── SKILL.md
└── scripts/
    └── generate.py
markdown
---
name: image
description: 写真やイラストなどのラスター画像をOpenAIの画像APIで生成してファイルに保存する。ユーザーが写真・イラスト・ヒーロー画像の生成を頼んだときに使う。図解やグラフには使わない。
allowed-tools: Bash(python3 ${CLAUDE_SKILL_DIR}/scripts/generate.py *)
---

次のコマンドで画像を1枚生成する。

python3 ${CLAUDE_SKILL_DIR}/scripts/generate.py --prompt "英語のプロンプト" --out assets/NAME.png

- 既定は gpt-image-2.5-flare、1536x1024、quality low。変更はユーザーが指示したときだけ。
- 1回の依頼で実行するのは1回。再生成する前にユーザーに確認する。
- 終了後、出力されたJSONの saved と usage をそのまま報告する。

descriptionは、Claudeがこのスキルを使うかどうかを判断する材料です。「図解には使わない」と書いておくと、SVGで済む依頼に有料APIを使う事故が減ります。手動で呼ぶなら/imageと入力します。

allowed-toolsの書き方は、公式ドキュメントの例Bash(${CLAUDE_SKILL_DIR}/scripts/render.sh *)をpython3での実行に合わせたものです。${CLAUDE_SKILL_DIR}はスキル本文とallowed-toolsのBashルールの両方で展開されるので、本文のコマンドとルールが一致し、確認なしで実行されます(Skills)。

スキルの追加や編集は、実行中のセッションにそのまま反映されます。例外は、セッション開始時に最上位のskillsディレクトリ自体が存在しなかった場合で、そのときは/reload-skillsを実行します。なお、個人用スキルはCoworkやクラウドのセッションには届きません。ほかにどんなスキルを入れておくと便利かはClaude Codeで最初に使うべきSkills 2026年版:ワークフロー別の公式スターターが参考になります。

MCPサーバーで画像モデルをつなぐ:Hugging Face・fal.ai・Replicate

スクリプトを書かずに試したいなら、画像モデルを提供するMCPサーバーを追加します。次のコマンドは各社の公式ドキュメントに載っている形のままで、どれも1行です。

Hugging Faceは公式MCPサーバーのREADMEにClaude Code用の手順があります。zshでは?が展開されないよう、URLを引用符で囲んでください。

bash
claude mcp add hf-mcp-server -t http "https://huggingface.co/mcp?login"

追加後にclaudeを起動して認証を済ませます。画像生成は、huggingface.co/settings/mcpで追加したSpaces経由で動きます。Hugging Faceの例にはFLUXやQwenの画像Spacesが挙がっています(hf-mcp-server)。

fal.aiはホスト型のMCPサーバーです。サーバー自体は無料で、支払うのは実行したモデルの料金だけです(fal MCP)。

bash
claude mcp add --transport http fal-ai https://mcp.fal.ai/mcp --header "Authorization: Bearer YOUR_FAL_KEY"

Replicateも公式のホスト型MCPサーバーを用意しています(Replicate MCP)。

bash
claude mcp add replicate https://mcp.replicate.com/sse --transport sse --scope user

追加後に/mcpで認証します。claude mcp listで接続状態を確認できます。

使う前に知っておきたい点が3つあります。

1つ目はファイルの保存先です。MCPツールがPNG、JPEG、GIF、WebPを返すと、Claudeは画像をその場で見られ、Claude Codeは元のバイト列を~/.claude/projects/以下にあるセッションのtool-resultsディレクトリに保存してパスをClaudeに渡します。これにはClaude Code v2.1.283以降が必要です(MCP)。保存先はプロジェクトの外なので、「そのファイルをpublic/images/にコピーして」と続けて頼む必要があります。各サーバーが画像そのものを返すのかURLを返すのかは、サーバーごとの仕様で決まります。

2つ目は出力の上限です。MCPツールの出力は既定で25,000トークンまでで、10,000トークンを超えると警告が出ます。画像を返すツールもこの上限の対象で、足りないときの手段は環境変数MAX_MCP_OUTPUT_TOKENSを上げることだけです。

3つ目はキーと接続方式です。falのコマンドはキーを設定ファイルに平文で書き込みます。claude mcp add --env KEY=valueも同じく値をそのまま保存します。リポジトリで共有する.mcp.jsonでは${VAR}の形で環境変数を参照できるので、共有する場合はそちらを使ってください。Replicateのコマンドが使うSSEは、Claude Codeのドキュメントでは非推奨とされている方式です。

claude.aiのコネクタ一覧にもAdobe、Canva、Hugging Faceといった画像関連のコネクタがありますが、どれもパートナー製で、Anthropic自身が提供する画像モデルのコネクタやスキルはありません。また、コネクタがClaude Codeに現れるのはclaude.aiアカウントでログインしているときだけで、ANTHROPIC_API_KEYでログインしている場合は使えません。

1枚いくらか:Geminiは$0.0336から、OpenAIはトークン課金

費用の数え方は経路ごとに違います。1枚単位で読めるのはGemini、トークンで読むのがOpenAI、1日の枠で考えるのがCloudflareとHugging Faceです。

経路課金の単位2026年10月2日時点の料金無料で使える範囲
SVGをコードで描画なし追加料金なしローカル処理のため枠の概念なし
Gemini gemini-3.1-flash-lite-image1枚1Kで$0.0336なし。課金の有効化が必須
Gemini gemini-3.1-flash-image1枚0.5Kで$0.045、1Kで$0.067、2Kで$0.101、4Kで$0.151なし
Gemini gemini-3-pro-image1枚1K・2Kで$0.134、4Kで$0.24なし
OpenAI gpt-image-2.5-flare / sunburstトークン画像出力100万トークン$30、画像入力$8、テキスト入力$5なし
Cloudflare Workers AI flux-1-schnellNeurons1,000 Neuronsあたり$0.0111日10,000 Neurons
Hugging Face ZeroGPUGPU時間PROで1日40分無料アカウントで1日5分、未ログインで2分

経路ごとの課金単位の比較と、Cloudflare Workers AIの無料枠が1日およそ173枚になる計算の流れ

Geminiの3モデルはいずれも無料枠が「Not available」で、課金を有効にしたキーが必要です。バッチ処理はおおむね半額、出力にはすべてSynthIDの透かしが入ります(Gemini APIの料金)。100枚の挿絵をgemini-3.1-flash-imageの1Kで作るなら、100×$0.067で$6.70です。

OpenAIには公式の「1枚いくら」がありません。2つの2.5モデルは同じトークン単価で、1枚に何トークンかかるかはサイズと品質で変わります(OpenAIの料金)。generate.pyがレスポンスのusageをそのまま出力するのは、実際の消費をその場で読めるようにするためです。出力トークン数に$30÷1,000,000を掛ければ、その1枚の画像出力分の金額になります。サイズと品質ごとの目安はGPT Image 2.5 Sunburstの料金:公式単価と1回$0.03のAPIを比較で整理されています。Tier 1のレート制限は1分あたり5枚です。

Cloudflareの枠は計算で見積もれます。@cf/black-forest-labs/flux-1-schnellは512×512のタイル1枚につき4.80 Neurons、1ステップにつき9.60 Neuronsで、ステップ数は既定4、最大8です。1024×1024をタイル4枚と数えると、4ステップでは4×4.80+4×9.60=57.6 Neurons。10,000÷57.6で、1日およそ173枚が無料枠に収まる計算です。これは料金表からの見積もりで、同じアカウントがほかの用途でNeuronsを使っていない場合に限ります。枠は毎日00:00 UTCにリセットされ、超えるとリクエストは失敗します。枠を超えて使うにはWorkers Paidが必要です(Workers AIの料金)。公式の呼び出しは次の形で、返ってくるのはbase64のJPEGです。

bash
curl https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/run/@cf/black-forest-labs/flux-1-schnell \
  -X POST \
  -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
  -d '{ "prompt": "cyberpunk cat" }'

Hugging FaceのZeroGPUは枚数ではなくGPU時間の枠で、最初に使ってから24時間後にリセットされます(ZeroGPU)。「無料で画像生成」と紹介される方法の実体は、こうした1日あたりの小さな枠です。試作には足りますが、数百枚を回す用途には向きません。

1回あたりの固定料金で予算を組みたい場合や、OpenAIの組織認証やGemini APIの課金設定が難しい場合には、第三者のAPIサービスという選択肢もあります。laozhang.aiはこのブログの運営元のサービスで、OpenAIの画像API互換のエンドポイントでgpt-image-2.5-flare-vipとgpt-image-2.5-sunburst-vipを1回$0.03(2026年9月12日時点の同社公開料金)で提供しています。OpenAIやGoogleではないので、両社の利用規約、データの取り扱い、SLAは適用されません。generate.pyで使うには、MODELSに-vip付きのIDを追加し、OPENAI_BASE_URLをhttps://api2.laozhang.ai/v1に設定する変更が必要で、この組み合わせでの生成は未確認です。

APIキーの置き場所と、自動承認が有料呼び出しになる条件

キーはシェルの環境変数に置き、プロンプトには貼りません。Claude Codeは起動時にシェルの環境変数を読むので、export OPENAI_API_KEY=...を済ませてからclaudeを起動します。キーを替えたら再起動が必要です。設定ファイルのenvキーでセッションごとに渡す方法もあります(Settings)。プロンプトに貼ったキーは会話の履歴に残るので、避けたほうが安全です。

キーを.envに置いている場合は、Claudeが読めないようにしておきます。公式ドキュメントも、キーを含むファイルにはpermissions.denyを勧めています。

json
{
  "permissions": {
    "deny": ["Read(./.env)"]
  }
}

次に、確認なしで実行される範囲です。ここは2段階あります。

スキルのallowed-toolsが効くのは、そのスキルを呼び出したターンだけです。次のメッセージを送ると解除され、再びスキルを呼ぶとそのターンだけ有効になります。つまり「画像を作って」と頼むたびに1回分の許可が出る形で、頼んでいないのに走り続けることはありません。

一方、Bashの確認画面で「Yes, and don't ask again」を選ぶと、.claude/settings.local.jsonにallowルールが書き込まれます。自分でpermissions.allowにBash(python3 .claude/skills/image/scripts/generate.py *)のようなルールを書いた場合も同じで、以後はセッション全体で確認なしに実行されます。これは、Claudeが「もう少し良くできる」と判断して再生成するたびに、誰も見ていないところで課金が発生するということです。長いタスクを任せて席を離れるなら、allowルールには入れず、スキルの本文に「1回の依頼で実行は1回」と書いておくほうが安全です。なお、Bashの引数を制約するルールは壊れやすいと公式ドキュメントが注意しています(Permissions)。

チームのリポジトリを開くときは、逆の立場の注意も必要です。プロジェクトスキルのallowed-toolsは、ワークスペースを信頼したかどうかに関係なく適用されます。他人のリポジトリでClaude Codeを動かす前に、.claude/skills/のallowed-toolsに何が書かれているかを確認してください。

生成した画像をClaudeに読ませて直すときの注意点

Claude Codeは生成したファイルを自分で見られるので、「作る、見る、直す」を1つのセッションで回せます。ReadツールはPNGやJPGを画像として返し、Claudeは構図や文字のはみ出しを確認できます。手元の画像を見せたいときは、ドラッグ&ドロップ、Ctrl+V(WindowsとWSLではAlt+V)での貼り付け、ファイルパスの指定が使えます(Tools reference)。

ただし、Claudeが見ているのは元のファイルそのものではありません。大きな画像は縮小・再圧縮され、v2.1.196以降は縮小後も500KBを超える画像が低画質のJPEGに再エンコードされます。細かい文字や境界のにじみを確認させたいときは、公式ドキュメントが勧めるとおり、該当部分を切り出した画像を読ませてください。

この確認はSVGの経路で特に効きます。直すのは座標や文字サイズなので、何度やり直しても費用がかかりません。画像モデルの経路では、やり直しのたびに1回分の料金がかかるので、再生成の前に確認を挟む運用が向いています。

エラーと行き詰まり:症状ごとに経路を変えるタイミング

よく出る症状と、次に取る行動をまとめます。

症状原因対応
OPENAI_API_KEY is not setclaudeの起動後にexportした、または別のシェルで設定したexportしてからClaude Codeを再起動
HTTP 401 invalid_api_keyキーの誤りキーを確認。OPENAI_BASE_URLを変えている場合は、そのサービスのキーか確認
キーは正しいのにGPT Imageモデルが使えない組織認証が未完了の可能性OpenAIの組織設定で認証。できない場合はGeminiかオープンモデルの経路へ
gemini-2.5-flash-imageや旧preview IDでエラー提供終了。gemini-2.5-flash-imageは2026年10月2日に終了gemini-3.1-flash-imageなどGA版のIDに変更
Geminiのキーで画像モデルだけ使えない画像モデルに無料枠がない課金を有効にする
Cloudflareのリクエストが突然失敗する1日10,000 Neuronsの枠を超過00:00 UTCのリセットを待つか、Workers Paidへ
MCPで生成したはずの画像がプロジェクトにない保存先が~/.claude/projects/以下のtool-resultsClaudeにコピーを頼む。v2.1.283未満なら更新
MCPツールの出力で上限の警告が出る警告は10,000トークン超、上限は既定25,000トークンMAX_MCP_OUTPUT_TOKENSを上げる

Geminiの提供終了日はDeprecationsに載っています。旧preview IDは2026年6月25日、Imagen 4のIDは8月17日に終了しているので、古い手順をコピーするとここで止まります。

経路を変える目安は単純です。文字や寸法の正確さで困ったらコード描画へ、写実性で困ったら画像モデルへ、無料枠の上限に当たったら課金のあるAPIへ、費用が読めなくなったら1枚単位か1回単位の料金がある経路へ移ります。

Claude Codeの画像生成でよくある質問

Claude Codeで画像を生成できますか?

Claude Code自体は生成できませんが、Claude Codeから画像を作ることはできます。Claudeのモデルは画像を出力しないので、図解や文字入り画像はClaudeが書いたSVGやHTMLをPNGに変換し、写真やイラストはスクリプトかMCPサーバーを通じてOpenAI、Google、Hugging Faceなどの画像モデルに作らせます。

Claude Codeの画像生成は無料でできますか?

SVGをコードで描画する経路は追加料金なしで使えます。画像モデルを使う経路で課金なしに使えるのは、Hugging Face ZeroGPUの1日5分(無料アカウント)とCloudflare Workers AIの1日10,000 Neuronsという枠の範囲だけです。Gemini APIの画像モデルには無料枠がなく、OpenAIはトークン課金です。

Codex CLIで画像生成はできますか?

Codex CLIとChatGPTの契約を組み合わせて画像を作らせる方法が紹介されていることがありますが、その可否や条件は、ここで挙げたAnthropic、OpenAI、Googleの公式ドキュメントからは読み取れません。OpenAIの画像モデルを公式に呼ぶ方法として文書化されているのは、APIキーを使う/v1/images/generationsと/v1/images/editsです。

生成した画像はどこに保存されますか?

スクリプトの経路では--outで指定したパスです。MCPサーバーの経路では、Claude Code v2.1.283以降で~/.claude/projects/以下のセッションのtool-resultsディレクトリに元のファイルが保存されます。プロジェクトで使うには、Claudeにコピーを頼んでください。

スキルとMCPサーバーはどちらを使うべきですか?

保存先を決めたい、リポジトリでチームに配りたい、キーを設定ファイルに残したくない場合はスキルです。スクリプトを書かずに複数のモデルを試したい場合はMCPサーバーが早く、気に入ったモデルが決まった段階でスクリプトに移すと、費用と保存先を管理しやすくなります。

さらに読む: Claude Code
Claude CodeでNano Bananaを動かす3条件:GA版モデルID gemini-3.1-flash-image、無料枠のない課金済みAPIキー、キーは環境変数で渡す
Claude Code

Claude CodeでNano Bananaを動かす設定

Claude CodeからNano Bananaを使うならGA版モデルIDと課金済みのAPIキーが必須です。旧preview IDは2026年6月25日に提供終了しました。

23 分