Sepia
Nanako0129/sepia
Make AI-generated writing read as human-written, in fiction and in professional prose.
Deslop, simplify, or review low-value tests and prose only when explicitly requested for a branch or diff.
$ npx skills add marin-community/marin --skill noslop -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install marin-community/marin noslop --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/marin-community/marin.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/noslop .claude/skills/noslop && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "noslop" agent skill from https://github.com/marin-community/marin/tree/main/.agents/skills/noslop into .claude/skills/noslop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "noslop", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/marin-community/marin/tree/main/.agents/skills/noslopType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add marin-community/marin --skill noslop -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install marin-community/marin noslop --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/marin-community/marin.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/noslop .agents/skills/noslop && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "noslop" agent skill from https://github.com/marin-community/marin/tree/main/.agents/skills/noslop into .agents/skills/noslop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "noslop", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add marin-community/marin --skill noslop -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install marin-community/marin noslop --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/marin-community/marin.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/noslop .cursor/skills/noslop && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "noslop" agent skill from https://github.com/marin-community/marin/tree/main/.agents/skills/noslop into .cursor/skills/noslop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "noslop", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/marin-community/marin.git --path .agents/skills/noslop--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add marin-community/marin --skill noslop -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install marin-community/marin noslop --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/marin-community/marin.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/noslop .gemini/skills/noslop && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "noslop" agent skill from https://github.com/marin-community/marin/tree/main/.agents/skills/noslop into .gemini/skills/noslop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "noslop", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install marin-community/marin noslopInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add marin-community/marin --skill noslop -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/marin-community/marin.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/noslop .github/skills/noslop && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "noslop" agent skill from https://github.com/marin-community/marin/tree/main/.agents/skills/noslop into .github/skills/noslop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "noslop", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add marin-community/marin --skill noslop -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install marin-community/marin noslop --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/marin-community/marin.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/noslop .opencode/skills/noslop && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "noslop" agent skill from https://github.com/marin-community/marin/tree/main/.agents/skills/noslop into .opencode/skills/noslop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "noslop", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
noslopDeslop, simplify, or review low-value tests and prose only when explicitly requested for a branch or diff.
Noslop is an agent skill from marin-community/marin. Deslop, simplify, or review low-value tests and prose only when explicitly requested for a branch or diff.
Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including scripts and reference files (for example `agents/openai.yaml`, `references/examples.md` and `scripts/scan_diff.py`).
It sits in Writing & Content, covering Humanizing AI text. The repository describes itself as: Open-source framework for the research and development of foundation models. The licence is Apache-2.0.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 2ea1c1d. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
gituvFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git and uv, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Noslop loads about 1.1k tokens when it runs, and up to ~1.7k if it reads all its reference files. Until then it costs about 28 tokens; SKILL.md has 556 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from marin-community/marin at commit 2ea1c1d, republished under its Apache-2.0 licence (© marin-community). 556 words, ~1,092 tokens.
.claude/skills/noslop/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Read these before reviewing:
AGENTS.mdTESTING.md.agents/skills/writing-style/ai-writing-donts.mdAGENTS.md and testing guide for each changed testRead references/examples.md when the diff changes tests or prose.
Review the merge-base diff. Do not substitute commit history or the latest commit.
UPSTREAM=$(git rev-parse --verify origin/main 2>/dev/null || git rev-parse --verify main)
BASE=$(git merge-base HEAD "$UPSTREAM")
git status --short
git diff --stat "$BASE"
git diff --check "$BASE"
git diff "$BASE"
uv run python .agents/skills/noslop/scripts/scan_diff.py "$BASE"List every changed test, comment, docstring, Markdown file, commit message, and draft PR title/body. Read the surrounding production code and existing tests. The scanner includes untracked files and returns candidates; inspect each one in context.
For every changed test, finish this sentence:
This test fails when ___ user-visible or system behavior is wrong.
Delete or rewrite the test when the blank names an implementation detail, wording choice, supplied fixture value, or language guarantee.
Reject these patterns aggressively:
assert_called_once_withis not None, does not raise, empty smoke tests, or permanent skipsKeep a test only when it protects a real boundary, regression, invariant, round-trip, state transition, persisted effect, wire contract, or numerical result against an independent reference.
Prefer one strong test over several weak tests. Use scratch probes for wiring and construction checks. Do not check them in.
Review every added or edited sentence in comments, docstrings, docs, reports, commit text, and PR text.
Delete sentences that add no fact, result, decision, constraint, or caveat.
Apply the full checklist in ai-writing-donts.md. Search explicitly for:
X, not Y, not X, but Y, not just X, more than Xrather than used as rhetorical contrastthe main change, what this means, the real story, what mattersimportantly, notably, it is worth noting, stepping backRewrite retained prose as the concrete claim. Split a real comparison into two
measured statements. Keep necessary negation such as the test has not run.
Check prose against code and artifacts. A concise false claim is still slop.
After the test and prose passes, inspect each new file, helper, type, flag, dependency, compatibility path, and public API:
When edits are authorized, make the cleanup. Do not stop at a findings table while safe fixes remain.
Run the narrow affected tests, then:
./infra/pre-commit.py --changed-files --fixRun ./infra/pre-commit.py --review only at the point required by the commit
workflow. Do not claim a clean pass while known findings remain.
Lead with what was removed or simplified. Report retained exceptions with their
behavioral contract or evidence. If no edits were authorized, report findings
as path:line, the maintenance cost, and the smallest fix.
© marin-community, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (scripts, references) in .agents/skills/noslop of marin-community/marin.
Open the folder on GitHubat commit 2ea1c1d
Noslop next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Noslop this skillmarin-community/marin | 3.9k | — | ~1.1k | Automated safety check: Pass | Apache-2.0 | |
| SepiaNanako0129/sepia | 3.1k | — | ~3.6k | Automated safety check: Pass | MIT | |
| Unslop ReviewMohamedAbdallah-14/unslop | 155 | 3 repos | ~980 | Automated safety check: Pass | MIT | |
| Korean Commit Message Polisherepoko77-ai/im-not-ai | 5.9k | — | ~504 | Automated safety check: Pass | MIT | |
| Chinese Technical Writingleter/zh-tech-writing | 352 | — | ~656 | Automated safety check: Pass | MIT | |
| DeslopMrZoyo/deslop-GPT | 138 | — | ~4k | Automated safety check: Pass | MIT |
Nanako0129/sepia
Make AI-generated writing read as human-written, in fiction and in professional prose.
MohamedAbdallah-14/unslop
Rewrites code review comments so they read like a human teammate wrote them.
epoko77-ai/im-not-ai
Rewrites Korean commit messages that read like office jargon or translation into natural wording, leaving the type, scope and meaning untouched.
leter/zh-tech-writing
Sets writing rules for Chinese technical docs: short plain sentences, consistent typography and a checklist for removing AI-sounding filler.
MrZoyo/deslop-GPT
Audit or apply evidence-backed, test-first subtractive cleanup for accumulated agent-created test bloat, verification theater, and defensive or fallback bloat while preserving independent external…
irfndi/prism-liquidity-agent
Maintain the Prism codebase: measure cyclomatic complexity, refactor hotspots, and enforce the anti-slop type discipline.
marin-community/marin
Use Iris to submit, inspect, debug, monitor, or recover jobs and tasks; diagnose scheduling and federation; deploy controllers; or reserve dev GPUs and TPUs.
marin-community/marin
Define, validate, submit, or restart a Marin SkyRL experiment through its artifact main.
marin-community/marin
Build, validate, publish, update, inspect, query, roll back, or archive a dynamic Marina applet.
marin-community/marin
Query Finelog logs and telemetry for Iris tasks, workers, profiles, training, vLLM, and cross-cluster forwarding.
marin-community/marin
Run a read-only preview for a specified Marin infra/pulumi stack and trace each pending resource change to merged pull requests since its latest successful update when that update records a clean…
marin-community/marin
Deploy a significant code change (backend, kernel, optimizer, data path) to the live hero run: relaunch it under a new run id from a permanent checkpoint, compare against the old run over a trial…
Categories
Deslop, simplify, or review low-value tests and prose only when explicitly requested for a branch or diff. Noslop is an agent skill from marin-community/marin. Deslop, simplify, or review low-value tests and prose only when explicitly requested for a branch or diff.
Noslop fits situations like: tasks that involve Humanizing AI text.
Run `npx skills add marin-community/marin --skill noslop -a claude-code`. Or copy the skill folder (.agents/skills/noslop in marin-community/marin) into .claude/skills/noslop in your project. Claude Code loads it when a task matches its description.
Run `npx skills add marin-community/marin --skill noslop -a codex`. Or copy the skill folder (.agents/skills/noslop in marin-community/marin) into .agents/skills/noslop in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add marin-community/marin --skill noslop -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/noslop, .gemini/skills/noslop, .github/skills/noslop and .opencode/skills/noslop in your project.
Going by SKILL.md and its folder, Noslop needs Python for the scripts in its folder and the command-line tools its instructions call (git and uv). Our summary lists: Python 3.
SKILL.md contains no URLs. Its commands use git and uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Noslop is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 579 tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Noslop: Sepia (Nanako0129/sepia, 3.1k stars), Unslop Review (MohamedAbdallah-14/unslop, 155 stars), Korean Commit Message Polisher (epoko77-ai/im-not-ai, 5.9k stars) and Chinese Technical Writing (leter/zh-tech-writing, 352 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
marin-community (a GitHub organization) maintains it in marin-community/marin, which has 3,925 GitHub stars. The repository holds 41 skills in this directory. The repository was last updated on October 11, 2026.
Source: marin-community/marin on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.