/sn-image-imitate
Generates a new image that imitates the style of a reference image while updating content based on user intent. Uses a three-stage pipeline: image annotation (long caption), caption rewriting, and image generation. Use when user asks to "imitate style", "保持这个风格重画", "按这张图风格生成",
$ npx -y skills add OpenSenseNova/SenseNova-Skills --skill sn-image-imitate --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/sn-image-imitate
Context preview
The summary Claude sees to decide when to auto-load this skill.
Generates a new image that imitates the style of a reference image while updating content based on user intent. Uses a three-stage pipeline: image annotation (long caption), caption rewriting, and image generation. Use when user asks to "imitate style", "保持这个风格重画", "按这张图风格生成",
SKILL.md
sn-image-imitate.SKILL.mdname: sn-image-imitate
description: |
Generates a new image that imitates the style of a reference image while updating content based on user intent.
Uses a three-stage pipeline: image annotation (long caption), caption rewriting, and image generation.
Use when user asks to "imitate style", "保持这个风格重画", "按这张图风格生成", or "style transfer with new content".
metadata:
project: SenseNova-Skills
tier: 1
category: scene
priority: 8
user_visible: true
triggers:
- "style imitation"
- "style transfer"
- "imitate this image style"
- "use this style with new content"
- "reference style image"
- "风格模仿"
- "风格迁移"
- "模仿这张图风格"
- "按参考图风格生成"
sn-image-imitate
Image style imitation scene skill (tier 1), relying on the `sn-image-recognize`, `sn-text-optimize`, and `sn-image-generate` tools provided by `sn-image-base` (tier 0).
Features:
- Extracts high-fidelity long caption from a reference image
- Rewrites caption according to user requested content change while preserving style and layout
- Enforces layout-lock constraints during caption rewrite
- Performs post-generation layout consistency review and bounded retries
- Returns structured process artifacts for debugging and reproducibility
Non-goals
- Pure neural style transfer without content change (use dedicated style-transfer tools instead)
- Local editing / inpainting of specific regions within the reference image
- Processing video or animation input (only single static images are supported)
- Batch generation from multiple reference images in one invocation
- Guaranteeing pixel-level fidelity to the reference; the skill targets layout and style consistency, not exact reproduction
Input Specification
- `reference_image` (string, required): local path or URL of the style reference image
- `target_content` (string, required): new content user wants in the generated image
- `output_mode` (string, default `friendly`): output mode, `friendly` or `verbose`
- `aspect_ratio` (string, default `16:9`): output aspect ratio for generation
- `image_size` (string, default `2k`): output image size preset
- `max_attempts` (int, default `3`): maximum generation attempts for meeting layout consistency
- `layout_threshold` (float, default `0.75`): minimum layout similarity score to accept result
Environment Variable
Dependency installation and API key configuration are for [sn-image-base](../sn-image-base/SKILL.md) skill.
The minimum environment variables to configure `sn-image-base` skill running with [SenseNova Token Plan](https://platform.sensenova.cn/token-plan):
SN_BASE_URL="https://token.sensenova.cn/v1"
SN_API_KEY="your-api-key"
Fallback priority is dedicated variable > domain shared variable > global variable. Text calls use `SN_TEXT_API_KEY` -> `SN_CHAT_API_KEY` -> `SN_API_KEY`; vision calls use `SN_VISION_API_KEY` -> `SN_CHAT_API_KEY` -> `SN_API_KEY`; image generation uses `SN_IMAGE_GEN_API_KEY` -> `SN_API_KEY`.
Please refer to the **Python dependencies and API keys** section in [`sn-image-generate_en.md`](../../docs/sn-image-generate_en.md) for more configurations.
API Configuration
All API calls in this skill are executed through the `sn_agent_runner.py` of the `sn-image-base` skill, please refer to the `sn-image-base` skill ([README.md](../sn-image-base/README.md)) for more details.
- **VLM call**: `sn-image-recognize` (Step 1 & 3)
- **LLM call**: `sn-text-optimize` (Step 2)
- **Image generation call**: `sn-image-generate` (Step 3)
**When encountering `MissingApiKeyError` or needing explicit model control**: pass model and auth params explicitly via CLI arguments. See `$SN_IMAGE_BASE/references/api_spec.md`.
**`$SN_IMAGE_BASE` path explanation**: `$SN_IMAGE_BASE` is the installation directory of the `sn-image-base` skill (`SKILL.md` exists). The agent can locate this path by skill name `sn-image-base`.
Architecture: Main Agent + Worker Agent
This skill uses a two-tier agent architecture:
- **Main Agent**: receives user request, normalizes parameters, sends preflight, invokes Worker Agent, and sends final text/image to user
- **Worker Agent**: executes fixed 3-step pipeline and returns structured JSON
**Responsibility Boundaries**:
- Worker Agent does not send any user-visible message directly
- Main Agent sends all user-facing responses
- Worker Agent last message must be and only be the JSON string defined in Return Contract
- Worker Agent executes VLM/LLM/image calls directly; no nested subagent for these low-level calls
Workflow
Main Agent Workflow
1. Extract `reference_image`, `target_content`, `output_mode` (default `friendly`), `aspect_ratio` (default `16:9`), `image_size` (default `2k`), `max_attempts` (default `3`), and `layout_threshold` (default `0.75`) 2. Validate required inputs:
- `reference_image` is provided and resolvable
- `target_content` is non-empty
3. Send preflight message: `"Using sn-image-imitate skill to generate a style-consistent image, please wait..."` 4. Start Worker Agent with full normalized parameters and working directory 5. On Worker result:
- `status=ok`: send final summary and generated image
- `status=error`: report the actual error
Worker Agent Workflow
Worker Agent receives `reference_image`, `target_content`, `output_mode`, `aspect_ratio`, `image_size`, `max_attempts`, `layout_threshold`, and the working directory of this skill (`$SKILL_DIR`).
**Error Handling Strategy**:
All `sn_agent_runner.py` calls share the same error handling rules:
- If the subprocess exits with non-zero code, crashes, or times out: do not fallback, return `status=error` with the actual error message from stderr or the system error string
- If the subprocess returns invalid JSON or the JSON lacks an expected `result` field: return `status=error`, do not silently continue with empty or default values
- If the VLM review call fails during Step 3, treat the attempt as incomplete: do not record a score, and either retry the revie
Read more
name: sn-image-imitate description: | Generates a new image that imitates the style of a reference image while updating content based on user intent. Uses a three-stage pipeline: image annotation (long caption), caption rewriting, and image generation. Use when user asks to "imitate style", "保持这个风格重画", "按这张图风格生成", or "style transfer with new content". metadata: project: SenseNova-Skills tier: 1 category: scene priority: 8 user_visible: true triggers: - "style imitation" - "style transfer" - "imitate this image style" - "use this style with new content" - "reference style image" - "风格模仿" - "风格迁移" - "模仿这张图风格" - "按参考图风格生成"
sn-image-imitate
Image style imitation scene skill (tier 1), relying on the `sn-image-recognize`, `sn-text-optimize`, and `sn-image-generate` tools provided by `sn-image-base` (tier 0).
Features:
- Extracts high-fidelity long caption from a reference image
- Rewrites caption according to user requested content change while preserving style and layout
- Enforces layout-lock constraints during caption rewrite
- Performs post-generation layout consistency review and bounded retries
- Returns structured process artifacts for debugging and reproducibility
Non-goals
- Pure neural style transfer without content change (use dedicated style-transfer tools instead)
- Local editing / inpainting of specific regions within the reference image
- Processing video or animation input (only single static images are supported)
- Batch generation from multiple reference images in one invocation
- Guaranteeing pixel-level fidelity to the reference; the skill targets layout and style consistency, not exact reproduction
Input Specification
- `reference_image` (string, required): local path or URL of the style reference image
- `target_content` (string, required): new content user wants in the generated image
- `output_mode` (string, default `friendly`): output mode, `friendly` or `verbose`
- `aspect_ratio` (string, default `16:9`): output aspect ratio for generation
- `image_size` (string, default `2k`): output image size preset
- `max_attempts` (int, default `3`): maximum generation attempts for meeting layout consistency
- `layout_threshold` (float, default `0.75`): minimum layout similarity score to accept result
Environment Variable
Dependency installation and API key configuration are for [sn-image-base](../sn-image-base/SKILL.md) skill.
The minimum environment variables to configure `sn-image-base` skill running with [SenseNova Token Plan](https://platform.sensenova.cn/token-plan):
SN_BASE_URL="https://token.sensenova.cn/v1" SN_API_KEY="your-api-key"
Fallback priority is dedicated variable > domain shared variable > global variable. Text calls use `SN_TEXT_API_KEY` -> `SN_CHAT_API_KEY` -> `SN_API_KEY`; vision calls use `SN_VISION_API_KEY` -> `SN_CHAT_API_KEY` -> `SN_API_KEY`; image generation uses `SN_IMAGE_GEN_API_KEY` -> `SN_API_KEY`.
Please refer to the **Python dependencies and API keys** section in [`sn-image-generate_en.md`](../../docs/sn-image-generate_en.md) for more configurations.
API Configuration
All API calls in this skill are executed through the `sn_agent_runner.py` of the `sn-image-base` skill, please refer to the `sn-image-base` skill ([README.md](../sn-image-base/README.md)) for more details.
- **VLM call**: `sn-image-recognize` (Step 1 & 3)
- **LLM call**: `sn-text-optimize` (Step 2)
- **Image generation call**: `sn-image-generate` (Step 3)
**When encountering `MissingApiKeyError` or needing explicit model control**: pass model and auth params explicitly via CLI arguments. See `$SN_IMAGE_BASE/references/api_spec.md`.
**`$SN_IMAGE_BASE` path explanation**: `$SN_IMAGE_BASE` is the installation directory of the `sn-image-base` skill (`SKILL.md` exists). The agent can locate this path by skill name `sn-image-base`.
Architecture: Main Agent + Worker Agent
This skill uses a two-tier agent architecture:
- **Main Agent**: receives user request, normalizes parameters, sends preflight, invokes Worker Agent, and sends final text/image to user
- **Worker Agent**: executes fixed 3-step pipeline and returns structured JSON
**Responsibility Boundaries**:
- Worker Agent does not send any user-visible message directly
- Main Agent sends all user-facing responses
- Worker Agent last message must be and only be the JSON string defined in Return Contract
- Worker Agent executes VLM/LLM/image calls directly; no nested subagent for these low-level calls
Workflow
Main Agent Workflow
1. Extract `reference_image`, `target_content`, `output_mode` (default `friendly`), `aspect_ratio` (default `16:9`), `image_size` (default `2k`), `max_attempts` (default `3`), and `layout_threshold` (default `0.75`) 2. Validate required inputs:
- `reference_image` is provided and resolvable
- `target_content` is non-empty
3. Send preflight message: `"Using sn-image-imitate skill to generate a style-consistent image, please wait..."` 4. Start Worker Agent with full normalized parameters and working directory 5. On Worker result:
- `status=ok`: send final summary and generated image
- `status=error`: report the actual error
Worker Agent Workflow
Worker Agent receives `reference_image`, `target_content`, `output_mode`, `aspect_ratio`, `image_size`, `max_attempts`, `layout_threshold`, and the working directory of this skill (`$SKILL_DIR`).
**Error Handling Strategy**:
All `sn_agent_runner.py` calls share the same error handling rules:
- If the subprocess exits with non-zero code, crashes, or times out: do not fallback, return `status=error` with the actual error message from stderr or the system error string
- If the subprocess returns invalid JSON or the JSON lacks an expected `result` field: return `status=error`, do not silently continue with empty or default values
- If the VLM review call fails during Step 3, treat the attempt as incomplete: do not record a score, and either retry the revie
The SenseNova model family plugs directly into agent runtimes such as OpenClaw and hermes-agent, with the skills in this repository extending the models with concrete, end-to-end office capabilities.
Repo: OpenSenseNova/SenseNova-Skills
Other skills on sensenova-skills.
- /sn-da-excel-workflow
Excel 数据分析多步编排器。覆盖:(1) 读取多 Sheet Excel 文件并统计行数,(2) 大文件检测(≥10k 行自动 Parquet 优化),(3) 数据清洗(缺失值、文本标准化、无效字符),(4) 条件筛选与分类提取,(5) 跨 Sheet 统计聚合,(6) 导出 Excel/CSV 并提供下载链接。覆盖从数据读取到报告生成全流程,按步骤编排 capability 子 skill。**遇到以下任一情况就主动使用本 skill,不要自行写几行 pandas 就回答**:①用户出现触发词:Excel 分析 / 表格分析 / 数据分析 /
Open skill - /category-coloring
当Excel文件总行数超过1万行时,通过转换为Parquet格式提升读取性能,提取目标指标并计算最大值,最后将结果输出为Excel并对特定行进行高亮标注。
Open skill - /duplicate-value-coloring
对比Excel多表中的特定系数并对异常值进行颜色标记。
Open skill - /outlier-coloring
识别 Excel 中的超限数值与错误单元格并进行高亮标注。
Open skill - /threshold-cell-coloring
根据Excel总行数自动切换Parquet加速读取,计算特定维度的时间序列平均值,并使用openpyxl输出带有条件格式(如低于均值标绿)和自定义样式的分析报告。
Open skill - /top-value-coloring
根据数据规模动态选择处理策略,对多表数据进行合并、统计筛选,并利用 openpyxl 实现关键指标的自动化样式高亮与格式化导出。
Open skill

