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 wordflowlab/novel-writer-skills --skill romancegit clone --depth 1 https://github.com/wordflowlab/novel-writer-skillsWrote 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/wordflowlab/novel-writer-skills/romance)<a href="https://agentmods.dev/skills/wordflowlab/novel-writer-skills/romance"><img src="https://agentmods.dev/badge/skills/wordflowlab/novel-writer-skills/romance/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/wordflowlab/novel-writer-skills/romance"><img src="https://agentmods.dev/badge/skills/wordflowlab/novel-writer-skills/romance.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.00034 | $0.02221 |
| Opus 5 | $0.00017 | $0.01111 |
| Sonnet 5 | $0.00007 | $0.00444 |
| Haiku 4.5 | $0.00003 | $0.00222 |
Grade A, and why
romance-novel-conventions 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 12d 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 — 229 lines — stays where its author put it; the contents beside it link to each section on GitHub.
言情小说创作规范
快速参考
| 元素 | 指导原则 | 示例 |
|---|---|---|
| 初遇 | 故事的 0-10% | 意外的首次相遇,产生火花 |
| 初吻 | 50-60%(慢热)或 20-30%(快热) | 需要充分的情感铺垫 |
| 黑暗时刻 | 75-85% | 关系看似不可能继续 |
| 大结局 | 85-100% | 表白、承诺、HEA/HFN |
核心要素
必备组成部分
-
情感连接:主角之间必须有化学反应
- 通过行动而非单纯描述来展现吸引力
- 通过亲近和距离建立张力
- 创造可信的相互吸引的理由
-
内在冲突:恐惧、过往创伤、自我怀疑
- 每个角色都应该有情感包袱
- 内在冲突必须与外在障碍同样强烈
- 成长来自面对这些内在问题
-
外在障碍:家庭、事业、误会
- 障碍应该是合理的,而非人为的
- "只要好好沟通"不应该能解决所有问题
- 风险应该逐步升级
-
令人满意的结局:HEA(永远幸福)或 HFN(暂时幸福)
- 两个角色都必须成长才配得上结局
- 结局应该解决内在和外在冲突
- 读者应该感到满足,而非被欺骗
可选元素
- 三角恋(谨慎使用 - 可能让读者沮丧)
- 被迫亲密设定(被困在一起的场景)
- 欢喜冤家(需要精心处理)
- 第二次机会言情(重燃旧情)
节奏指南
| 故事阶段 | 百分比 | 关键事件 | 情感焦点 |
|---|---|---|---|
| 初遇 | 0-10% | 初次相遇,产生兴趣的火花 | 好奇、吸引 |
| 张力建立 | 10-60% | 吸引力增长,障碍出现 | 渴望、挫折 |
| 冲突升级 | 60-75% | 重大误会或真相揭露 | 怀疑、痛苦 |
| 黑暗时刻 | 75-85% | 关系看似不可能 | 绝望、失落 |
| 大结局 | 85-100% | 盛大表白、承诺 | 喜悦、圆满 |
情感节奏点
初吻时机
慢热言情(约 50-60%):
- 初吻前有多次差点亲上的时刻
- 大量的情感铺垫
- 亲吻发生在建立重要信任之后
- 读者的期待值很高
快热言情(约 20-30%):
- 立即的化学反应导致快速的身体接触
- 之后重点转移到情感亲密
- 仍必须展现合理的吸引力建立
- 避免"一见钟情" - 展示他们为何吸引
黄金法则:在没有足够铺垫的情况下,绝不要仓促。没有情感基础的身体亲密会显得空洞。
亲密关系进展
-
情感亲密先于身体亲密
- 分享脆弱性
- 揭露过去的伤痛
- 信任必须赢得
-
逐步展现脆弱
- 从小的袒露开始
- 建立到更深层的情感分享
- 身体亲密跟随情感信任
-
尊重角色界限
- 角色可以说不
- 同意是必不可少的
- 尊重符合角色性格的节奏
常见陷阱
❌ 一见钟情
问题:角色在没有发展的情况下爱得太快
为什么不好:读者不相信这种连接;感觉勉强和不真实
解决方法:
- 在表白之前展示 3-5 次有意义的互动
- 通过行动而非想法建立吸引力
- 给出他们相互吸引的具体原因
- 允许时间让信任发展
❌ 误会是唯一冲突
问题:"只要好好谈谈,一切都会好起来"
为什么不好:让读者沮丧;感觉像人为的戏剧
解决方法:
- 添加合理的外部障碍(工作、家庭、地点)
- 创造必须发生的内在成长(恐惧、创伤、身份认同)
- 让沟通因真实原因而困难(权力失衡、过去的背叛)
- 确保冲突需要角色成长才能解决
❌ 被动的主角
问题:等待被拯救或被选择;没有主动权
为什么不好:削弱角色,让言情感觉不平等
解决方法:
- 给他们关系之外的目标
- 展示他们主动追求
- 让他们为爱情积极做出牺牲
- 确保两个角色在关系中拥有平等的主动权
❌ 陈词滥调没有创新
问题:读者已经看过一千次的可预测情节
为什么不好:无聊;读者能预测每一个转折
解决方法:
- 添加独特的角色背景或情境
- 在熟悉的框架内扭转期望
- 以意想不到的方式结合套路
- 让角色性格驱动情节,而非反过来
子类型考虑
现代言情
- 现代关系动态
- 现实的障碍(事业、距离、时机)
- 短信/科技发挥作用
- 关注兼容性和沟通
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.
- 12d ago First seen · 229 lines · 34 tokens per session scan A a3d899c702bf
romance-novel-conventions is a skill published in the GitHub repository wordflowlab/novel-writer-skills (258 stars, last pushed 10mo ago), licensed MIT. It adds 34 tokens to every session and 2,221 once invoked, about $0.0002 per session on Opus 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-08-30.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
local-ai-agents
Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
insight-error-page
Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…
next-cache-components-optimizer
Drive a Next.js route to instant navigation by setting up an agentic loop, under Cache Components / PPR, on initial load (hard navigation) and client-side navigation (soft navigation). Encode the goal as a failing @next/playwright instant() e2e and work it to green, one verified route at a time; the shipped test then…
next-partial-prefetching-adoption
Turn on Partial Prefetching in a Next.js app and work through the insights it surfaces. Use when the user wants to enable or adopt Partial Prefetching, flip the partialPrefetching flag, opt routes in with export const prefetch = 'partial', audit Link prefetch={true} behavior, preserve existing prefetched UI with…