Token导航 LogoToken导航TokenDH.com
研究检索敏感数据clawhub未标认证来源可访问clear审计提醒

materials-science-figure-skill材料科学图形技能

Agent Skill

materials-science-figure-skill 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

10,110

周安装

413

GitHub Stars

公开资料未说明

下载量

3,271
OpenClaw

安装说明

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

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

请帮我安装这个 Agent Skill:materials-science-figure-skill(材料科学图形技能)
来源仓库:https://github.com/grenzlinie/materials-science-figure-skill
安装命令:
openclaw skills install materials-science-figure-skill
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

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

ClawHubOpenClaw
openclaw skills install materials-science-figure-skill

简介

基于 Gemini API 的图像生成与编辑专用工具。

  • 支持 Nanobanana/Gemini 模型调用与公共图库访问。
  • 适用于科研可视化与材料科学插图制作需求。
  • 安装命令:openclaw skills install materials-science-figure-skill。
  • 需确保 API 密钥有效且符合 Google 服务条款。

SKILL.md

name
nanobanana-image-generation
description
Use when the user wants to generate or edit images with Google's Nanobanana/Gemini image models using the official Gemini API shape, or when they need publication-style scientific figures rendered exactly from data with the bundled Python plotting tool. Prefer this skill for text-to-image, image-to-image editing, multi-image reference workflows, attachment-based recreations, exact bar/trend/heatmap/scatter plots, or when the user wants publication-style figures such as materials-science paper schematics. Use it when the user asks for a materials-science figure, journal-style scientific illustration, graphical abstract, mechanism diagram, device architecture, processing workflow, or paper-ready materials figure.
metadata
{"openclaw":{"requires":{"anyBins":["python3","python"],"env":["NANOBANANA_API_KEY","NANOBANANA_BASE_URL"]},"primaryEnv":"NANOBANANA_API_KEY","homepage":"https://github.com/siyuliu/materials-science-figure-skill"}}
disable-model-invocation
true

Nanobanana Image Generation

Overview

This skill now supports two modes:

  • image mode

Gemini or Nanobanana generation and editing through the official generateContent flow

  • plot mode

Exact Python or matplotlib rendering of publication-style figures from numeric data

Use image mode for mechanism figures, graphical abstracts, device schematics, style-matched redraws, and diagram-first work. Use plot mode for exact bar charts, trend curves, heatmaps, scatter plots, and multi-panel figures that must preserve numeric truth.

Runtime policy:

  • Python is the required runtime for this skill and the canonical path for both image and plot workflows.
  • scripts/generate_image.js is an optional parity CLI for environments that already use Node.js, not the required runtime baseline for registry gating.

When the user is working in Codex and describes a plot in natural language, do not require them to hand-write a JSON spec. Codex should translate the request into an internal plot request or spec and run the plotting scripts.

For image mode, follow Google's official examples and replace:

  • API key with the provider key
  • base URL with the chosen Google-compatible Gemini endpoint

Do not use OpenAI-style /images/generations or /images/edits routes for this skill.

Attachment-Only Inputs

If the image exists only as a chat attachment and the platform does not expose a local file path, do not claim the script can upload it directly.

Use this rule:

  1. If the user needs an exact edit of the original uploaded pixels, ask for the local file path first.
  2. If the user accepts a close recreation, analyze the attached image visually and generate a new image that preserves the original composition and style as closely as possible.

For requests like "replace the English text in this attached image with Chinese", the fallback recreation workflow is acceptable when exact pixel-preserving edit is impossible.

Quick Start

Preflight:

  • plot mode is local-only and does not require API credentials or outbound network access.
  • image mode sends prompt text, API credentials, and any --input-image files to the configured Gemini-compatible endpoint.
  • Prefer the official Google endpoint unless you intentionally trust another provider.
  • If you use a third-party endpoint, require --allow-third-party or NANOBANANA_ALLOW_THIRD_PARTY=1 and treat that as an explicit trust decision.

Set environment variables:

