Skip to content
cccskills
FreePublished on GitHub

biome

Use when user asks to lint with Biome, check lint warnings introduced in an MR/branch, run `lint:ref`, or read/triage large Biome diagnostic output in the Gramax project. Triggers on keywords like biome, lint, lint:ref, warnings, lint gate.

The English summary is being prepared. Showing the original description.

Gram-ax/gramax616 stars(GitHub 616 + cccskills 0)

Run score Not tested

See how to install

Files included (1)

  • SKILL.md3.7 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Biome — lint the MR diff

Biome v2.5.12. Config: gramax/biome.jsonc (defaultBranch: develop).

What lint:ref does

"lint:ref": "bun run biome ci --no-errors-on-unmatched --error-on-warnings --files-ignore-unknown=true --changed --since=origin/develop"

Lints only files changed vs origin/develop and treats warnings as errors (exit non-zero). This is the MR lint gate — same check CI runs. Use it to see only the lint debt your branch introduces, not the whole repo.

Other scripts:

  • bun run lint = tsc --incremental false && biome ci — full repo gate (slow).
  • bunx biome check --write <file> — autofix one file (use after editing any TS/JS/JSON).

The output problem

lint:ref default output is huge: each diagnostic prints a multi-line source frame + rule docs. Dozens of warnings = thousands of lines that blow context. Never run the bare command and read its stdout directly. Pick a strategy below.

Strategy 1 — count + concise scan (default, do this first)

--reporter=concise collapses each finding to one line (path:line:col rule message). No source frames.

cd gramax && bunx biome ci \
  --no-errors-on-unmatched --files-ignore-unknown=true \
  --changed --since=origin/develop --reporter=concise

(Dropped --error-on-warnings so exit code doesn't mask output; the listing is what matters.)

Gives you: how many, which files, which rules. Cheap on context. Usually enough to triage.

Strategy 2 — dump full detail to a file, then slice

When you need the source frames to actually fix something, write to disk and read selectively — never dump to terminal.

cd gramax && bunx biome ci \
  --no-errors-on-unmatched --files-ignore-unknown=true \
  --changed --since=origin/develop --max-diagnostics=none \
  --reporter-file=/tmp/biome-ref.txt ; echo "exit=$?"

Then:

  • rg -n "rules/" /tmp/biome-ref.txt — list every rule + location.
  • Read /tmp/biome-ref.txt with the Read tool, offset/limit to one finding at a time.
  • rg -c "⚠|ℹ|✖" /tmp/biome-ref.txt — total count.

Severities: ✖ error, ⚠ warning, ℹ info. The footer summarizes (Found N warning(s). / Found N info.). With --error-on-warnings the gate fails on errors + warnings; info never fails the gate but still shows — don't waste effort on info unless asked.

--max-diagnostics=none lifts the default 20-diagnostic cap (else trailing findings hidden).

Strategy 3 — machine output for filtering

For grouping by rule / scripted triage:

cd gramax && bunx biome ci --no-errors-on-unmatched --files-ignore-unknown=true \
  --changed --since=origin/develop --reporter=json \
  --reporter-file=/tmp/biome-ref.json
# then: jq '.diagnostics | group_by(.category) | map({rule: .[0].category, n: length})' /tmp/biome-ref.json

Reporters available: default json json-pretty github junit summary gitlab checkstyle rdjson sarif concise.

Recommended flow

  1. Strategy 1 (concise) → see scope.
  2. If fixable & small → bunx biome check --write <file> per file, re-run Strategy 1 to confirm clean.
  3. If need detail → Strategy 2, fix, re-check.
  4. Gate before push: bun run lint:ref (full flags incl --error-on-warnings) must exit 0.

Notes

  • nursery rules (e.g. noFloatingPromises) are unstable but still gate the MR — fix or void-ignore.
  • --no-errors-on-unmatched + --files-ignore-unknown=true keep biome quiet when the diff has no lintable files.
  • Run from gramax/ (where biome.jsonc lives).

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

ci

Free

Use when running headless inside a GitLab CI job in the Gramax repo (the `ai` job). Establishes environment — repo checked out, glab/gh authenticated, what tools exist, how to read/post on GitLab, how to diagnose failed pipeline jobs. Triggers on "ci", "running in CI", "headless CI job", "ты в CI", "запущен в пайплайне".

The English summary is being prepared. Showing the original description.

Gram-ax/gramax616Updated Oct 6, 2026

e2e

Free

Use when user asks to write, create, run, or debug Playwright e2e tests in the Gramax project. Triggers on keywords like e2e, playwright, test, spec, QA.

The English summary is being prepared. Showing the original description.

Gram-ax/gramax616Updated Oct 6, 2026

Use when CI jobs are red on a Gramax branch and need diagnosing/fixing — failed pipeline, broken build/tests, flaky jobs, a job that has been red for a while, "почини пайплайн", "почини все пайплайны", "сломанные джобы", "failed CI jobs", "pipeline red", "fix the pipeline".

The English summary is being prepared. Showing the original description.

Gram-ax/gramax616Updated Oct 6, 2026

Use when creating, rewriting, OR reviewing a GitLab Merge Request in the Gramax product repo (`gramax/` → `gitlab.ics-it.ru/ics/doc-reader`). Triggers on "mr", "напиши описание MR", "опиши MR", "создай MR", "мерж реквест", "ревью MR", "проверь MR", "посмотри MR", "review MR", "review merge request", "code review for MR", "write MR description", "draft MR", "create merge request". Also pre-empts generic `/requesting-code-review`, `/code-review`, `/review` flows when target is a Gramax GitLab MR — team-convention checks (description, board link, `## Notes`) must run BEFORE code review.

The English summary is being prepared. Showing the original description.

Gram-ax/gramax616Updated Oct 6, 2026

Use when the user wants to inspect a Playwright `trace.zip` (actions, screenshots, console errors, network). Triggers on "examine trace", "explore trace", "open trace.zip", "look at the playwright trace", "что в trace.zip", "посмотри трейс", or any message attaching a `*.zip` path that looks like a Playwright trace (e.g. `trace-*.zip`, `trace.zip`).

The English summary is being prepared. Showing the original description.

Gram-ax/gramax616Updated Oct 6, 2026

See all skills by Gram-ax

Report a problem with this skill