Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Remove AI writing patterns from academic prose. Detects and fixes inflated symbolism, promotional language, superficial analyses, vague attributions, AI vocabulary, and formulaic structures. Supports English and Chinese. Triggers on "remove AI patterns", "humanize text", "anti-AI polish", "去除AI写作痕迹", "人性化处理".
.claude/skills/catlog22-scholar-anti-ai-writing/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 125% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 100% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 68% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 58% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 28% | 0% |
Detect and eliminate AI writing patterns from academic prose. Based on Wikipedia's "Signs of AI writing" guide. Supports both English and Chinese text.
Core insight: LLMs predict the most statistically likely outcome — creating detectable patterns. This skill identifies and rewrites those patterns while preserving meaning and adding authentic voice.
.workflow/codebase/ARCHITECTURE.md exists, read for project contextmaestro load --type spec --category coding — load coding conventionsmaestro search "academic writing research paper" --json — top 5 entries as prior contextUser: "Remove AI patterns from my paper"
|
v
┌──────────────────────────────────────────────────────────────┐
│ SKILL.md (Orchestrator) │
│ Collect preferences → Dispatch phases → Track progress │
└──────────┬───────────────────────────────────────────────────┘
|
┌───────┼───────────┬──────────────┐
v v v v
┌──────┐┌──────────┐┌──────────────┐
│ P1 ││ P2 ││ P3 │
│Detect││ Rewrite ││ Validate │
│ & ││ & Polish ││ & Score │
│Score ││ ││ │
└──┬───┘└────┬─────┘└──────┬───────┘
│ │ │
v v v
pattern polished final score
report prose + diff reportBefore dispatching to any phase, collect these preferences:
Questions to ask the user:
1. Input Source
"What text should I process? (file path, directory, or paste text)"
→ inputSource
2. Language
Options: English | Chinese | Bilingual (auto-detect per section)
→ language
3. Writing Context
Options: Academic Paper | Technical Report | Blog/Article | General Prose
→ writingContext
4. Aggressiveness
Options: Conservative (minimal changes) | Balanced (Recommended) | Aggressive (heavy rewrite)
→ aggressivenessStore responses as antiAiPreferences context for all phases.
When workflowPreferences.autoYes === true:
> COMPACT DIRECTIVE: Context compression MUST check TodoWrite phase status. > The phase currently marked in_progress is the active execution phase — preserve its FULL content. > Only compress phases marked completed or pending.
Anti-AI Writing:
- [ ] Phase 1: Detect & Score — scan for AI patterns, generate initial score
- [ ] Phase 2: Rewrite & Polish — rewrite flagged sections, add voice
- [ ] Phase 3: Validate & Score — re-score, verify quality thresholdPhase 1: Detect & Score
└─ Ref: phases/01-detect-score.md
├─ Input: inputSource, language
└─ Output: patternReport (flagged passages + initial scores)
Phase 2: Rewrite & Polish
└─ Ref: phases/02-rewrite-polish.md
├─ Input: patternReport, writingContext, aggressiveness
└─ Output: polishedText (rewritten content)
Phase 3: Validate & Score
└─ Ref: phases/03-validate-score.md
├─ Input: polishedText, original text
└─ Output: finalReport (before/after scores, diff)Phase Reference Documents (read on-demand when phase executes):
| Phase | Document | Purpose | Compact | |-------|----------|---------|---------| | 1 | phases/01-detect-score.md | Scan patterns, score text | TodoWrite driven | | 2 | phases/02-rewrite-polish.md | Rewrite and humanize | TodoWrite driven + sentinel | | 3 | phases/03-validate-score.md | Re-score, generate report | TodoWrite driven |
Compact Rules:
in_progress → preserve full content, do not compresscompleted → may compress to summaryRead() to recover| Dimension | Question | Target | |-----------|----------|--------| | Directness | Direct statements or announcements? | >= 7 | | Rhythm | Varied or metronomic? | >= 7 | | Trust | Respects reader intelligence? | >= 7 | | Authenticity | Sounds human? | >= 7 | | Density | Anything cuttable? | >= 7 |
Phase 1 ──patternReport──→ Phase 2
Phase 2 ──polishedText──→ Phase 3
Phase 1 ──originalText──→ Phase 3 (for comparison)| Error | Action | |-------|--------| | File not found | Ask user for correct path | | Mixed languages in one file | Process each section in detected language | | Score below threshold after rewrite | Flag for manual review, suggest specific areas | | LaTeX commands broken during rewrite | Preserve LaTeX structure, only modify prose content | | User disagrees with changes | Offer side-by-side diff, allow per-section accept/reject |
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 7,283 | 4,874 | -33% | 1 | 1 | 0% | 1,050 | 2,360 | +125% | 0 | 0 | — |
case-02 | fail→pass | 7,042 | 3,781 | -46% | 1 | 1 | 0% | 1,085 | 2,171 | +100% | 0 | 0 | — |
case-03 | fail→pass | 9,968 | 4,487 | -55% | 1 | 1 | 0% | 1,374 | 2,307 | +68% | 0 | 0 | — |
case-04 | fail→pass | 9,683 | 3,933 | -59% | 1 | 1 | 0% | 1,426 | 2,253 | +58% | 0 | 0 | — |
case-05 | pass→pass | 7,237 | 2,402 | -67% | 1 | 1 | 0% | 1,092 | 1,924 | +76% | 0 | 0 | — |
case-06 | pass→pass | 9,584 | 2,151 | -78% | 1 | 1 | 0% | 1,532 | 1,942 | +27% | 0 | 0 | — |
case-07 | pass→pass | 13,961 | 6,893 | -51% | 1 | 1 | 0% | 2,192 | 2,589 | +18% | 0 | 0 | — |
case-08 | fail→pass | 16,123 | 10,933 | -32% | 1 | 1 | 0% | 2,473 | 3,155 | +28% | 0 | 0 | — |
case-09 | fail→pass | 7,311 | 9,941 | +36% | 1 | 1 | 0% | 1,138 | 3,222 | +183% | 0 | 0 | — |
case-10 | fail→pass | 11,403 | 7,553 | -34% | 1 | 1 | 0% | 1,627 | 2,589 | +59% | 0 | 0 | — |
case-11 | fail→pass | 7,731 | 3,324 | -57% | 1 | 1 | 0% | 1,132 | 2,110 | +86% | 0 | 0 | — |
case-12 | fail→fail | 5,401 | 2,508 | -54% | 1 | 1 | 0% | 758 | 1,982 | +161% | 0 | 0 | — |
case-13 | fail→pass | 9,917 | 4,575 | -54% | 1 | 1 | 0% | 1,415 | 2,229 | +58% | 0 | 0 | — |
case-14 | pass→pass | 7,487 | 2,366 | -68% | 1 | 1 | 0% | 1,158 | 1,939 | +67% | 0 | 0 | — |
case-15 | fail→pass | 7,268 | 2,258 | -69% | 1 | 1 | 0% | 1,043 | 1,921 | +84% | 0 | 0 | — |
case-16 | fail→pass | 10,718 | 1,738 | -84% | 1 | 1 | 0% | 1,465 | 1,834 | +25% | 0 | 0 | — |
case-17 | fail→pass | 8,611 | 1,705 | -80% | 1 | 1 | 0% | 1,333 | 1,843 | +38% | 0 | 0 | — |
case-18 | pass→pass | 5,562 | 3,208 | -42% | 1 | 1 | 0% | 813 | 2,038 | +151% | 0 | 0 | — |
case-19 | pass→pass | 11,645 | 1,690 | -85% | 1 | 1 | 0% | 1,737 | 1,870 | +8% | 0 | 0 | — |
case-20 | fail→fail | 8,285 | 8,391 | +1% | 1 | 1 | 0% | 1,186 | 2,851 | +140% | 0 | 0 | — |
case-21 | fail→fail | 2,514 | 2,438 | -3% | 1 | 1 | 0% | 318 | 1,905 | +499% | 0 | 0 | — |
case-22 | fail→pass | 6,723 | 14,543 | +116% | 1 | 1 | 0% | 1,205 | 3,951 | +228% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +59 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.