export NANOBANANA_API_KEY="your-provider-key"
export NANOBANANA_BASE_URL="https://generativelanguage.googleapis.com"
export NANOBANANA_MODEL="gemini-3.1-flash-image-preview"

Optional third-party provider:

export NANOBANANA_BASE_URL="https://api.zhizengzeng.com/google"
export NANOBANANA_ALLOW_THIRD_PARTY=1

If you do not want the API key to appear in the command line, store it in a file and use:

export NANOBANANA_API_KEY_FILE="$PWD/.secrets/nanobanana_api_key"

Generate an image:

python3 scripts/generate_image.py "Create a picture of a nano banana dish in a fancy restaurant with a Gemini theme"

Edit an image:

python3 scripts/generate_image.py "Using the provided image, change only the blue sofa to a vintage brown leather Chesterfield sofa. Keep everything else exactly the same." --input-image ./living-room.png

Recreate an attached diagram with translated labels:

python3 scripts/generate_image.py "Recreate the attached pastel technical diagram with the same layout, icons, arrows, and hand-drawn style. Replace all visible English labels with natural Simplified Chinese. Keep the composition unchanged." --aspect-ratio 16:9 --image-size 2K

Safety note:

  • scripts/build_materials_figure_prompt.py and --print-prompt are local-only and do not send data over the network.
  • Actual prompt text, API keys, and user-provided input images are sent only when you run the generation scripts against the configured provider.
  • Non-official Gemini-compatible endpoints require explicit confirmation via --allow-third-party or NANOBANANA_ALLOW_THIRD_PARTY=1.
  • Prefer NANOBANANA_API_KEY_FILE over inline --api-key when you do not want the key to appear in shell history.

Workflow

Choose a mode first:

  1. If the user supplied numeric data and needs exact plotting, use plot mode.

Read references/publication-plot-api.md and run scripts/plot_publication_figure.py. For natural-language requests, also read references/natural-language-plot-workflow.md.

  1. If the user needs a schematic, graphical abstract, or image editing workflow, use image mode.

Follow the Gemini generateContent flow below.

For image mode:

  1. Keep the official Gemini request shape.

Use POST /v1beta/models/{model}:generateContent with X-goog-api-key.

  1. Put prompt text and image inputs into contents[].parts.

Text-only generation uses one text part. Image editing appends one or more inline image parts.

  1. Put image options in generationConfig.imageConfig.

Prefer --aspect-ratio and --image-size, matching the official docs.

  1. For materials-science figures, prefer building the final prompt first.

Use python3 scripts/build_materials_figure_prompt.py --materials-figure ... when you want to inspect or refine the prompt before sending any API request.

  1. For publication-style research figures, load the bundled design guides as needed.

Read references/publication-figure-design.md for house style, palette semantics, typography, and panel logic.

  1. If the figure contains chart-like panels, read references/publication-chart-patterns.md.

Use those patterns to specify grouped bars, heatmaps, trend layouts, dedicated legends, and wide comparison panels.

  1. Save image outputs from candidates[0].content.parts[].inlineData.

Save text parts too when returned.

  1. If the source image is attachment-only, choose between exact edit and recreation.

Ask for a local path for exact editing. Use recreation if the user wants the result and accepts a visually matched redraw.

For plot mode:

  1. Read references/publication-plot-api.md.
  2. If the user is speaking naturally, infer the plotting intent and data structure.

Do not ask the user to author the internal spec unless they explicitly want low-level control.

  1. For concise internal translation, optionally create a request JSON and expand it with scripts/build_plot_spec.py.
  2. Build or generate a JSON spec with top-level style, layout, and panels.
  3. Use bar, trend, heatmap, scatter, legend, or empty panels.
  4. Render with:
python3 skills/nanobanana-image-generation/scripts/plot_publication_figure.py spec.json
  1. Export exact PNG, PDF, or SVG outputs.

Environment

Required:

  • NANOBANANA_API_KEY
  • NANOBANANA_BASE_URL

