用途
image-fetcher(Asset Fetcher)用于在内容创作时获取视觉素材。当你需要为内容准备图片或截图资源时,可使用该技能完成采集与整理。
主要能力
它提供三种素材获取模式:
- 网络图片搜索:使用原生 web_search 工具按关键词查找图片,评估搜索结果并下载最匹配的一张。
- 实时截图:使用 Playwright MCP 访问指定 URL,设置视口尺寸并截取画面。
- 素材整理:将获取的所有素材以描述性文件名保存到团队的 reference/ 或 output/ 文件夹中。
截图模式
截图支持以下三种模式:
- viewport:仅截取当前可见的视口区域(默认)
- full_page:截取整个可滚动页面
- selector:截取指定的 CSS 选择器元素
截图工作流程
进行截图时按以下步骤操作:
- 使用 browser_navigate 访问目标 URL
- 通过 browser_resize 设置视口宽高,以匹配目标格式:
- Instagram 帖子:1080x1080
- Instagram 轮播:1080x1440
- Story/Reel:1080x1920
- 通用:1280x720
- 等待页面加载(如有需要可使用 browser_wait_for)
- 使用 browser_take_screenshot 截图
- 以描述性文件名保存到 reference 文件夹
素材元数据
获取每个素材后,需在输出中记录以下信息:
- path:本地文件路径
- width/height:图片尺寸
- source_type:"web_search"、"screenshot" 或 "user_provided"
- original_url:来源 URL(如适用)
缓存策略
获取素材之前应先检查缓存:
- 检查 reference 文件夹中是否已有匹配文件
- 使用基于来源的确定性文件名(例如 URL slug + 视口)
- 复用已有素材,避免重复获取
安全限制
- 截图超时:每张最多 30 秒,超时则跳过并警告
- 截图最大尺寸:1920x1920px
- 屏蔽 file:// 协议 URL
- 屏蔽 localhost 与私有 IP 网段(127.0.0.1、10.x、192.168.x)
最佳实践
- 对于产品/工具页面,优先使用截图而非网络搜索(搜索到的图片往往已过时)
- 使用描述性文件名,例如 gemini-benchmark-chart.png 而非 image1.png
- 缓存前规范化 URL(去除跟踪参数)
- 为下游工具记录所有已获取素材的元数据
可用操作
- Web Image Search:按关键词从网络查找并下载图片
- Live Screenshot:对任意 URL 截取视口、整页或元素截图
- Asset Organization:以描述性文件名和元数据保存并编目素材
- Cache Check:检测并复用已获取的素材,避免重复下载