Use cases
Six places to start: the situation, what alint does about it and the page that covers it.
Open-source maintainers
Each public repository you look after should have a README, a license, a security policy, code owners and a Dependabot config, and they drift: one has no security policy, another no code owners.
One line of config,
alint://bundled/oss-baseline@v1, turns on 15 rules for those files, a code of conduct and a.gitignore, plus merge-conflict markers, hidden bidi controls, trailing whitespace and final newlines.Monorepos and multiple repositories
Every package in a workspace is meant to carry the same files and fields, and every repository in an organization the same basics. Nothing checks that they still do.
Rules that loop over package directories, compare manifests and resolve the workspace's member list. A shared ruleset, pinned by its hash, covers every repository.
A linter your coding agent can act on
After an agent session there's a
PLAN.mdat the root, acart_old.tsnext tocart.tsand a strayconsole.log, and the rules inAGENTS.mdhave drifted from what CI checks.The agent runs
alint check --format agent --fail-on-warning, gets an instruction for each finding and the fix command where there is one, and stops when alint exits with status 0.Moving check scripts to alint
A
hack/orscripts/folder of shell and Python checks. Each one walks the tree its own way and prints its own output.Checks on files, names and config values become rules of a few lines, run in one pass. The ones that need a build or the network stay scripts, and alint can run them as
commandrules.Migrating from Repolinter to alint
Repolinter was archived in February 2026. Its config still sits in the repository, and the CI step that ran it either still runs or is gone.
Of the 26 rules in its default ruleset, 24 have a direct alint equivalent and 1 more a partial one; the guide translates that ruleset into a config you can download.
Migrating from ls-lint to alint
ls-lint keeps file and directory names in line. Then you need a check on what's inside a file, or on a value in
package.json, and ls-lint doesn't read files.Keep ls-lint and add alint next to it, or move its settings to
filename_caseandfilename_regexrules and keep every check in one config.
The examples show rules for common problems with what alint prints, and the comparison covers ls-lint, Repolinter, pre-commit hooks, Danger and others.