[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DBXAEQGTXV2E2C3VD89Z3P":3,"skill-same:01M6DBXAEQGTXV2E2C3VD89Z3P":90},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":51,"commitSha":52,"skillDirectory":53,"forksCount":14,"repositoryHtmlUrl":54,"repositoryHomepageUrl":6,"ownerHtmlUrl":55,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":56,"install":57,"resources":70},"01M6DBXAEQGTXV2E2C3VD89Z3P","slop-check",null,"Use when the user asks if text or an image is AI-generated, to clean AI artifacts or invisible characters, or to score readability (Flesch-Kincaid) via Slop or Not Pro on-device tools (macOS only) ; do NOT use for rewriting or humanizing text (use agentic-humanizer or humanizer) ; returns AI-detection verdict, cleaned text, or readability grade.","Prekzursil\u002Fagent-skills-toolchain","Prekzursil","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F54636077?v=4","01M6DACZ1PCQHD99SCR1YXG28B","Andrei Mihai Visalon","01M6DACZ670WZF535V3WYYSS4Z",0,"MIT","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fslop-check\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"slop check","check","text","do","ai-detection","clean","opencode","only","use","generated","image","Bash","artifacts","code","humanizer","codex","agentic","github","gemini","cli","2026-11-10 10:12:30",false,"---\nname: slop-check\ndescription: Use when the user asks if text or an image is AI-generated, to clean AI artifacts or invisible characters, or to score readability (Flesch-Kincaid) via Slop or Not Pro on-device tools (macOS only) ; do NOT use for rewriting or humanizing text (use agentic-humanizer or humanizer) ; returns AI-detection verdict, cleaned text, or readability grade.\nlicense: MIT\nallowed-tools:\n- Read\n- Bash\nmetadata:\n  version: 0.1.0\n  compatibility: claude-code codex cursor gemini-cli opencode\n  source: https:\u002F\u002Fgithub.com\u002Fnumen-tech\u002Fslopornot\n  upstream_author: Numen Technologies\n---\n\n> **Windows note (vendored):** `slop-check` routes to the Slop or Not Pro on-device MCP \u002F `slop` CLI, which is **macOS-only**. On Windows these AI-detection \u002F readability calls will not resolve; the skill is vendored for completeness and cross-platform parity. To humanize text on Windows use `agentic-humanizer` (works standalone) or `humanizer`.\n\n# Slop Check\n\nOne-shot access to Slop or Not Pro's on-device analysis. Detect AI text or\nimages, clean AI artifacts, or score readability, then report a clear\nverdict. No interview, no loop.\n\n**Slash command:** `\u002Fslop-check [paste text | file path | image path]`\n\n## Critical rules\n\n1. For `image-detect` and explicit `image-score`, MUST prefer the\n   app-bundle CLI when the current client can run local shell commands. Use\n   MCP for image operations only when CLI execution is unsupported or fails.\n   For text, readability, cleanup, and status, try MCP before CLI.\n2. MUST verify Pro with a real Pro-gated call. NEVER infer Pro from\n   `slop_status` or `slop status`; both succeed for non-Pro users.\n3. NEVER block on a structured-question tool. Resolve ambiguity with the\n   Step 1 precedence rule and state the assumption, or emit the single\n   plain-text input request. Plain text renders on every harness.\n4. NEVER create symlinks, edit shell rc files, or otherwise modify PATH.\n   Prefer the absolute app-bundle binary at\n   `\u002FApplications\u002FSlop Or Not.app\u002FContents\u002FMacOS\u002Fslop` whenever using the\n   CLI. Detection, readability, cleanup, score, and status are output-only:\n   run them immediately, no permission needed.\n5. Detection scores are 0-1 decimals; MUST multiply them by 100 for\n   display. Readability values are grade\u002Fease numbers and MUST NOT be\n   converted to percentages. NEVER guess a flag or JSON field path; look it\n   up in `references\u002Fslop-tools.md`.\n6. Image checks MUST default to `detect_image`. Use `score_image` only when\n   the user explicitly asks for a raw or absolute OmniAID score. A request to\n   \"score this image\" without OmniAID still maps to `image-detect`.\n\n## Step 1: Identify the operation and input\n\nPick one operation from the request. Do not ask a question to disambiguate.\n\n| Operation | Trigger language |\n|---|---|\n| `text-detect` | \"is this AI\", \"did a bot write this\", \"AI written\" |\n| `image-detect` | \"is this image AI\", \"AI generated picture\", \"real photo\" |\n| `image-score` | \"raw OmniAID score\", \"absolute OmniAID model score\" |\n| `readability` | \"reading level\", \"what grade\", \"Flesch\", \"how readable\" |\n| `cleanup` | \"clean this\", \"strip invisible\u002Fzero-width\", \"remove homoglyphs\" |\n| `status` | \"is slop set up\", \"is Slop or Not working\", \"check Pro\" |\n\nResolve the input by precedence (first match wins):\n\n1. A path ending `.png`, `.jpg`, `.jpeg`, `.heic`, or `.webp`, or an\n   explicit image reference: image operation on that file.\n2. Any other explicit file path: read that file as text.\n3. Inline pasted text in the request: use it.\n4. The user says to use the clipboard: `pbpaste`.\n\nAmbiguity rule (NEVER ask via a tool): if no operation verb is present,\ndefault to `text-detect` for text input and `image-detect` for image\ninput, and state the assumption in the output, for example: \"Assumed\nAI-detection. Ask for readability or cleanup to switch.\"\n\nOnly if there is no usable input at all, emit exactly this one line, then\nstop and wait:\n\n```text\nPaste the text, or give a file or image path, and say detect \u002F clean \u002F readability.\n```\n\n## Step 2: Resolve a working backend\n\nUse this backend order. Stop at the first that works.\n\n1. **Image operations with shell support: CLI first.** For `image-detect`\n   and `image-score`, first check the app-bundle binary:\n\n   ```bash\n   ls \"\u002FApplications\u002FSlop Or Not.app\u002FContents\u002FMacOS\u002Fslop\"\n   ```\n\n   If it exists and the client can run shell commands, use that quoted\n   binary path. This avoids converting local image files to base64. If the\n   client has no shell or CLI execution, for example MCP-only clients such\n   as Claude Desktop or ChatGPT connectors, skip to MCP.\n2. **MCP for non-image operations, or image fallback.** Call the operation's SlopOrNot MCP tool (Claude Code\n   surfaces these as `mcp__SlopOrNot__\u003Ctool>`; other harnesses expose the\n   same `SlopOrNot` server tools). If it returns a result and is not a\n   Pro-required error (`isError: true` or a Pro-required message), use it.\n   For `status`, `slop_status` is only a health\u002Fversion call: also run the\n   Pro proof probe in `references\u002Fslop-tools.md` section 5 before reporting\n   active Pro. Done.\n3. **CLI fallback for non-image operations.** If MCP is absent or errored,\n   check whether the app-bundle binary exists:\n\n   ```bash\n   ls \"\u002FApplications\u002FSlop Or Not.app\u002FContents\u002FMacOS\u002Fslop\"\n   ```\n\n   - If it exists: complete this turn's operation by calling the binary at\n     its absolute quoted path. Do not modify PATH.\n   - If it does not exist: this is genuinely not installed. Go to the\n     Step 5 \"Not installed\" fallback.\n   For `status`, run the absolute binary's `status --json` plus the Pro proof\n   probe before reporting active Pro.\n4. **Pro-gated failure.** If the CLI runs but a Pro-gated call exits\n   non-zero or returns Pro-required, the app is installed and Pro is not\n   active: go to the Step 5 \"Installed but Pro is not active\" fallback. For\n   `status`, report Pro as inactive per Step 4 instead.\n\nTool names, flags, parameters, and JSON field paths are in\n`references\u002Fslop-tools.md`. Setup and registration details are in\n`references\u002Fslop-setup.md`. Consult them; do not guess.\n\n## Step 3: Run the operation\n\nUse the operation-to-tool map in `references\u002Fslop-tools.md` section 5.\nKey points:\n\n- `text-detect`: request readability alongside detection\n  (`include_readability: true` on MCP; `slop text --json` returns both).\n- Images: default to `image-detect`. When shell commands are available, use\n  the absolute CLI path with shell redirection from the image path:\n  `\"\u002FApplications\u002FSlop Or Not.app\u002FContents\u002FMacOS\u002Fslop\" image --json \u003C \"\u003Cpath>\"`.\n  MCP uses `detect_image` with base64 (`base64 -i \u003Cpath>`) only when CLI is\n  unsupported or fails. Use `score-image` \u002F `score_image` only for\n  `image-score`, and only when the user explicitly asks for a raw or absolute\n  OmniAID score. If the user asks for a generic image score without OmniAID,\n  keep `image-detect` and format the detection probability.\n- `cleanup`: keep the default removals on unless the user asked to limit\n  them. Normalize MCP and CLI cleanup fields before formatting: MCP returns\n  `cleaned_text` and integer counts; CLI returns `cleanedText` plus count\n  arrays.\n- `status`: run the health call and then the Pro proof probe. Report active\n  only when the Pro-gated probe succeeds.\n\n## Step 4: Present the result\n\nRead score normalization in `references\u002Fslop-tools.md` section 2 first\n(detection score is a 0-1 decimal, multiply by 100; MCP `verdict` is a\nplain string, CLI verdict is the single-key object at\n`detection.result._1`).\n\nRender the matching block.\n\n**Detection (text or image):**\n\n```markdown\n**Likely AI** (most_likely_ai_slop) · 87% AI probability\nLanguage: en · Sentences: 6\n```\n\nMap the verdict by rule (verdicts have gradations like `probably_ai_slop`):\n`real` -> \"Likely human\"; contains `ai_slop` -> \"Likely AI\"; else\ntitle-cased. Show the label, the raw verdict in parentheses, and the\npercentage.\n\n**Readability:**\n\n```markdown\n**Flesch-Kincaid grade: 9.7** (Reading Ease 62.4)\nWords: 210 · Sentences: 14\n```\n\nIf `scores[]` is empty (short input), the response carries a `warnings`\nentry like `insufficient_text:NN`. Report that instead of a grade, for\nexample: `Not enough text to score reliably (insufficient_text:28).` Do\nnot invent a grade.\n\n**Cleanup:** print the counts line, then the cleaned text in its own fenced\n`text` block so the user can copy it verbatim. For CLI output, use\n`cleanedText` as the cleaned text, sum `invisibleCounts[].count`,\n`punctuationCounts[].count`, and `homoglyphCounts[].count`, and count\n`britishMappings.length`.\n\n`**Cleaned.** Invisibles: 3 · Punctuation: 5 · Homoglyphs: 1 · British: 0`,\nfollowed by a fenced `text` block containing only `cleaned_text`.\n\n**Image score (only for explicit OmniAID requests):**\n\n```markdown\n**Raw image score: 0.80** (OmniAID)\n```\n\n**Status:**\n\n```markdown\n**Slop or Not Pro: active** (version 1.0.9)\n```\n\nUse `inactive` when the health call works but the Pro proof probe returns a\nPro-required error.\n\nWhen the ambiguity rule fired, prepend the one-line assumption note.\n\n## Step 5: Fallback when Slop or Not Pro is unavailable\n\nTwo distinct cases. Pick the message that matches the real state. Never\ntell an installed user to install the app.\n\n**Not installed** (MCP is down AND the app bundle is absent). End with\nexactly this paragraph:\n\n> *Slop or Not is not installed. Install Slop or Not for Mac, then unlock\n> Pro from inside the app: \u003Chttps:\u002F\u002Fslopornot.ai\u002Fdownload>*\n\n**Installed but Pro is not active** (the `slop` binary or app bundle\nexists, but a Pro-gated call returned Pro-required or exited non-zero).\nEnd with exactly this paragraph:\n\n> *Slop or Not is installed but Pro is not active. Unlock Pro from inside\n> the app under Settings then Subscription: \u003Chttps:\u002F\u002Fslopornot.ai\u002Fdownload>*\n\nIn both cases, then say: see `references\u002Fslop-setup.md` for install, Pro\nunlock, and MCP\u002FCLI registration. A missing PATH alone is handled by the\napp-bundle fallback in Step 2, not deflected here. For the `status`\noperation, report\n`Slop or Not Pro: inactive` per Step 4 instead of these paragraphs.\n\n## Examples\n\n**Example A, text detection (no verb, ambiguity rule fires):**\n\nUser: `\u002Fslop-check In today's fast-paced digital landscape, leveraging\nsynergies is paramount.`\n\nAction: no verb, text input, default `text-detect`. MCP `detect_text`\nwith `include_readability: true`.\n\nOutput:\n\n```markdown\nAssumed AI-detection. Ask for readability or cleanup to switch.\n\n**Likely AI** (most_likely_ai_slop) · 91% AI probability\nLanguage: en · Sentences: 1\n```\n\n**Example B, image detection from a path:**\n\nUser: `is this AI? ~\u002FDesktop\u002Fart.png`\n\nAction: path ends `.png`, so `image-detect`. Shell commands are available,\nso use the app-bundle CLI:\n`\"\u002FApplications\u002FSlop Or Not.app\u002FContents\u002FMacOS\u002Fslop\" image --json \u003C \"$HOME\u002FDesktop\u002Fart.png\"`.\n\nOutput:\n\n```markdown\n**Likely AI** (most_likely_ai_slop) · 80% AI probability\n```\n\n**Example C, readability of a file:**\n\nUser: `what grade level is draft.md`\n\nAction: explicit file path, `readability`. MCP `analyze_readability` with\nthe file contents. Read the `fleschKincaidGradeLevel` entry.\n\nOutput:\n\n```markdown\n**Flesch-Kincaid grade: 7.2** (Reading Ease 71.8)\nWords: 148 · Sentences: 11\n```\n\n**Example D, cleanup with a zero-width character:**\n\nUser: `clean the invisible characters out of this: Hello​world`\n\nAction: `cleanup`. MCP `clean_text` (defaults on).\n\nOutput: the counts line `**Cleaned.** Invisibles: 1 · Punctuation: 0 ·\nHomoglyphs: 0 · British: 0`, then a fenced `text` block whose only content\nis `Helloworld` (the zero-width character removed).\n\n**Example E, explicit OmniAID score:**\n\nUser: `give me the raw OmniAID score for ~\u002FDesktop\u002Fart.png`\n\nAction: explicit OmniAID request, so `image-score`. Shell commands are\navailable, so use the app-bundle CLI:\n`\"\u002FApplications\u002FSlop Or Not.app\u002FContents\u002FMacOS\u002Fslop\" score-image --json \u003C \"$HOME\u002FDesktop\u002Fart.png\"`.\nIf CLI execution is unsupported, use MCP `score_image` with base64 image\ninput.\n\nOutput:\n\n```markdown\n**Raw image score: 0.80** (OmniAID)\n```\n\n## Pointer files\n\n- `references\u002Fslop-tools.md`: full CLI and MCP surface, parameters, flags,\n  JSON field paths, score normalization, Pro-gating, operation map.\n- `references\u002Fslop-setup.md`: install, Pro unlock, app-bundle fallback,\n  MCP\u002FCLI registration, troubleshooting.\n","> **Windows note (vendored):** `slop-check` routes to the Slop or Not Pro on-device MCP \u002F `slop` CLI, which is **macOS-only**. On Windows these AI-detection \u002F readability calls will not resolve; the skill is vendored for completeness and cross-platform parity. To humanize text on Windows use `agentic-humanizer` (works standalone) or `humanizer`.\n\n# Slop Check\n\nOne-shot access to Slop or Not Pro's on-device analysis. Detect AI text or\nimages, clean AI artifacts, or score readability, then report a clear\nverdict. No interview, no loop.\n\n**Slash command:** `\u002Fslop-check [paste text | file path | image path]`\n\n## Critical rules\n\n1. For `image-detect` and explicit `image-score`, MUST prefer the\n   app-bundle CLI when the current client can run local shell commands. Use\n   MCP for image operations only when CLI execution is unsupported or fails.\n   For text, readability, cleanup, and status, try MCP before CLI.\n2. MUST verify Pro with a real Pro-gated call. NEVER infer Pro from\n   `slop_status` or `slop status`; both succeed for non-Pro users.\n3. NEVER block on a structured-question tool. Resolve ambiguity with the\n   Step 1 precedence rule and state the assumption, or emit the single\n   plain-text input request. Plain text renders on every harness.\n4. NEVER create symlinks, edit shell rc files, or otherwise modify PATH.\n   Prefer the absolute app-bundle binary at\n   `\u002FApplications\u002FSlop Or Not.app\u002FContents\u002FMacOS\u002Fslop` whenever using the\n   CLI. Detection, readability, cleanup, score, and status are output-only:\n   run them immediately, no permission needed.\n5. Detection scores are 0-1 decimals; MUST multiply them by 100 for\n   display. Readability values are grade\u002Fease numbers and MUST NOT be\n   converted to percentages. NEVER guess a flag or JSON field path; look it\n   up in `references\u002Fslop-tools.md`.\n6. Image checks MUST default to `detect_image`. Use `score_image` only when\n   the user explicitly asks for a raw or absolute OmniAID score. A request to\n   \"score this image\" without OmniAID still maps to `image-detect`.\n\n## Step 1: Identify the operation and input\n\nPick one operation from the request. Do not ask a question to disambiguate.\n\n| Operation | Trigger language |\n|---|---|\n| `text-detect` | \"is this AI\", \"did a bot write this\", \"AI written\" |\n| `image-detect` | \"is this image AI\", \"AI generated picture\", \"real photo\" |\n| `image-score` | \"raw OmniAID score\", \"absolute OmniAID model score\" |\n| `readability` | \"reading level\", \"what grade\", \"Flesch\", \"how readable\" |\n| `cleanup` | \"clean this\", \"strip invisible\u002Fzero-width\", \"remove homoglyphs\" |\n| `status` | \"is slop set up\", \"is Slop or Not working\", \"check Pro\" |\n\nResolve the input by precedence (first match wins):\n\n1. A path ending `.png`, `.jpg`, `.jpeg`, `.heic`, or `.webp`, or an\n   explicit image reference: image operation on that file.\n2. Any other explicit file path: read that file as text.\n3. Inline pasted text in the request: use it.\n4. The user says to use the clipboard: `pbpaste`.\n\nAmbiguity rule (NEVER ask via a tool): if no operation verb is present,\ndefault to `text-detect` for text input and `image-detect` for image\ninput, and state the assumption in the output, for example: \"Assumed\nAI-detection. Ask for readability or cleanup to switch.\"\n\nOnly if there is no usable input at all, emit exactly this one line, then\nstop and wait:\n\n```text\nPaste the text, or give a file or image path, and say detect \u002F clean \u002F readability.\n```\n\n## Step 2: Resolve a working backend\n\nUse this backend order. Stop at the first that works.\n\n1. **Image operations with shell support: CLI first.** For `image-detect`\n   and `image-score`, first check the app-bundle binary:\n\n   ```bash\n   ls \"\u002FApplications\u002FSlop Or Not.app\u002FContents\u002FMacOS\u002Fslop\"\n   ```\n\n   If it exists and the client can run shell commands, use that quoted\n   binary path. This avoids converting local image files to base64. If the\n   client has no shell or CLI execution, for example MCP-only clients such\n   as Claude Desktop or ChatGPT connectors, skip to MCP.\n2. **MCP for non-image operations, or image fallback.** Call the operation's SlopOrNot MCP tool (Claude Code\n   surfaces these as `mcp__SlopOrNot__\u003Ctool>`; other harnesses expose the\n   same `SlopOrNot` server tools). If it returns a result and is not a\n   Pro-required error (`isError: true` or a Pro-required message), use it.\n   For `status`, `slop_status` is only a health\u002Fversion call: also run the\n   Pro proof probe in `references\u002Fslop-tools.md` section 5 before reporting\n   active Pro. Done.\n3. **CLI fallback for non-image operations.** If MCP is absent or errored,\n   check whether the app-bundle binary exists:\n\n   ```bash\n   ls \"\u002FApplications\u002FSlop Or Not.app\u002FContents\u002FMacOS\u002Fslop\"\n   ```\n\n   - If it exists: complete this turn's operation by calling the binary at\n     its absolute quoted path. Do not modify PATH.\n   - If it does not exist: this is genuinely not installed. Go to the\n     Step 5 \"Not installed\" fallback.\n   For `status`, run the absolute binary's `status --json` plus the Pro proof\n   probe before reporting active Pro.\n4. **Pro-gated failure.** If the CLI runs but a Pro-gated call exits\n   non-zero or returns Pro-required, the app is installed and Pro is not\n   active: go to the Step 5 \"Installed but Pro is not active\" fallback. For\n   `status`, report Pro as inactive per Step 4 instead.\n\nTool names, flags, parameters, and JSON field paths are in\n`references\u002Fslop-tools.md`. Setup and registration details are in\n`references\u002Fslop-setup.md`. Consult them; do not guess.\n\n## Step 3: Run the operation\n\nUse the operation-to-tool map in `references\u002Fslop-tools.md` section 5.\nKey points:\n\n- `text-detect`: request readability alongside detection\n  (`include_readability: true` on MCP; `slop text --json` returns both).\n- Images: default to `image-detect`. When shell commands are available, use\n  the absolute CLI path with shell redirection from the image path:\n  `\"\u002FApplications\u002FSlop Or Not.app\u002FContents\u002FMacOS\u002Fslop\" image --json \u003C \"\u003Cpath>\"`.\n  MCP uses `detect_image` with base64 (`base64 -i \u003Cpath>`) only when CLI is\n  unsupported or fails. Use `score-image` \u002F `score_image` only for\n  `image-score`, and only when the user explicitly asks for a raw or absolute\n  OmniAID score. If the user asks for a generic image score without OmniAID,\n  keep `image-detect` and format the detection probability.\n- `cleanup`: keep the default removals on unless the user asked to limit\n  them. Normalize MCP and CLI cleanup fields before formatting: MCP returns\n  `cleaned_text` and integer counts; CLI returns `cleanedText` plus count\n  arrays.\n- `status`: run the health call and then the Pro proof probe. Report active\n  only when the Pro-gated probe succeeds.\n\n## Step 4: Present the result\n\nRead score normalization in `references\u002Fslop-tools.md` section 2 first\n(detection score is a 0-1 decimal, multiply by 100; MCP `verdict` is a\nplain string, CLI verdict is the single-key object at\n`detection.result._1`).\n\nRender the matching block.\n\n**Detection (text or image):**\n\n```markdown\n**Likely AI** (most_likely_ai_slop) · 87% AI probability\nLanguage: en · Sentences: 6\n```\n\nMap the verdict by rule (verdicts have gradations like `probably_ai_slop`):\n`real` -> \"Likely human\"; contains `ai_slop` -> \"Likely AI\"; else\ntitle-cased. Show the label, the raw verdict in parentheses, and the\npercentage.\n\n**Readability:**\n\n```markdown\n**Flesch-Kincaid grade: 9.7** (Reading Ease 62.4)\nWords: 210 · Sentences: 14\n```\n\nIf `scores[]` is empty (short input), the response carries a `warnings`\nentry like `insufficient_text:NN`. Report that instead of a grade, for\nexample: `Not enough text to score reliably (insufficient_text:28).` Do\nnot invent a grade.\n\n**Cleanup:** print the counts line, then the cleaned text in its own fenced\n`text` block so the user can copy it verbatim. For CLI output, use\n`cleanedText` as the cleaned text, sum `invisibleCounts[].count`,\n`punctuationCounts[].count`, and `homoglyphCounts[].count`, and count\n`britishMappings.length`.\n\n`**Cleaned.** Invisibles: 3 · Punctuation: 5 · Homoglyphs: 1 · British: 0`,\nfollowed by a fenced `text` block containing only `cleaned_text`.\n\n**Image score (only for explicit OmniAID requests):**\n\n```markdown\n**Raw image score: 0.80** (OmniAID)\n```\n\n**Status:**\n\n```markdown\n**Slop or Not Pro: active** (version 1.0.9)\n```\n\nUse `inactive` when the health call works but the Pro proof probe returns a\nPro-required error.\n\nWhen the ambiguity rule fired, prepend the one-line assumption note.\n\n## Step 5: Fallback when Slop or Not Pro is unavailable\n\nTwo distinct cases. Pick the message that matches the real state. Never\ntell an installed user to install the app.\n\n**Not installed** (MCP is down AND the app bundle is absent). End with\nexactly this paragraph:\n\n> *Slop or Not is not installed. Install Slop or Not for Mac, then unlock\n> Pro from inside the app: \u003Chttps:\u002F\u002Fslopornot.ai\u002Fdownload>*\n\n**Installed but Pro is not active** (the `slop` binary or app bundle\nexists, but a Pro-gated call returned Pro-required or exited non-zero).\nEnd with exactly this paragraph:\n\n> *Slop or Not is installed but Pro is not active. Unlock Pro from inside\n> the app under Settings then Subscription: \u003Chttps:\u002F\u002Fslopornot.ai\u002Fdownload>*\n\nIn both cases, then say: see `references\u002Fslop-setup.md` for install, Pro\nunlock, and MCP\u002FCLI registration. A missing PATH alone is handled by the\napp-bundle fallback in Step 2, not deflected here. For the `status`\noperation, report\n`Slop or Not Pro: inactive` per Step 4 instead of these paragraphs.\n\n## Examples\n\n**Example A, text detection (no verb, ambiguity rule fires):**\n\nUser: `\u002Fslop-check In today's fast-paced digital landscape, leveraging\nsynergies is paramount.`\n\nAction: no verb, text input, default `text-detect`. MCP `detect_text`\nwith `include_readability: true`.\n\nOutput:\n\n```markdown\nAssumed AI-detection. Ask for readability or cleanup to switch.\n\n**Likely AI** (most_likely_ai_slop) · 91% AI probability\nLanguage: en · Sentences: 1\n```\n\n**Example B, image detection from a path:**\n\nUser: `is this AI? ~\u002FDesktop\u002Fart.png`\n\nAction: path ends `.png`, so `image-detect`. Shell commands are available,\nso use the app-bundle CLI:\n`\"\u002FApplications\u002FSlop Or Not.app\u002FContents\u002FMacOS\u002Fslop\" image --json \u003C \"$HOME\u002FDesktop\u002Fart.png\"`.\n\nOutput:\n\n```markdown\n**Likely AI** (most_likely_ai_slop) · 80% AI probability\n```\n\n**Example C, readability of a file:**\n\nUser: `what grade level is draft.md`\n\nAction: explicit file path, `readability`. MCP `analyze_readability` with\nthe file contents. Read the `fleschKincaidGradeLevel` entry.\n\nOutput:\n\n```markdown\n**Flesch-Kincaid grade: 7.2** (Reading Ease 71.8)\nWords: 148 · Sentences: 11\n```\n\n**Example D, cleanup with a zero-width character:**\n\nUser: `clean the invisible characters out of this: Hello​world`\n\nAction: `cleanup`. MCP `clean_text` (defaults on).\n\nOutput: the counts line `**Cleaned.** Invisibles: 1 · Punctuation: 0 ·\nHomoglyphs: 0 · British: 0`, then a fenced `text` block whose only content\nis `Helloworld` (the zero-width character removed).\n\n**Example E, explicit OmniAID score:**\n\nUser: `give me the raw OmniAID score for ~\u002FDesktop\u002Fart.png`\n\nAction: explicit OmniAID request, so `image-score`. Shell commands are\navailable, so use the app-bundle CLI:\n`\"\u002FApplications\u002FSlop Or Not.app\u002FContents\u002FMacOS\u002Fslop\" score-image --json \u003C \"$HOME\u002FDesktop\u002Fart.png\"`.\nIf CLI execution is unsupported, use MCP `score_image` with base64 image\ninput.\n\nOutput:\n\n```markdown\n**Raw image score: 0.80** (OmniAID)\n```\n\n## Pointer files\n\n- `references\u002Fslop-tools.md`: full CLI and MCP surface, parameters, flags,\n  JSON field paths, score normalization, Pro-gating, operation map.\n- `references\u002Fslop-setup.md`: install, Pro unlock, app-bundle fallback,\n  MCP\u002FCLI registration, troubleshooting.\n",{"name":5,"license":15,"metadata":44,"description":7,"allowed-tools":49},{"source":45,"version":46,"compatibility":47,"upstream_author":48},"https:\u002F\u002Fgithub.com\u002Fnumen-tech\u002Fslopornot","0.1.0","claude-code codex cursor gemini-cli opencode","Numen Technologies",[50,30],"Read","main","a298c929b6cbd662e1fce54302ce520d5ceea1a5",".agents\u002Fskills\u002Fslop-check","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain","https:\u002F\u002Fgithub.com\u002FPrekzursil","2026-11-02 14:30:57",{"source":8,"skillName":5,"commands":58,"prompt":68,"zipAvailable":69},[59,62,65],{"tool":60,"command":61},"npx","npx skills add Prekzursil\u002Fagent-skills-toolchain --skill slop-check",{"tool":63,"command":64},"bunx","bunx skills add Prekzursil\u002Fagent-skills-toolchain --skill slop-check",{"tool":66,"command":67},"pnpm","pnpm dlx skills add Prekzursil\u002Fagent-skills-toolchain --skill slop-check","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fslop-check\u002FSKILL.md",true,[71,76,82,86],{"path":72,"resourceType":72,"resourceTypeDesc":73,"sizeBytes":74,"sourceHtmlUrl":75},"LICENSE","许可证",1096,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fslop-check\u002FLICENSE",{"path":77,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":80,"sourceHtmlUrl":81},"README.md","REFERENCE","参考文档",4398,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fslop-check\u002FREADME.md",{"path":83,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":84,"sourceHtmlUrl":85},"references\u002Fslop-setup.md",2844,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fslop-check\u002Freferences\u002Fslop-setup.md",{"path":87,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":88,"sourceHtmlUrl":89},"references\u002Fslop-tools.md",11633,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fslop-check\u002Freferences\u002Fslop-tools.md",[91,112,142,168,182,198],{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":39},"01M6DF7D7478R55P46REYH4QAC","clarify-requirements","Resolve genuine pre-execution ambiguity by scanning repo context, generating 1-6 grounded options, and asking 1-3 focused questions via AskUserQuestion. NOT for mid-task use (injection risk); NOT when the goal is already unambiguous; use to disambiguate vague prompts before any file edits.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fworkspace-hooks\u002Fskills\u002Fclarify-requirements\u002FSKILL.md",[],[98,99,100,101,102,103,104,105,106,27,107,108,109,110,111],"clarify requirements","clarify","requirements","risk","options","task","prompts","goal","scanning","context","repo","injection","execution","file",{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":123,"publishedAt":39},"01M6DF79CA4BHJS66J8EZDBPWJ","openmm-md","Run FREE, open-source, Windows-native GPU molecular dynamics via the openmm-md MCP (OpenMM + CUDA on the local NVIDIA GPU). Use for protein \u002F protein-ligand MD when you want a free stack or are on Windows without a Schrodinger license. Covers the full workflow (prepare, solvate, minimize, equilibrate, production, analyze, mmgbsa) AND an honest decision guide vs Schrodinger Desmond, including how to run Desmond legitimately on Linux or a cloud GPU with a real license. This is a deliberately LESSER free alternative and does NOT replace the schrodinger MCP tools. Do NOT use it to pick a free tool when a validated FEP+, WaterMap, IFD-MD, or Prime MM-GBSA result is actually required.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fmcp\u002Fopenmm-md-mcp\u002Fskill\u002Fopenmm-md\u002FSKILL.md",[118],{"categoryNo":119,"categoryName":120,"taxonomyType":121,"taxonomyTypeDesc":122},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[124,125,126,127,128,129,130,131,132,133,134,135,136,137,27,138,139,140,22,141],"openmm md","how","decision","pick","linux","analyze","tool","stack","open","NVIDIA","gpu","license","workflow","windows","free","molecular dynamics","local","MCP",{"skillNo":143,"name":144,"nameZh":6,"description":145,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":146,"categories":147,"keywords":154,"publishedAt":39},"01M6DF76C1MG85VEWP8VZCBNMN","visual-review","Take screenshots of web pages and UI using Playwright for visual review and iteration","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fvisual-review\u002FSKILL.md",[148,151],{"categoryNo":149,"categoryName":150,"taxonomyType":121,"taxonomyTypeDesc":122},"01JBSEEDCAT000000000000003","演示文稿",{"categoryNo":152,"categoryName":153,"taxonomyType":121,"taxonomyTypeDesc":122},"01JBSEEDCAT000000000000008","测试与质量",[155,156,157,158,159,160,161,162,20,163,125,164,165,166,167],"review","visual","visual review","pages","web","false","iteration","take","slides","ui","screenshot","playwright","screenshots",{"skillNo":169,"name":170,"nameZh":6,"description":171,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":172,"categories":173,"keywords":174,"publishedAt":39},"01M6DF73AQVCBZKEN0YXEX9FXP","status","Diagnostic status report — shows metaswarm installation state, project setup, and potential issues","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstatus\u002FSKILL.md",[],[170,175,176,177,178,179,180,181],"setup","report","project","installation","project setup","issues","state",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":186,"categories":187,"keywords":189,"publishedAt":39},"01M6DF6X6C2XB0P6GX76P7TTYV","start","Use when starting work on any task, when the user mentions metaswarm, or when the user wants to begin tracked development work","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstart\u002FSKILL.md",[188],{"categoryNo":119,"categoryName":120,"taxonomyType":121,"taxonomyTypeDesc":122},[184,190,103,191,192,193,27,194,195,196,197],"start issue","issue","ready","work on issue","user","work","work on","development",{"skillNo":199,"name":175,"nameZh":6,"description":200,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":201,"categories":202,"keywords":203,"publishedAt":39},"01M6DF6QMJ9AJKFKHHKRT005PQ","Interactive project setup — detects your project, configures metaswarm, writes project-local files","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fsetup\u002FSKILL.md",[],[175,177,140,204,179,205],"files","interactive"]