1实现原理 · 为什么它能做到
模板本体没有可执行代码:loader 从 src/lib/templates/skills/<id>/SKILL.md 读入 frontmatter 与正文,正文(body)与 example 内容一起作为 LoadedSkill 返回。
const raw = safeRead(path.join(dir, "SKILL.md"));
下发前宿主固定拼装 prompt:模板正文夹在共享设计指令 SHARED_DESIGN_DIRECTIVES 与【输入格式】/【用户内容】之间。
Wrap a per-template instruction body with the shared design directives and
共享指令把硬约束写成对 agent 的显式禁令,并强制内容驱动数量(模板里的数字只作参考下限)。
**禁止使用 Write / Edit / MultiEdit / Bash / Create / 任何文件系统工具**。
真正执行的是用户本机已安装并登录的编码 agent CLI:宿主 spawn 子进程,把 prompt 交给它,HTML 从 stdout 流式捕获。
import { spawn, type ChildProcessWithoutNullStreams } from "node:child_process";
/api/convert 是模板的执行路径:它把 skill.body 与用户内容组装成 prompt 后交给 invokeAgent。
prompt = assemblePrompt({ body: skill.body, content, format });
模板把「杂志长文」拆成逐条版式清单(hero → 单栏正文 → serif 小标题 → 引用/代码块 → 居中 ornament → 文末卡片),agent 按清单填内容即可,不必自己发明版式。
- 顶部 hero: 大标题 (text-5xl/6xl) + 可选副标题 + 作者 / 阅读时间 / 日期元数据。
可读性被量化:正文限 700px 单栏居中,并以 serif 标题与 sans 正文形成对比。
- 正文: 单栏, 最大宽度约 700px, 居中。
正文之外的杂志味由三个专用零件承担:左侧 accent 边线的斜体引用块、中央居中的 ornament 分隔符、文末行动卡片。
- 引用块使用左侧粗 accent 色边线 + 斜体。
示例产物是 1:1 实现参照:单文件 HTML、内联样式表、Tailwind CDN + Google Fonts,正文 hero/blockquote/ornament 与 SKILL.md 条目对应。
<div class="ornament"><span class="serif italic">· · ·</span></div>
模板与示例输入(Markdown)配对发布:frontmatter 用 example_format: markdown 声明输入形态,示例正文即一篇现成长文并附原推出处。
# 我读完 @trq212 那条推之后, 把所有 markdown 都换成了 HTML
2核心能力
4管控建议与判定依据
- SKILL.md: 纯提示词指令与规则文本,无脚本执行与外部影响
5第二遍独立确认
- [ok] 「执行期是否有外发」判定 — SKILL.md 正文 URL 计数为 0;唯一 http(s) 出现在 frontmatter 的 example_source_url(示例出处标注)与 example.html 的 CDN/字体链接,属产物期引用(浏览器端拉取),按批4 终版口径不判级。
- [discrepancy] 文末行动卡片 — SKILL.md 要求文末加一个简单的「如果觉得有用,欢迎转发」行动卡片;example.html 结尾实现为「题图致敬: 推文中那个 "everything is HTML" 的瞬间。」+ 原推链接卡。属示例自由发挥(同类结构、不同文案),不影响模板可用性,但详情页不应把该示例卡当作模板固定文案。
- [ok] featured 推荐位 — frontmatter featured: 11,选择器会将其纳入 Featured/推荐分组;example_* 六个字段齐全,loader 会生成 example 元数据对象。
- [ok] license / stars / commit 元数据 — GitHub API(api.github.com/repos/nexu-io/html-anything):spdx_id=Apache-2.0、stargazers_count=8827、pushed_at=2026-09-15T03:36:24Z;工作副本 git HEAD = 553ed98c283f9c0f489902d035416a972d6a9699(与任务表 pin 553ed98c283f 同源)。
- [ok] skill.path 与目录资产面 — pin 目录内该路径存在且含 SKILL.md;目录内文件清单已用 glob 全量核对(含隐藏文件),无 scripts/、无 references/、无二进制资产(competitive-teardown 的 assets/ 为纯 HTML,另行记录)。
6结论
115f78654ca46dcd…