# Punk Ip Article Illustrations

> Punk 出品的完整个人 IP 插图工作流：从用户上传的人物照片创建、修订、确认并持久化可复用角色，也可直接启用内置 Punk 角色；角色确认后读取完整文章、Markdown、网页、帖子或观点，自动决定数量并生成复古彩色扁平 3D 小剧场正文插图。适用于创建个人 IP、角色设定板、切换角色、文章自动配图、长文多图、流程拆解图和核心动作图等连续任务。

- **Type:** Skill
- **Install:** `agentstack add skill-adrianpunk-punk-ip-illustrations-punk-ip-illustrations`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [adrianpunk](https://agentstack.voostack.com/s/adrianpunk)
- **Installs:** 0
- **Category:** [Content & Media](https://agentstack.voostack.com/c/content-and-media)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [adrianpunk](https://github.com/adrianpunk)
- **Source:** https://github.com/adrianpunk/punk-ip-illustrations

## Install

```sh
agentstack add skill-adrianpunk-punk-ip-illustrations-punk-ip-illustrations
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Punk IP 文章插图

`Punk` 是本 Skill 的品牌、作者印记和内置角色预设，不代表只能画 Punk。任何人都可以上传自己的照片创建专属角色，再使用同一个 Skill 给文章配图。

把本 Skill 作为一个连续工作流使用：先创建角色，等待用户明确确认，再用已确认角色给文章配图。不要拆成两个 Skill，也不要在角色未确认时提前生成文章插图。

## 每次开始时

1. 读取 `references/character-package.md`，确定运行目录、角色状态和当前角色。
2. 根据用户输入选择阶段。
3. 只读取当前阶段需要的其他参考文件。

## 首次使用引导

用户只调用本 Skill、没有上传照片或文章，且运行目录中没有已确认角色时，先发送以下简短引导，不调用图像工具：

```text
Hi，我是 Punk，欢迎使用 Punk IP Illustrations。
每个人都是独立的个体，也拥有属于自己的强大 IP。愿你在这里找到自己的品牌价值。

请上传一张清晰的人物照片，并告诉我角色名称或昵称。

接下来我会：
1. 生成主角色和正面、左侧、背面、右侧设定图；
2. 生成干净人物参考图；
3. 请你确认或提出修改；
4. 确认后，用这个角色为文章自动配图。
```

如果已经存在当前已确认角色，不重复要求上传照片；简短说明当前角色名称，并请用户提供文章、观点、链接或文件。

## 阶段路由

- 用户只调用 Skill、没有提供照片或文章，且没有已确认角色：进入“首次使用引导”。
- 用户上传人物照片并要求创建 IP：进入“创建个人角色”。
- 用户要求直接使用 Punk：进入“启用内置 Punk”。
- 当前角色为 `draft`，用户提出外观修改：进入“修订角色”。
- 用户明确说“确认”“就用这个”“定稿”：进入“确认角色”。
- 用户提供文章、观点、链接或文件，且存在已确认角色：进入“文章配图”。
- 用户要求列出、导入、切换角色：进入“角色管理”。
- 用户同时提供照片和文章，但没有已确认角色：先创建角色并停在确认环节；不要提前配图，也不要复制文章到角色目录。
- 没有已确认角色却直接要求文章配图：引导用户上传照片创建角色，或询问是否启用内置 Punk。

## 创建个人角色

完整读取：

- `references/ip-builder.md`
- `references/character-package.md`
- `references/tool-workflow.md`

执行顺序：

1. 使用用户上传的真人照片作为唯一身份来源。用户未提供角色名称时，只询问角色名称或昵称这一项。
2. 提炼脸型、五官比例、发型、发际线、肤色、年龄感、体型、固定服装、鞋子、配件和整体气质。
3. 调用图像生成工具，生成竖版角色设定板：一个主角色全身像和正面、左侧、背面、右侧四视图。
4. 再生成一张透明背景或纯白背景的干净单人物全身参考图；不得复制设定板标题、边框或多视图排版。
5. 写出 `character-spec.md`，只记录可观察、可复用的固定视觉特征，不推断敏感属性或私人信息。
6. 把三个产物注册为 `draft` 角色包。优先运行 `scripts/character_registry.py register`；脚本不可用时按 `references/character-package.md` 手动建立同等结构。
7. 展示角色设定板和干净参考图，报告角色包路径，并只询问用户是确认还是修改。

角色草稿不得自动激活。不要因为用户同时提供文章就跳过确认。

## 启用内置 Punk

内置 Punk 已由作者确认，不需要重新生图或等待外观确认。

1. 读取 `references/character-spec.md`。
2. 使用以下正式资产：
   - `assets/punk-character-sheet.png`
   - `assets/punk-character-reference-clean.png`
   - `references/character-spec.md`
3. 如果运行目录中还没有 `punk`，运行 `register` 注册这些资产，再运行 `confirm`。
4. 如果已存在 confirmed Punk，运行 `activate`。
5. 将 Punk 设置为当前角色后，可以直接进入文章配图。

## 修订角色

1. 读取当前草稿的设定板、干净参考图和人物规范。
2. 把用户修改转成一个明确视觉变更，未提及的身份特征保持不变。
3. 同时传入待修改图、原始照片（若仍可访问）和当前干净参考图；每次只修正一个主要问题。
4. 重新检查主视图与四视图的一致性。
5. 保存为新版本，不覆盖旧文件，再次注册为 `draft` 并等待确认。

## 确认角色

1. 只有用户明确确认时才执行；内置 Punk 除外。
2. 检查角色设定板、干净参考图和人物规范均存在。
3. 运行 `python3 scripts/character_registry.py confirm --root  --slug `。
4. 把状态改为 `confirmed` 并更新 `current-character.json`。
5. 告知用户角色已可用于文章配图，并给出下一步调用示例。

## 文章配图

完整读取：

- `references/article-workflow.md`
- `references/illustration-style.md`
- `references/tool-workflow.md`
- 当前角色包中的人物规范文件

执行顺序：

1. 使用 `scripts/character_registry.py resolve` 解析用户指定角色；未指定时解析当前角色。只使用 `confirmed` 角色。
2. 读取完整文章或全部输入，不根据标题或片段推测全文。
3. 按信息密度决定图片数量，为每张图选择不同认知锚点。
4. 对每张图分别判断使用“流程拆解”或“核心动作”。
5. 默认把当前角色的干净单人物图作为身份参考；只有侧面、背面或多角度校验时才加入角色设定板。
6. 每个认知锚点独立调用一次图像生成工具，逐张检查并保存；不要用一张拼图替代多张图片。
7. 最终按顺序报告每张图的用途、实际绝对路径和建议插入位置。默认不修改原文。

## 角色管理

- 列出角色：运行 `python3 scripts/character_registry.py list --root `。
- 切换角色：运行 `python3 scripts/character_registry.py activate --root  --slug `。
- 查看当前角色：运行 `python3 scripts/character_registry.py resolve --root `。
- 不允许激活 `draft` 角色。
- 同名角色的新版本保留历史图像，但 manifest 只指向最新版本。

## 图像工具要求

- 使用宿主内置的 image generation 工具或等价图片生成/编辑接口。
- 新建图片时传入身份参考图；编辑图片时同时传入待修改原图和身份参考图。
- 创建角色时，人物照片只用于身份参考，不得复制原始背景、其他人物、文字、水印或无关物件。
- 文章配图不得复制角色设定板的米色背景、标题、边框、方向标签或四视图排版。
- 工具无法保存到目标目录时，保留工具返回的实际路径并如实报告，不伪造路径。
- 宿主没有图像生成能力时，输出完整可执行提示词、参考图路径和保存计划，并明确说明尚未生成图片。

## 隐私与边界

- 默认不把原始人物照片复制进角色包，不上传照片、文章或生成角色到公开仓库。
- 角色包和文章插图只保存在用户本地运行目录。
- 不根据照片猜测姓名、职业、民族、健康、政治倾向、宗教、性取向或其他敏感属性。
- 不覆盖已有角色资产或插图；使用 `-v2`、`-v3` 等版本。
- 只有用户明确要求时才把图片链接写入原文章。

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [adrianpunk](https://github.com/adrianpunk)
- **Source:** [adrianpunk/punk-ip-illustrations](https://github.com/adrianpunk/punk-ip-illustrations)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-adrianpunk-punk-ip-illustrations-punk-ip-illustrations
- Seller: https://agentstack.voostack.com/s/adrianpunk
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
