Weekly Project Digests
thedotmack/claude-mem
Turns a project's claude-mem timeline into a week-by-week narrative, splitting it by ISO week and running one subagent per week that receives the prior week's carry-forward block.
“从当前会话提取成功模式并写入 project_memory.json”
$ npx skills add lujih/webnovel-writer-opencode --skill webnovel-learn -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install lujih/webnovel-writer-opencode webnovel-learn --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-learn .claude/skills/webnovel-learn && 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-learn" agent skill from https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-learn into .claude/skills/webnovel-learn/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "webnovel-learn", 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-learnType 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-learn -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install lujih/webnovel-writer-opencode webnovel-learn --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-learn .agents/skills/webnovel-learn && 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-learn" agent skill from https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-learn into .agents/skills/webnovel-learn/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "webnovel-learn", 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-learn -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install lujih/webnovel-writer-opencode webnovel-learn --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-learn .cursor/skills/webnovel-learn && 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-learn" agent skill from https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-learn into .cursor/skills/webnovel-learn/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "webnovel-learn", 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-learn--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-learn -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install lujih/webnovel-writer-opencode webnovel-learn --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-learn .gemini/skills/webnovel-learn && 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-learn" agent skill from https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-learn into .gemini/skills/webnovel-learn/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "webnovel-learn", 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-learnInstalls 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-learn -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-learn .github/skills/webnovel-learn && 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-learn" agent skill from https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-learn into .github/skills/webnovel-learn/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "webnovel-learn", 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-learn -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-learn --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-learn .opencode/skills/webnovel-learn && 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-learn" agent skill from https://github.com/lujih/webnovel-writer-opencode/tree/master/.opencode/skills/webnovel-learn into .opencode/skills/webnovel-learn/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "webnovel-learn", 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-learnWebnovel Learn is a skill in lujih/webnovel-writer-opencode (214 stars). Its SKILL.md is about 405 tokens. Licence: GPL-3.0.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit da00b7a. 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 Learn loads about 405 tokens when it runs. Until then it costs about 12 tokens; SKILL.md has 69 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 da00b7a, republished under its GPL-3.0 licence (© lujih). 69 words, ~405 tokens.
.claude/skills/webnovel-learn/SKILL.md (or your agent's skills folder)..webnovel/state.json)export WORKSPACE_ROOT="${PWD}"
export SCRIPTS_DIR="${PWD}/.opencode/scripts"
export PROJECT_ROOT="$(python -X utf8 "${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; }.webnovel/project_memory.json"$PROJECT_ROOT/.webnovel/state.json",获取当前章节号(progress.current_chapter)python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${PROJECT_ROOT}" project-memory add-pattern \
--pattern-type "{pattern_type}" \
--description "{用户输入或提炼后的完整描述}" \
--category "{分类,可空}" \
--importance "{high|medium|low}"脚本会自动读取/初始化 .webnovel/project_memory.json,并用 JSON 序列化写回,自动转义英文双引号、换行等字符。
pattern_type + description 完全相同则跳过Write 或手工编辑 .webnovel/project_memory.jsonproject_memory.json 存在且格式合法patterns 数组status: success 和完整 learned 对象| 故障 | 恢复方式 |
|---|---|
project_memory.json 不存在 | 自动初始化 {"patterns": []} 后继续 |
| JSON 解析失败 | 不写入脏数据,告知用户文件损坏并建议手动修复 |
state.json 缺失导致无法获取章节号 | 使用 source_chapter: null,不阻断 |
| 用户输入无法归类 | 使用 pattern_type: "other",不阻断 |
© 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
Just SKILL.md in .opencode/skills/webnovel-learn of lujih/webnovel-writer-opencode.
Open the folder on GitHubat commit da00b7a
Webnovel Learn 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 Learn this skilllujih/webnovel-writer-opencode | 214 | — | ~405 | Automated safety check: Pass | GPL-3.0 | |
| Weekly Project Digeststhedotmack/claude-mem | 99k | — | ~3.5k | Automated safety check: Pass | Apache-2.0 | |
| Summarizationdigipulse-engineering/GAAI-framework | 163 | — | ~863 | Automated safety check: Pass | Custom licence | |
| Custom Mode Creator for claude-memthedotmack/claude-mem | 99k | — | ~2.4k | Automated safety check: Pass | Apache-2.0 | |
| Neat-Freak Knowledge CloseoutKKKKhazix/khazix-skills | 21k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Beads Task Memorygastownhall/beads | 28k | — | ~1.2k | Automated safety check: Pass | MIT |
thedotmack/claude-mem
Turns a project's claude-mem timeline into a week-by-week narrative, splitting it by ISO week and running one subagent per week that receives the prior week's carry-forward block.
digipulse-engineering/GAAI-framework
Transform large, noisy, or short-term memory into compact, durable, high-signal summaries.
thedotmack/claude-mem
Walks you through creating, installing and verifying a custom claude-mem mode, including note types, tags and optional Telegram alerts for chosen memories.
KKKKhazix/khazix-skills
Brings project docs, agent rule files, authorized memory and leftover workspace files back in line with what the code and runtime actually do at the end of a work session.
gastownhall/beads
Tracks multi-session work with dependencies in the bd issue tracker so the agent can find ready tasks and recover its context after conversation compaction.
cursor/plugins
Starts three parallel reviewer subagents over the current conversation transcript, then turns their findings into concrete edits to existing skills.
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-learn -a claude-code`. Or copy the skill folder (.opencode/skills/webnovel-learn in lujih/webnovel-writer-opencode) into .claude/skills/webnovel-learn in your project. Claude Code loads it when a task matches its description.
Run `npx skills add lujih/webnovel-writer-opencode --skill webnovel-learn -a codex`. Or copy the skill folder (.opencode/skills/webnovel-learn in lujih/webnovel-writer-opencode) into .agents/skills/webnovel-learn 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-learn -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-learn, .gemini/skills/webnovel-learn, .github/skills/webnovel-learn and .opencode/skills/webnovel-learn in your project.
Going by SKILL.md and its folder, Webnovel Learn 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 Learn 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 405 tokens (SKILL.md is roughly 1.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Webnovel Learn: Weekly Project Digests (thedotmack/claude-mem, 99k stars), Summarization (digipulse-engineering/GAAI-framework, 163 stars), Custom Mode Creator for claude-mem (thedotmack/claude-mem, 99k stars) and Neat-Freak Knowledge Closeout (KKKKhazix/khazix-skills, 21k 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 6, 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.