Must be set explicitly. Official Google endpoint: https://generativelanguage.googleapis.com

Optional:

  • NANOBANANA_MODEL

Default: gemini-3.1-flash-image-preview

  • NANOBANANA_TIMEOUT

Default: 120

  • NANOBANANA_API_KEY_FILE

Path to a file containing the API key. Prefer this when you do not want the key shown in command history or command logs.

  • NANOBANANA_ALLOW_THIRD_PARTY

Set to 1 only when you intentionally want to send API keys and user-provided files to a non-official Gemini-compatible provider.

Scripts

  • scripts/generate_image.py

Python CLI that follows the official Gemini generateContent request shape.

  • scripts/generate_image.js

Node.js CLI with the same request format.

  • scripts/plot_publication_figure.py

Python CLI for exact publication-style plotting from JSON specs.

  • scripts/build_plot_spec.py

Python CLI that expands a concise request JSON into a full plotting spec.

Common options:

  • --input-image ./source.png
  • --prompt-file ./background.md
  • --aspect-ratio 16:9
  • --image-size 2K
  • --text-only
  • --thinking-level high
  • --include-thoughts
  • --materials-figure mechanism-figure
  • --lang zh
  • --style-note "Nature Energy style"
  • --print-prompt
  • --allow-third-party
  • --api-key-file ./.secrets/nanobanana_api_key

Default output location:

  • ./output/nanobanana/ relative to the current Codex working directory
  • Override only when the user explicitly wants another folder

Deterministic plotting:

python3 skills/nanobanana-image-generation/scripts/plot_publication_figure.py ./spec.json \
  --out-path ./output/plots/result \
  --formats png pdf svg \
  --dpi 300

Natural-language-friendly internal workflow:

python3 skills/nanobanana-image-generation/scripts/build_plot_spec.py ./request.json --out ./spec.json
python3 skills/nanobanana-image-generation/scripts/plot_publication_figure.py ./spec.json

Official Mapping

Official Google examples:

  • api_key="GEMINI_API_KEY"
  • base_url="https://generativelanguage.googleapis.com"

Third-party provider replacements:

  • api_key="your_provider_api_key"
  • base_url="your_google_compatible_endpoint"
  • allow_third_party=true

Optional Zhizengzeng example:

  • api_key="your_zzz_api_key"
  • base_url="https://api.zhizengzeng.com/google"
  • allow_third_party=true

Everything else should stay aligned with the official Gemini documentation.

Prompting Rules

  • For generation, describe the scene instead of dumping keywords.
  • For editing, explicitly say what must stay unchanged.
  • For multi-image workflows, describe the role of each reference image.
  • Prefer English or zh-CN prompts when image fidelity matters.
  • For attachment-only translation tasks, list each label that must be rewritten so the regenerated image does not miss text.
  • If layout fidelity matters, explicitly say to preserve icon positions, arrows, spacing, hierarchy, and reading order.
  • For publication figures, specify semantic color roles, panel order, arrow logic, and which elements should stay neutral.
  • Keep figure text short. Prefer concise labels and legend entries over paragraph-like annotations baked into the image.
  • If the figure resembles a plot, say whether it is a conceptual chart, a style-matched redraw, or an exact quantitative reproduction.

Materials Science Figure Shortcut

If the user asks for a materials-science paper figure, journal-style scientific schematic, graphical abstract, mechanism diagram, synthesis workflow figure, microstructure-property diagram, device architecture figure, or characterization-plan figure, use the bundled materials-science templates instead of writing the prompt from scratch.

Workflow:

  1. Read references/materials-science-figure-template.md.
  2. Pick the closest subtype:

- graphical-abstract - mechanism-figure - device-architecture - processing-workflow

  1. Choose the output language:

