agentleFS
Google CloudKnown publisherGoogleCloudPlatform/vertex-ai-creative-studio/experiments/agent_tools/plugins/genmedia/skills/genmedia-image/SKILL.md

genmedia-image

Skill1.2k starsChanged 9 days agoApache-2.0View on GitHub

Generate images from a text prompt (optionally guided by reference images) using the genmedia Nanobanana MCP server's nanobanana_image_generation tool. Use when a task needs a still image produced from a description, with control over aspect ratio, resolution, and local vs GCS output, and verified by confirming the artifact was actually written.

1 other project uses a version of this.

Adopted by

Steady: 0 new projects took it in the last 4 weeks, none the 4 weeks before.thin data

Week of Sep 13: 0 new projectsWeek of Sep 20: 0 new projectsWeek of Sep 27: 0 new projectsWeek of Oct 4: 0 new projectsWeek of Oct 11: 0 new projectsWeek of Oct 18: 0 new projectsWeek of Oct 25: 0 new projectsWeek of Nov 1: 0 new projects
Sep 2026Oct 2026Nov 2026
New projects taking a version of this file each week, over the 8 weeks our latest run read: only 0 in all, so this is a hint, not a trend.

Most recently taken up by

Who's talking about GoogleCloudPlatform/vertex-ai-creative-studio

The biggest 5 of 51 mentions linking to the repository that our crawl found. Each line is their own headline.

See all 51

Talked about on GitHub and Bluesky (51 times).

On GitHub · 50

45 more on GitHub

The file

We split this skill into the rules it gives an agent

5 rules. About 0 are common, 3 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈3

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Managed Agent / GCS Mode: When executing inside a managed agent container where the MCP server runs remotely on Cloud Run, pass …

    line 25
  2. Distinctive:

    Do not pass both modes' destinations for the same call unless you intentionally want output in both places.

    line 30
  3. Distinctive:

    Ensure every referenced path/URI actually exists before the call.

    line 58
  4. Very specific:

    Call nanobanana_image_generation with the parameters assembled above.

    line 62
  5. Distinctive:

    If no artifact is found, treat the generation as failed and surface the tool response for debugging rather than reporting success.

    line 89

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

genmedia Image

This skill generates images by calling the nanobanana_image_generation tool exposed by the genmedia Nanobanana MCP server. It is a single-purpose skill: one tool, one job. It supports both local workspace execution and remote / managed agent execution via GCS staging, and it always verifies that a real artifact was produced — never that the call merely returned without error.

Prerequisite: the genmedia Nanobanana MCP server must already be configured in your client (e.g. via this plugin's mcp.json / .mcp.json, or a manual MCP config). The server needs GOOGLE_CLOUD_PROJECT and Application Default Credentials (ADC) in its environment for Vertex AI calls.

Instructions

  1. Resolve Output Storage Mode:
    • Local Mode (Default): Pass output_directory pointing to the target local workspace directory. The artifact is written to that local path.
    • Managed Agent / GCS Mode: When executing inside a managed agent container where the MCP server runs remotely on Cloud Run, pass gcs_bucket_uri (a GCS URI prefix such as your-bucket/outputs/) — or set the GENMEDIA_BUCKET environment variable — pointing to the mounted GCS environment bucket.
    • Do not pass both modes' destinations for the same call unless you intentionally want output in both places.
  2. Formulate Imagery Parameters:
    • prompt (required): a detailed text description. Favor concrete style, subject, lighting, and composition language (e.g. "a photorealistic red panda sitting in a bamboo forest, golden hour lighting").
    • model (optional): defaults to gemini-3.1-flash-image. Leave unset unless you have a specific model requirement.
    • aspect_ratio (optional): defaults to 1:1. Supported ratios are model-dependent (common values include 1:1, 3:4, 4:3, 9:16, 16:9). Choose the ratio that matches the intended use (e.g. 16:9 for a hero banner, 9:16 for a vertical/mobile frame).
    • image_size (optional): 1K, 2K, or 4K. Defaults to 1K when unset. Supported sizes are model-dependent.
    • output_filename (optional): a client-predictable base name (e.g. hero.png). The extension is forced to the true output media type. When a single image is produced the name is used as-is; when multiple images are produced they are suffixed _1, _2, … before the extension. An existing file/object of the same name is overwritten.
    • seed (optional): a non-negative integer for best-effort reproducible generation.
  3. Reference Images (optional, images):
    • To guide generation with existing media, pass images as a list of local file paths or GCS URIs (images, and — where the model supports it — videos or PDFs). Use this for edits, style transfer, character consistency, or compositing from source frames.
    • Ensure every referenced path/URI actually exists before the call; a missing reference produces a degraded or failed result.
  4. Invoke the tool:
    • Call nanobanana_image_generation with the parameters assembled above.
    • Local Mode example params: { "prompt": "...", "aspect_ratio": "16:9", "output_directory": "./out", "output_filename": "hero.png" }
    • GCS Mode example params: { "prompt": "...", "aspect_ratio": "16:9", "gcs_bucket_uri": "your-bucket/outputs/", "output_filename": "hero.png" }
    • Reference-guided example params: { "prompt": "same character, new pose", "images": ["./refs/character.png"], "output_directory": "./out", "output_filename": "pose.png" }
  5. Verify the Artifact By Existence (do not trust the response alone):
    • A tool call that returns without an error is not proof an image was written. In some clients and in GCS mode the server returns a resource_link content type that cannot be rendered even though the file was written — never assume inline data.
    • Local Mode: confirm the file exists and is a real, non-empty image, and inspect its type:
      file "<output_directory>/<output_filename>"   # e.g. "... PNG image data, 1024 x 1024"
    • GCS Mode: confirm the object exists at the destination prefix by listing it — do not parse the tool response:
      gcloud storage ls "gs://<gcs_bucket_uri prefix>"
      Note: if you relied on the GENMEDIA_BUCKET environment variable instead of passing gcs_bucket_uri explicitly, the server writes under a nanobanana_outputs/ subprefix — list gs://<GENMEDIA_BUCKET>/nanobanana_outputs/, not the bare bucket.
    • If no artifact is found, treat the generation as failed and surface the tool response for debugging rather than reporting success.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.