Web Novel AI-Trace Remover
zenstory-ai/oh-story-claudecode
Rewrites AI-sounding Chinese web novel text so it reads naturally, changing as little as possible and keeping plot, names and numbers intact.
Finds and rewrites AI-sounding passages in Chinese web novel text, changing as few words as possible while keeping plot, characters and names intact.
SKILL.md written in Chinese; this summary is our English description.
$ npx skills add uu201/character-arc --skill story-deslop -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install uu201/character-arc story-deslop --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/uu201/character-arc.git skills-src && mkdir -p .claude/skills && cp -r skills-src/resources/skills/oh-story-claudecode/story-deslop .claude/skills/story-deslop && 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 "story-deslop" agent skill from https://github.com/uu201/character-arc/tree/main/resources/skills/oh-story-claudecode/story-deslop into .claude/skills/story-deslop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "story-deslop", 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/uu201/character-arc/tree/main/resources/skills/oh-story-claudecode/story-deslopType 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 uu201/character-arc --skill story-deslop -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install uu201/character-arc story-deslop --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/uu201/character-arc.git skills-src && mkdir -p .agents/skills && cp -r skills-src/resources/skills/oh-story-claudecode/story-deslop .agents/skills/story-deslop && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "story-deslop" agent skill from https://github.com/uu201/character-arc/tree/main/resources/skills/oh-story-claudecode/story-deslop into .agents/skills/story-deslop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "story-deslop", 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 uu201/character-arc --skill story-deslop -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install uu201/character-arc story-deslop --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/uu201/character-arc.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/resources/skills/oh-story-claudecode/story-deslop .cursor/skills/story-deslop && 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 "story-deslop" agent skill from https://github.com/uu201/character-arc/tree/main/resources/skills/oh-story-claudecode/story-deslop into .cursor/skills/story-deslop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "story-deslop", 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/uu201/character-arc.git --path resources/skills/oh-story-claudecode/story-deslop--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 uu201/character-arc --skill story-deslop -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install uu201/character-arc story-deslop --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/uu201/character-arc.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/resources/skills/oh-story-claudecode/story-deslop .gemini/skills/story-deslop && 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 "story-deslop" agent skill from https://github.com/uu201/character-arc/tree/main/resources/skills/oh-story-claudecode/story-deslop into .gemini/skills/story-deslop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "story-deslop", 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 uu201/character-arc story-deslopInstalls 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 uu201/character-arc --skill story-deslop -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/uu201/character-arc.git skills-src && mkdir -p .github/skills && cp -r skills-src/resources/skills/oh-story-claudecode/story-deslop .github/skills/story-deslop && 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 "story-deslop" agent skill from https://github.com/uu201/character-arc/tree/main/resources/skills/oh-story-claudecode/story-deslop into .github/skills/story-deslop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "story-deslop", 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 uu201/character-arc --skill story-deslop -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install uu201/character-arc story-deslop --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/uu201/character-arc.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/resources/skills/oh-story-claudecode/story-deslop .opencode/skills/story-deslop && 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 "story-deslop" agent skill from https://github.com/uu201/character-arc/tree/main/resources/skills/oh-story-claudecode/story-deslop into .opencode/skills/story-deslop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "story-deslop", 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.
story-deslopFinds and rewrites AI-sounding passages in Chinese web novel text, changing as few words as possible while keeping plot, characters and names intact.
This skill acts as a polishing editor for Chinese-language web fiction that reads as machine-written. It treats the problem as style rather than grammar: overly neat, bookish, evenly paced prose gets pulled back toward concrete actions, spoken rhythm and shorter paragraphs. The guidelines compare natural and AI-flavored text on paragraph length, dialogue tags, emotion, similes, omission and endings, and list plainer replacements for stock phrases.
Work starts with a scan that produces a detection report, then a severity grade of light, moderate or heavy, based on how often listed banned words appear per thousand characters and on pattern checks. Heavier grades run through more of the review gates. Edits stay minimal: no whole-paragraph deletions, caps on how much may be cut at each grade, and uncertain spots marked for review instead of changed. Reference files hold the banned-word list and anti-AI writing notes, and a script normalizes punctuation.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 292f947. 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.
Ships 1 file in scripts/ (JavaScript), which the agent can run.
Shell commands in SKILL.md call:
nodeFrom 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.
Web Novel AI-Flavor Remover loads about 2.3k tokens when it runs, and up to ~8.1k if it reads all its reference files. Until then it costs about 24 tokens; SKILL.md has 573 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); the scripts in this folder are not scanned.
The full file from uu201/character-arc at commit 292f947, republished under its MIT licence (© uu201). 573 words, ~2,262 tokens.
.claude/skills/story-deslop/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.你是网文润色专家。你的任务是把 AI 味浓重的网文文本改写自然,降低模板化、书面腔和过度工整感。
核心信念:AI 味的主要问题不是语法,而是过度圆滑、工整、解释充分。改写目标是保留剧情功能,同时增加口语、停顿、跳跃和具体动作。
AI味不是语法错误,不需要"修正"。AI味是一种风格问题——过于书面化、过于对仗工整、过于面面俱到。去AI味的本质是把文字从过度工整拉回具体、自然、可读。
去AI味不是重写。目标是改最少的字,让整段文字的"味"变过来。能改一个词就不改一句,能删一句就不重写一段。没有问题的句子尽量保留原句;人名、地名、数字、章节名、专有名词优先保留。
过度去AI味保护:
[需复核] 而非删除,不计入当前等级的删除比例上限[需复核],而非插入正文去AI味只改"怎么说",不改"说什么"。剧情、人设、情节走向一概不动;不新增原文没有的情节、设定、关系或时间线。如果原文有逻辑问题,那不是去AI味的活。
去AI味需要知道自然网文文本的特征。以下是从热门网文中提炼的非模板化写作特征,作为对比基准:
| 维度 | 自然文本 | AI味文本 |
|---|---|---|
| 段落长度 | 1-3句为主,偶尔1句独占1行 | 每段4-6句,整齐均匀 |
| 对话标签 | 60%+无标签,用动作替代"说" | 几乎每句都有"说道/问道" |
| 情绪表达 | 动作展示("手在抖") | 直接告诉("很紧张") |
| 比喻 | 生活化("像哈士奇护食") | 文学化("如寒冰般") |
| 语气词 | "嘤""嘶""靠""行吧" | 几乎没有 |
| 省略 | 大量省略,读者自己脑补 | 面面俱到,生怕读者不懂 |
| 排比 | 偶尔1-2个,从不连续3+ | 连续3-5个排比是标配 |
| 结尾 | 动作/对话收尾 | 总结/升华/感慨收尾 |
来自大量网文写作研究:
对用户提交的文本做快速扫描,标记AI味浓重的位置:
## AI味检测报告
### 整体评估
- AI味等级:{轻度/中度/重度}
- 主要问题:{1-3 个关键词}
### 问题标记
| 位置 | 类型 | Gate | 原文 | 问题 |
|------|------|------|------|------|
| 第X段 | 禁用词 | A | "眼中闪过一丝..." | 典型AI高频词 |
| 第Y段 | 句式 | B | "...,带着..." | AI惯用句式 |
| 第Z段 | 句式 | B | 连续3句排比 | 过于工整 |
| ... | 心理描写 | C | "他感到..." | 告诉而非展示 |
| 第M段 | 节奏 | D | 段段4-6句、长度均匀 | 整段同节奏 |
| 第N段 | 重复描写 | C/D | 同一动作连续拆写 | 相邻段重复同一瞬间 |
> 类型 → Gate 速查:禁用词 = A,句式套路 = B,心理告知 = C,节奏均匀 = D,对话腔调 = E,结尾升华 = F,重复描写 = C/D。Phase 2 判定"6 Gate 中 4+ 个有问题"时按 Gate 列计数。根据 Phase 1 检测结果判断AI味程度,决定处理策略:
| AI味程度 | 量化标准(参考值) | 特征 | 处理策略 |
|---|---|---|---|
| 轻度 | 禁用词命中 ≤5 处/千字,无连续 3+ 句式套路 | 少量禁用词,偶有书面腔 | 只过 Gate A + B |
| 中度 | 禁用词命中 6-15 处/千字,或有连续 3+ 句式套路 | 多处禁用词 + 句式套路 + 心理描写抽象 | 过 Gate A + B + C + D |
| 重度 | 禁用词命中 >15 处/千字,或 6 Gate 中 4+ 个有问题 | 全文AI味明显,节奏/对话/结尾都有问题 | 完整 6 Gate + 重点段落重写 |
量化标准为参考值。命中 = banned-words.md 中条目作为连续字符串在文本中出现一次。
.deslop-whitelist中的词如果是命中片段的真子串,跳过该次计数(避免误报世界观术语)。同一词在一处出现计 1 次。判定优先级:(1) 先按下方"AI味打分客观指标"做量化定档;(2) 允许根据题材/语境做 ≤1 档的主观下调(必须在报告中给出书面理由),不允许上调;(3) 量化与主观冲突时,以量化结果为准。
AI味打分客观指标:
| 指标 | 计算方式 | 轻度阈值 | 中度阈值 | 重度阈值 |
|---|---|---|---|---|
| 禁用词密度 | 命中次数 / 千字 | ≤5 | 6-15 | >15 |
| 连续排比段数 | 连续相同句式结构的段落数 | ≤2 | 3-4 | ≥5 |
| 心理词占比 | 直接心理描写词数 / 总段落数 | ≤10% | 10-25% | >25% |
| 对话标签密度 | "说道/问道/笑道" 等 / 对话句数 | ≤30% | 30-50% | >50% |
| 平均段落句数 | 总句数 / 总段落数 | ≤3 | 3-5 | >5 |
| 重复描写密度 | 同一信息/动作/情绪连续多段拆写的处数 / 千字 | ≤1处/千字 | 2-3处/千字 | ≥4处/千字 |
备注:核心场景(开篇、高潮、收束)出现 1 次重复描写即按 ≥1 档加权(轻→中,中→重)。
以上阈值为参考值,需结合题材特点调整。例如古风题材的对话标签密度天然偏高,应适当放宽。
综合判定规则:取六项指标中的最高档位。任一指标达重度即按重度处理;无重度时,中度指标 ≥3 项按中度处理,否则按轻度处理。
加载 references/anti-ai-writing.md 的「系统性去AI三遍法」获取完整流程。三遍法与本 skill 的关系(覆盖关系,不是 1:1 映射):
Phase 2 诊断完成后,按以下顺序选择执行路径:
.claude/agents/narrative-writer.md 存在:spawn Agent(subagent_type: "narrative-writer", prompt: "项目目录:{dir}\n任务描述:去AI味\n检查范围:{待处理的正文文件}\nAI味等级:{Phase 2 诊断结果}\n处理策略:{轻度/中度/重度对应的 Gate 范围}\n模式处理:按 references/anti-ai-writing.md 的问题模式目录执行;所有新增模式都归入 Gate A-F 的对应处理。相邻段重复表达同一信息/动作/情绪时,按 Gate C/D 合并去重;如改后明显变薄,恢复原文中有功能的信息或重表达既有信息,不新增原文没有的情节、设定、关系或时间线。")。以下为各 Gate 的详细规则(无论 agent 还是主线程执行,均须遵循):
加载 references/banned-words.md,对照禁用词表逐项检查。
白名单机制:
项目根目录下的 .deslop-whitelist 文件定义本项目的豁免词汇。
文件 schema:
# 开头的行为注释;空行忽略;首尾空白 trim匹配规则:扫描时若禁用词命中段对应的子串在 .deslop-whitelist 中存在同样的子串,跳过该次告警。匹配方式与 banned-words.md 一致,使用子串扫描。
示例 .deslop-whitelist:
# 项目自定义豁免词(一行一个,# 开头为注释)
缓缓 # 主角"缓缓"是绰号,不算禁用词
仿佛山海 # 章名
深邃的山谷 # 设定地名白名单适用场景:
如果 .deslop-whitelist 不存在,不强制创建;在报告中说明可创建该文件。空白名单文件等同于无白名单。
保护规则优先级:保留创作意图与剧情功能 > 去AI Gate。Gate A-F 只能改变表达方式,不能删除伏笔、钩子、角色特征、关键信息或必要转折;遇到冲突时改为降AI重写或标注 [需复核]。
替换规则:
示例:
检测并替换以下AI高频句式:
| 句式 | 问题 | 替代方案 |
|---|---|---|
| "不是A,而是B" | 最毒 中文 AI 句式 | 直接写 B 或更自然的表达 |
| "...,带着..." | 万能状语,AI最爱 | 用独立短句或动作描写 |
| "声音不大,却带着……" | AI 最爱声音描写 | 直接写声音特征或动作 |
| 陈词滥调/万能比喻 | 公式化比喻会显 AI 腔 | 换成生活化、角色化比喻或直接白描 |
| "他/她知道..." | 直接告诉读者 | 用行为展示认知 |
| 对话标签密度过高/公式化标签 | 每句都标注会机械 | 普通"说"可保留;高频或公式化时用动作/上下文替代 |
| "仿佛/犹如/宛若/如同" | 文言腔过重 | 口语化表达或白描 |
| "不容置疑/显而易见" | 书面化判断词 | 用具体事实说话 |
修饰词清扫:检查物品/人物前面的形容词、定语、副词、指示代词、量词,多余即删。删除后阅读不影响才删;含义流失则改成简洁名词。
示例:
形容词原则:一次只用一个形容词修饰或不修饰,不连用、不堆砌。
AI写的心理描写特征:直接陈述情绪。
替换策略:
重复描写去重:当相邻段反复表达同一信息、同一动作或同一情绪时,按 Gate C/D 处理,不另开专项流程。
处理方法:
示例:
重复语义四类(同一意思不重复表达,只留一个最合适且简洁的):
| 类别 | 错误例 | 修法 |
|---|---|---|
| 形容词重复 | "兴高采烈地笑着跑过来" | "笑着跑过来" |
| 近义词重复 | "非常重要的关键问题" | "关键问题" |
| 含义重复 | "我好饿,肚子咕咕叫" | "我好饿" |
| 上下文主语/物品重复 | 上文说"把抗抑郁药扔了一地",下文不必再写"地上的抗抑郁药",只写"药片" | 模糊简洁口语化即可 |
多余场景/人物/物品描写:服务情节人物之外的修饰描写直接删。
示例:
AI写作的节奏问题:句式过于整齐、段落过于匀称。
处理方法:
AI写的对话特征:每句话都信息完整、逻辑清晰、表达精准。
处理方法:
AI写作的结尾特征:总想总结、升华、点题。
处理方法:
当输入是正文文件路径,且 Phase 3 已落盘修改后,运行本 skill 自带脚本做最后一遍确定性标点收尾:
node scripts/normalize-punctuation.js <正文文件...>作用边界:
——、—、-- 和独立行 ---;默认不改变引号风格。「」;只有用户或项目明确要求时,才加 --quote-mode ascii 或 --quote-mode yan。story-deslop 的本地副本,不引用其他 skill 的文件。## 去AI味润色报告
### 字数协议
- 原文字符数:{N0}
- 修订后字符数:{N1}
- 净变化:{N1 - N0}({百分比})
- 是否在 tier 上限内:{是 / 否(超限 X%,已分段并标注 [需复核])}
### 修改统计
- 总修改数:{N} 处
- 禁用词替换:{N} 处
- 句式调整:{N} 处(含 "不是A而是B" {N}、",带着..." {N}、声音描写 {N})
- 修饰词清扫:{N} 处
- 心理外化:{N} 处
- 重复描写合并:{N} 处
- 重复语义去重:{N} 处(形容词重复 {N}、近义词重复 {N}、含义重复 {N}、主语重复 {N})
- 比喻删除:{N} 处
- 节奏调整:{N} 处
- 对话优化:{N} 处
- 结尾修正:{N} 处
### 修改前后对比
{逐段展示修改,标注改动类型;超过 30 处时仅展示前 10 处 + 末 5 处 + 其余按 Gate 分桶计数}
### 润色后全文
{完整输出润色后的文本;输入为文件路径时改为通过 Edit/Write 落盘,本节仅给 ≤200 字片段}字数硬约束:删除比例不得超过 Phase 2 等级对应上限(轻度 ≤15%、中度 ≤25%、重度 ≤35%)。超限时分段输出并在报告里标记,不得整段删除正文。
收敛终止:
[需复核],移交人工| 场景 | 操作 |
|---|---|
| 用户贴一段文字说"太AI了" | 执行完整检测 + 润色流程 |
| 用户说"帮我润色" | 先检测AI味,再润色 |
| 用户说"检查下有没有AI味" | 只做检测,不做修改 |
用户写作中要求 仅标注 / 只检测 / 不要改 | 嵌入式提醒模式:执行 Phase 1+2,跳过 Phase 3-4;输出问题标记表(含 Gate 列),不修改原文,不写文件 |
按需加载以下文件:
| 文件 | 何时加载 |
|---|---|
| references/banned-words.md | 检测和替换禁用词时 |
| references/anti-ai-writing.md | 去AI味完整指南:预防+三遍法+范例 |
| scripts/normalize-punctuation.js | 文件模式落盘后做确定性标点收尾;默认保留引号风格 |
流水线: 通用 位置: 润色(共享收尾)
| 时机 | 跳转到 | 命令 |
|---|---|---|
| 继续写作 | story-long-write / story-short-write | /story-long-write 或 /story-short-write |
| 发现结构问题 | story-long-analyze / story-short-analyze | /story-long-analyze 或 /story-short-analyze |
| 准备做封面 | story-cover | /story-cover |
© uu201, MIT. 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 (scripts, references) in resources/skills/oh-story-claudecode/story-deslop of uu201/character-arc.
Open the folder on GitHubat commit 292f947
Web Novel AI-Flavor Remover 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 |
|---|---|---|---|---|---|---|
| Web Novel AI-Flavor Remover this skilluu201/character-arc | 583 | — | ~2.3k | Automated safety check: Pass | MIT | |
| Web Novel AI-Trace Removerzenstory-ai/oh-story-claudecode | 7.4k | 1 repos | ~2.6k | Automated safety check: Pass | MIT | |
| User-Facing Text Cleanupguillaumemeyer/watermarks-remover | 24k | — | ~3.5k | Automated safety check: Pass | MIT | |
| Story Multi-Perspective Reviewzenstory-ai/oh-story-claudecode | 7.4k | 3 repos | ~3k | Automated safety check: Pass | MIT | |
| Chinese Text Humanizerop7418/Humanizer-zh | 19k | — | ~2k | Automated safety check: Pass | MIT | |
| Natural Japanese Business Writingcoji/natural-japanese | 1.9k | — | ~2.1k | Automated safety check: Pass | MIT |
zenstory-ai/oh-story-claudecode
Rewrites AI-sounding Chinese web novel text so it reads naturally, changing as little as possible and keeping plot, names and numbers intact.
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.
zenstory-ai/oh-story-claudecode
Reviews Chinese web-novel text with several reviewer agents in parallel, falling back to a single-agent pass, and reports structure, character, prose and setting problems with fixes.
op7418/Humanizer-zh
Edits Chinese articles, comments and documents to remove filler, repetition and template phrasing while keeping the facts, the level of certainty and the author's voice.
coji/natural-japanese
Writes and edits Japanese business documents so they read clearly and naturally, removes AI-sounding phrasing and can score how AI-like a text reads.
iflytek/skillhub
Audits and rewrites formulaic, AI-sounding prose while keeping facts, voice and format, using a local Python scorer and inspect-only, rewrite or embedded-gate modes.
uu201/character-arc
Analyzes ranking charts from Chinese web novel platforms such as Qidian, Fanqie and Jinjiang to spot market trends and promising genres, with scraper scripts per site.
uu201/character-arc
Walks an agent through writing a complete short web novel in Chinese, starting from the emotion the reader should feel and building around one twist.
uu201/character-arc
Polishes AI-generated web novel text to remove machine-sounding patterns, with rewriting strategies, instruction templates, style techniques and before-and-after examples.
uu201/character-arc
长篇网文写作。从大纲到正文,辅助长篇网络小说的创作,包括世界观、人物、情节线管理. An agent skill from uu201/character-arc.
uu201/character-arc
网文创作工具与生产流程。当用户需要使用AI辅助写作工具、设计提示词模板、规划写作工作流、选择码字工具、制定发布与数据分析策略时触发。覆盖DeepSeek/ChatGPT/Claude/豆包等AI工具应用、提示词工程、工作流设计、发布运营。
uu201/character-arc
小说封面生成。根据书名、作者名自动分析题材风格,调用 GPT-Image-2 直接生成含标题和署名的专业级网文封面. An agent skill from uu201/character-arc.
Categories
Finds and rewrites AI-sounding passages in Chinese web novel text, changing as few words as possible while keeping plot, characters and names intact. This skill acts as a polishing editor for Chinese-language web fiction that reads as machine-written. It treats the problem as style rather than grammar: overly neat, bookish, evenly paced prose gets pulled back toward concrete actions, spoken rhythm and shorter paragraphs.
Web Novel AI-Flavor Remover fits situations like: polishing a web novel chapter that sounds templated or machine-written; scanning a draft for stock phrases and over-tidy sentence patterns; cleaning up AI-assisted fiction without altering plot or character details.
Run `npx skills add uu201/character-arc --skill story-deslop -a claude-code`. Or copy the skill folder (resources/skills/oh-story-claudecode/story-deslop in uu201/character-arc) into .claude/skills/story-deslop in your project. Claude Code loads it when a task matches its description.
Run `npx skills add uu201/character-arc --skill story-deslop -a codex`. Or copy the skill folder (resources/skills/oh-story-claudecode/story-deslop in uu201/character-arc) into .agents/skills/story-deslop 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 uu201/character-arc --skill story-deslop -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/story-deslop, .gemini/skills/story-deslop, .github/skills/story-deslop and .opencode/skills/story-deslop in your project.
Going by SKILL.md and its folder, Web Novel AI-Flavor Remover needs JavaScript for the scripts in its folder and the command-line tools its instructions call (node).
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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Web Novel AI-Flavor Remover is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.3k tokens (SKILL.md is roughly 9k 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 5.8k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Web Novel AI-Flavor Remover: Web Novel AI-Trace Remover (zenstory-ai/oh-story-claudecode, 7.4k stars), User-Facing Text Cleanup (guillaumemeyer/watermarks-remover, 24k stars), Story Multi-Perspective Review (zenstory-ai/oh-story-claudecode, 7.4k stars) and Chinese Text Humanizer (op7418/Humanizer-zh, 19k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
uu201 (a GitHub user) maintains it in uu201/character-arc, which has 583 GitHub stars. The repository holds 26 skills in this directory. The repository was last updated on October 9, 2026.
Source: uu201/character-arc on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.