博客封面生成技能
该技能使AI智能体能够使用 blog-cover-image-cli 生成惊艳、简约且具有技术感的博客封面图像。CLI利用Gemini 3.1 Flash图像预览,自动从域名获取品牌Logo,使用本地美学参考图像,并通过Google搜索实况信息注入实时上下文。
设置与配置
智能体前置条件:
在使用此工具前,请确认其已安装。若 blog-cover-cli --help 执行失败,则全局安装:
npm install -g blog-cover-image-cli
如果用户要求你生成图像,但你尚未配置API密钥,则必须先使用Gemini API密钥进行CLI配置。CLI通过 conf 包安全存储密钥。
# 1. 设置Gemini API密钥(图像生成必需)
npx -p blog-cover-image-cli blog-cover-cli config set-key <YOUR_GEMINI_API_KEY>
# 2. 设置Brandfetch客户端ID(获取高清Logo必需)
npx -p blog-cover-image-cli blog-cover-cli config set-brandfetch-id <YOUR_BRANDFETCH_CLIENT_ID>
# 检查密钥(已掩码)
npx -p blog-cover-image-cli blog-cover-cli config get-key
npx -p blog-cover-image-cli blog-cover-cli config get-brandfetch-id
使用:生成图像
当用户请求封面图像时(例如:“为我的关于Vercel v0的博客创建封面图像”),应使用 generate 命令。
npx -p blog-cover-image-cli blog-cover-cli generate -t "博客文章标题" -l "example.com"
参数
-t, --title <text>:(必需) 封面图像上显示的标题文本。请勿使用过长的标题(视觉上保持在3行文本以内)。-l, --logo <domain>:(可选但推荐) 获取品牌Logo的域名(例如vercel.com、google.com、cursor.com)。CLI会自动将WebP/SVG/AVIF转换为PNG以确保兼容性。-o, --output <path>:(可选) 生成图像的保存路径。若省略,CLI会自动保存到当前工作目录的output/文件夹中(例如./output/vercel-cover.png)。
示例
示例1:Cursor
npx -p blog-cover-image-cli blog-cover-cli generate -t "为什么Cursor是终极AI代码编辑器" -l "cursor.com"
示例2:Lovable
npx -p blog-cover-image-cli blog-cover-cli generate -t "用Lovable在几分钟内构建应用" -l "lovable.dev"
示例3:自定义输出路径
npx -p blog-cover-image-cli blog-cover-cli generate -t "在2026年掌握React" -l "reactjs.org" -o "./assets/react-cover.png"
工作原理
作为智能体,你应了解CLI的内部机制,以便告知用户:
- Logo抓取:通过
Brandfetch获取Logo并使用sharp进行处理。 - 参考图像:加载其
examples/目录中的精选参考图像,确保输出始终为干净、极简的白色背景,搭配粗体排版。 - 实况信息:已启用
googleSearch工具,意味着如果标题涉及近期事件,Gemini可在生成图像前先进行查询。 - 文本强制:通过排版位置规则强制Gemini输出精确的标题字符串。
边界情况 / 故障排除
- 未设置API密钥错误:若遇到API密钥错误,请运行
config set-key命令。 - Logo获取警告:如果CLI显示
Warning: Could not fetch logo,它仍会生成图像,但将不包含Logo。无需中断或停止。 - 严格模态限制:由于使用Gemini的实验性图像模型,生成可能因严格的安全过滤器偶尔失败。若发生此情况,请通知用户。