Agent Skillstrycompai/crm › install-anti-slop

install-anti-slop

GitHub

在本地 TypeScript/JS 仓库中安装并配置 anti-slop Oxlint 插件,自动处理依赖、配置文件合并及规则启用,支持迁移旧版设置。

.agents/skills/install-anti-slop/SKILL.md trycompai/crm

Trigger Scenarios

用户要求添加 anti-slop lint 规则 需要复制 anti-slop 插件到项目 配置 opinionated Oxlint 规则 迁移现有的本地 anti-slop 设置

Install

npx skills add trycompai/crm --skill install-anti-slop -g -y
More Options

Non-standard path

npx skills add https://github.com/trycompai/crm/tree/release/.agents/skills/install-anti-slop -g -y

Use without installing

npx skills use trycompai/crm@install-anti-slop

指定 Agent (Claude Code)

npx skills add trycompai/crm --skill install-anti-slop -a claude-code -g -y

安装 repo 全部 skill

npx skills add trycompai/crm --all -g -y

预览 repo 内 skill

npx skills add trycompai/crm --list

SKILL.md

Frontmatter
{
    "name": "install-anti-slop",
    "description": "Install and configure the anti-slop Oxlint plugin 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."
}

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:

    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 plugin and enable all rules. For oxlint.config.ts or .oxlintrc.json, add:

    jsPlugins: [
      { name: "anti-slop", specifier: "./tools/oxlint/anti-slop/index.ts" },
    ],
    

    For Vite+, add that same entry to lint.jsPlugins. Merge it with existing entries instead of replacing them.

    Enable these rules at "error":

    {
      "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-object-parameters": "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-type-aliases": "error",
      "anti-slop/no-unsafe-dictionary-type": "error",
      "anti-slop/no-widen-then-assert": "error"
    }
    
  5. Run the repository's lint command and typecheck. If findings appear, 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; anti-slop is intentionally generic. Prefer inference, as const, satisfies, named owner contracts, and boundary parsing when resolving findings.

Version History

  • bb63520 Current 2026-08-19 12:07

Same Skill Collection

.agents/skills/ai-elements/SKILL.md
.agents/skills/better-auth-best-practices/SKILL.md
.agents/skills/better-colors/SKILL.md
.agents/skills/better-interface/SKILL.md
.agents/skills/better-ui/SKILL.md
.agents/skills/better-writing/SKILL.md
.agents/skills/code-refactor-review/SKILL.md
.agents/skills/create-draft-pr/SKILL.md
.agents/skills/diffs/SKILL.md
.agents/skills/eve/SKILL.md
.agents/skills/ga-pr/SKILL.md
.agents/skills/ga/SKILL.md
.agents/skills/gh-stack/SKILL.md
.agents/skills/nestjs-best-practices/SKILL.md
.agents/skills/no-use-effect/SKILL.md
.agents/skills/nuqs/SKILL.md
.agents/skills/pit-of-success/SKILL.md
.agents/skills/posthog-instrumentation/SKILL.md
.agents/skills/prepare-branch-context/SKILL.md
.agents/skills/prisma-database-setup/SKILL.md
.agents/skills/shadcn/SKILL.md
.agents/skills/skill-creator/SKILL.md
.agents/skills/turborepo/SKILL.md
.agents/skills/typescript-advanced-types/SKILL.md
.agents/skills/ux-flow-plan/SKILL.md
.agents/skills/vercel-composition-patterns/SKILL.md
.agents/skills/vercel-react-best-practices/SKILL.md
.agents/skills/web-design-guidelines/SKILL.md
.agents/skills/zero-tech-debt/SKILL.md
.agents/skills/ai-sdk/SKILL.md
.agents/skills/better-accessibility/SKILL.md
.agents/skills/better-layout/SKILL.md
.agents/skills/better-typography/SKILL.md
.agents/skills/nestjs-trpc/SKILL.md
.agents/skills/seo-audit/SKILL.md

Metadata

Files
0
Version
bb63520
Hash
726b53ae
Indexed
2026-08-19 12:07

- 위키
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-19 21:13
浙ICP备14020137号-1 $방문자$