← 返回 Skills 市场
j3ffyang

blog-image-embedder

作者 Jeff Yang · GitHub ↗ · v1.0.4 · MIT-0
cross-platform ⚠ suspicious
305
总下载
0
收藏
0
当前安装
5
版本数
在 OpenClaw 中安装
/install blog-image-embedder
功能描述
Analyze polished zh-CN blog markdown, generate hero + per-section image prompts, embed image placeholders into the markdown, and save updated version.
使用说明 (SKILL.md)

Blog Image Embedder

Analyzes polished zh-CN markdown, generates consistent image prompts (hero + 1 per section), embeds [image:x] placeholders, saves illustrated version.

When to Use

Use after blog-polish-zhcn completes. Input is polishedPath from first skill. Triggers: "add images to my polished blog", "generate image prompts for sections".

Defaults

  • style: clean flat vector illustration, minimal isometric, software-engineering diagram vibe
  • background: default: white background with subtle grid
  • aspectRatioHero: 16:9 horizontal
  • aspectRatioSection: 16:9

Workflow Summary

  1. Read polished markdown from input.polishedPath
  2. Parse structure: Extract title + ## section headings (expect 3-4 sections)
  3. Generate prompts:
    • Hero: [Hero of {title}]: {topic summary}, {style}, {background}, 16:9
    • Section N: [Section {N} of {title}]: {section summary}, {style}, {background}, 16:9
  4. Embed placeholders: Insert \ \ [image:0]\ \ after title, \ \ [image:1]\ \ after first section, etc.
  5. Save: ${outputDir}/${ts}-illustrated.md
  6. Return: { illustratedPath, imagePrompts: [...], imagePaths: [...] }

Output Format

{
  "illustratedPath": "/home/jeff/.openclaw/workspace/contentPolished/2603142145-illustrated.md",
  "imagePrompts": ["Hero prompt...", "Section 1 prompt...", "Section 2 prompt..."],
  "imagePaths": ["2603142145-main.png", "2603142145-section1.png", "2603142145-section2.png"]
}
安全使用建议
This skill appears to implement what it says, but the SKILL.md has several inconsistencies you should fix or verify before use: 1) Correct the imageModel default (it currently points to a text LLM 'openai/gpt-5-mini' rather than an image model). 2) Clean up the inputSchema (misplaced comments like 'ADD MISSING', mismatched imageWidth defaults/descriptions, and commented notes) so parameters are unambiguous. 3) Document where image-provider API keys should come from (the skill doesn't declare env vars, so it will rely on whatever credentials the agent/platform already provides). 4) Test the workflow to ensure polishedPath resolution and the image generation step behave as expected. If you cannot fix or verify these points, treat the skill as potentially unreliable and avoid running it on sensitive content until corrected.
功能分析
Type: OpenClaw Skill Name: blog-image-embedder Version: 1.0.4 The skill contains potential shell injection vulnerabilities in SKILL.md within the 'resolve_latest_polished' and 'read_polished' workflow steps. Specifically, the use of unvalidated variables in shell commands like 'ls -t "$outputDir"/*.md' and 'cat "$polishedPath"' could allow for arbitrary command execution if the directory or filenames are manipulated. While the overall logic is consistent with the stated purpose of processing blog images, the lack of input sanitization in shell execution blocks represents a significant security risk.
能力评估
Purpose & Capability
The name/description match the actions in SKILL.md: read a polished markdown, parse sections, create image prompts, embed placeholders, and save a new file. However some declared inputs and defaults are inconsistent with that purpose (see imageModel default set to 'openai/gpt-5-mini' which is a text LLM, and commented/misaligned schema fields). These inconsistencies look like sloppy authoring rather than an unrelated permission request.
Instruction Scope
Runtime steps only read markdown files from the given outputDir, parse them (LLM step), invoke an image generation step, insert placeholders, and write an illustrated markdown file. There are no instructions to read unrelated system files or transmit data to unexpected external endpoints. The only notable gaps: the skill doesn't declare where image API credentials come from and has minor logic ambiguity about how polishedPath is resolved.
Install Mechanism
This is instruction-only with no install spec or code files, so nothing is downloaded or written beyond the described read/write to the workspace. That is the lowest-risk install posture.
Credentials
The skill declares no required environment variables or credentials (which keeps its declared surface small). However it expects to call an image generation capability (image:true) and lists providers like 'openai/dall-e-3' and 'stability/ai-sdxl' — those providers require API credentials at the platform level. The SKILL.md does not document where those keys should be supplied or whether the agent will use global creds. Also the input schema has mismatched defaults and comments (e.g., imageWidth default and comment about hero being 1200), which could lead to incorrect image requests.
Persistence & Privilege
always is false and the skill is user-invocable only. It reads and writes files in the provided outputDir (expected for its purpose) and does not request persistent or cross-skill configuration changes.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install blog-image-embedder
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /blog-image-embedder 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.4
- Updated timestamp format in output filenames from `%Y%m%d%H%M` (e.g., 202306010930) to `%y%m%d%H%M` (e.g., 2306010930) for illustrated markdown output. - No other functional or workflow changes.
v1.0.3
- Fixed illustrated file timestamp format to use 4-digit year (%Y) for better sorting and clarity. - Version updated to 1.0.3.
v1.0.2
- Added imageModel input to allow choosing between "openai/gpt-5-mini", "openai/dall-e-3", and "stability/ai-sdxl" for image generation. - generate_prompts workflow step now uses the configured image model and related parameters. - Minor timestamp format change for illustrated markdown output files. - No changes to existing input/output schema, other fields, or workflow logic.
v1.0.1
- Default image quality changed from "high" to "medium". - Image generation workflow updated to use `${imageWidth}`, `${imageHeight}`, and `${imageQuality}` parameters for more flexible output. - Redundant and hardcoded prompt generation parameters removed in favor of configurable values from input schema. - No file changes—update is metadata and workflow only.
v1.0.0
- Initial release of blog-image-embedder. - Analyzes polished zh-CN blog markdown and generates consistent hero and section image prompts. - Embeds `[image:x]` placeholders into the markdown where images should appear. - Saves the updated, illustrated markdown and returns paths to the new file, generated prompts, and images. - Designed for use after running blog-polish-zhcn, supporting streamlined blog publishing workflows.
元数据
Slug blog-image-embedder
版本 1.0.4
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 5
常见问题

blog-image-embedder 是什么?

Analyze polished zh-CN blog markdown, generate hero + per-section image prompts, embed image placeholders into the markdown, and save updated version. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 305 次。

如何安装 blog-image-embedder?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install blog-image-embedder」即可一键安装,无需额外配置。

blog-image-embedder 是免费的吗?

是的,blog-image-embedder 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

blog-image-embedder 支持哪些平台?

blog-image-embedder 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 blog-image-embedder?

由 Jeff Yang(@j3ffyang)开发并维护,当前版本 v1.0.4。

💬 留言讨论