Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add raytone-lab/agentcanvas --skill visual-style-passgit clone --depth 1 https://github.com/raytone-lab/agentcanvasWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/raytone-lab/agentcanvas/visual-style-pass)<a href="https://agentmods.dev/skills/raytone-lab/agentcanvas/visual-style-pass"><img src="https://agentmods.dev/badge/skills/raytone-lab/agentcanvas/visual-style-pass/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/raytone-lab/agentcanvas/visual-style-pass"><img src="https://agentmods.dev/badge/skills/raytone-lab/agentcanvas/visual-style-pass.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00094 | $0.05232 |
| Opus 5.5 | $0.00038 | $0.02093 |
| Sonnet 5.5 | $0.00019 | $0.01046 |
| Haiku 4.5 | $0.00009 | $0.00523 |
Grade A, and why
visual-style-pass scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 220 lines — stays where its author put it; the contents beside it link to each section on GitHub.
视觉风格调整
把「改样式」从目测微调变成先定规范、再量、迭代到 0。
这套方法是在漫画风(studio)上走完一遍得出来的:从 66 处违规到 0,气泡 52px → 48px。核心不是任何一条 CSS,而是规范可量 + 审计脚本 + 只信实测。
一、用户的视觉偏好(当成硬规则,不要重新征求意见)
这些是反复确认过的,不是猜测。新风格默认按这些来。
1. 有背景的文字,高度必须由字号推出来
这是最核心的一条,用户自己提的:
H = lineBox + 2·padY + 2·borderWidth
不许手填高度。选中态药丸、气泡、按钮、chip 全部走这个公式。
漫画风的落点:padY ∈ {4, 6, 8, 10} → H ∈ {28, 36, 40, 44};单行气泡 24 + 10·2 + 2·2 = 48。
用户会直接看出来:「左栏选中的背景高度太小了,对话区我的气泡背景又有些大」。
2. 每个风格只有一种线宽
漫画风是 2px,纯 #000000。合法值只有「那一种」和 0。
- 没有 hairline。见到
1px就是错的,要么升到风格线宽,要么删掉。 - 两条边框挨在一起 = 太粗。用户明确反馈过两次。一条边归一个元素,另一个设
0——不是两条都调细。- 踩过的:
.session-sidebar有border-right,.resize-handle又是实心的 → 两条黑线夹一条白缝。留下 handle 那条,它就是那条线。
- 踩过的:
3. 字号、字重、圆角都是闭集
漫画风:字号 {11, 14, 15, 16, 20}、字重 {500, 600, 700, 800}、圆角 {0, 2, 4, 6, 8}。
- 把字重当旋钮用是明确的错。
450、640这种「两档之间」的值抓到就归档。 - 字号写成 token(
--st-t-*),不写字面量,改规范时是一处改动。
圆角这一条被改了两次,值得单独记:
R = clamp(2, floor(H/8) 取偶, 8) 硬上限 R ≤ H/6
- 让圆角的步长等于线宽(漫画风 = 2px)。整个风格只有一个尺寸量,圆角阶梯就取它——一套算术而不是两套。
- 12/20 → 4/6/8/12 → 2/4/6/8,降了两次。用户两次的说法是「圆角太大了,小点」和「中栏里圆角还是有点大」。
- 第二次降档的原因不是某个元素太圆,而是最大的那一档在同一栏里出现了三次:输入框壳、artifact 卡、错误块全坐在 12px 上,中间一竖排三个大软方块。 → 单看一个元素判断不了圆角。要看同一档位在一栏里同时出现几次。 默认往小走。
4. 阴影:要么没有,要么是 0 模糊的实心偏移
漫画风只有 0 3px 0 0 <ink>,只给能按的东西。气泡不能按,所以是平的。
环境柔光阴影(0 14px 34px rgba(...))跟这类风格不兼容,一律清掉。
5. 图标要按这个风格的性格重做
不要把上一个风格的特征顺手带过来。用户为此专门骂过一次:「你不要因为我的插画风有线框,你也加线框」。
- 漫画风:填字形自身的闭合轮廓,不是在黑字形后面垫一个色块。(这条做反过一次,用户回「图标不对」。容器只在参考图里出现两次。)
- 牛皮纸:全部面性(实心)。
- 像素风:真的点阵图标集(
pixelarticons),不是把线性图标缩小。 - 两个咽喉点:
StateIcon(~65 个语义槽)和uiIcons.tsx(47 个 chrome 名)。agent-preview/*.tsx里没有直接 import lucide,所以换图标只需要动这两处。 - 按槽位建映射表(65 个),不要按选项(282 个)。先例:
codiconSlots.ts。
6. 字体
- 一个风格说衬线,就是 中英日都衬线。字体栈是逐字符解析的:先拉丁衬线,再跟 CJK 衬线。
- 不要假粗。单字重的字体(如 Ark Pixel)配
font-synthesis: none,并把--weight-*全部压成该字重。用户截图指过:「你不要加粗」。 -webkit-font-smoothing: none会把 CJK 搞粗,别用。
7. 编辑器家具不跟着换皮
hover 出现的编辑/删除浮层,所有风格都用原生风的样子。用户原话:「你不用每个风格里都不一样,这个浮层你就都统一原生风里的风格就行」。
风格只作用于 .preview-frame 内的内容,不作用于工具条、rail、region label。
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 220 lines · 94 tokens per session scan A ec9a53152992
visual-style-pass is a skill published in the GitHub repository raytone-lab/agentcanvas (19 stars, last pushed 4d ago), licensed MIT. It adds 94 tokens to every session and 5,232 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-15.
Other skills, from other repositories
html-artifacts
Author the HTML for a plan artifact, dashboard iframe, or Slack attachment — structure, design plan, available runtime, theming, and craft. Read this before writing HTML for saveplan, outputiframe, or slackattachhtml.
skin-creator
Create and apply a two-asset LobsterAI visual skin from the user's style description. Use only when the AI Skin Designer kit supplies the structured skinpack workflow marker; do not use for ordinary theme or image requests.
card-design
A visual design system for social-media cards and posters, covering colour choices, Chinese typography, layouts, content density, and quality checks.
a2ui
Make a reply easier to read and act on with rich blocks inside ordinary Markdown — a choice the user picks from, a form that collects several answers, a procedure as steps with warnings in place, a callout, a Mermaid diagram, a weather card, a live clock or countdown, and a dashboard of gauges for a system snapshot, a…
canvas-design
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
omh-accessibility-audit
This is an OMH accessibility-audit workflow skill, projected for Agent Skills hosts (Claude Code, Codex, Cursor, opencode, OpenClaw, pi).