Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add ComeOnOliver/skillshub --skill slopwatchgit clone --depth 1 https://github.com/ComeOnOliver/skillshubWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/comeonoliver/skillshub/slopwatch)<a href="https://agentmods.dev/skills/comeonoliver/skillshub/slopwatch"><img src="https://agentmods.dev/badge/skills/comeonoliver/skillshub/slopwatch/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/comeonoliver/skillshub/slopwatch"><img src="https://agentmods.dev/badge/skills/comeonoliver/skillshub/slopwatch.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00047 | $0.02146 |
| Opus 5 | $0.00023 | $0.01073 |
| Sonnet 5 | $0.00009 | $0.00429 |
| Haiku 4.5 | $0.00005 | $0.00215 |
Grade A, and why
dotnet-slopwatch scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
100% identical to dotnet-slopwatch — 1 line differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 320 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Slopwatch: LLM Anti-Cheat for .NET
When to Use This Skill
Use this skill constantly. Every time an LLM (including Claude) makes changes to:
- C# source files (.cs)
- Project files (.csproj)
- Props files (Directory.Build.props, Directory.Packages.props)
- Test files
Run slopwatch to validate the changes don't introduce "slop."
What is Slop?
"Slop" refers to shortcuts LLMs take that make tests pass or builds succeed without actually solving the underlying problem. These are reward hacking behaviors - the LLM optimizes for apparent success rather than real fixes.
Common Slop Patterns
| Pattern | Example | Why It's Bad |
|---|---|---|
| Disabled tests | [Fact(Skip="flaky")] |
Hides failures instead of fixing them |
| Warning suppression | #pragma warning disable CS8618 |
Silences compiler without fixing issue |
| Empty catch blocks | catch (Exception) { } |
Swallows errors, hides bugs |
| Arbitrary delays | await Task.Delay(1000); |
Masks race conditions, makes tests slow |
| Project-level suppression | <NoWarn>CS1591</NoWarn> |
Disables warnings project-wide |
| CPM bypass | Version="1.0.0" inline |
Undermines central package management |
Never accept these patterns. If an LLM introduces slop, reject the change and require a proper fix.
Installation
As a Local Tool (Recommended)
Add to .config/dotnet-tools.json:
{
"version": 1,
"isRoot": true,
"tools": {
"slopwatch.cmd": {
"version": "0.2.0",
"commands": ["slopwatch"],
"rollForward": false
}
}
}
Then restore:
dotnet tool restore
As a Global Tool
dotnet tool install --global Slopwatch.Cmd
First-Time Setup: Establish a Baseline
Before using slopwatch on an existing project, create a baseline of current issues:
# Initialize baseline from existing code
slopwatch init
# This creates .slopwatch/baseline.json
git add .slopwatch/baseline.json
git commit -m "Add slopwatch baseline"
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 320 lines · 47 tokens per session scan A cff2e6e4cceb
dotnet-slopwatch is a skill published in the GitHub repository ComeOnOliver/skillshub (63 stars, last pushed 2mo ago), licensed MIT. It adds 47 tokens to every session and 2,146 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to dotnet-slopwatch, differing in 1 line, and is treated as a copy.
Other skills, from other repositories
writing-csharp
Idiomatic C# /.NET development. Use when writing C# code, changing .csproj or .sln, or working on ASP.NET Core apps, libraries, CLIs, workers, and xUnit/NUnit/MSTest suites. Emphasizes nullable references, async/await, LINQ discipline, boundary validation, focused dotnet feedback, and minimal dependencies. NOT for Go…
java-development
Develop, debug, test, or review Java/JVM repositories without guessing their stack. Use for Java, Maven, Gradle, JUnit, Mockito, Testcontainers, Spring Boot, JVM toolchains, build failures, test failures, coverage, or Java CI work. Discovers wrappers and pinned JDK settings first, preserves project conventions, uses…
audit-rust
Use when a Rust workspace or known Rust surface needs a scoped, read-only audit of selected architecture, ownership, error, concurrency, performance, persistence, or unsafe-boundary risks; use repo-review when a Worktree or immutable change basis needs coordination.
audit-java
Use when a known Java source surface or Java-owned Spring/build configuration needs a scoped, read-only audit of selected architecture, API/security, transaction, persistence, concurrency, integration, performance, or migration risks; not for non-Java JVM semantics, and use repo-review when a Worktree or immutable…
cmd_go_review
Comprehensive Go code review for idiomatic patterns, concurrency safety, error handling, and security. Invokes the go-reviewer agent.
dotnet-patterns
Idiomatic C# and .NET patterns, conventions, dependency injection, async/await, and best practices for building robust, maintainable .NET applications.