ironlint-init
Bootstraps a project's .ironlint.yml with IronLint's generic baseline, then helps the user deliberately add checks for their stack and existing linters. Use…
Interprets ironlint PreToolUse hook output after Edit/Write -- fixes the blocked edits it reports.
$ npx -y skills add ironlint/ironlint --skill ironlint --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/ironlintContext preview
The summary Claude sees to decide when to auto-load this skill.
Interprets ironlint PreToolUse hook output after Edit/Write -- fixes the blocked edits it reports.
name: ironlint description: Interprets ironlint PreToolUse hook output after Edit/Write -- fixes the blocked edits it reports. metadata: author: dynamik-dev version: 2.1.0 category: workflow-automation tags: [linting, hooks, code-quality, pre-tool-use]
Interpret and act on ironlint PreToolUse hook output. Not user-invocable.
The tool-result stderr is a `Verdict` JSON whose `status` is `block`. A check is a shell command; it blocked because it exited nonzero (`1`–`125`). The adapter uses hook exit `2` to reject the tool call. Shape:
{
"schema_version": 6,
"status": "block",
"blocks": [
{"check": "no-debug", "step": null, "file": "src/foo.rs", "message": "src/foo.rs:42: DEBUG marker"}
],
"errors": [],
"passed": ["no-todo"]
}Each entry in `blocks` is one check that rejected the edit:
for what to fix; if the check emits line numbers (e.g. a `grep -n` or a linter), they're in here.
Fix every entry in `blocks` in the named file before any other tool call. The hook re-fires on the next Edit and re-checks. Repeat until `blocks` is empty.
`passed` lists the check ids that ran and passed for this file. Their concerns are already satisfied — don't re-investigate them.
`errors` lists checks that *couldn't run* (not found, timed out, or killed) — each is `{check, file, reason}`, not a policy violation. By default the hook fails open on these (the edit is allowed and nothing reaches you); you'll only see an error note when the project set `IRONLINT_FAIL_CLOSED_ON_INTERNAL=1`. A check that couldn't run is a broken check, not a finding — surface it, don't try to satisfy it.
Run your project's checks with consistent selection, timeouts, and machine-readable results. IronLint gives AI coding workflows a deterministic evaluation step using the same shell commands you run locally or in CI.
Bootstraps a project's .ironlint.yml with IronLint's generic baseline, then helps the user deliberately add checks for their stack and existing linters. Use…
Reviews ironlint check health from the telemetry log. Use when the user says "review my ironlint checks", "check health", "which ironlint checks are noisy",…