关于 picgen
PicGen 是面向非技术用户的生图技能,通过 CLI 将 Agent 工作流连接到用户配置的图像生成服务,可在对话中生成图片。它提供预览确认流程、服务配置、参考图与遮罩编辑,以及本地网页界面。
主要功能
- 01连接已配置的生图服务
- 02生成前预览并确认
- 03支持参考图与遮罩编辑
- 04管理服务和 API key
- 05本地网页生成与历史浏览
适用场景
- 01在 Agent 对话中生成图片
- 02使用参考图生成或编辑图片
- 03通过网页管理多个服务
- 04查看已保存的生成图片
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ ai-agent-tools/ picgen --skill picgen安装后在 Claude Code 中输入/picgen确认已加载。
详细介绍
PicGen 技能
PicGen 可将 Agent 工作流连接到用户配置的图像生成服务商。它专为非技术用户设计,让他们无需将提示词复制到外部图像平台,就能在 Agent 对话中生成图像。
调用策略
当用户明确要求生成、创建、制作、渲染或产出图像,或明确提到 PicGen 时,使用 PicGen。
当用户表达了强烈的视觉输出意图,但没有明确要求立即生成时,先询问是否要启动 PicGen 工作流。
当用户讨论视觉方向、氛围、品牌风格或抽象视觉创意,但没有要求生成内容时,只推荐 PicGen。
绝不悄悄消耗用户的配额。默认不要向服务商发送完整的对话上下文;只总结最终提示词所需的视觉细节。
安装
如果 picgen 不可用,请先安装 CLI:
npm install -g @ai-agent-tools/picgen@latest
如需为受支持的 Agent 安装或更新此技能,优先使用标准 Skills 安装程序:
npx -y skills add ai-agent-tools/picgen --skill picgen -g -y --copy
仅对 Codex,CLI 也提供直接备用方案:
picgen skill install codex --force
安装或更新技能后,用户可能需要重启 Agent 或开启新会话,技能才会显示。
升级
当用户要求升级 PicGen 时,同时更新 CLI 和此技能。不要要求非技术用户理解 npm、技能缓存或版本详情。
首先检查 Node.js 和 npm 是否可用:
node -v
npm -v
如果缺少 Node.js 或 npm,请引导用户先安装 Node.js LTS。
升级 CLI:
npm install -g @ai-agent-tools/picgen@latest
picgen --version
picgen doctor --json
然后更新技能:
npx -y skills add ai-agent-tools/picgen --skill picgen -g -y --copy
如果 Skills 安装程序不可用,且当前 Agent 是 Codex,请使用:
picgen skill install codex --force
更新技能后,告知用户开启新对话,以便 Agent 重新加载最新的 PicGen 指令。如果新对话仍无法识别更新后的技能,请用户重启 Agent 应用。
保留现有的服务商和 API 密钥配置。除非 picgen doctor --json 报告了实际配置问题,否则升级不应要求用户重新配置密钥。
更新提示
PicGen 内置更新检查程序:
picgen update check --json
在以下情况下检查更新:
- 用户要求安装、升级、配置、诊断或打开 PicGen。
- 用户询问较新的功能,例如参考图像、蒙版、本地 Web UI、服务商管理或历史记录。
- PicGen 命令因某个选项、命令、协议功能或技能指令似乎不可用而失败。
picgen doctor --json或picgen quickstart已提示有更新。
不要在每次生成请求前都检查更新。避免仅为建议更新而中断正常的图像生成流程。
有可用更新时,先用用户易懂的方式说明更新的好处,再提供命令。优先突出功能的表述方式:
PicGen 有新版可用。升级后通常可以直接保留现有渠道和 API key,同时获得新版能力,例如参考图、遮罩编辑、本地网页配置/历史查看,以及更好的 Agent 使用说明。要我帮你现在升级吗?
如果用户正在处理紧急的图像生成任务,尽量简短地提出建议:
当前版本也可以继续用。我看到 PicGen 有新版,完成这次生成后可以升级,能获得更多生图和配置能力。
用户同意后,按照上述升级流程操作。如果用户拒绝,则继续当前任务;除非缺少某项功能会阻碍进度,否则不要在同一对话中重复提醒。
如果因无法连接 npm 注册表而无法获取更新信息,不要将其视为错误。继续执行用户要求的任务,只有在用户明确要求检查更新时才提及此事。
环境检查
安装 CLI、安装技能或保存 API 密钥之前,请先检查当前终端是否属于用户持久化的本地环境,还是沙盒/临时环境。
可使用以下轻量检查:
pwd
echo "$HOME"
node -v
npm -v
npm root -g
which picgen || true
如果环境看起来是持久化的用户级环境,请在那里继续设置。
如果环境看起来处于沙盒中、位于远程、属于临时环境、会在会话之间重置,或无法写入用户的真实主目录,请勿在那里安装 PicGen、安装技能或保存 API 密钥。请先请求用户许可,以便使用其主机上的持久化终端或持久化的用户级环境。面向用户的示例措辞:
我检测到当前可能是临时沙箱。PicGen 需要安装到你的本机持久环境,否则新会话可能会丢失 CLI、skill 或 API key。请允许我在本机持久环境中继续安装和配置;如果无法授权,我再给你最少的本机终端命令。
如果用户授予许可,请在该持久化环境中继续安装和设置提供商。如果无法获得许可或用户拒绝,请为用户提供一组精简的本地终端复制粘贴命令。手动操作说明应保持简短,只说明用户必须执行的操作。
本地 Web 界面
如果用户说“open PicGen”“打开 PicGen”或“打开生图工具”,要求提供可视化设置页面、希望无需学习 CLI 命令即可生成图像,或想查找之前生成的图像,请启动本地 Web 界面:
picgen open
将打印出的本地 URL 返回给用户。PicGen 绑定到 127.0.0.1,默认使用端口 8188,并会在需要时自动尝试后续端口。服务器在前台运行;页面使用期间,用户或 Agent 应保持终端运行,并在使用完毕后按 Ctrl+C 关闭。
如果当前环境看起来处于沙盒中、位于远程或属于临时环境,请先请求访问用户的持久化本地环境,然后再运行 picgen open。如果无法做到,请简短告知用户在本地终端运行 picgen open,并打开打印出的 URL。
只有在用户明确执行显示操作后,本地页面才会在其浏览器中显示完整 API 密钥。在聊天中,只能使用掩码命令检查密钥,例如:
picgen key list --json
picgen key show PICGEN_GEMINI_PROXY_KEY --json
使用 Web 界面进行面向用户的设置、提供商管理、图像生成和历史记录浏览。使用 CLI 命令执行 Agent 驱动的试运行、自动化、诊断和精确且可复现的步骤。
首次由 Agent 协助设置时,优先采用基于剪贴板的 CLI 流程,因为这样用户可以留在对话中,无需额外切换界面。当用户希望管理多个提供商、检查已屏蔽的密钥来源、在本地显示完整密钥、无需 CLI 命令即可生成图像,或查找已保存的图像历史记录时,优先使用 Web 界面。
工作流
- 运行
picgen doctor --json检查配置。 - 如果没有配置可用的提供方,请先配置一个再生成。
- 根据用户意图选择预设,例如
poster、product-shot或social-cover。 - 运行
picgen create --dry-run --preset <preset> "<prompt>"。 - 将试运行结果作为面向用户的生成预览展示。除非有帮助,否则不要将
dry-run作为技术术语透露给用户。 - 用户确认后,运行
picgen create --preset <preset> "<prompt>"。 - 显示本地图像预览或已保存的文件路径。
如果用户明确表示要直接生成或不需要确认,可以跳过面向用户的确认步骤,但仍须在内部制定生成计划。
默认只生成一张图像。不要仅仅为了提供选项而生成多张图像。只有当用户明确要求多个选项、多个变体、对比或指定数量时,才生成多张图像。
当用户指定数量、尺寸、宽高比、质量或格式时,使用单次生成标志。这些标志不会更改已保存的偏好设置:
picgen create --n 2 --size 1088x576 --quality low "<prompt>"
picgen create --aspect-ratio 16:9 --size medium "<prompt>"
对于兼容 OpenAI 的提供方,PicGen 会规范化请求的 WIDTHxHEIGHT 尺寸,以满足当前模型规则后再发送请求。例如,如果原始尺寸低于当前最低像素预算,1088x576 可能会以 1120x592 发送。提供方仍可能返回接近但不同的最终像素尺寸;PicGen 会原样保存提供方返回的结果,不会调整尺寸、裁剪、填充或拉伸图像。
向非技术用户解释时,请尽量简明:
你指定的尺寸会作为目标尺寸使用。PicGen 会先按模型规则选择一个最接近的合法请求尺寸,最终图片尺寸以模型实际返回为准,不会额外拉伸或裁切。
对于 Gemini 提供方,PicGen 会将精确尺寸转换为最接近的受支持 aspectRatio 和高效的 imageSize;对于常见的横幅请求,通常使用 1K。
提供商设置
当用户可以看到终端提示时,可以使用 picgen setup。
在交互式终端提示不可见的 Agent 环境中运行时,不要运行会阻塞的向导 picgen setup。请向用户询问:
- 提供商类型:Gemini 或 OpenAI-compatible。
- 提供商主机:仅填写主机,例如
https://www.pandai.vip;不要包含/v1或/v1beta。 - API 密钥。优先请用户将密钥复制到剪贴板并回复“已复制”;避免要求他们在聊天中粘贴密钥。
然后使用非交互式命令。
Gemini-compatible 第三方渠道:
picgen provider quick-add gemini-proxy --host https://www.pandai.vip --prefer
picgen key set PICGEN_GEMINI_PROXY_KEY --clipboard
picgen provider test gemini_proxy --json
OpenAI-compatible 第三方渠道:
picgen provider quick-add openai-proxy --host https://www.pandai.vip --prefer
picgen key set PICGEN_OPENAI_PROXY_KEY --clipboard
picgen provider test openai_proxy --json
如果无法访问剪贴板,请通过 stdin 将 API 密钥传递给 picgen key set;除非用户明确接受这种权衡,否则不要将密钥直接写入 shell 历史记录。如果 Agent 运行环境无法安全地通过 stdin 传递密钥,请让用户在自己的终端中运行 picgen key set <ENV_NAME>,并在隐藏提示中粘贴密钥。
查看已配置的密钥而不泄露密钥值:
picgen key list --json
picgen key show PICGEN_GEMINI_PROXY_KEY --json
这些命令只会显示来源、长度、掩码预览和指纹。绝不要仅为验证密钥而要求用户在聊天中粘贴密钥。
向用户说明密钥检查时,请说:“在本次对话中,我只读取经过掩码处理的密钥状态,不会读取完整密钥。如果你需要自行检查或编辑已保存的完整密钥,PicGen 管理的密钥文件位于 ~/.picgen/.env;当前目录中的项目级 .env 可能会覆盖它;shell 环境变量具有最高优先级。”
生成参考图像时,使用重复的 --reference <path> 标志传入本地图像:
picgen create --dry-run --reference ./reference.png --preset poster "<prompt>"
picgen create --reference ./reference.png --preset poster "<prompt>"
进行本地编辑或图像修复时,请同时传入蒙版图像和至少一张参考图像:
picgen create --dry-run --reference ./source.png --mask ./mask.png --preset poster "<prompt>"
picgen create --reference ./source.png --mask ./mask.png --preset poster "<prompt>"
提供参考图像时,OpenAI-compatible 提供商会使用 /v1/images/edits,并通过 multipart 上传 image[];提供蒙版时,则会通过 multipart 上传 mask。Gemini 提供商会使用 generateContent;蒙版会作为蒙版引导图像处理,并配合明确的编辑指令,而不是使用原生图像修复功能。
PicGen 会根据提供商的能力进行路由。提供参考图像时,除非用户明确指定了提供商,否则 Agent 可以省略 --provider,让 PicGen 选择支持 reference-image 的提供商。
首次冒烟测试
配置提供商后,首次测试生成时应使用成本低、速度快、仅生成一张图像的方案。首次验证不要使用 poster、product-shot、social-cover、高级模式、大尺寸或高质量预设。
对于 Gemini 提供商,首次测试优先使用 flash 图像模型:
picgen create --dry-run --provider gemini_proxy --preset fast-draft --model gemini-3.1-flash-image-preview "一张简洁的 PicGen 测试图,白色背景,少量蓝绿色科技感点缀"
picgen create --yes --provider gemini_proxy --preset fast-draft --model gemini-3.1-flash-image-preview "一张简洁的 PicGen 测试图,白色背景,少量蓝绿色科技感点缀"
对于 OpenAI-compatible 提供商:
picgen create --dry-run --provider openai_proxy --preset fast-draft "一张简洁的 PicGen 测试图,白色背景,少量蓝绿色科技感点缀"
picgen create --yes --provider openai_proxy --preset fast-draft "一张简洁的 PicGen 测试图,白色背景,少量蓝绿色科技感点缀"
除非用户明确要求立即生成,否则请先展示 dry-run 预览,并在实际生成前征求确认。首次冒烟测试应生成一张图像。
提供商配置成功后
配置好一个提供商并成功完成首次冒烟测试后,告知用户该提供商已就绪,并询问他们是否要添加另一个渠道作为备用。示例:
Gemini 渠道已经配置并测试成功。你还可以继续添加另一个渠道作为备用,例如 OpenAI-compatible。要继续添加吗?
如果用户回答“是”,请为下一个渠道重复提供商设置和冒烟测试。如果用户回答“否”,则停止设置,并告知他们 PicGen 已可使用。
偏好设置和覆盖项
将 picgen create 标志视为仅对单次操作生效的覆盖项。它们不得更改用户偏好:
picgen create --provider gemini_official "<prompt>"
picgen create --model gemini-3-pro-image-preview "<prompt>"
picgen create --preset poster "<prompt>"
picgen create --mode premium "<prompt>"
picgen create --reference ./reference.png "<prompt>"
picgen create --mask ./mask.png --reference ./source.png "<prompt>"
只有当用户明确要求记住某项偏好时,才更改默认设置,例如“从现在起默认使用 Gemini”。
输出处理
PicGen 会将提供商的响应规范化为本地图片文件。提供商可能返回 URL、base64、内联字节或文件引用,但 Agent 应只使用 PicGen 的本地路径和元数据。
生成后:
- 显示图片预览或本地路径。
- 不要在对话中粘贴 base64、二进制图片数据或完整的提供商响应。
- 除非用户明确要求调试,否则不要读取或显示元数据中的提供商响应负载。
- 不要自动读取、附加、分析或重新发送生成的图片。
- 只有在用户要求查看、编辑、接续创作或比较图片时,才加载生成的图片。
- 需要加载时,只加载明确提及的图片。
除非普通用户主动询问,否则不要向他们解释 token 或上下文管理。
PicGen 会从元数据中删去生成的图片负载和 Gemini 思维签名,但 Agent 仍应将元数据视为诊断信息,而非面向用户的内容。
错误处理
如果 doctor 报告没有可用的提供商,请配置一个提供商。在 Agent 环境中,优先使用非交互式设置。
如果缺少 API 密钥,请使用 picgen key set <ENV_NAME> --clipboard、--stdin 保存密钥;如果可以看到交互式提示,则引导用户运行 picgen setup。只有在有助于调试时,才指出所需的环境变量。
如果提供商已禁用,请建议启用它,或使用一次性的提供商覆盖设置。
如果用户提供了蒙版,但没有提供参考图片,请在生成前询问或查找源图片/参考图片。蒙版只有与源图片配合使用才有意义。
如果提供商调用失败,请简要说明错误,并在有可用路径时提供元数据或错误路径。除非用户已批准回退行为,否则不要静默改用其他收费提供商重试。
示例
明确指定:
用 PicGen 生成一张产品发布海报
确认:
我可以先用 PicGen 做一次轻量测试生成,默认只出 1 张,确认工具和渠道都可用。要我现在开始吗?
生成预览:
生成预览:
我将使用当前渠道生成 1 张轻量测试图,保存到本地。
确认后开始生成。