Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/ricky-theseus-webnovel-plan
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/webnovel-plan
Tools it pre-approves 5
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
ReadWriteEditBashAskUserQuestion
What's inside
- Skill name
webnovel-plan- Description
- 基于总纲生成卷纲、时间线和章纲,并把新增设定增量写回现有设定集。
- License
- GPL-3.0
- Allowed tools
- Read, Write, Edit, Bash, AskUserQuestion
- Instructions
- 296 lines in SKILL.md · view on GitHub
Before installing
- Pre-approves any shell command
Agent Skills spec issues
- name: "webnovel-plan" does not match folder "plan"
Files (7)
- SKILL.md
- chapter-types-and-rhythm.md · references/
- chapter-planning.md · references/outlining/
- conflict-design.md · references/outlining/
- genre-volume-pacing.md · references/outlining/
- outline-structure.md · references/outlining/
- plot-frameworks.md · references/outlining/
SKILL.md (first lines)
# Outline Planning
主 agent 职责:基于总纲增量细化卷纲/时间线/章纲,把新增设定写回设定集,并刷新 Story System 写作合同。不重做全局故事,不重写整份总纲或设定集。
## 执行原则
1. 只做增量补齐,不重写整份总纲或设定集。
2. 先锁定卷级节奏,再批量拆章。
3. 时间线是硬约束,所有章纲必须带时间字段。
4. 若发现总纲与设定冲突,先阻断,再等用户裁决。
5. 优先级链:用户明确要求 > 总纲核心冲突与卷末高潮 > 时间线硬约束 > skill 默认流程 > reference 建议。
## 阻断条件
- 项目根不合法或总纲缺失。
- 总纲缺少卷名 / 章节范围 / 核心冲突 / 卷末高潮 → 阻断并请求用户补全。
- Step 2 / Step 8 发现设定冲突 → 标记 `BLOCKER`,等待用户裁决。
- 批量拆章时时间回跳且未标注闪回 → 阻断当前批次。
- Step 9 验证失败 → 只重做失败批次,不覆盖整卷。
## 环境准备
```bash
export WORKSPACE_ROOT="${CLAUDE_PROJECT_DIR:-${OPENCODE_PROJECT_DIR:-$PWD}}"
export CLAUDE_PLUGIN_ROOT="${CLAUDE_PLUGIN_ROOT:-${OPENCODE_PLUGIN_ROOT:-}}"
export SKILL_ROOT="${CLAUDE_PLUGIN_ROOT}/skills/webnovel-plan"
export SCRIPTS_DIR="${CLAUDE_PLUGIN_ROOT}/scripts"
export PROJECT_ROOT="$(python "${SCRIPTS_DIR}/webnovel.py" --project-root "${WORKSPACE_ROOT}" where)"
python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${PROJECT_ROOT}" placeholder-scan --format text
```
规划开始 / 结束都运行 `placeholder-scan`;plan 阶段发现占位先警告并补齐相关文件,进入写章前不得保留当前章相关实体的 `[待...]` / `暂名` / `{占位}`。
## 读取策略(按阶段触发,不预读全部 reference)
每个 reference 只在对应 Step 触发时读取,且优先区段读:先用 `Grep` 匹配 `^#{2,4} ` 定位标题锚点行号,再用 `Read` 的 offset/limit 取目标段。
| 触发 | 读取方式 | 文件 |
|------|---------|------|
| Step 4 | 全文 | `${SKILL_ROOT}/../../templates/output/大纲-卷节拍表.md` |
| Step 5 | 全文 | `${SKILL_ROOT}/../../templates/output/大纲-卷时间线.md` |
| Step 6 always | 区段 | `${SKILL_ROOT}/../../references/genre-profiles.md`(仅当前 genre 的 `### 2.x` 段) |
| Step 6 always | 全文 | `${SKILL_ROOT}/../../references/shared/strand-weave-pattern.md` |
| 章纲拆分 always | 区段 | `${SKILL_ROOT}/../../references/outlining/plot-signal-vs-spoiler.md` |
| Step 6 需要爽点 | 区段 | `${SKILL_ROOT}/../../references/shared/cool-points-guide.md` |
| Step 6/7 需要冲突 | 区段 | `${SKILL_ROOT}/references/outlining/conflict-design.md` |
| Step 6/7 特定节奏 | 区段 | `${SKILL_ROOT}/references/outlining/genre-volume-pacing.md` |
| Step 6 章节类型/节奏 | 区段 | `${SKILL_ROOT}/references/chapter-types-and-rhythm.md` |
| Step 7 追读力分析 | 区段 | `${SKILL_ROOT}/../../references/reading-power-taxonomy.md` |
| Step 7 章纲细化 + 节点规范 | 区段 | `${SKILL_ROOT}/references/outlining/chapter-planning.md` |
CSV 创作参考用检索读,不 `cat` 整表:
```bash
python -X utf8 "${SCRIPTS_DIR}/reference_search.py" --skill plan --table 爽点与节奏 --query "{卷级核心冲突}" --genre "${GENRE}"
python -X utf8 "${SCRIPTS_DIR}/reference_search.py" --skill plan --table 桥段套路 --query "{卷级核心冲突}" --genre "${GENRE}"
python -X utf8 "${SCRIPTS_DIR}/reference_search.py" --skill plan --table 命名规则 --query "角色命名" --genre "${GENRE}"
```
## 执行流程
### Step 1:加载项目数据并确认前置条件
```bash
# 项目配置/投影状态(兼容读取,不作为写后事实真源)
cat "$PROJECT_ROOT/.webnovel/state.json"
# 总纲(全局蓝图);确认卷名/章节范围/核心冲突/卷末高潮,不足则阻断
cat "$PROJECT_ROOT/大纲/总纲.md"
# 题材(来自 init 配置快照,后续 CSV 检索和裁决匹配依赖此值);写后主链真源仍是 .story-system/
GENRE="$(python -X utf8 -c "import json; s=json.load(open('${PROJECT_ROOT}/.webnovel/state.json',encoding='utf-8')); pi=s.get('project_info',{}); print(pi.get('genre') or s.get('project',{}).get('genre',''))")"
```
按需读取设定集:`设定集/世界观.md`、`设定集/力量体系.md`、`设定集/主角卡.md`、`设定集/反派设计.md`、`.webnovel/idea_bank.json`。
**跨卷状态读取**(已有已完成卷,即 `.webnovel/summaries/` 下有文件时必须执行):
```bash
# 最近 5 章摘要
for ch in $(seq $((START_CH - 5)) $((START_CH - 1))); do
cat "$PROJECT_ROOT/.webnovel/summaries/ch$(printf '%04d' $ch).md" 2>/dev/null
done
# 核心角色当前状态 / 核心关系当前状态 / 活跃伏笔(跨卷未回收)
python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${PROJECT_ROOT}" knowledge query-entity-state --entity "{protagonist_id}" --at-chapter {上一卷最后章}
python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${PROJECT_ROOT}" knowledge query-relationships --entity "{protagonist_id}" --at-chapter {上一卷最后章}
python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${PROJECT_ROOT}" memory-contract get-open-loops
```
### Step 2:补齐设定基线
让设定集从骨架进入"可规划、可写作"。增量补齐,不清空、不重写整文件;发现冲突先列出并阻断。
- `设定集/世界观.md`:世界边界、社会结构、关键地点用途。
- `设定集/力量体系.md`:境界链、限制、代价与冷却。
- `设定集/主角卡.md`:欲望、缺陷、初始资源与限制。
- `设定集/反派设计.md`:小/中/大反派层级与镜像关系。
### Step 3:选择目标卷并确认范围
确认卷名、章节范围、核心冲突,以及是否有特殊要求(视角、情感线、题材偏移)。
### Step 4:生成卷节拍表
加载模板 `${SKILL_ROOT}/../../templates/output/大纲-卷节拍表.md`。
硬要求:必须填写中段反转,确无则写"无(理由:...)";危机链至少 3 次递增;卷末新钩子必须能落到最后一章的章末未闭合问题。
输出文件:`大纲/第{volume_id}卷-节拍表.md`
### Step 5:生成卷时间线表
加载模板 `${SKILL_ROOT}/../../templates/output/大纲-卷时间线.md`。
硬要求:必须明确时间体系与本卷时间跨度;有倒计时事件时列出并标记 D-N。
输出文件:`大纲/第{volume_id}卷-时间线.md`From ricky-theseus/DaisyWriter, GPL-3.0.
More from ricky-theseus/DaisyWriter
- 0.580score
xiaohongshu-technical-post-copy
ricky-theseus
Use when writing Xiaohongshu technical post copy that accompanies a technical infographic, especially for engineering, AI, chip, or CUDA readers who need…
SkillCFreshness: C★ 76Claude Code +9 - 0.580score
xiaohongshu-minimal-technical-infographic
ricky-theseus
Use when creating clean 3:4 vertical technical teaching infographics for Xiaohongshu or social media, especially minimal grayscale engineering diagrams that…
SkillCFreshness: C★ 76Claude Code +9 - 0.579score
csdn-upload
ricky-theseus
通过 Playwright + 直连 API(X-Ca HMAC-SHA256 签名)将本地博文批量上传到 CSDN 草稿箱。三态管理:未上传 → 草稿箱 → 已发布。
SkillCFreshness: C★ 76Claude Code +9 - 0.578score
fanqie-publish
ricky-theseus
Publish novel chapters from local Markdown files to the Fanqie Novel writer backend via browser automation.
SkillCFreshness: C★ 76Claude Code +9 - 0.578score
skill-writer
ricky-theseus
AI-powered writing toolkit — Web novel, Short story, Technical blog, Publishing automation / AI 驱动写作工具包 — 网文、短篇、技术博文、发布自动化
SkillCFreshness: C★ 76Claude Code +9 - 0.574score
wechat-article-writer
ricky-theseus
撰写微信公众号文章。包括选择文章类型、套用排版模板、生成配图、转换HTML、添加底部模板、审稿。触发词:写一篇公众号文章、写微信推文、帮我把这篇写完、继续写这篇。
SkillCFreshness: C★ 76Claude Code +9 - 0.574score
cover-maker
ricky-theseus
纯 AI 生图制作网文封面 & 技术博客封面。网文:600×800 竖版存入 作品信息/。技术博客:800×600 横版存入 博文/{系列}/cover.png。
SkillCFreshness: C★ 76Claude Code +9 - 0.572score
webnovel-review
ricky-theseus
使用审查 Agent 评估章节质量,生成报告并写回审查指标。
SkillCFreshness: C★ 76Claude Code +9 - 0.572score
webnovel-query
ricky-theseus
查询项目设定、角色、力量体系、势力、伏笔等信息。支持紧急度分析与金手指状态查询。
SkillCFreshness: C★ 76Claude Code +9 - 0.572score
webnovel-write
ricky-theseus
产出可发布章节。单章撰写,三模式:默认/--fast/--minimal。批量模式请用 webnovel-batch。
SkillCFreshness: C★ 76Claude Code +9 - 0.572score
webnovel-init
ricky-theseus
深度初始化网文项目。通过分阶段交互收集完整创作信息,生成可直接进入规划与写作的项目骨架与约束文件。
SkillCFreshness: C★ 76Claude Code - 0.572score
webnovel-review-settings
ricky-theseus
设定集审核专家。深度检查世界观、力量体系、角色、势力、经济、历史、创意约束等设定文件的质量与自洽性,输出问题清单。
SkillCFreshness: C★ 76Claude Code +9
Signals
- Stars
- 76
- Forks
- 5
- Open issues
- 0
- Last commit (this folder)
- Jul 8, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- GPL-3.0
- Repository
- github.com/ricky-theseus/DaisyWriter
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from ricky-theseus
- 0.580score
xiaohongshu-minimal-technical-infographic
ricky-theseus
Use when creating clean 3:4 vertical technical teaching infographics for Xiaohongshu or social media, especially minimal grayscale engineering diagrams that…
SkillCFreshness: C★ 76Claude Code +9 - 0.580score
xiaohongshu-technical-post-copy
ricky-theseus
Use when writing Xiaohongshu technical post copy that accompanies a technical infographic, especially for engineering, AI, chip, or CUDA readers who need…
SkillCFreshness: C★ 76Claude Code +9 - 0.579score
csdn-upload
ricky-theseus
通过 Playwright + 直连 API(X-Ca HMAC-SHA256 签名)将本地博文批量上传到 CSDN 草稿箱。三态管理:未上传 → 草稿箱 → 已发布。
SkillCFreshness: C★ 76Claude Code +9 - 0.578score
fanqie-publish
ricky-theseus
Publish novel chapters from local Markdown files to the Fanqie Novel writer backend via browser automation.
SkillCFreshness: C★ 76Claude Code +9 - 0.578score
skill-writer
ricky-theseus
AI-powered writing toolkit — Web novel, Short story, Technical blog, Publishing automation / AI 驱动写作工具包 — 网文、短篇、技术博文、发布自动化
SkillCFreshness: C★ 76Claude Code +9 - 0.574score
wechat-article-writer
ricky-theseus
撰写微信公众号文章。包括选择文章类型、套用排版模板、生成配图、转换HTML、添加底部模板、审稿。触发词:写一篇公众号文章、写微信推文、帮我把这篇写完、继续写这篇。
SkillCFreshness: C★ 76Claude Code +9
Cite this page
webnovel-plan skill. Agent Mart. https://agentmart.dev/skills/ricky-theseus-webnovel-plan (last updated 2026-10-24)