Install Anti-Slop Oxlint Rules
dmmulroy/anti-slop
Installs, updates or migrates the vendored anti-slop Oxlint plugin in a repository, keeping local rule changes and the plugin's license and provenance files.
A skill your agent uses when changing jev-lint ITSELF — editing src/, shipped rule suites under rules/<language/<id/, or recorded runs in docs/data/.
$ npx skills add mizchi/jev-lint --skill jev-lint-repo -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mizchi/jev-lint jev-lint-repo --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/mizchi/jev-lint.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/jev-lint-repo .claude/skills/jev-lint-repo && 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 "jev-lint-repo" agent skill from https://github.com/mizchi/jev-lint/tree/main/.claude/skills/jev-lint-repo into .claude/skills/jev-lint-repo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "jev-lint-repo", 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/mizchi/jev-lint/tree/main/.claude/skills/jev-lint-repoType 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 mizchi/jev-lint --skill jev-lint-repo -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mizchi/jev-lint jev-lint-repo --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mizchi/jev-lint.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/jev-lint-repo .agents/skills/jev-lint-repo && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "jev-lint-repo" agent skill from https://github.com/mizchi/jev-lint/tree/main/.claude/skills/jev-lint-repo into .agents/skills/jev-lint-repo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "jev-lint-repo", 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 mizchi/jev-lint --skill jev-lint-repo -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mizchi/jev-lint jev-lint-repo --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mizchi/jev-lint.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/jev-lint-repo .cursor/skills/jev-lint-repo && 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 "jev-lint-repo" agent skill from https://github.com/mizchi/jev-lint/tree/main/.claude/skills/jev-lint-repo into .cursor/skills/jev-lint-repo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "jev-lint-repo", 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/mizchi/jev-lint.git --path .claude/skills/jev-lint-repo--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 mizchi/jev-lint --skill jev-lint-repo -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mizchi/jev-lint jev-lint-repo --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mizchi/jev-lint.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/jev-lint-repo .gemini/skills/jev-lint-repo && 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 "jev-lint-repo" agent skill from https://github.com/mizchi/jev-lint/tree/main/.claude/skills/jev-lint-repo into .gemini/skills/jev-lint-repo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "jev-lint-repo", 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 mizchi/jev-lint jev-lint-repoInstalls 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 mizchi/jev-lint --skill jev-lint-repo -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mizchi/jev-lint.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/jev-lint-repo .github/skills/jev-lint-repo && 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 "jev-lint-repo" agent skill from https://github.com/mizchi/jev-lint/tree/main/.claude/skills/jev-lint-repo into .github/skills/jev-lint-repo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "jev-lint-repo", 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 mizchi/jev-lint --skill jev-lint-repo -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install mizchi/jev-lint jev-lint-repo --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mizchi/jev-lint.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/jev-lint-repo .opencode/skills/jev-lint-repo && 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 "jev-lint-repo" agent skill from https://github.com/mizchi/jev-lint/tree/main/.claude/skills/jev-lint-repo into .opencode/skills/jev-lint-repo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "jev-lint-repo", 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.
jev-lint-repoA skill your agent uses when changing jev-lint ITSELF — editing src/, shipped rule suites under rules/<language/<id/, or recorded runs in docs/data/.
Jev Lint Repo is an agent skill from mizchi/jev-lint. Use when changing jev-lint ITSELF — editing src/, shipped rule suites under rules/<language/<id/, or recorded runs in docs/data/. Complements the user-facing jev-lint skill with the maintainer loop: fixtures, labels, calibration, CI, replay. Not for using jev-lint on another project.
Its SKILL.md is about 940 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development, covering Linting and formatting and Performance reviews. It works with npm. The repository describes itself as: lint text in code by jev scorerer. The licence is MIT.
Read from SKILL.md and the folder at commit af58a3b. 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.
Shell commands in SKILL.md call:
npmnodejustFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm, 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.
Jev Lint Repo loads about 942 tokens when it runs. Until then it costs about 76 tokens; SKILL.md has 434 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); files beside SKILL.md are not scanned.
The full file from mizchi/jev-lint at commit af58a3b, republished under its MIT licence (© mizchi). 434 words, ~942 tokens.
.claude/skills/jev-lint-repo/SKILL.md (or your agent's skills folder).The user-facing skill (skills/jev-lint/, symlinked into .claude/skills/)
is the contract; this file is what is different when the repository is
jev-lint's own. Read docs/internal.md before editing src/.
The symlink is checked by npm run ci; run just skills-sync if it is missing.
npm test # no key, no network
npm run ci # typecheck, test, build, eval --replay
node --experimental-strip-types src/cli.ts eval rules/<language>/<id> --repeat 3 # one suite, then --accept
node --experimental-strip-types src/cli.ts check --dry-run # self-lint plan, via .jev-lint.yaml
node --experimental-strip-types src/cli.ts review --base main --retry 3.jev-lint.yaml here points at source, tests, docs, and package.json,
and excludes test/fixtures/, which holds planted defects for the cookbook.
rules/<language>/<id>/rule.yml with fixtures/, expect.yml
(labelled defects and cleans), and an accepted baseline.json beside it.
last.json is untracked. jev-lint eval rules/<language>/<id> --repeat 3
runs it; --accept promotes the
run; npm run ci ends in jev-lint eval --replay, which fails on a case
that was right when accepted and is wrong now, or on a rule whose question
changed since its baseline. The case files carry NO // DEFECT /
// CLEAN markers: those sat inside the file the model was shown, and the
fits they produced were better than the rules (six fell when they came
out). Editing a case file means shifting the labels below the edit; the
test suite fails on a label no subject sits on.tools/arms.ts and
tools/grouping.ts run every rule over every suite's cases
(evalCorpus), where another rule's answer on a suite's file is clean by
default -- a defect for rule A in rule B's cases is B's false positive
until labelled.// jev-lint-ignore-file module-name-describes-contents on line 1, above
its imports, so the module rule does not judge a name that was never a
claim about the exports.gaps,
repeated eval, a report with a verdict, and a pass over unseen code
before it enters rules/<language>/<id>/ with an accepted baseline.ask, criteria, note, matcher,
subject or state is a new question: jev-lint eval --replay refuses
the old baseline until you run jev-lint eval rules/<language>/<id> --repeat 3,
read the result, and --accept it. Commit the baseline with the rule.tools/arms.ts measures every arm per rule over every suite's cases
(five arms, two passes, about twenty cents). Re-run it after changing a matcher or splitting a rule; the
shipped state: choices are measurements, not preferences.README.md, docs/reference.md and docs/deepdive.md
are measured. Change the measurement and the figure together, or neither.The repository root is a Claude Code plugin (.claude-plugin/plugin.json,
skills/, commands/). Every YAML block in
skills/jev-lint/references/cookbook.md must load and match
test/fixtures/cookbook/; npm test asserts it. A new recipe needs its code
shape added to the fixture.
© mizchi, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/jev-lint-repo of mizchi/jev-lint.
Open the folder on GitHubat commit af58a3b
Jev Lint Repo 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 |
|---|---|---|---|---|---|---|
| Jev Lint Repo this skillmizchi/jev-lint | 119 | — | ~942 | Automated safety check: Pass | MIT | |
| Install Anti-Slop Oxlint Rulesdmmulroy/anti-slop | 5.4k | — | ~2.2k | Automated safety check: Pass | MIT | |
| Setup Pre Commitfossasia/eventyay-interpretation | 1.6k | 12 repos | ~565 | Automated safety check: Pass | Apache-2.0 | |
| Releasehyhmrright/brooks-lint | 1.5k | — | ~1.2k | Automated safety check: Pass | MIT | |
| Prepare Rslint npm Releaseweb-infra-dev/rslint | 461 | — | ~1.5k | Automated safety check: Pass | MIT | |
| Create Saleor Packagesaleor/apps | 162 | — | ~608 | Automated safety check: Pass | Custom licence |
dmmulroy/anti-slop
Installs, updates or migrates the vendored anti-slop Oxlint plugin in a repository, keeping local rule changes and the plugin's license and provenance files.
fossasia/eventyay-interpretation
Set up Husky pre-commit hooks with lint-staged (Prettier), type checking, and tests in the current repo.
hyhmrright/brooks-lint
Cut a brooks-lint release: set the version in package.json, propagate it across all four plugin manifests and every version-bearing text file (README badges, docs site metadata), write the CHANGELOG…
web-infra-dev/rslint
Prepare a stable release PR for the unified rslint npm packages by updating package versions and rule/TypeScript release metadata.
saleor/apps
Scaffold a new shared package in the saleor-apps monorepo under ./packages/.
Automattic/wordpress-activitypub
Development workflows for WordPress ActivityPub plugin including wp-env setup, testing commands, linting, and build processes.
mizchi/jev-lint
A skill your agent uses when running jev-lint, adding it to a repository or its CI, choosing which of its shipped rule packs to use, writing a new jev-lint rule (an ast-grep matcher plus one…
Works with
Categories
A skill your agent uses when changing jev-lint ITSELF — editing src/, shipped rule suites under rules/<language/<id/, or recorded runs in docs/data/. Jev Lint Repo is an agent skill from mizchi/jev-lint. Use when changing jev-lint ITSELF — editing src/, shipped rule suites under rules/<language/<id/, or recorded runs in docs/data/.
Jev Lint Repo fits situations like: changing jev-lint ITSELF — editing src/; shipped rule suites under rules/<language/<id/; recorded runs in docs/data/.
Run `npx skills add mizchi/jev-lint --skill jev-lint-repo -a claude-code`. Or copy the skill folder (.claude/skills/jev-lint-repo in mizchi/jev-lint) into .claude/skills/jev-lint-repo in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mizchi/jev-lint --skill jev-lint-repo -a codex`. Or copy the skill folder (.claude/skills/jev-lint-repo in mizchi/jev-lint) into .agents/skills/jev-lint-repo 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 mizchi/jev-lint --skill jev-lint-repo -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/jev-lint-repo, .gemini/skills/jev-lint-repo, .github/skills/jev-lint-repo and .opencode/skills/jev-lint-repo in your project.
Going by SKILL.md and its folder, Jev Lint Repo needs the command-line tools its instructions call (npm, node and just).
SKILL.md contains no URLs. Its commands use npm, 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. Review the folder before installing.
Jev Lint Repo is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 942 tokens (SKILL.md is roughly 3.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Jev Lint Repo: Install Anti-Slop Oxlint Rules (dmmulroy/anti-slop, 5.4k stars), Setup Pre Commit (fossasia/eventyay-interpretation, 1.6k stars), Release (hyhmrright/brooks-lint, 1.5k stars) and Prepare Rslint npm Release (web-infra-dev/rslint, 461 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
mizchi (a GitHub user) maintains it in mizchi/jev-lint, which has 119 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 2, 2026.
Source: mizchi/jev-lint on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.