install-anti-slop
Install and configure the generic and optional Effect anti-slop Oxlint plugins in a local TypeScript or JavaScript repository.
Skill by flyme2bluemoon
Chalk Labs
Need help deploying install-anti-slop?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/flyme2bluemoon-install-anti-slop
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions: not checked yet.
What's inside
- Skill name
install-anti-slop- Description
- Install and configure the generic and optional Effect anti-slop Oxlint plugins in a local TypeScript or JavaScript repository. Use whenever a user asks to add anti-slop lint rules, copy the anti-slop plugin, configure opinionated Oxlint rules, or migrate an existing local anti-slop setup.
- License
- MIT
- Instructions
- 104 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (24)
- SKILL.md
- openai.yaml · agents/
- index.ts · assets/anti-slop/effect/
- no-service-constructor-imports.ts · assets/anti-slop/effect/rules/
- index.ts · assets/anti-slop/
- no-chained-type-assertions.ts · assets/anti-slop/rules/
- no-conditional-empty-object-spread.ts · assets/anti-slop/rules/
- no-known-value-widening.ts · assets/anti-slop/rules/
- no-module-mocking.ts · assets/anti-slop/rules/
- no-object-parameters.ts · assets/anti-slop/rules/
- no-reflect-apply.ts · assets/anti-slop/rules/
- no-reflect-get.ts · assets/anti-slop/rules/
- no-runtime-typeof.ts · assets/anti-slop/rules/
- no-shape-in-symbol-names.ts · assets/anti-slop/rules/
- no-unknown-parameters.ts · assets/anti-slop/rules/
- no-unknown-returns.ts · assets/anti-slop/rules/
- no-unknown-type-aliases.ts · assets/anti-slop/rules/
- no-unsafe-dictionary-type.ts · assets/anti-slop/rules/
- no-widen-then-assert.ts · assets/anti-slop/rules/
- require-safety-comment-for-type-assertion.ts · assets/anti-slop/rules/
- dictionary-types.ts · assets/anti-slop/shared/
- lexical-type-parameters.ts · assets/anti-slop/shared/
- reflect-method.ts · assets/anti-slop/shared/
- install.mjs · scripts/
SKILL.md (first lines)
# Install anti-slop
Install the bundled Oxlint plugin into the current repository and integrate it with the repository's existing lint setup. Preserve unrelated work and adapt to the project's package manager and configuration style.
## Procedure
1. Inspect the repository before changing it:
- Read its agent instructions.
- Check `git status` and preserve unrelated changes.
- Identify the package manager from `packageManager` and lockfiles.
- Find Oxlint configuration (`oxlint.config.*`, `.oxlintrc*`, or a Vite+ config).
- Check whether anti-slop files or rules already exist. Do not overwrite them without reviewing the diff.
2. Copy the bundled plugin from this skill. Run from the target repository:
```bash
node <skill-directory>/scripts/install.mjs
```
This creates `tools/oxlint/anti-slop/`. Pass another relative destination as the first argument when the repository has an established tooling layout. The script refuses to replace an existing destination; only use `--force` after backing up and reviewing existing files.
3. Install current compatible dependencies rather than trusting versions remembered by the agent:
- Query `npm view oxlint version` and `npm view @oxlint/plugins version`.
- Install the same current version of both packages with the repository's package manager.
- `oxlint` is a development dependency. The copied source imports `@oxlint/plugins`, so install it as a development dependency for a local-only plugin.
- Do not replace the package manager or rewrite unrelated dependency ranges.
4. Register the generic plugin, configure ignores, and enable all generic rules. For `oxlint.config.ts` or `.oxlintrc.json`, merge these fields with the existing configuration:
```ts
ignorePatterns: [
".agent/**",
".agents/**",
".claude/**",
".codex/**",
".continue/**",
".cursor/**",
".gemini/**",
".opencode/**",
".pi/**",
".roo/**",
".windsurf/**",
"tools/oxlint/anti-slop/**",
],
jsPlugins: [
{ name: "anti-slop", specifier: "./tools/oxlint/anti-slop/index.ts" },
],
```
Keep every existing ignore. Adjust the final pattern when the plugin was copied elsewhere. Inspect the repository for other project-local agent tooling directories and add them rather than linting installed skills, hooks, or generated agent configuration as application source. Do not broadly ignore all dot-directories, because some repositories keep owned source or checks in them.
For Vite+, add these fields to `lint.ignorePatterns` and `lint.jsPlugins`. Also merge the same patterns into `fmt.ignorePatterns` so `vp check` does not reformat installed agent assets or the vendored plugin. Merge existing entries instead of replacing them.
Enable these rules at `"error"`:
```json
{
"anti-slop/no-chained-type-assertions": "error",
"anti-slop/no-conditional-empty-object-spread": "error",
"anti-slop/no-known-value-widening": "error",
"anti-slop/no-module-mocking": "error",
"anti-slop/no-object-parameters": "error",
"anti-slop/no-reflect-apply": "error",
"anti-slop/no-reflect-get": "error",
"anti-slop/no-runtime-typeof": "error",
"anti-slop/no-shape-in-symbol-names": "error",
"anti-slop/no-unknown-parameters": "error",
"anti-slop/no-unknown-returns": "error",
"anti-slop/no-unknown-type-aliases": "error",
"anti-slop/no-unsafe-dictionary-type": "error",
"anti-slop/no-widen-then-assert": "error",
"anti-slop/require-safety-comment-for-type-assertion": "error"
}
```
If the repository declares `effect` in a package manifest, or the user explicitly requests Effect rules, also register the opt-in Effect plugin:
```ts
jsPlugins: [
{
name: "anti-slop-effect",
specifier: "./tools/oxlint/anti-slop/effect/index.ts",
},
],
rules: {
"anti-slop-effect/no-service-constructor-imports": "error",
},
```
Merge these entries with the generic plugin configuration rather than replacing it. Do not enable the Effect plugin merely because Effect appears transitively in a lockfile; require a direct package-manifest dependency or an explicit user request. The rule covers relative project imports. Report package-alias imports as a current limitation rather than pretending they are enforced.
5. Run the repository's lint command and typecheck. For Vite+, run the repository's full `vp check` command after adding both lint and format ignores. If findings appear in owned project source, report them and fix them only when the user asked for migration/cleanup. Do not suppress rules, weaken rule severity, add unsafe casts, or mechanically launder types to make lint pass.
6. Review the final diff and clearly report:
- copied path,
- dependency versions installed,
- configuration changed,
- checks run and any remaining findings.
## Migration guidance
When replacing an older local copy, compare its rules and diagnostics before overwriting. Keep project-specific rules in their own plugin. The default anti-slop plugin is intentionally generic; framework-specific policy belongs in an explicit opt-in group such as `anti-slop-effect`. Prefer inference, `as const`, `satisfies`, named owner contracts, and boundary parsing when resolving findings.From flyme2bluemoon/skills, MIT.
More from flyme2bluemoon/skills
- 0.529score
esmfold2
flyme2bluemoon
Biohub ESMFold2 / ESMFold2-Fast all-atom co-folding (Candido et al.
SkillBFreshness: BClaude Code +9 - 0.526score
indication-dossier
flyme2bluemoon
Generate a therapeutic indication dossier.
SkillBFreshness: BClaude Code +9 - 0.525score
diffdock
flyme2bluemoon
Predict small-molecule binding poses with DiffDock-L (Corso et al.
SkillBFreshness: BClaude Code +9 - 0.524score
fair-esm2
flyme2bluemoon
Embed proteins with Meta AI's ESM-2 (`fair-esm` package).
SkillBFreshness: BClaude Code +9 - 0.524score
ligandmpnn
flyme2bluemoon
Inverse-fold a backbone with ligand, nucleic-acid, and metal context using LigandMPNN (Dauparas et al.
SkillBFreshness: BClaude Code +9 - 0.524score
chai1
flyme2bluemoon
Structure prediction for protein, nucleic-acid, and small-molecule complexes with the Chai-1 foundation model (Chai Discovery 2024…
SkillBFreshness: BClaude Code +9 - 0.524score
evo2
flyme2bluemoon
Score, embed, and generate DNA sequences with Evo 2, a long-context genomic foundation model.
SkillBFreshness: BClaude Code +9 - 0.524score
codebase-design
flyme2bluemoon
Design or refactor module interfaces to hide complexity and improve testability.
SkillBFreshness: BClaude Code +9 - 0.524score
boltz
flyme2bluemoon
Structure prediction for protein, nucleic-acid, and small-molecule complexes with Boltz-2 (Passaro & Wohlwend et al.
SkillBFreshness: BClaude Code +9 - 0.524score
borzoi
flyme2bluemoon
Predict genome-wide functional tracks (RNA-seq, CAGE, DNase, ChIP) from DNA sequence with Borzoi.
SkillBFreshness: BClaude Code +9 - 0.524score
openfold3
flyme2bluemoon
Structure prediction using OpenFold3, an open-weights PyTorch reproduction of AlphaFold3 from the AlQuraishi Lab.
SkillBFreshness: BClaude Code +9 - 0.524score
proteinmpnn
flyme2bluemoon
Inverse-fold a protein backbone (PDB structure) into amino-acid sequence with ProteinMPNN (Dauparas et al.
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 19, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/flyme2bluemoon/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
More from flyme2bluemoon
- 0.529score
esmfold2
flyme2bluemoon
Biohub ESMFold2 / ESMFold2-Fast all-atom co-folding (Candido et al.
SkillBFreshness: BClaude Code +9 - 0.526score
indication-dossier
flyme2bluemoon
Generate a therapeutic indication dossier.
SkillBFreshness: BClaude Code +9 - 0.525score
diffdock
flyme2bluemoon
Predict small-molecule binding poses with DiffDock-L (Corso et al.
SkillBFreshness: BClaude Code +9 - 0.524score
fair-esm2
flyme2bluemoon
Embed proteins with Meta AI's ESM-2 (`fair-esm` package).
SkillBFreshness: BClaude Code +9 - 0.524score
evo2
flyme2bluemoon
Score, embed, and generate DNA sequences with Evo 2, a long-context genomic foundation model.
SkillBFreshness: BClaude Code +9 - 0.524score
chai1
flyme2bluemoon
Structure prediction for protein, nucleic-acid, and small-molecule complexes with the Chai-1 foundation model (Chai Discovery 2024…
SkillBFreshness: BClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get install-anti-slop running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
install-anti-slop skill. Agent Mart. https://agentmart.dev/skills/flyme2bluemoon-install-anti-slop (last updated 2026-10-24)