Typography Cover Designer
sugarforever/01coder-agent-skills
Designs typography-driven video covers and thumbnails in HTML/CSS and screenshots them with Chrome DevTools at 16:9, 16:10, 9:16 and 3:4.
Turns text, URLs or local files into tall PNG cards through HTML typography, with four modes: long reading card, full-text layout, comic and whiteboard.
SKILL.md written in Chinese; this summary is our English description.
$ npx skills add lijigang/ljg-skills --skill ljg-card -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install lijigang/ljg-skills ljg-card --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/lijigang/ljg-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ljg-card .claude/skills/ljg-card && 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 "ljg-card" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-card into .claude/skills/ljg-card/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-card", 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/lijigang/ljg-skills/tree/master/skills/ljg-cardType 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 lijigang/ljg-skills --skill ljg-card -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install lijigang/ljg-skills ljg-card --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lijigang/ljg-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/ljg-card .agents/skills/ljg-card && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "ljg-card" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-card into .agents/skills/ljg-card/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-card", 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 lijigang/ljg-skills --skill ljg-card -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install lijigang/ljg-skills ljg-card --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lijigang/ljg-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/ljg-card .cursor/skills/ljg-card && 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 "ljg-card" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-card into .cursor/skills/ljg-card/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-card", 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/lijigang/ljg-skills.git --path skills/ljg-card--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 lijigang/ljg-skills --skill ljg-card -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install lijigang/ljg-skills ljg-card --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lijigang/ljg-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/ljg-card .gemini/skills/ljg-card && 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 "ljg-card" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-card into .gemini/skills/ljg-card/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-card", 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 lijigang/ljg-skills ljg-cardInstalls 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 lijigang/ljg-skills --skill ljg-card -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/lijigang/ljg-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/ljg-card .github/skills/ljg-card && 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 "ljg-card" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-card into .github/skills/ljg-card/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-card", 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 lijigang/ljg-skills --skill ljg-card -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install lijigang/ljg-skills ljg-card --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lijigang/ljg-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/ljg-card .opencode/skills/ljg-card && 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 "ljg-card" agent skill from https://github.com/lijigang/ljg-skills/tree/master/skills/ljg-card into .opencode/skills/ljg-card/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ljg-card", 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.
ljg-cardTurns text, URLs or local files into tall PNG cards through HTML typography, with four modes: long reading card, full-text layout, comic and whiteboard.
The skill takes pasted text, a URL or a local file and renders it as a PNG that is 1080 pixels wide and as tall as needed. The default -l mode makes a long reading card, -f lays out the original text in full without changing it or generating images, -c makes a comic storyboard, and -w builds a vertical whiteboard-style argument. Generated raster images are used only where a mode calls for them.
Before each run the agent must read shared reference files in a fixed order (taste, image generation, the mode file and the HTML template), and the explainer modes also read a learning-design reference. Full-text mode has its own white-background reading style with large body text and a preferred local serif font, and no disclaimers or production notes are added to the card. All intermediate files go into a task-specific folder under /tmp and are cleaned up after the final PNG is delivered.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 9e75497. 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 script files (TypeScript, from the files we listed), which the agent can run.
Shell commands in SKILL.md call:
bunbunxFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use bunx, which can reach the network depending on how they are called.
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.
Text to PNG Card Caster loads about 1.9k tokens when it runs, and up to ~18k if it reads all its reference files. Until then it costs about 81 tokens; SKILL.md has 345 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); files beside SKILL.md are not scanned.
The full file from lijigang/ljg-skills at commit 9e75497, republished under its MIT licence (© lijigang). 345 words, ~1,928 tokens.
.claude/skills/ljg-card/SKILL.md (or your agent's skills folder). This skill also uses 23 other files; get the full folder from GitHub.内容进去,PNG 出来。生成图负责把思想变成可见动作,HTML 负责把话说准确;-f 只设计原文的呈现,不改动原文,也不生成新图。
-l、-w 承担知识讲解时,还要接通「具体情形 → 判别依据 → 有条件的关系 → 具体结果」。读者应能从正文里的动作或状态看出对象凭什么属于某个概念,再用关系推出眼前的结果;只把例子放在术语旁边,连接仍然缺失。先确定目标读者要完成什么判断,再决定材料和画面;下上结构不规定版面上下,也不要求每张卡从故事开头。文学、叙事与审美表达按自身目的组织,不强加习题。
成品在内容自身的结论、问题或余韵处结束,之后只留署名与来源。不要追加「阅读边界」、免责声明、制作说明或验收说明,也不要换个标题保留这类尾注。会改变理解的原文条件、分歧与限制,就近融入相应论证;提炼范围、材料缺口和验证状态放在交付回复中。-f 原稿已有的段落仍按全文保真合同保留。
| 参数 | 模具 | 尺寸 | 图像角色 |
|---|---|---|---|
-l(默认) | 长图 · 静线叙事 | 1080 × auto | 0–3 幅;有理解增益时用 1 个安静主场景,必要时追加连续视觉拍点 |
-f | 全文 · 原文排版 | 1080 × auto | 生成图固定为 0;只保真呈现原稿自带图片 |
-c | 漫画 | 1080 × auto | 缺口驱动、同案重跑的漫画分镜 |
-w | 白板 · 纵向论证 | 1080 × auto | 嵌入承重推理节点的局部手绘动作;不设顶部主视觉 |
未给参数时使用 -l。
-l、-c、-w 每次执行都必须依次 Read:
references/taste.mdreferences/image-generation.md不得跳过共享图像协议直接写提示词,也不得把一种 mode 的图像语法套给另一种。
-l、-w 用于知识讲解时,在第 3 步后、读取模板前补读 references/learning-design.md:其中包含读者任务、下上连接、来源边界、换案检验,以及四组失败与修复对照。-f 不进入这条路线。
-f 依次 Read:
references/taste.mdreferences/mode-full.mdassets/full_template.html-f 不生成新图;只有原稿自带图片时才补读 references/image-generation.md 的资产身份、来源保真与本地落盘合同。
-f 字体优先级-f 的所有编辑性文字优先使用本机已安装的 KingHwa_OldSong,包括 title、headline、章节标题、正文、强调、图注、表头与署名,从而保持整张长卡的字体气质统一。浏览器检测不到时,正文回退到 Songti SC、STSong、Noto Serif CJK SC 与 serif,标题类文字回退到 PingFang SC、Hiragino Sans GB、Microsoft YaHei 与系统 sans。不得为了制卡联网下载、临时安装或远程引用该字体。code、pre 与来源行保留等宽字体,因为字符对齐在这些位置承担语义。
-f 长文阅读面-f 通常产生超长卡片,因此使用独立于 -l 的白底黑字阅读面:画布固定为纯白 #FFFFFF,普通正文使用深中性黑 #171717,辅助信息只用克制的中性灰。1080px 成品的普通正文不小于 40px,行高保持 1.9,正文有效宽度约 896px;段距默认 36px,章节间距明显大于段落间距。列表与引用同为 40px/1.9,表格 34px,脚注与代码块 32px,图注 30px。以约 390px 手机显示宽度复查,正文约等效 14.4px;允许长图增高,不为压缩高度缩字。不得把暖纸底、小号网页正文、过紧行距或大面积彩色模块带入 -f。
无论从哪个目录启动,制卡前都必须在 /tmp 下建立本任务独占的临时目录。生成图候选稿、用于组版的源图、HTML、CSS、矢量草稿、渲染输入、截图草稿、QA 切片、缓存与日志等所有中间产物,全部只能写入该目录。
只有用户明确要求交付的最终文件可以写入 /tmp 之外。候选 PNG 和未通过验收的渲染结果仍属于中间产物。完成前检查当前目录和仓库没有遗留中间文件,最终交付物验收后清理本任务的临时目录。
-f 锁定来源、建立有序原文块账本,直接进入 references/mode-full.md;不经过提炼、视觉母题或图片生成。-l、-w 的知识讲解先按 references/learning-design.md 明确读者任务,整理具体情形、判别依据、关系、结果与适用条件。进入版式前,实际草稿应把对象、动作或状态、条件怎样通向结果写出来;源文缺少的材料记入制作记录,交付时简报。-l、-c 随后建立视觉母题表;-w 先把此次输入保存为精确来源快照,再运行 assets/prepare-whiteboard-source.ts 建立逐段来源清单,让论证账本覆盖这份独立清单,并同时检查论证承重与学习承重,才决定哪些步骤需要视觉化。不能从一句摘要直接进入版式。-w 的生成图预算为 0–4 幅。-c 调用当前环境的 image generation 工具,先生成一张代表图校准语义与系列风格;-l、-w 的资产预算大于 0 时才做同样校准,0 幅是合法结果。-l、-c 的顶部图槽无图时必须显式设为 data-state="empty";有图时必须提供本地路径和语义化 alt。-w 没有顶部图槽:把最终论证账本写入 {{LOGIC_LEDGER_JSON}},每幅生成图只在对应步骤内部出现,并用 data-source-claim 回指该步骤 ID。-l、-c、-w 已判定为必要的关键生成图失败时最多做两次定向重生。仍失败就说明阻断原因,不得改用远程占位图、伪图标或矢量图悄悄兜底;不能把失败图悄悄改写成「本来就不需要图」。
{name}:从标题或核心判断提取,中文可保留,去标点,最多 20 个字符。从 skill 根目录运行:
bun assets/capture.ts <html> <png> <width> <height> [fullpage]-w 截图前必须先从精确来源快照生成独立清单,并把二者一起交给截图门禁:
bun assets/prepare-whiteboard-source.ts /tmp/<task>/source.txt /tmp/<task>/whiteboard-source-inventory.json
bun assets/capture.ts <html> <png> 1080 1600 fullpage /tmp/<task>/whiteboard-source-inventory.json /tmp/<task>/source.txt来源清单必须直接由本次输入生成,不能由论证账本反推;否则账本漏掉的段落也会一起消失,完整性校验失去意义。
依赖缺失时:
bun install
bunx playwright install chromium截图脚本会等待字体与本地图片。不要绕过它的加载门禁。
-l、-f、-c、-w:左侧保留 logo + 李继刚;右侧用 {{SOURCE_LINE}} 写明确来源,没有来源则替换为空字符串。| 参数 | mode 文件 | 模板 |
|---|---|---|
-l | references/mode-long.md | assets/long_template.html |
-f | references/mode-full.md | assets/full_template.html |
-c | references/mode-comic.md | assets/comic_template.html |
-w | references/mode-whiteboard.md | assets/whiteboard_template.html |
references/learning-design.md。-l 的识别度来自「极简单线气质 + 漫画式可见变化 + 编辑式证据结构」。只做一张漂亮单幅会丢掉讲解,只做连续漫画会压过长文;具体路由以 references/mode-long.md 为准。-f 的强调只能提升原稿中已经存在的字句:可以改变字号、字重、颜色、留白与语义标签,不能抽出一句再复制成金句,不能补写标题、导语、小结或过渡句。-f 的全文验收看有序文本块账本,不看肉眼印象。改单字、调序、漏块或重复块都必须让 assets/verify-full-text.ts 失败。-f 不能因为 KingHwa_OldSong 缺失而阻断,也不能悄悄改用远程字体;缺失时由本地默认字体栈自然接管。安装时则应在截图前分别确认普通正文、title 与 headline 都实际解析到 KingHwa_OldSong,不能只看 CSS 声明。代码与来源行的等宽字体是唯一例外。-f 的白底黑字是长文可读性合同,不是临时配色:背景必须是 #FFFFFF,普通正文必须是深中性黑,正文尺寸/行高不得低于 40px/1.9。暗朱红只标记少量分隔和强调,不能与黑字争夺主体。-l 的代表图必须同时通过局部像素检查和整卡缩略检查;必要时只加粗轮廓,不连带更换隐喻、镜头或构图。-c 的格数由认知因果拍点决定,不设固定范围。短内容不凑格,长内容不因模板删掉承重关系。object-fit: cover 可能只裁坏一格。逐资产检查后仍要扫描所有分格的脸、手、关键道具与动作点,再检查最终 DOM、整图和重叠切片。-w 的母结构不是五选一 topology,而是一条从问题沿推理展开的 .reasoning-spine。chain、branch、timeline、matrix、radial 是可以嵌入主干的局部结构;真实文章允许先递进、再分叉、再汇合,不能为了选一种图形而删除推理,也不必为收尾另造边界节点。-w 在任何视觉决策之前建立论证账本:每个源章节必须映射到步骤,或登记具体省略理由;每个步骤与关系都绑定账本 ID。例子即使不参与证明,也可能承担辨认概念的工作。来源对账与账本、DOM 一致是结构门禁,不能证明判别依据充分。-w 的主干不断,不等于每一层都要出声。普通延续、解释与递进使用静默关系;只有矛盾、问题改写、分支、回收或边界真正改变阅读方向时,才显示一条完整过渡句。不要用「继续追问」「再向前一步」之类旁白替代原文中的具体未解压力。-w 的生成图不得成为正文之前的 hero。图像只嵌入它所解释的步骤;删图后若论证、对象判别与结果理解都不受损,0 幅是正确结果。文字也可以提供完整下层材料。-w 的静默关系只在账本和真实 .logic-relation DOM 中保留端点,不显示箭头或文案;可见转折的箭头不能用 ::before/::after,必须使用 .relation-stem 与 .relation-arrowhead 真实元素,并用唯一的 .transition-sentence 承担整句过渡。-w 不联网取字体。拉丁手写字体不会提供中文字形,中文最终会无声回退;模板使用本地楷体/中文 Sans 字栈,字体差异不得改变节点层级或几何验收。Example 1:把论文或书铸成长图
User: 「把这篇论文做成卡片 -l」
→ 用一个稳定人物或物件承载可见变化:论文走「问题→机制→证据→边界→决策」,书走「原状→压力→变化→余波」
→ 知识讲解先明确读者任务,展示对象凭什么归入概念、关系怎样落回结果;生成图画可见动作,准确文字由 HTML/CSS 承担
→ 交付一张具有暖纸、稀疏黑线、单一暗红与完整阅读层级的 1080px PNGExample 2:把技术概念铸成漫画
User: 「把这篇技术解释做成漫画 -c」
→ 固定一个最小案例,让零号模型先运行并暴露失败
→ 每次只用一格引入当前缺口需要的概念,再回到同案重跑
→ 最后从头运行完整模型,并留一个边界拍点Example 3:把完整长文铸成漫画
User: 「把这份已验收的完整笔记做成漫画 -c,不限格数」
→ 先锁定 Org 路径与 SHA-256,再从全文因果主线选择认知拍点
→ 格数服从承重关系与删除测试,不继承旧五格或固定页数
→ 生成分格、组装 HTML,完成逐图、整图与重叠切片 QAExample 4:原文一字不改地排成长图
User: 「这篇文稿用 -f 铸成全文卡片,原文不要动」
→ 锁定来源与 SHA-256,把标题、段落、列表、引用、强调和脚注登记为有序原文块
→ 不摘要、不补标题、不抽取重复金句;只用白底、深黑、KingHwa_OldSong、克制灰阶、字体层级与留白做编辑设计
→ 全文校验器通过后截图,交付一张生成图数量为 0 的 1080px 原文长 PNG最终回复至少报告:PNG 绝对路径、像素尺寸、内容来源、使用的 mode、生成图数量,以及整图/分段视觉 QA 结果。若输入来自已验收 Org,先记录其路径与 SHA-256,制卡后再确认源文件哈希未变。-f 还必须报告有序原文块数量与全文校验结果;生成图数量固定为 0。
知识讲解在交付回复中额外简报下上连接的内容审阅结果、未补齐的材料缺口,以及是否做过读者换案实测。没有实测时写「未做读者实测」,不以自审或程序通过代替学习效果。这些是交付信息,不是成品正文或尾注。
升级模板或 mode 后运行:
bun run audit
bun test
bun run fixtures第一条检查共享协议、四路引用、位图槽、白板来源对账、全文忠实度合同与禁用项;第二条运行纯函数与反例测试;第三条在 /tmp/ljg-card-v7-fixtures/ 生成代表 HTML,运行全文与白板来源校验,随后用 capture.ts 实际截图并读回 PNG。
每次维护使用独占目录:LJG_CARD_FIXTURE_DIR=/tmp/<task>/fixtures bun run fixtures。现有 fixtures 验证渲染和结构;改动学习设计时,另用 references/learning-design.md 的对照材料试写,检查实际表达,不能用文本规则命中代替内容审阅。
© lijigang, 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 23 other files (references, assets) in skills/ljg-card of lijigang/ljg-skills.
Open the folder on GitHubat commit 9e75497
Text to PNG Card Caster 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 |
|---|---|---|---|---|---|---|
| Text to PNG Card Caster this skilllijigang/ljg-skills | 7.5k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Typography Cover Designersugarforever/01coder-agent-skills | 137 | — | ~3.3k | Automated safety check: Pass | MIT | |
| Paper Collage Explainer Generatortl2012tl/comfyUI-llama-TE | 241 | 4 repos | ~5.2k | Automated safety check: Pass | None | |
| Fantasy Movie Posterdacnay816y62-hub/fantasy-movie-poster-skill | 167 | — | ~943 | Automated safety check: Pass | None | |
| Minimalist Product Ad Generatortl2012tl/comfyUI-llama-TE | 241 | 4 repos | ~8k | Automated safety check: Pass | None | |
| Torn Paper Collage Posteragentara/skills | 603 | — | ~1.3k | Automated safety check: Pass | MIT |
sugarforever/01coder-agent-skills
Designs typography-driven video covers and thumbnails in HTML/CSS and screenshots them with Chrome DevTools at 16:9, 16:10, 9:16 and 3:4.
tl2012tl/comfyUI-llama-TE
For creators, educators, and social-video editors who need a tactile paper-collage language for narration, knowledge points, opinions, or abstract topics.
dacnay816y62-hub/fantasy-movie-poster-skill
Design original 9:16 Chinese-language cinematic movie posters from story briefs, genre keywords, or visual references, including layered cover workflows with separate image-designed background and…
tl2012tl/comfyUI-llama-TE
Turn product images and ad requirements into minimalist product ad shorts for e-commerce promotion and product launches.
agentara/skills
Create AI image-generation prompts and image-generation workflows for torn-paper editorial collage style posters with layered ripped paper, rough typography, stamps, tape, stickers, cutout subjects…
MagicCube/agentara
Create cinematic movie poster concepts and final poster images from a user's brief, existing video plan, storyboard, character design, or project context.
lijigang/ljg-skills
Explains a whole book to someone who has not read it, keeping its specific content and showing how its threads connect, and saves the result as an Org note.
lijigang/ljg-skills
Explain research papers to readers without a specialist background: what the paper studies, what the authors contribute, how the findings follow, and what the evidence does not establish.
lijigang/ljg-skills
Turns a named classical Chinese chapter, such as one from the Tao Te Ching or the Analects, into a single annotated PNG image with notes and commentary.
lijigang/ljg-skills
Finds the handful of constraints that truly define a domain, role, product or debate, grades each by hardness, and explains the behavior those constraints produce.
lijigang/ljg-skills
Builds single-file offline HTML talk decks from Org or Markdown outlines, with faithful layout or editorial condensing and keyboard navigation.
lijigang/ljg-skills
Turns an article, paper or book into a directed chain of sharp questions and four-part answers that retraces the author's reasoning, saved as an org-mode note.
Categories
Turns text, URLs or local files into tall PNG cards through HTML typography, with four modes: long reading card, full-text layout, comic and whiteboard. The skill takes pasted text, a URL or a local file and renders it as a PNG that is 1080 pixels wide and as tall as needed. The default -l mode makes a long reading card, -f lays out the original text in full without changing it or generating images, -c makes a comic storyboard, and -w builds a vertical whiteboard-style argument.
Text to PNG Card Caster fits situations like: turning an article into a long reading-card image for sharing; laying out an original text as a full-text image without edits; making a comic or whiteboard-style explainer image from a piece of writing.
Run `npx skills add lijigang/ljg-skills --skill ljg-card -a claude-code`. Or copy the skill folder (skills/ljg-card in lijigang/ljg-skills) into .claude/skills/ljg-card in your project. Claude Code loads it when a task matches its description.
Run `npx skills add lijigang/ljg-skills --skill ljg-card -a codex`. Or copy the skill folder (skills/ljg-card in lijigang/ljg-skills) into .agents/skills/ljg-card 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 lijigang/ljg-skills --skill ljg-card -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ljg-card, .gemini/skills/ljg-card, .github/skills/ljg-card and .opencode/skills/ljg-card in your project.
Going by SKILL.md and its folder, Text to PNG Card Caster needs TypeScript for the scripts in its folder and the command-line tools its instructions call (bun and bunx). Our summary lists: The KingHwa_OldSong font installed locally for full-text mode (falls back to system serif fonts).
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. Review the folder before installing.
Text to PNG Card Caster is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.7k 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 16k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Text to PNG Card Caster: Typography Cover Designer (sugarforever/01coder-agent-skills, 137 stars), Paper Collage Explainer Generator (tl2012tl/comfyUI-llama-TE, 241 stars), Fantasy Movie Poster (dacnay816y62-hub/fantasy-movie-poster-skill, 167 stars) and Minimalist Product Ad Generator (tl2012tl/comfyUI-llama-TE, 241 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
lijigang (a GitHub user) maintains it in lijigang/ljg-skills, which has 7,481 GitHub stars. The repository holds 26 skills in this directory. The repository was last updated on October 8, 2026.
Source: lijigang/ljg-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.