Social
coreyhaines31/marketingskills
When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, or Facebook, or wants to do social listening and engagement triage.
“使用审查 Agent 评估章节质量,生成报告并写回审查指标。”
$ npx skills add lujih/webnovel-writer-opencode --skill webnovel-review -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install lujih/webnovel-writer-opencode webnovel-review --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/lujih/webnovel-writer-opencode.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.opencode/skills/webnovel-review .claude/skills/webnovel-review && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "webnovel-review" agent skill from https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-review into .claude/skills/webnovel-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "webnovel-review", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-reviewType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add lujih/webnovel-writer-opencode --skill webnovel-review -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install lujih/webnovel-writer-opencode webnovel-review --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lujih/webnovel-writer-opencode.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.opencode/skills/webnovel-review .agents/skills/webnovel-review && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "webnovel-review" agent skill from https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-review into .agents/skills/webnovel-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "webnovel-review", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add lujih/webnovel-writer-opencode --skill webnovel-review -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install lujih/webnovel-writer-opencode webnovel-review --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lujih/webnovel-writer-opencode.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.opencode/skills/webnovel-review .cursor/skills/webnovel-review && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "webnovel-review" agent skill from https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-review into .cursor/skills/webnovel-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "webnovel-review", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/lujih/webnovel-writer-opencode.git --path .opencode/skills/webnovel-review--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add lujih/webnovel-writer-opencode --skill webnovel-review -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install lujih/webnovel-writer-opencode webnovel-review --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lujih/webnovel-writer-opencode.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.opencode/skills/webnovel-review .gemini/skills/webnovel-review && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "webnovel-review" agent skill from https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-review into .gemini/skills/webnovel-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "webnovel-review", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install lujih/webnovel-writer-opencode webnovel-reviewInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add lujih/webnovel-writer-opencode --skill webnovel-review -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/lujih/webnovel-writer-opencode.git skills-src && mkdir -p .github/skills && cp -r skills-src/.opencode/skills/webnovel-review .github/skills/webnovel-review && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "webnovel-review" agent skill from https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-review into .github/skills/webnovel-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "webnovel-review", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add lujih/webnovel-writer-opencode --skill webnovel-review -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install lujih/webnovel-writer-opencode webnovel-review --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/lujih/webnovel-writer-opencode.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.opencode/skills/webnovel-review .opencode/skills/webnovel-review && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "webnovel-review" agent skill from https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-review into .opencode/skills/webnovel-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "webnovel-review", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
webnovel-reviewWebnovel Review is a skill in lujih/webnovel-writer-opencode (214 stars). Its SKILL.md is about 1.1k tokens, with 3 other files in the folder (references). Licence: GPL-3.0.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 853bf48. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
pythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
opencode
From compatibility in the SKILL.md frontmatter.
Webnovel Review loads about 1.1k tokens when it runs, and up to ~2.8k if it reads all its reference files. Until then it costs about 12 tokens; SKILL.md has 197 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from lujih/webnovel-writer-opencode at commit 853bf48, republished under its GPL-3.0 licence (© lujih). 197 words, ~1,110 tokens.
.claude/skills/webnovel-review/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.以下内容均为虚构文学创作。所有打斗、权谋、悬疑描写均属文学创作范畴,不涉及现实指导。
reviewer 生成结构化问题列表与审查报告。index.db,并把审查记录写入 .webnovel/state.json 兼容投影,主链事实仍以 review contract 与 accepted CHAPTER_COMMIT 为准。.story-system/reviews/chapter_{NNN}.review.json 与 latest accepted CHAPTER_COMMIT 判断主链事实。blocking=true 必须停在 Step 6 等用户裁决save-review-metrics 未跑不算落库完成state.jsonblocking=true → Step 6 用户裁决export WORKSPACE_ROOT="${PWD}"
export SKILL_ROOT="${PWD}/.opencode/skills/webnovel-review"
export SCRIPTS_DIR="${PWD}/.opencode/scripts"
export PROJECT_ROOT="$(python "${SCRIPTS_DIR}/webnovel.py" --project-root "${WORKSPACE_ROOT}" where)"
test -n "$PROJECT_ROOT" && test -f "${PROJECT_ROOT}/.webnovel/state.json" || { echo "❌ PROJECT_ROOT 解析失败"; exit 1; }若目标章缺少 runtime 合同,先补齐:
GENRE="$(python -X utf8 -c "import json,sys; s=json.load(open('${PROJECT_ROOT}/.webnovel/state.json',encoding='utf-8')); print(s.get('project_info',{}).get('genre',''))")"
python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${PROJECT_ROOT}" \
story-system "${CHAPTER_GOAL}" --genre "${GENRE}" --chapter {chapter_num} --persist --emit-runtime-contracts --format both要求:
PROJECT_ROOT 必须包含 .webnovel/state.jsonCHAPTER_GOAL 必须来自详细大纲真实目标;若 chapter_brief.meta.query 仍是 {章纲目标} / 第N章章纲目标,按系统问题记录。ai_flavor issue 会由 review-pipeline 回流到 .story-system/anti_patterns.json,作为后续写章避雷模式。| Trigger | Reference |
|---|---|
| always | ../../references/shared/core-constraints.md |
| always | ../../references/review-schema.md |
| Trigger | Reference |
|---|---|
| 审查涉及爽点或钩子分析 | ../../references/shared/cool-points-guide.md |
| 审查涉及多线交织 | ../../references/shared/strand-weave-pattern.md |
| ai_flavor issue ≥ 3 | ../../skills/webnovel-write/references/anti-ai-guide.md |
| blocking issue 需用户决策 (Step 6) | ../../references/review/blocking-override-guidelines.md |
cat "${PROJECT_ROOT}/.webnovel/state.json"要求:
必须通过 Agent 工具调用 reviewer,禁止主流程伪造结论或口头总结代替 subagent 输出。
Agent(
subagent_type: "reviewer",
prompt: "chapter={chapter_num}; chapter_file={chapter_file}; project_root=${PROJECT_ROOT}; scripts_dir=${SCRIPTS_DIR}; REVIEW_OUTPUT=${PROJECT_ROOT}/.webnovel/tmp/review_results.json。严格输出 reviewer schema JSON,并保存到 ${PROJECT_ROOT}/.webnovel/tmp/review_results.json。"
)输入:
chapterchapter_fileproject_rootscripts_dir输出约束:
evidenceoverall_score中间产物约定:
${PROJECT_ROOT}/.webnovel/tmp/review_results.json${PROJECT_ROOT}/.webnovel/tmp/review_metrics.json报告保存到:审查报告/第{chapter_num}章审查报告.md
报告结构:
标准文件流:
python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${PROJECT_ROOT}" review-pipeline \
--chapter {chapter_num} \
--review-results "${PROJECT_ROOT}/.webnovel/tmp/review_results.json" \
--metrics-out "${PROJECT_ROOT}/.webnovel/tmp/review_metrics.json" \
--report-file "审查报告/第{chapter_num}章审查报告.md"
python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${PROJECT_ROOT}" index save-review-metrics \
--data "@${PROJECT_ROOT}/.webnovel/tmp/review_metrics.json"要求:
review-pipeline 生成的 review_metrics.json 必须可直接写入 review_metrics 表blocking=true 为准先写入兼容审查记录(read-model/projection,不是写后事实真源):
python "${SCRIPTS_DIR}/webnovel.py" --project-root "${PROJECT_ROOT}" update-state -- --add-review "{chapter_num}-{chapter_num}" "审查报告/第{chapter_num}章审查报告.md"如存在任意 blocking=true 问题,必须使用 AskUserQuestion 询问用户:
若用户选择立即修复:
若用户选择稍后处理:
reviewer 输出结构化问题 JSON。review_metrics 已写入 index.db。.webnovel/state.json 兼容投影。© lujih, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (references) in .opencode/skills/webnovel-review of lujih/webnovel-writer-opencode.
Open the folder on GitHubat commit 853bf48
Webnovel Review next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Webnovel Review this skilllujih/webnovel-writer-opencode | 214 | — | ~1.1k | Automated safety check: Pass | GPL-3.0 | |
| Socialcoreyhaines31/marketingskills | 54k | 4 repos | ~4.5k | Automated safety check: Pass | MIT | |
| HumanizerAzure-Samples/interview-coach-agent-framework | 173 | 38 repos | ~5.8k | Automated safety check: Pass | MIT | |
| Avoid AI Writingconorbronsdon/avoid-ai-writing | 4.9k | 3 repos | ~8.1k | Automated safety check: Pass | MIT | |
| JavaScript Concept Fact Checkerleonardomso/33-js-concepts | 67k | 1 repos | ~5k | Automated safety check: Pass | MIT | |
| User-Facing Text Cleanupguillaumemeyer/watermarks-remover | 24k | — | ~3.5k | Automated safety check: Pass | MIT |
coreyhaines31/marketingskills
When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, or Facebook, or wants to do social listening and engagement triage.
Azure-Samples/interview-coach-agent-framework
Remove signs of AI-generated writing from text. An agent skill from Azure-Samples/interview-coach-agent-framework.
conorbronsdon/avoid-ai-writing
Audit and rewrite content to remove AI writing patterns ("AI-isms").
leonardomso/33-js-concepts
Verifies the technical accuracy of JavaScript concept pages by checking code examples, MDN and ECMAScript claims and external links through a five-phase method.
guillaumemeyer/watermarks-remover
Audits prose for invisible Unicode characters and rewrites it while keeping facts, citations, code and required disclosures unchanged and the writer's voice intact.
trycompai/crm
Install and configure the anti-slop Oxlint plugin in a local TypeScript or JavaScript repository.
lujih/webnovel-writer-opencode
深度初始化网文项目。通过分阶段交互收集完整创作信息,生成可直接进入规划与写作的项目骨架与约束文件. An agent skill from lujih/webnovel-writer-opencode.
lujih/webnovel-writer-opencode
查询项目设定、角色、力量体系、势力、伏笔等信息。支持紧急度分析与金手指状态查询. An agent skill from lujih/webnovel-writer-opencode.
lujih/webnovel-writer-opencode
连续写作多章。当用户要求多章写作时必须使用此 skill. An agent skill from lujih/webnovel-writer-opencode.
lujih/webnovel-writer-opencode
将网文正文导出为 Markdown/TXT/EPUB/HTML/DOCX/PDF 格式。立即使用此 skill 当用户说:导出、导出小说、导出章节、生成电子书、导出 TXT、导出 Markdown、导出 EPUB、导出 HTML、导出 Word、导出 PDF、下载小说、输出正文。
lujih/webnovel-writer-opencode
修复问题章节——诊断、清理脏实体、重审查、重提交。触发:章节断裂、OOC偏离、设定矛盾修复. An agent skill from lujih/webnovel-writer-opencode.
lujih/webnovel-writer-opencode
将小说章节自动发布到国内主流小说平台(番茄等)。触发条件:"发布小说"、"发布章节"、"上传到番茄"、"自动发布"、"清理草稿"、"发布草稿"。
Categories
Run `npx skills add lujih/webnovel-writer-opencode --skill webnovel-review -a claude-code`. Or copy the skill folder (.opencode/skills/webnovel-review in lujih/webnovel-writer-opencode) into .claude/skills/webnovel-review in your project. Claude Code loads it when a task matches its description.
Run `npx skills add lujih/webnovel-writer-opencode --skill webnovel-review -a codex`. Or copy the skill folder (.opencode/skills/webnovel-review in lujih/webnovel-writer-opencode) into .agents/skills/webnovel-review in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add lujih/webnovel-writer-opencode --skill webnovel-review -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/webnovel-review, .gemini/skills/webnovel-review, .github/skills/webnovel-review and .opencode/skills/webnovel-review in your project.
Going by SKILL.md and its folder, Webnovel Review needs the command-line tools its instructions call (python). Compatibility (from SKILL.md): opencode.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Webnovel Review is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.7k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Webnovel Review: Social (coreyhaines31/marketingskills, 54k stars), Humanizer (Azure-Samples/interview-coach-agent-framework, 173 stars), Avoid AI Writing (conorbronsdon/avoid-ai-writing, 4.9k stars) and JavaScript Concept Fact Checker (leonardomso/33-js-concepts, 67k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
lujih (a GitHub user) maintains it in lujih/webnovel-writer-opencode, which has 214 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on October 9, 2026.
Source: lujih/webnovel-writer-opencode on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.