What is the Purpose of eval.md in No AI Slop?

The eval.md file serves as the validation checklist and quality-control script for the No AI Slop skill, ensuring every transformation removes generic AI phrasing while preserving the author's authentic voice.

The No AI Slop skill is an open-source editing tool designed to strip robotic, AI-generated language from text while maintaining the author's authentic style. At the heart of this system lies eval.md, a critical configuration file located at skills/no-ai-slop/eval.md that defines the validation checklist the skill runs after processing content. Understanding the purpose of eval.md in No AI Slop reveals how the tool guarantees editorial consistency and prevents aggressive over-editing according to the petergyang/no-ai-slop source code.

Core Function of eval.md in the No AI Slop Workflow

The eval.md file operates as the quality-control script for the entire skill. According to the repository structure, this document performs three distinct validation roles depending on the operation mode.

Post-Edit Verification

After the skill rewrites a draft, it walks through the numbered checks defined in eval.md. These checks verify critical criteria such as whether the edit preserves the user's point and maintains the original voice. If any check fails, the skill must fix the violations before returning the final output. This creates a mandatory feedback loop that prevents low-quality transformations from reaching the user.

Detect-Mode Behavior

For "detect" requests, the skill uses the same eval.md checklist to identify slop patterns without rewriting the content. The skill quotes the offending line from the source text and offers a concise fix suggestion, allowing writers to manually review and apply changes while learning to recognize AI-generated patterns themselves.

Editorial Guidance Repository

The document captures the editing principles that distinguish natural human writing from generic AI output. This includes rules against aggressive compression, lists of specific words and patterns to cut, and final read criteria that ensure the output feels recognizably like the author's own voice rather than sanitized machine text.

Technical Implementation of the eval.md Validation Logic

While the actual execution is handled by the skill engine, the intended logic follows a structured validation pattern defined in skills/no-ai-slop/eval.md. The pseudo-code below illustrates how the evaluation drives quality assurance:


# After rewriting a draft, run the evaluation checklist

def run_evaluation(draft):
    checks = [
        "preserve_point",
        "preserve_voice",
        "avoid_aggressive_compression",
        # … (other checks from eval.md)

    ]
    results = {}
    for check in checks:
        results[check] = perform_check(draft, check)  # returns "pass" or "fail"

    
    # If any check fails, invoke the fixer and repeat

    while "fail" in results.values():
        draft = fix_failed_checks(draft, results)
        results = {c: perform_check(draft, c) for c in checks}
    
    return draft, results

For detection operations without rewriting, the skill references the pattern definitions from eval.md to generate structured reports:

def detect_slop(text):
    patterns = load_patterns()               # from eval.md "Patterns to cut"

    findings = []
    for pat in patterns:
        if pat.matches(text):
            findings.append({
                "pattern": pat.name,
                "quote": pat.example_line,
                "fix": pat.suggested_fix,
            })
    return findings

These functions reflect the intent of eval.md: to provide a structured, repeatable set of rules that the skill consistently applies as implemented in petergyang/no-ai-slop.

Relationship to Other Core Files

The eval.md file does not operate in isolation. It functions alongside several critical components in the repository:

  • SKILL.md: Contains the core editing rules and workflow that eval.md validates against. While SKILL.md defines how to edit, eval.md defines how to verify the edit succeeded.
  • .codex-plugin/plugin.json: Metadata file that enables the Codex/ChatGPT plugin integration, ensuring the skill can access eval.md during execution.
  • scripts/build_plugin.py: Build script that validates the plugin structure and ensures eval.md is properly included in the distribution package.

Summary

  • eval.md serves as the quality-control script for the No AI Slop skill, ensuring all text transformations meet editorial standards before delivery.
  • Post-edit verification requires the skill to fix any failed checks from the eval.md checklist before returning final output.
  • Detect-mode operations use the same validation criteria to identify and report slop patterns without automatic rewriting.
  • Editorial principles encoded in the file prevent aggressive compression and preserve the author's unique voice.
  • The file works in concert with SKILL.md, plugin.json, and build_plugin.py to form a complete validation pipeline in the petergyang/no-ai-slop repository.

Frequently Asked Questions

Where is eval.md located in the No AI Slop repository?

The eval.md file is located at skills/no-ai-slop/eval.md in the petergyang/no-ai-slop repository. This placement ensures the skill engine can load the validation checklist alongside the core skill logic defined in SKILL.md.

What happens if a draft fails the eval.md checklist?

If any check in eval.md returns a failure status, the skill invokes a fixer routine and re-runs the evaluation. This process repeats iteratively until all checks pass, ensuring only verified high-quality edits reach the user.

How does eval.md differ from SKILL.md?

While SKILL.md contains the active editing instructions and transformation rules, eval.md contains the validation criteria used to judge whether those transformations succeeded. Think of SKILL.md as the editor's playbook and eval.md as the quality assurance rubric.

Can users customize the eval.md checklist?

Yes, because No AI Slop is open-source, users can modify eval.md to adjust the strictness of validation or add domain-specific checks relevant to their writing style. Changes to this file directly affect how the skill validates output during the build process managed by scripts/build_plugin.py.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →