agentsclimarketplace

Ts lint format

Skill fusengine/agents/plugins/typescript-expert/skills/ts-lint-format

Redefining development through cognitive automation and collaborative agent systems.

Install
npx -y skills add fusengine/agents --skill ts-lint-format

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 22 stars22 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Use when choosing and configuring a TypeScript linter/formatter — Biome 2.x (one binary, type-aware) vs ESLint 9 flat config + typescript-eslint (full typed linting). Includes the 2026 arbitrage and Oxlint note. Do NOT use for type checking itself (tsc, ts-config skill) or test-runner configuration (ts-testing).

SKILL.md

4.0 KB, 879 tokens by cl100k_base, as published. Nobody here has run it

TypeScript Linting & Formatting

Agent Workflow (MANDATORY)

Before ANY implementation, use TeamCreate to spawn 3 agents:

  1. fuse-ai-pilot:explore-codebase - Detect existing lint/format config, project age, framework
  2. fuse-ai-pilot:research-expert - Verify latest Biome 2.x + typescript-eslint via Context7/Exa
  3. mcp__context7__query-docs - Check Biome and typescript-eslint docs

After implementation, run fuse-ai-pilot:sniper for validation.

Use when

  • Choosing a linter/formatter stack for a TS project (new vs established codebase)
  • Configuring Biome 2.x (biome.json, biome check, domains, type-aware rules)
  • Configuring ESLint 9 flat config + typescript-eslint typed linting
  • Migrating from ESLint+Prettier, or adding a CI lint gate

Do NOT use for

  • Runtime execution → use ts-runtime-node / ts-runtime-bun
  • Framework-specific style rules owned by that framework's own config
  • Type checking itself — linters complement, never replace, tsc --noEmit

Critical Rules

  1. Pick ONE formatter - Biome formats AND lints in one binary; do not also run Prettier on the same files.
  2. Type-aware linting needs the type checker - typescript-eslint typed rules and Biome's type-aware rules both cost a build pass; expect them to be slower than syntactic rules.
  3. Biome does NOT format-lint - It never reports formatting via lint rules; the formatter owns all formatting decisions.
  4. ESLint 9 = flat config - Use eslint.config.mjs with typescript-eslint's tseslint.configs.*; legacy .eslintrc is deprecated.
  5. Coverage gap is real - Biome's type-aware rules cover ~75% of typed-linting needs; full cross-file narrowing and no-unsafe-* still require typescript-eslint.

Architecture

project/
├── biome.json            # Biome path: one binary, format + lint
│   OR
├── eslint.config.mjs     # ESLint path: flat config + typescript-eslint
├── .prettierrc           #   (only on ESLint path; Biome replaces Prettier)
└── tsconfig.json         # required for typed linting (both tools)

→ See config-examples.md for both stacks

Reference Guide

Concepts

TopicReferenceWhen to Consult
Tool choice (2026)tool-choice.mdDeciding Biome vs ESLint; Oxlint challenger
Biome setupbiome-setup.mdConfiguring biome.json, rules, domains, CI
ESLint typedeslint-typed.mdFlat config + typescript-eslint typed linting

Templates

TemplateWhen to Use
config-examples.mdCopy a Biome or ESLint config into a project

Best Practices

DO

  • New project → default to Biome 2.x (one binary, fast, zero-config start)
  • Established/typed-heavy codebase → ESLint 9 + typescript-eslint typed linting
  • Run the linter in CI with error severity to gate merges

DON'T

  • Run Biome and Prettier on the same files (conflicting formatting)
  • Enable typed linting and then complain about speed — it's the type checker cost
  • Assume Biome covers every typescript-eslint rule — check the gaps first

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.