
Webnovel Review
This handles the full review pipeline for webnovel chapters in a structured project setup. It calls a dedicated reviewer agent to generate structured issue lists, writes metrics to index.db, and saves reports to .webnovel/state.json while respecting the actual source of truth from review contracts and accepted chapter commits. The workflow blocks on any blocking issues and forces you to decide whether to fix immediately or defer. One thing that stands out is how opinionated it is about the file flow, it won't let you fake conclusions or skip the save-metrics step, and it automatically feeds high-severity AI flavor issues back into anti_patterns.json to prevent the same mistakes in future chapters. You need a proper .webnovel project structure with state files or it just stops.
- skills.sh installs
- 766
- GitHub stars
- 7.9K
- last updated
- Aug 21, 2026
Install
$ npx -y skills add lingfengqaq/webnovel-writer --skill webnovel-review --agent claude-codeInstalls into .claude/skills of the current project.
Files
Quality Review Skill
目标
- 解析真实书项目根,调度统一
reviewer完成结构化审查并落库。 - 主链事实以
.story-system/reviews/chapter_{NNN}.review.json与 latest acceptedCHAPTER_COMMIT为准;.webnovel/state.json仅为兼容投影。 - 有
blocking=true问题时交用户裁决。
红线
- 必须通过
Agent工具调用reviewer,禁止主流程伪造结论或口头总结代替 subagent 输出。 - reviewer 只返回严格 JSON;主流程负责把返回值写入
${PROJECT_ROOT}/.webnovel/tmp/review_results.json,随后由review-pipeline覆盖为标准 review_result artifact。 - 报告与 metrics 只由
review-pipeline --save-metrics产出;主流程不伪造overall_score。 - 项目根不合法 / 缺
.webnovel/state.json/ 缺待审正文 → 阻断。
执行流程
Step 1:解析项目根
export WORKSPACE_ROOT="${CLAUDE_PROJECT_DIR:-$PWD}"
export SCRIPTS_DIR="${CLAUDE_PLUGIN_ROOT}/scripts"
export PROJECT_ROOT="$(python "${SCRIPTS_DIR}/webnovel.py" --project-root "${WORKSPACE_ROOT}" where)"
PROJECT_ROOT 必须包含 .webnovel/state.json,否则阻断。
Step 2:目标章缺合同时刷新 runtime 合同
目标章缺 runtime 合同时,先用详细大纲的真实本章目标刷新(CHAPTER_GOAL 禁止 {章纲目标} / 第N章章纲目标 占位文本):
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',''))")"
Sponsors
Details
- Repository
- github.com/lingfengqaq/webnovel-writer
- Categories
- Git & Pull Requests, Code Review & Quality, AI & Agent Building
- First seen
- Jun 3, 2026