Token导航 LogoToken导航TokenDH.com
前端设计敏感数据github未标认证来源可访问许可证需确认审计未展示

tooyoung%3anano-banana-builderTooyoung%3anano 香蕉建造者

Agent Skill

tooyoung%3anano-banana-builder 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

517

周安装

22

GitHub Stars

15

下载量

181
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:tooyoung%3anano-banana-builder(Tooyoung%3anano 香蕉建造者)
来源仓库:https://github.com/shiqkuangsan/oh-my-daily-skills
仓库路径:skills/tooyoung%3Anano-banana-builder
安装命令:
npx skills add https://github.com/shiqkuangsan/oh-my-daily-skills --skill tooyoung:nano-banana-builder
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/shiqkuangsan/oh-my-daily-skills --skill tooyoung:nano-banana-builder

简介

用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中围绕仓库状态、代码变更或协作事项进行整理。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装使用。
  • 安装前需确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。
  • tooyoung%3anano-banana-builder 属于前端设计类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Nano Banana Builder

Build production-ready web applications powered by Google's Nano Banana image generation APIs—creating everything from simple text-to-image generators to sophisticated iterative editors with multi-turn conversation.


CRITICAL: Exact Model Names

Use ONLY these exact model strings. Do not invent, guess, or add date suffixes.

Model String (use exactly)AliasUse Case
gemini-2.5-flash-imageNano BananaFast iterations, drafts, high volume
gemini-3-pro-image-previewNano Banana ProQuality output, text rendering, 2K

Common mistakes to avoid:

  • gemini-2.5-flash-preview-05-20 — wrong, date suffixes are for text models
  • gemini-2.5-pro-image — wrong, 2.5 Pro doesn't do image generation
  • gemini-3-flash-image — wrong, doesn't exist
  • gemini-pro-vision — wrong, that's for image *input*, not generation

The only valid image generation models are gemini-2.5-flash-image and gemini-3-pro-image-preview.


SDK Version Requirements

Examples were tested against the versions below; verify the latest AI SDK and Google provider docs before upgrading:

PackageMinimum VersionRecommended
ai3.4.0+^4.0.0
@ai-sdk/google0.0.52+^1.0.0
@ai-sdk/react0.0.62+^1.0.0
next14.0.0+^15.0.0
react18.2.0+^19.0.0

Important notes:

  • This skill uses Next.js App Router (not Pages Router)
  • Server Actions require 'use server' directive
  • All examples use TypeScript (recommended for type safety)
# Check your versions
npm list ai @ai-sdk/google @ai-sdk/react next

# Update to latest
npm update ai @ai-sdk/google @ai-sdk/react

Breaking changes to watch:

  • result.files[0] structure may change between major versions
  • providerOptions.google namespace for Gemini-specific configs
  • useChat hook API from @ai-sdk/react

Philosophy: Conversational Image Generation

Nano Banana isn't just another image API—it's conversational by design. The core insight is that image generation works best as a dialogue, not a one-shot prompt.

Think of it as working with an AI art director:

  • Iterative refinement → Build up images through conversation, not perfection in one prompt
  • Context awareness → The model "remembers" previous generations and edits
  • Natural language editing → Describe changes conversationally, not with parameters

Before Building, Ask

  • What's the primary use case? Text-to-image generation? Image editing? Multi-image composition? Style transfer?
  • Which model fits the need? Nano Banana (speed/iterations) or Nano Banana Pro (quality/complex prompts)?
  • What's the user journey? Single generation? Iterative refinement? Gallery browsing?
  • What are production constraints? Rate limits? Storage? Cost per image? User volume?

Core Principles

  1. Conversation over configuration: Leverage Nano Banana's iterative editing rather than complex parameter UIs
  2. Model selection matters: Use gemini-2.5-flash-image for speed/iterations, gemini-3-pro-image-preview for quality/complexity
  3. State as conversation history: Track generations as chat messages to enable multi-turn editing
  4. Rate limit awareness: Image generation has strict quotas—implement queuing and caching
  5. Storage strategy: Store generated images (Vercel Blob/S3), not just inline base64

Model Selection Framework

Choose based on use case:

Use CaseModelWhy
Rapid iterations, draftsgemini-2.5-flash-imageFast (2-5s), lower cost per image
Final output, qualitygemini-3-pro-image-previewSuperior quality, thinking, text rendering
Text-heavy imagesgemini-3-pro-image-previewBest typography, 2K resolution
Multi-turn editingEitherBoth support conversational editing
High volumegemini-2.5-flash-imageLower cost, faster throughput

Quick Start

Basic Server Action

// app/actions/generate.ts
"use server";

import { google } from "@ai-sdk/google";
import { generateText } from "ai";

export async function generateImage(prompt: string) {
  const result = await generateText({
    model: google("gemini-2.5-flash-image"),
    prompt,
    providerOptions: {
      google: {
        responseModalities: ["IMAGE"],
        imageConfig: { aspectRatio: "16:9" },
      },
    },
  });

  return result.files[0]; // { base64, uint8Array, mediaType }
}

Client Component with useChat

// app/components/ImageGenerator.tsx
'use client'

import { useChat } from '@ai-sdk/react'