- en - zh

  1. Insert the user's scientific content into the Scientific Background slot, or use the script shortcut directly.
  2. Preserve the template's constraints about causality, palette, typography, layout, and avoiding unsupported claims.
  3. If the user did not provide exact numbers, keep labels qualitative or explicitly use placeholders rather than fabricating data.
  4. If the user wants a specific journal style, append that preference after the template rather than rewriting the template.
  5. If the scientific background is long, put it in a markdown file and use --prompt-file or scripts/build_materials_figure_prompt.py --background-file ... instead of squeezing it into one shell argument.
  6. For prompt refinement, consult:

- references/materials-science-figure-template.md - references/publication-figure-design.md - references/publication-chart-patterns.md

Research Figure Design Integration

This skill includes a distilled publication-figure playbook adapted from the figures4papers project. Use it to make Nanobanana outputs look like journal figures rather than generic AI art.

Read the reference files only as needed:

Use for overall figure art direction: typography, palette semantics, panel hierarchy, white-background policy, legend handling, and print-safe simplification.

Use when the figure contains bars, trend lines, heatmaps, comparison matrices, or dedicated legend panels.

Apply these rules when prompting:

  • Keep the overall composition minimal, high-contrast, and panel-driven.
  • Use blue for the primary mechanism or proposed method, green for improvements, red for contrasts, and neutral gray for scaffolds/background categories.
  • Ask for short professional labels, frameless legends, and uncluttered white backgrounds.
  • Preserve consistent visual encoding across panels so the same color always means the same phase, state, or method.
  • For chart-like figures, ask the model to mimic publication layout and styling, but do not imply exact quantitative correctness unless the figure is being recreated from provided source data or reference images.

Quantitative Boundary

This skill is strong for:

  • graphical abstracts
  • mechanism figures
  • device schematics
  • processing workflows
  • chart-like conceptual panels
  • style-matched redraws of existing paper figures

This skill is not a guarantee of exact quantitative plotting. If the user needs exact bar heights, exact heatmap values, or faithful axis tick math from raw numbers, treat Nanobanana as a layout or visual-direction tool unless the request is explicitly a redraw from a trusted reference image.

For exact plotting, switch to plot mode and use references/publication-plot-api.md plus scripts/plot_publication_figure.py.

Python shortcut:

python3 scripts/generate_image.py "paste the scientific background here" \
  --materials-figure mechanism-figure \
  --lang en \
  --style-note "Benchmark the figure against Nature Materials aesthetics." \
  --aspect-ratio 4:3 \
  --image-size 2K

JavaScript shortcut:

node scripts/generate_image.js "paste the scientific background here" \
  --materials-figure graphical-abstract \
  --lang zh \
  --aspect-ratio 4:3 \
  --image-size 2K

Prompt-only preflight:

python3 scripts/build_materials_figure_prompt.py \
  --materials-figure mechanism-figure \
  --lang en \
  --background-file ./background.md \
  --style-note "Nature Materials aesthetic with concise panel labels."

Failure Handling

  • If the API returns 401 or 403, verify NANOBANANA_API_KEY.
  • If the CLI says the base URL is missing, set NANOBANANA_BASE_URL or pass --base-url.
  • If the CLI refuses a non-official endpoint, add --allow-third-party or set NANOBANANA_ALLOW_THIRD_PARTY=1 only if that provider is intentional.
  • If the API returns 404, verify that the request is going to /v1beta/models/{model}:generateContent.
  • If the provider says the model does not exist, verify the exact model name in the official docs and the provider's supported model list.
  • If no image is returned, inspect candidates[0].content.parts and check whether the request asked for image output.
  • If the user supplied only a chat attachment and no file path, do not describe the result as an exact edit unless the platform actually exposed the attachment bytes.

References

适合场景

01

文本生成图片

02

图片风格化

03

产品图和创意图

04

需要 FLUX 模型时

能力概览

能力 1

调用 FLUX 图像模型

能力 2

支持文本生图和图像改写

能力 3

覆盖 LoRA 或风格适配

能力 4

适合创意视觉生成

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

平台分布

OpenClaw

74.62%
按下载量换算2,441

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

可疑

权限和风险

敏感数据

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

安装前确认

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

来源信息

继续浏览同类 Skills