{
  "id": 16215484,
  "title": "Deterministic linters for AI-written technical prose (EN, RU, ES, DE, FR)",
  "url": "https://urgent.news/2026/10/23/deterministic-linters-for-ai-written-technical-prose-en-ru-es-de-fr",
  "topic": "ai",
  "section": "AI",
  "published": "2026-10-23T19:04:06.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/ameobius/deterministic-linters-for-ai-written-technical-prose-en-ru-es-de-fr-1lnl"
  },
  "original_language": "en",
  "account": "AI-generated technical writing often suffers from poor structure, leading to confusing documentation. A new checker called anti-slop-kit addresses this issue by providing deterministic linters for EN, RU, ES, DE, and FR texts. The linters check for specific writing mechanics, such as sentence length, passive voice, and nominalizations, ensuring the AI-generated content adheres to industry standards.\n\nThe linters operate independently for each language, using separate directories and rule sets. For example, English follows the ASD-STE100 mechanics with 11 rule groups, while Russian uses GOST R 58049-2017 clause 8.2.3 with 13 rule groups and typography rules. Spanish, German, and French also follow similar structures.\n\nWhen running the linters, users can specify the maximum allowed violations using the --max flag. A lower score, representing the number of violations per 100 words, indicates cleaner writing. However, the score is not a grading system but a means to identify areas for improvement. The linters also provide breakdowns of violations, highlighting banned words, marketing adjectives, filler sentences, and hedges.\n\nThe Russian linters are particularly useful as they identify structural issues that English linters might miss. For instance, in the Russian baseline, 24 out of 39 findings are structural, with a total of 15 violations of banned words versus 15 found by word search. This highlights the importance of using both scores and breakdowns to assess writing quality.\n\nThe linters also offer a JSON output format for integration with agent tools, such as tools/aslint/, enabling write-time hooks and customizable rule disabling based on document class. A score of 0 indicates a perfect text, but it does not guarantee correctness or completeness. The linters are designed to be used as a checklist for rewriting texts, not as a final judgment on a writer's work. The repository is hosted on GitLab with an MIT license, and Python 3.9+ is required for installation.",
  "summary": "Most \"AI slop\" advice is a style guide. This is a checker. The symptom: documentation that reads fine in review and breaks the reader later. A sentence that hides the actor. A run-on that buries the command. A paragraph of hedges. Nobody flags it during review, because review is where prose gets read politely. It surfaces in the incident, in the support ticket, in the runbook nobody can follow at…",
  "key_points": [
    "Anti-slop-kit provides deterministic linters for EN, RU, ES, DE, and FR technical writing.",
    "Linters check sentence length, passive voice, nominalizations for industry standards.",
    "Russian linters identify structural issues missed by English linters."
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}