AI agent skill

装一个 skill,你的 AI agent 就能替你批量生图——自己选模型、算花费、向你确认,然后提交、轮询、下载整批结果。

它能做什么

skill 就是一个装着说明的文件夹,任务匹配时 agent 会读它。这一个教会 agent 整套 BulkImagen 流程,于是你可以直接用大白话要图,而不用自己写接口调用。

举个例子

「把这个杯子放大理石桌上,生成 12 张产品图,16:9。」

agent 会先读模型目录,算出 12 张 1K 图要 60 积分,查一下你的余额,把两个数字摆给你看然后停住等你点头。你说可以,它才上传参考图、提交批次、轮询到全部完成,把文件存到本地。

安装

一行命令。它会从当前目录判断你用的是哪个 agent,然后把 skill 放到那个 agent 会读的位置——只创建目录和下载文件,不做别的。

curl -fsSL https://bulkimagen.com/skill/install.sh | sh

把脚本管道进 shell 之前值得先看一眼。它执行的就是这些: install.sh

也可以直接指定

自动检测覆盖常见情况,但如果你装了不止一个 agent,直接指明更省事。三者内容完全相同,只是格式和落地位置不同。

Claude Code

~/.claude/skills/bulkimagen/

curl -fsSL https://bulkimagen.com/skill/install.sh | sh -s -- claude
Cursor

.cursor/rules/bulkimagen.mdc

curl -fsSL https://bulkimagen.com/skill/install.sh | sh -s -- cursor
Codex · Copilot · Gemini CLI · Aider · Windsurf · Zed

AGENTS.md

curl -fsSL https://bulkimagen.com/skill/install.sh | sh -s -- agents

配置 API 密钥

skill 从环境变量读密钥,绝不写进磁盘。API 访问需要付费套餐。

export BULKIMAGEN_API_KEY=bik_live_...

agent 怎么用它

每次都按同样四步走,顺序固定。skill 里把这件事写死了,免得 agent 拿你的积分即兴发挥。

  1. 1
    先读目录

    它会拉取实时模型清单,而不是凭记忆里的名字和价格,同时读清楚哪个比例在哪个分辨率下合法。

  2. 2
    估算并确认

    算出这批出多少张、要花多少积分,跟你的余额一比,然后停下来等你明确点头。这一步不可跳过。

  3. 3
    提交并轮询

    先上传参考图(免费),再创建批次并扣积分。之后每隔几秒轮询一次,直到没有待处理和进行中的任务。

  4. 4
    下载并汇报

    结果图存到本地。失败的任务会自动退积分,agent 会把失败情况告诉你,而不是悄悄略过。

安全边界

持有 API 密钥的 agent 是在花你的真金白银。有三条规则直接写进了 skill 本身。

花钱前必须确认

agent 必须先报出张数和积分花费再等你回话——哪怕你之前说过「你看着办」。配套 CLI 也是同一套逻辑:不带 --yes 就直接退出,不会提交。

绝不泄露密钥

密钥只从 BULKIMAGEN_API_KEY 读取,不打印、不写文件、不出现在会被 shell 历史记录下来的地方。想再加一道保险,就给密钥设每日积分上限。

硬失败不死循环

提示词被拦、积分耗尽、超出套餐限额这类错误都标了不可重试。agent 会把原因报给你然后停下,而不是反复重试把余额烧光。

装了些什么

Claude Code 装的是四个文件;Cursor 和 AGENTS.md 装的是单个自包含文件,其余内容通过链接引用。

bulkimagen/
├── SKILL.md
├── references/
│   ├── api.md
│   └── choosing-a-model.md
└── scripts/
    └── bulkimagen.mjs
文件作用
SKILL.md什么时候触发、整套流程、以及花费方面的硬规则。
references/api.md全部接口、参数和错误码。
references/choosing-a-model.md什么场景选什么模型,以及要避开的坑。
scripts/bulkimagen.mjs零依赖 CLI(Node 18+),负责提交、轮询和下载。

单独用这个 CLI

附带的脚本脱离 agent 也能用,适合放进 shell 或定时任务。它会先打印花费估算,不加 --yes 就拒绝提交。

node ~/.claude/skills/bulkimagen/scripts/bulkimagen.mjs \
  submit --model nano-banana-pro --count 4 --ratio 16:9 \
  --out ./images --yes "a red fox in snow"

换别的 agent

skill 这个格式是给 Claude Code 用的,但接口本身跟它没有绑定。任何能读网页、能发 HTTP 请求的 agent,直接用纯文本参考或 OpenAPI 规范就行。