Internal Communications Writer
anthropics/skills
A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill…
为微信公众号文章、长文、博客或 Newsletter 生成一组统一视觉系统的手绘风格配图(公众号首图、正文横图、方形卡片)。先理解文章结构与段落核心观点,再为每张图写 Image Brief 和英文视觉 prompt,最终由内置图片生成能力出图;同一篇文章只用一种重点色,配色通过主题包(themes/)配置,可切换或自定义。适用于“手绘配图”“文章配图”“公众号配图”“给文章配图”等需求。
$ npx skills add cat-xierluo/legal-skills --skill handdrawn-article-illustrator -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install cat-xierluo/legal-skills handdrawn-article-illustrator --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/cat-xierluo/legal-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/handdrawn-article-illustrator .claude/skills/handdrawn-article-illustrator && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "handdrawn-article-illustrator" agent skill from https://github.com/cat-xierluo/legal-skills/tree/main/skills/handdrawn-article-illustrator into .claude/skills/handdrawn-article-illustrator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "handdrawn-article-illustrator", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/cat-xierluo/legal-skills/tree/main/skills/handdrawn-article-illustratorType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add cat-xierluo/legal-skills --skill handdrawn-article-illustrator -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install cat-xierluo/legal-skills handdrawn-article-illustrator --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cat-xierluo/legal-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/handdrawn-article-illustrator .agents/skills/handdrawn-article-illustrator && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "handdrawn-article-illustrator" agent skill from https://github.com/cat-xierluo/legal-skills/tree/main/skills/handdrawn-article-illustrator into .agents/skills/handdrawn-article-illustrator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "handdrawn-article-illustrator", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add cat-xierluo/legal-skills --skill handdrawn-article-illustrator -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install cat-xierluo/legal-skills handdrawn-article-illustrator --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cat-xierluo/legal-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/handdrawn-article-illustrator .cursor/skills/handdrawn-article-illustrator && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "handdrawn-article-illustrator" agent skill from https://github.com/cat-xierluo/legal-skills/tree/main/skills/handdrawn-article-illustrator into .cursor/skills/handdrawn-article-illustrator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "handdrawn-article-illustrator", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/cat-xierluo/legal-skills.git --path skills/handdrawn-article-illustrator--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add cat-xierluo/legal-skills --skill handdrawn-article-illustrator -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install cat-xierluo/legal-skills handdrawn-article-illustrator --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cat-xierluo/legal-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/handdrawn-article-illustrator .gemini/skills/handdrawn-article-illustrator && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "handdrawn-article-illustrator" agent skill from https://github.com/cat-xierluo/legal-skills/tree/main/skills/handdrawn-article-illustrator into .gemini/skills/handdrawn-article-illustrator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "handdrawn-article-illustrator", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install cat-xierluo/legal-skills handdrawn-article-illustratorInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add cat-xierluo/legal-skills --skill handdrawn-article-illustrator -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/cat-xierluo/legal-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/handdrawn-article-illustrator .github/skills/handdrawn-article-illustrator && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "handdrawn-article-illustrator" agent skill from https://github.com/cat-xierluo/legal-skills/tree/main/skills/handdrawn-article-illustrator into .github/skills/handdrawn-article-illustrator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "handdrawn-article-illustrator", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add cat-xierluo/legal-skills --skill handdrawn-article-illustrator -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install cat-xierluo/legal-skills handdrawn-article-illustrator --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cat-xierluo/legal-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/handdrawn-article-illustrator .opencode/skills/handdrawn-article-illustrator && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "handdrawn-article-illustrator" agent skill from https://github.com/cat-xierluo/legal-skills/tree/main/skills/handdrawn-article-illustrator into .opencode/skills/handdrawn-article-illustrator/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "handdrawn-article-illustrator", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
handdrawn-article-illustrator为微信公众号文章、长文、博客或 Newsletter 生成一组统一视觉系统的手绘风格配图(公众号首图、正文横图、方形卡片)。先理解文章结构与段落核心观点,再为每张图写 Image Brief 和英文视觉 prompt,最终由内置图片生成能力出图;同一篇文章只用一种重点色,配色通过主题包(themes/)配置,可切换或自定义。适用于“手绘配图”“文章配图”“公众号配图”“给文章配图”等需求。
Handdrawn Article Illustrator is an agent skill from cat-xierluo/legal-skills. 为微信公众号文章、长文、博客或 Newsletter 生成一组统一视觉系统的手绘风格配图(公众号首图、正文横图、方形卡片)。先理解文章结构与段落核心观点,再为每张图写 Image Brief 和英文视觉 prompt,最终由内置图片生成能力出图;同一篇文章只用一种重点色,配色通过主题包(themes/)配置,可切换或自定义。适用于“手绘配图”“文章配图”“公众号配图”“给文章配图”等需求。
Its SKILL.md is about 5.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 25 other files, including scripts, reference files and assets (for example `CHANGELOG.md`, `assets/outline_sample.json` and `config/style.json`).
It sits in Writing & Content, covering Newsletters. It works with Adobe Illustrator. The licence is MIT.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit db2c58c. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 7 files in scripts/ (Python, from the files we listed), which the agent can run.
Shell commands in SKILL.md call:
python3brewFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Handdrawn Article Illustrator loads about 5.4k tokens when it runs, and up to ~11k if it reads all its reference files. Until then it costs about 57 tokens; SKILL.md has 976 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from cat-xierluo/legal-skills at commit db2c58c, republished under its MIT licence (© cat-xierluo). 976 words, ~5,443 tokens.
.claude/skills/handdrawn-article-illustrator/SKILL.md (or your agent's skills folder). This skill also uses 21 other files; get the full folder from GitHub.为微信公众号文章、博客和 Newsletter 生成一组同一视觉系统的手绘风格配图。核心不是绑定某个品牌,而是稳定产出:大留白、对象卡片、单一固定重点色(由主题包配置)、受控粗黑手绘墨线、低信息密度和清晰隐喻。配图首先服务于理解文章,其次才是风格探索;不要为了新奇牺牲可读性。
Image Brief 和最终英文视觉 prompt,再调用宿主环境提供的内置图片生成能力产出 PNG。--mode codex 生成内置生图队列;队列不是终稿,Agent 需要逐张调用内置生图工具。--mode local,不要生成 local_preview/,不要把本地预览纳入默认交付。--mode local;输出必须标注为草图,不能算终图。guided-edit、t2i 或 edit。scripts/compress_images.py 原地压缩最终交付图。200KB,硬上限低于 500KB;除非用户明确要求保留原始大图,否则覆盖原图。先阅读 references/builtin_image_generation_workflow.md,理解构图家族的文字描述。执行时抓住这些要点:
paper_background 决定,默认蓝灰主题用 #FAF9F5 / #F5F4ED 这类暖白)。ink_color 决定,默认 #141413),更接近“手工描摹出来的填充墨块路径”。轮廓要先稳定干净,但不能像机械矢量图标;粗细变化来自单遍手绘墨线的起笔、收笔、转角压痕和重叠处笔压,长边有自然收放但不随机抖动。config/style.json 的 active_theme 决定用哪个主题,默认蓝灰主题是 #435C68);同一篇文章只使用这一种重点色。paper 是暖米白底 + 重点色局部点缀;inverted 是重点色底 + 米白主体 + 近黑墨线。长文成组配图必须混用这两种模式:大多数使用 paper,少数关键图使用 inverted 做节奏重音。inverted 不是新配色,而是同一重点色的颜色反转:背景整面使用当前主题的重点色,主体块面使用暖米白,线条仍使用近黑墨线;不要在反转底图里再加入第二种强调色。object-card mechanism、hand-drawn workflow object、blank slabs、rounded capsules、thick connector band、archive tray、nested frame、funnel output 等词;谨慎使用 nameless abstract mechanism、soft shell、organic plume 这类更容易跑偏的词;少写 role card、document card、permission、dashboard 等容易被直译的词。themes/)、调 abstraction_strength 或改 references/,不要在 SKILL.md 或脚本里硬编码色值。本 Skill 的配色(重点色、纸面色、墨线色)不再硬编码,而是由主题文件提供。一个主题文件 = 一组配色。这样不同律所、团队或作者可以复用同一套构图与流程,只替换色彩。
内置主题包在 themes/ 目录:
| 主题包 | 重点色 | 适用 |
|---|---|---|
blue-gray(默认) | #435C68 蓝灰 | 法律、公众号长文、编辑类 |
ink-black | #2A2A28 墨黑 | 极简、无品牌色需求;复用 blue-gray 参考图 |
terracotta | #A65A3D 赭石 | 人文、文化、生活方式;复用 blue-gray 参考图 |
blue-gray 是默认激活主题。完整说明见 themes/README.md。
三选一,优先级从高到低:
generate_prompts.py --theme ink-black 或 batch_article_images.py --theme ink-black。"style": { "theme": "terracotta" }。config/style.json,把 active_theme 改成主题包名。切换后,generate_prompts.py 会从 themes/<name>.json 读取配色注入 prompt,无需改其他文件。
适合律所、品牌号或个人作者注入自己的主题色。核心步骤:
themes/my-firm.json 文件。colors(accent_color 重点色、paper_background 纸面色、ink_color 墨线色)。--theme my-firm 或改 active_theme 激活。详细模板见 themes/README.md。关键约束:一篇文章只用一种重点色;纸面色保持低饱和暖白。
如果只想临时改一个色值、不想新建主题包,在 config/style.json 的 overrides 里写:
{ "active_theme": "blue-gray", "overrides": { "accent_color": "#3A4F5C" } }overrides 优先级高于主题包,低于命令行 --theme 和 outline style.accent_color。
本 Skill 内置三档抽象强度,写在 config/style.json 的 abstraction_strength,也可以在 outline 的 style.abstraction_strength 或单张 illustrations[].abstraction_strength 覆盖:
| 档位 | 使用场景 | 风格边界 |
|---|---|---|
reference_card | 想更接近前序参考图、优先服务理解、避免跑偏 | 优先 folder archive、cloud funnel output、nested frame、workflow book、chain active block 等可解释构图;少用无名机制、软壳、雾状扩散 |
balanced | 默认档,适合大多数公众号文章 | 在参考图家族内适度抽象,避免直译成文档卡片、UI 面板、权限图标或 dashboard,但保留一句话能讲清的隐喻 |
high_abstract | 想使用最近测试里抽象程度更高的机制感 | 可用 nameless abstract mechanism、soft slabs、rounded shells、slots、hinges、vessels、organic plumes、endpoint capsules,但必须有清晰 reader_takeaway_zh |
默认使用 balanced。长文成组配图可以混用:关键章节或结论图用 reference_card 保持清晰,少数更概念化的章节用 high_abstract 提升风格变化。不要连续多张使用 high_abstract,除非用户明确要更实验化的视觉方向。
沿用本技能从前序配图流程沉淀下来的比例策略:
| 用途 | 默认生成比例 | 默认生成尺寸 | 交付建议 |
|---|---|---|---|
| 公众号首图 | 宽画幅生成后导出 | 内置生图宽画幅;API 实验可用 2048x872 | 导出 2400x1024,主物件放中心安全区 |
| 正文横图 | 宽画幅 | 内置生图宽画幅;API 实验可用 2048x872 | 直接用于正文,或按需要等比缩放 |
| 方形卡片 | 1:1 | 1024x1024 或模型默认方图 | 用于封面、列表、朋友圈卡片 |
首图最终是 2400x1024。默认内置生图路线用宽画幅 prompt 生成,再按需要导出或裁切到 2400x1024。外部 API 实验路线沿用旧尺寸策略:Z-Image 可用 2048x872,显式切回 Qwen/Qwen-Image 时使用 1664x928。提示词要明确 center-safe composition,避免主体贴近上下边缘;同时主体不要太小,默认应占画面宽度约 60-72%。
默认采用“大主体、少元素、适度留白”的公众号正文图策略:
这些比例写在 config/style.json 的 cover_subject_scale、inline_subject_scale 和 card_subject_scale 中。若文章需要更空灵的手绘对象卡片感,可以调低;公众号正文默认不要低于上述范围。
正式交付路线是 ImageGen / Built-in Image First:Agent 负责理解文章、确定语义和构图,终图由 ImageGen/Codex/ChatGPT 的内置图片生成能力完成。不要把 Python 本地渲染器误认为“内置生图能力”,也不要把本地预览或外部 API 调试路线当作默认路线。
如果当前宿主环境提供 ImageGen 工具,真实成片测试优先直接调用 ImageGen。codex_generation_queue.md 只是给 Agent 调用 ImageGen 的队列;只有队列没有出图时,不能宣称已经完成“成片测试”。
references/builtin_image_generation_workflow.md 写每张图的 Image Brief:chapter_claim_en:这一节真正的判断。visual_thesis_en:可画出来的视觉命题。main_relation_en:第一眼必须看出的关系。support_structure_en:帮助理解关系的最小补充结构。final_prompt_en:Agent 直接写给内置生图工具的最终英文画面 prompt。generate_prompts.py 将 outline、配置色和风格约束编译成 prompts.json。如果有 final_prompt_en,脚本优先保留 Agent 写好的画面,而不是用固定模板覆盖。batch_article_images.py --mode codex 输出 codex_generation_queue.json 和 codex_generation_queue.md。scripts/compress_images.py 压缩最终图片,默认目标 200KB、硬上限 500KB。默认命令:
python3 scripts/batch_article_images.py \
--outline assets/outline_sample.json \
--outdir out \
--mode codex这条路线不会读取 API Key,也不会调用 SiliconFlow、MiniMax 或其它外部图片接口。脚本会输出:
prompts.json:常规提示词与构图契约。codex_generation_queue.json:给 Agent 调用内置图片生成能力的结构化队列。codex_generation_queue.md:人工可读的逐图 prompt。重要边界:Codex/ChatGPT 的内置图片生成能力是 Agent/宿主环境能力,不是当前 Python 进程里的本地模型。因此 --mode codex 只能准备队列和目标文件名,不能像外部 API 那样由脚本直接返回 PNG。执行时由 Agent 在对话中调用内置图片生成工具;如果宿主环境返回可保存文件,再按队列里的建议文件名归档。
外部 API 仅作为显式实验路线。只有用户明确要求“跑 API”“模型对比”“再试外部模型”时,才区分这些约束强度;否则不要调用 SiliconFlow、MiniMax、Qwen 或其它外部图片接口。
t2i 只接收 prompt,模型仍可能改布局、加字或换风格。guided-edit 先用本地渲染生成 composition_guides/,再让编辑模型沿着输入图重绘;这是 API 路线中更接近本地预览的方式。guided-edit 能明显保住布局,但仍可能引入非配置色、旧纸感、红点或浅棕块。API 输出必须先和 composition_guides/ 对照,并检查是否只使用当前主题包的重点色、近黑和米白(不引入第二种强调色)。只在对话里交付时,使用这个结构:
## 配图计划
| 序号 | 位置 | 用途 | 画面隐喻 | 核心概念 | 比例 |
|------|------|------|----------|----------|------|
| 01 | 标题后 | 首图 | [对象卡片] | [一句话] | 2400x1024 |
| 02 | 第一个二级标题后 | 正文横图 | [隐喻] | [一句话] | 16:9 |
## 图片提示词
### 01 首图
Prompt: ...
Negative prompt: ...Prompt 用英文写,配图计划用中文写。这样既方便中文审稿,也更适合常见图片模型。
注意:图片 prompt 不能包含文章标题、章节标题或关键词原文。标题只用于配图计划和文件命名;真正进入图片模型的内容必须是去文字化视觉概念,例如把 HTML table 改成 complex merged-cell grid,把产品名改成 the lightweight reading tool。
公众号文章默认是“高密度正文配图”,不要只做少量章节分隔图。除非用户明确要求少图,否则按下面节奏规划:
长文密度基准:
## 二级标题默认安排 2-3 张正文图。### 三级标题,也按 2 张左右处理。正文图位优先覆盖这些位置:
## 二级标题后的第一个核心判断。### 小节。如果文章有 5 个以上二级标题,每个二级标题至少安排 1 张;内容较长的二级标题下再补 1-2 张。配图多时,通过 paper / inverted 背景模式轮换和不同隐喻保持节奏,但仍保持同一线条、固定重点色和低信息密度。
反转图数量按组控制:
inverted。inverted,默认约每 4 张出现 1 张。paper,不要一上来就整页蓝底;反转图优先放在关键转折、结论、系统边界、分发放大、人的判断等章节。inverted,除非用户明确要求强烈节奏。不要只靠 soft shell / slot / hinge 一组语法出图。把同一篇文章的图分配到不同构图家族。多样性的目标是让不同章节的关系更容易理解,不是制造更奇怪的抽象物。
| 构图家族 | 适合关系 | 画面特征 |
|---|---|---|
| Sparse chain | 顺序、阶段、交接 | 少量圆角块沿横线推进,一个重点色活动块 |
| Workflow book / vessel | 经验沉淀、方法展开 | 厚书页、容器、出口或侧向输出 |
| Accent rail blocks | 系统边界、组织秩序、反转图 | 重点色底或重点色轨道,米白块沿轨道排列 |
| Cloud funnel output | 混乱输入到清晰输出 | 有机云团、漏斗/喇叭口、清晰端点 |
| Radial network | 扩散、外部感知、反馈 | 中心节点向外发散,但节点数量受控 |
| Chain active block | 审批、准入、判断、状态变化 | 横向链路中一个重点色活动模块 |
| Stack / camera / archive | 证据、材料、复用资产 | 堆叠块、档案盒、观察孔、存储结构 |
| Nested frame | 抽象层级、解释框架、观察位置 | 多层嵌套框,中间重点色核心 |
| Process to network | 从流程到协作网络 | 输入列表、过程块、网络化输出 |
| Folder archive | 归档、知识库、样品 | 文件夹、抽屉、托盘、样品块 |
| Module puzzle chain | 模块拼接、能力组合 | 拼图式连接件、模块链、插槽结构 |
| Orbit / ring table | 开放讨论、共识尚未形成、中心空位 | 环形桌面、圆环结构、中心留空,周围卡片松散连接 |
| Map / compass field | 方向、定位、路径选择、可移植姿态 | 折叠地图、指南针、路径片段、少量标记点 |
| Balance / tension frame | 悖论、权衡、阈值张力 | 中心支点、两侧块面、张力框、悬置结构 |
| Scaffold / temporary frame | 草创、搭建、临时秩序 | 脚手架、未封闭框架、支撑杆、半成型对象 |
| Seed / rare signal | 稀缺信号、诚实无知、小而重要的发现 | 大结构中的小胶囊、样本托盘中的单个异质块 |
执行规则:
funnel、filter、threshold gate、channel、pipeline、output bands、endpoint capsules 属于同一类“收束输出版式”。除非章节关系明确是压缩、筛选、交付或转化,否则不要使用。Sparse chain 必须明确写成“小圆角块沿细线推进、其中一个重点色活动块”,不要只写 chain 或 slot,否则模型容易画成难懂的抽象插槽物。sealed chamber、oracle frame、aperture、offset sieve 等第 4-5 轮探索意象;这些容易脱离手绘风和文章理解,不作为默认构图家族。Composition family: nested frame. Visual thesis: ...在调用 ImageGen 之前,先做一遍整组构图审计。不要逐张孤立写 prompt,否则 Agent 很容易把抽象论证统一翻译成横向收束机制图。
为每张图列出:
| 图位 | reader_takeaway_zh | reference_family | layout_archetype | 是否横向收束 |
|---|
layout_archetype 使用这些更具体的版式标签:
left_to_right_transform:左输入、中处理、右输出。严格限量。central_object:单个中心对象,周围少量辅助块。radial_orbit:环形、圆桌、中心空位、周围节点。stack_archive:堆叠、档案、抽屉、样本盒。map_field:地图、指南针、路径片段。balance_tension:张力、权衡、阈值、支点。scaffold_frame:脚手架、临时框架、半成型结构。modular_grid:模块拼接、网格但非 UI。single_rare_signal:大结构中的小而清晰的异质信号。审计规则:
left_to_right_transform 超过全组 25%,重写多余图位。left_to_right_transform,重写后一张。funnel/filter/channel/gate/output 相关词在 5 张内出现 3 次以上,改用 radial_orbit、map_field、stack_archive、balance_tension 或 scaffold_frame。重要:以下模板里的色值(
#FAF9F5、#141413、#435C68等)只是 blue-gray 默认主题的示例。生成 prompt 时必须先从当前主题文件(themes/<active_theme>.json,由config/style.json的active_theme决定)读取实际色值,替换进 prompt;不要照抄模板里的示例色。命令行或 outline 指定了--theme时,以该主题的色值为准。
Wide WeChat article cover illustration, generated in 16:9 and center-safe for 2400x1024 crop. Hand-drawn editorial object-card style based on this skill's composition families, not a copy of any brand asset. Warm off-white paper background ({paper_background}), flat with no vignette or lighting effect, one large centered symbolic object occupying 60-72% of the canvas width and 55-68% of the canvas height, near-black hand-inked filled contours ({ink_color}), stable silhouette that feels hand traced in one confident pass, subtle imperfect parallel edges, tapered stroke starts and ends, small pressure flattening at corners and overlaps, flat muted accent block in the active theme color ({accent_name} {accent_color}). Article-serving metaphor: [隐喻]. It should help readers understand: [当前段落核心观点]. Show only [1 个主物件] plus [1-2 个贴近主体的辅助元素]. Generous but not excessive negative space, quiet editorial composition, no cryptic surreal mechanism, no mechanical vector icon, no arrows, no plants, no leaves, no decorative corner marks, no ruler-straight edges, no tiny centered icon, no readable text, no logo, no watermark, no gradients, no vignette, no shadows, no 3D, no photorealism.线条必须进一步写成:
near-black hand-inked filled contour paths, stable readable silhouettes, single-pass confident hand tracing, subtle imperfect parallel edges, gently tapered stroke starts and ends, small pressure flattening at corners/overlaps/joints/terminal caps, long edges calm with organic tapering, not a smooth uniform rounded stroke and not a mechanical vector outline更精确地说:使用“自然但受控的手绘”,不是“随机的不规则”。轮廓主体应稳定、清晰、可识别;粗细变化来自起笔、收笔、转角压痕和结构锚点,不来自整条线的乱抖,也不要让每条边都出现墨块噪声。内部细线可以更细,并带轻微收笔。
16:9 horizontal editorial illustration for a WeChat article section. Hand-drawn object illustration system based on this skill's composition families, not a direct copy. Warm off-white paper background ({paper_background}), flat with no vignette or lighting effect. Use exactly one accent color from the active theme ({accent_name} {accent_color}), about 8-15% of the image. Near-black hand-inked filled contours ({ink_color}): stable readable silhouettes first, single-pass confident hand tracing, slight human asymmetry, gently tapered starts and ends, small pressure flattening at corners and overlaps; long edges stay calm with organic tapering, no random contour noise. One clear article-serving metaphor: [隐喻]. Help readers understand this concept: [当前段落核心观点]. Use one dominant main object occupying 55-68% of the canvas width or visual footprint, plus up to 2 close supporting marks. Spacious but not empty, calm, low-detail, understandable, no cryptic surreal mechanism, no mechanical vector icon, no arrows, no plants, no leaves, no decorative corner marks, no ruler-straight edges, no tiny centered icon, no readable text, no logo, no gradient, no vignette, no shadow, no 3D, no photo.16:9 horizontal editorial illustration for a WeChat article section. Hand-drawn object illustration system, not a direct copy. Flat solid background using the active theme accent color ({accent_name} {accent_color}) as the whole canvas field, with no vignette, no lighting effect, no gradient, and no texture. Warm off-white object surfaces ({paper_surface}), near-black hand-inked filled contours ({ink_color}), stable silhouette, single-pass confident hand tracing, subtle tapering at stroke ends, small pressure flattening at structural corners and joins, one clear metaphor: [隐喻]. Main object occupies 55-68% of the canvas width or visual footprint. No mechanical vector icon, no arrows, no plants, no leaves, no decorative corner marks, no ruler-straight edges, no tiny centered icon, no random shaky lines, no lumpy edge noise, no second accent color, no readable text, no logo, no gradient, no vignette, no shadow, no 3D, no photo.1:1 square object-card illustration in hand-drawn editorial style. Use paper mode or inverted mode from config/style.json. Centered symbolic object occupying about 68-76% of the square canvas, near-black hand-inked filled contours with stable silhouette, single-pass confident hand tracing, tapered ends, and a few structural pressure accents, flat off-white inner surfaces, one concise metaphor for [概念]. Minimal composition, no mechanical vector icon, no arrows, no plants, no leaves, no decorative corner marks, no tiny icon, no readable text, no logo, no photorealism.| 场景 | 优先隐喻 |
|---|---|
| 经验显性化、解释、观察位置 | 棱镜、指南针地图、窗口、放大镜 |
| 复杂输入到清晰输出 | 漏斗、样品托盘、文件夹、证据盒 |
| 分发、放大、外部感知 | 广播扩散、节点网络、桥 |
| 组织治理、责任边界 | 脚手架、分层框架、天平、门闸 |
| 审批、准入、权限 | 门闸、桥、钥匙孔、迷宫出口 |
| 风险识别、预警、分级 | 雷达、仪表盘、迷宫路径 |
| 资产化、复用、长期循环 | 文件夹、飞轮、时间轴、积木 |
| 协作、Agent 工作流 | 桥、浏览器窗口、轨道、广播扩散 |
法律公众号文章优先使用“关系型隐喻”,也就是能看出压缩、筛选、分发、判断、路径、沉淀或协作关系的画面。放大镜、雷达、节点网络属于低风险但容易重复的基础隐喻;一篇长文中不要大量重复使用。避免过度科技感、营销海报感和纯流程图感。
默认 codex 队列只依赖 Python 标准库。首次使用显式诊断工具、guided-edit 或其它 API 实验前,在本目录运行:
python3 -m pip install -r scripts/requirements.txt准备大纲 JSON,可从 assets/outline_sample.json 复制修改。核心字段:
title:文章标题title_en:英文标题,用于图片 prompt;如果没有,脚本会退回 titleaspect:默认 16:9style.background_mode_sequence:每张图轮换 paper / inverted 两种背景模式。style.abstraction_strength:全篇抽象强度,支持 reference_card、balanced、high_abstract;默认从 config/style.json 读取。illustrations[].abstraction_strength:单张图覆盖抽象强度,用于在一篇文章内混排更接近参考图和更高抽象度的画面。config/style.json:激活主题指针(active_theme)、本地色值覆盖层(overrides)和墨线、抽象度等结构性配置;重点色实际值来自主题文件 themes/<active_theme>.json。illustrations[]:每张图的位置、用途、隐喻、关键词和强调对象;建议为每项补 title_en、concept_en,保证最终 prompt 主要为英文chapter_claim_en、visual_thesis_en、main_relation_en、support_structure_en 和 final_prompt_en;脚本会优先使用 Agent 写好的 final_prompt_en。默认内置生图队列:
python3 scripts/batch_article_images.py \
--outline assets/outline_sample.json \
--outdir out该命令等价于 --mode codex,会输出 prompts.json、codex_generation_queue.json 和 codex_generation_queue.md。随后由 Agent 调用 ImageGen/Codex/ChatGPT 内置图片生成能力生成终图。默认到这里就进入真实生图,不再额外跑 local 预览。
显式诊断工具:本地构图草图。默认不要运行;只有用户明确要求构图草图、占位预览或本地预览检查时才使用:
python3 scripts/batch_article_images.py \
--outline assets/outline_sample.json \
--outdir out \
--mode locallocal 会输出每张 PNG、首图 2400x1024 导出版和 overview_board.png,用于检查构图、主体占比、隐喻重复和画幅安全区。它是显式诊断/草图路线,不是默认流程的一部分,不能用于替代 ImageGen 成片。
默认图片压缩:
python3 scripts/compress_images.py /path/to/generated-image-dir该脚本会原地覆盖图片,默认尽量压到 200KB 以下,并要求每张低于 500KB。它优先使用 pngquant;如需安装:
brew install pngquant imagemagick如果极少数图片仅靠压缩无法低于 500KB,可显式允许缩放:
python3 scripts/compress_images.py /path/to/generated-image-dir --allow-resize外部 API 松约束实验:
python3 scripts/batch_article_images.py \
--outline assets/outline_sample.json \
--outdir out \
--mode t2i \
--allow-api \
--image-size auto \
--final-size 2400x1024默认文生图模型为 Tongyi-MAI/Z-Image-Turbo。这条路线只用于显式实验和横向对照,不作为默认交付主路;Qwen/Qwen-Image 和 MiniMax image-01 只作为压力测试,Qwen/Qwen-Image-Edit-2509 作为 skeleton fallback。所有外部 API 模式都必须显式加入 --allow-api,否则脚本会拒绝执行,避免默认交付误触发 API。
外部 API 构图锁定实验:
python3 scripts/batch_article_images.py \
--outline assets/outline_sample.json \
--outdir out \
--mode guided-edit \
--allow-apiguided-edit 会先输出 composition_guides/ 本地构图草图,再调用编辑模型。它比纯 t2i 更适合把“已确定的语义和构图”转述给 API,但仍只是候选实验,不能默认替代内置生图终稿。
如果使用空底图编辑模式保持系列一致性:
python3 scripts/batch_article_images.py \
--outline assets/outline_sample.json \
--outdir out \
--mode edit \
--allow-api配置 API Key:
--allow-api 的 API 实验路线才需要配置。config/secrets.env.example 为 config/secrets.envSILICONFLOW_AKconfig/secrets.env(已被 .gitignore 忽略)Image Brief,再写最终英文视觉 prompt;不要只靠章节标题或关键词套模板。--mode codex 生成队列,并随后调用 ImageGen/内置生图工具生成真实 PNG。--mode local 或生成 local_preview/;如用户明确要求本地草图,是否标注为诊断草图而不是正式交付图。scripts/compress_images.py 压缩最终图片,默认每张低于 500KB,尽量低于 200KB。guided-edit,并检查 composition_guides/ 是否与最终图的主体、布局和背景模式一致。references/handdrawn_style_architecture.md:手绘对象卡片风格来源、结构语言与落地规则。references/builtin_image_generation_workflow.md:内置生图默认路线、Image Brief 字段和 prompt 写法。references/siliconflow_images_api.md:SiliconFlow 图片接口要点。config/style.json:激活主题指针、色值覆盖层与墨线风格等结构性配置。themes/:主题文件目录,每个文件定义一组配色(重点色、纸面色、墨线色);详见 themes/README.md。© cat-xierluo, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 21 other files (scripts, references, assets) in skills/handdrawn-article-illustrator of cat-xierluo/legal-skills.
Open the folder on GitHubat commit db2c58c
Handdrawn Article Illustrator next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Handdrawn Article Illustrator this skillcat-xierluo/legal-skills | 720 | — | ~5.4k | Automated safety check: Pass | MIT | |
| Internal Communications Writeranthropics/skills | 180k | 38 repos | ~378 | Automated safety check: Pass | Apache-2.0 | |
| Clarityaddyosmani/clarity | 269 | 1 repos | ~1.9k | Automated safety check: Pass | MIT | |
| News Aggregator Skillcclank/news-aggregator-skill | 1.3k | — | ~2.1k | Automated safety check: Pass | None | |
| Changelog Social RecapFlorianBruniaux/claude-code-ultimate-guide | 6.1k | — | ~1.8k | Automated safety check: Notes | CC-BY-SA-4.0 | |
| Newsletter Voicecharlie947/social-media-skills | 3.8k | — | ~2.5k | Automated safety check: Pass | MIT |
anthropics/skills
A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill…
addyosmani/clarity
Draft, rewrite, or review reader-facing prose so it is specific, useful, and recognizably the author's without inventing facts or performing humanness.
cclank/news-aggregator-skill
Comprehensive news aggregator that fetches, filters, and deeply analyzes real-time content from 44+ sources including Hacker News, Lobsters, Dev.to, GitHub, arXiv, Hugging Face Papers, AIHOT, TLDR…
FlorianBruniaux/claude-code-ultimate-guide
Turns CHANGELOG.md entries for a release or a week into LinkedIn, Twitter/X, newsletter and Slack posts in French and English.
charlie947/social-media-skills
Build newsletter writing instructions inside a Codex or Claude project.
NanmiCoder/NewsCrawler
新闻站点内容提取。支持 12 个平台:微信公众号、今日头条、网易新闻、搜狐新闻、腾讯新闻、BBC News、CNN News、Twitter/X、Lenny's Newsletter、Naver Blog、Detik News、Quora。当用户需要提取新闻内容、抓取公众号文章、爬取新闻、或获取新闻JSON/Markdown时激活。
cat-xierluo/legal-skills
Converts a lawyer's ordinary complaint or a described case into the Supreme People's Court's elements-style Word template, with layout checks on the result.
cat-xierluo/legal-skills
Analyzes raw lecture transcripts for verbal tics, pacing, time use and promise follow-through, with optional slide-by-slide comparison and cross-session tracking.
cat-xierluo/legal-skills
Detects and rewrites machine-sounding patterns in the body text of Chinese articles while keeping the author's facts, headings and legal terms intact.
cat-xierluo/legal-skills
Finds GitHub projects mentioned in articles or screenshots and stars them, tracks updates to your starred repos, and builds an HTML dashboard to browse them.
cat-xierluo/legal-skills
Sets up or incrementally updates AGENTS.md and CLAUDE.md for legal professionals, with a minimal safety baseline and a check that a new session loads and follows the rules.
cat-xierluo/legal-skills
Chinese-language skill that organizes a case file into a multi-role mock trial with judge, parties and clerk, producing a transcript, issue review and a to-strengthen list.
Works with
Categories
为微信公众号文章、长文、博客或 Newsletter 生成一组统一视觉系统的手绘风格配图(公众号首图、正文横图、方形卡片)。先理解文章结构与段落核心观点,再为每张图写 Image Brief 和英文视觉 prompt,最终由内置图片生成能力出图;同一篇文章只用一种重点色,配色通过主题包(themes/)配置,可切换或自定义。适用于“手绘配图”“文章配图”“公众号配图”“给文章配图”等需求。. Handdrawn Article Illustrator is an agent skill from cat-xierluo/legal-skills.
Handdrawn Article Illustrator fits situations like: tasks that involve Newsletters.
Run `npx skills add cat-xierluo/legal-skills --skill handdrawn-article-illustrator -a claude-code`. Or copy the skill folder (skills/handdrawn-article-illustrator in cat-xierluo/legal-skills) into .claude/skills/handdrawn-article-illustrator in your project. Claude Code loads it when a task matches its description.
Run `npx skills add cat-xierluo/legal-skills --skill handdrawn-article-illustrator -a codex`. Or copy the skill folder (skills/handdrawn-article-illustrator in cat-xierluo/legal-skills) into .agents/skills/handdrawn-article-illustrator in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add cat-xierluo/legal-skills --skill handdrawn-article-illustrator -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/handdrawn-article-illustrator, .gemini/skills/handdrawn-article-illustrator, .github/skills/handdrawn-article-illustrator and .opencode/skills/handdrawn-article-illustrator in your project.
Going by SKILL.md and its folder, Handdrawn Article Illustrator needs Python for the scripts in its folder and the command-line tools its instructions call (python3 and brew). Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Handdrawn Article Illustrator is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 5.4k tokens (SKILL.md is roughly 22k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 5.5k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Handdrawn Article Illustrator: Internal Communications Writer (anthropics/skills, 180k stars), Clarity (addyosmani/clarity, 269 stars), News Aggregator Skill (cclank/news-aggregator-skill, 1.3k stars) and Changelog Social Recap (FlorianBruniaux/claude-code-ultimate-guide, 6.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
cat-xierluo (a GitHub user) maintains it in cat-xierluo/legal-skills, which has 720 GitHub stars. The repository holds 62 skills in this directory. The repository was last updated on October 10, 2026.
Source: cat-xierluo/legal-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.