export function ImageGenerator() {
  const { append, messages, isLoading } = useChat({
    api: '/api/generate'
  })

  return (
    <div>
      {messages.map(m => (
        <div key={m.id}>
          {m.parts?.map((part, i) =>
            part.type === 'image' && (
              <img key={i} src={part.url} alt="Generated" />
            )
          )}
        </div>
      ))}

      <button
        disabled={isLoading}
        onClick={() => append({
          role: 'user',
          content: 'A futuristic cityscape at dusk'
        })}
      >
        Generate
      </button>
    </div>
  )
}

Prompt Engineering

For prompt structure, quality boosters, enhancer utility, negative prompts, and use-case templates, see references/prompt-engineering.md.


Advanced Implementation

For complete implementations including:

  • Server Actions with model selection, storage, and error handling
  • API Routes with streaming responses
  • Client Components with iterative editing and galleries
  • Advanced Patterns like multi-image composition and batch generation

See references/advanced-patterns.md


Safety Settings & Content Moderation

For Gemini safety settings, pre-generation prompt filtering, safety block handling, and production best practices, see references/safety-settings.md.


Configuration & Operations

For detailed configuration and operational concerns:

  • Provider Options (responseModalities, imageConfig, thinkingConfig)
  • Storage Strategy (Vercel Blob, S3/R2 implementations)
  • Rate Limiting (Upstash Redis patterns, quota management)
  • Cost Optimization strategies

See references/configuration.md


Anti-Patterns to Avoid

Inventing model names or adding date suffixes: Why wrong: Image generation models have specific names; date suffixes like -preview-05-20 are for text models only Better: Use exactly gemini-2.5-flash-image or gemini-3-pro-image-preview — no variations

Using Gemini 2.5 Pro for images: Why wrong: Gemini 2.5 Pro doesn't generate images directly Better: Use gemini-2.5-flash-image or gemini-3-pro-image-preview

Storing only base64 in database: Why wrong: Blobs database, expensive storage, slow retrieval Better: Store in object storage (Vercel Blob/S3), save URL only

No rate limit handling: Why wrong: Will hit 429 errors in production, poor UX Better: Implement rate limiting with user-friendly error messages

Ignoring multi-turn context: Why wrong: Wastes Nano Banana's conversational editing strength Better: Track chat history for iterative refinement

Hardcoding API keys client-side: Why wrong: Exposes credentials, security risk Better: Use server actions / API routes with environment variables

Using wrong aspect ratio: Why wrong: 21:9 on 1:1 request wastes tokens, unexpected crop Better: Match aspect ratio to intended use case

No loading states: Why wrong: Image generation takes 5-30s, users think it's broken Better: Show progress indicators and estimated wait time

Generating on every keystroke: Why wrong: Wastes quota, slow response Better: Debounce prompts, require explicit action


Variation Guidance

IMPORTANT: Every app should feel uniquely designed for its specific purpose.

Vary across dimensions:

  • UI Style: Minimal, brutalist, playful, professional, dark, light
  • Color Scheme: Warm, cool, monochrome, vibrant, muted
  • Layout: Single page, multi-step wizard, sidebar, grid, list
  • Interaction: Click-to-generate, drag-and-drop, real-time typing, batch

Avoid overused patterns:

  • ❌ Default Tailwind purple gradients
  • ❌ Generic "AI startup" aesthetic
  • ❌ Same component libraries for every project
  • ❌ Inter/Roboto fonts without thought

Context should drive design:

  • Meme generator → Bold, fun, casual
  • Product mockup tool → Clean, professional, grid-based
  • Art exploration → Gallery-first, visual-heavy
  • Brand asset creator → Polished, template-guided

Environment Setup

# .env.local
GEMINI_API_KEY=your_api_key_here

# For Vercel Blob storage
BLOB_READ_WRITE_TOKEN=your_vercel_token

# For S3 (optional)
S3_BUCKET=your-bucket
S3_ENDPOINT=https://your-endpoint.r2.cloudflarestorage.com
S3_ACCESS_KEY_ID=your_key
S3_SECRET_ACCESS_KEY=your_secret

# For Upstash rate limiting (optional)
UPSTASH_REDIS_REST_URL=your_url
UPSTASH_REDIS_REST_TOKEN=your_token
# Install dependencies
npm install @ai-sdk/google ai @ai-sdk/react @vercel/blob

# Or if using separate packages
npm install google-genai

Remember

Nano Banana enables conversational image generation that feels like working with a creative partner, not a tool.

The best apps:

  • Leverage multi-turn editing for refinement
  • Choose models intentionally (speed vs quality)
  • Handle rate limits gracefully
  • Store images efficiently
  • Provide great loading states
  • Feel uniquely designed for their purpose

You're building more than an image generator—you're creating a creative experience. Design it thoughtfully.

适合场景

01

文本生成图片

02

图片风格化

03

产品图和创意图

04

需要 FLUX 模型时

能力概览

能力 1

调用 FLUX 图像模型

能力 2

支持文本生图和图像改写

能力 3

覆盖 LoRA 或风格适配

能力 4

适合创意视觉生成

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.42%
按下载量换算68

Claude

29.41%
按下载量换算53

Cursor

19.22%
按下载量换算35

Gemini CLI

9.63%
按下载量换算17

安全审计

暂无安全审计结果可展示。

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills