Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
redis avatar

Type Check Baselines

  • 5 installs
  • 8.7k repo stars
  • Updated August 4, 2026
  • redis/redisinsight

type-check-baselines skill documents >-.

About

type-check-baselines skill documents >-. name: type-check-baselines description: >- Covers installation, configuration, and when-to-use guidance from the upstream SKILL.md workflow.

  • >-.
  • Platform-specific setup patterns for type-check-baselines.
  • Evidence-backed steps from upstream SKILL.md.
  • When-to-use criteria for type-check-baselines versus alternatives.

Type Check Baselines by the numbers

  • 5 all-time installs (skills.sh)
  • +1 installs in the week ending Aug 4, 2026 (Skillselion tracking)
  • Ranked #3,685 of 4,347 Backend & APIs skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

type-check-baselines capabilities & compatibility

Capabilities
type check baselines quick start · type check baselines when to use guidance · type check baselines integration patterns
Use cases
api development
From the docs

What type-check-baselines says it does

Run, refresh, or recover from RedisInsight's per-project TypeScript error
SKILL.md
baselines (.tscheck.rec.json). Use when CI reports "baseline is outdated" or
SKILL.md
npx skills add https://github.com/redis/redisinsight --skill type-check-baselines

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs5
repo stars8.7k
Last updatedAugust 4, 2026
Repositoryredis/redisinsight

How do I use type-check-baselines correctly?

>-

Who is it for?

Teams implementing type-check-baselines workflows from the catalog.

Skip if: Skip when requirements clearly match a different specialized stack.

When should I use this skill?

User asks about type-check-baselines, >-.

What you get

Working type-check-baselines setup with validated configuration and next steps.

Files

SKILL.mdMarkdownGitHub ↗

TS error baselines

RedisInsight gates TypeScript errors per project via a one-way ratchet: current error counts are recorded in .tscheck.rec.json files, and CI fails if any (file × error-code) count increases. Counts can only go down.

Projects and commands

Projecttsconfig usedBaseline filePer-project compare
UIredisinsight/ui/tsconfig.jsonredisinsight/ui/.tscheck.rec.jsonyarn --cwd redisinsight/ui type-check
APIredisinsight/api/tsconfig.check.json (strict, extends base)redisinsight/api/.tscheck.rec.jsonyarn --cwd redisinsight/api type-check
Desktopredisinsight/desktop/tsconfig.jsonredisinsight/desktop/.tscheck.rec.jsonyarn --cwd redisinsight/desktop type-check
Configsconfigs/tsconfig.json— (must stay at 0 errors)yarn tsc --project configs/tsconfig.json --noEmit

Run all checks together from the repo root:

  • yarn type-check — compare against baselines (all four projects). E2E Playwright is type-checked by a separate workflow (tests-e2e-playwright-lint.yml) — not part of this.
  • yarn tscheck — refresh baselines for ui/api/desktop after fixing errors. Projects whose error count didn't change produce no diff.
  • yarn tscheck:force — force-overwrite baselines for ui/api/desktop. Emergencies only.

Always run refresh commands through the root `yarn tscheck` / `yarn tscheck:force` wrappers. The per-workspace refresh scripts (yarn --cwd redisinsight/<ws> tscheck) shell out to tsc, tsx, and tsc-output-parser, which are installed only in the root node_modules/.bin/ — this repo is not a yarn workspace, so yarn won't add the root bin dir to PATH when invoked with --cwd. The root wrappers exist precisely to avoid that trap by running in the root yarn context first. If you must invoke the per-package script directly, prepend the root bin dir manually: PATH="$PWD/node_modules/.bin:$PATH" yarn --cwd redisinsight/ui tscheck.

API has a dedicated check tsconfig

redisinsight/api/tsconfig.check.json extends the base tsconfig.json and adds:

"strict": true,
"strictPropertyInitialization": false,
"useUnknownInCatchVariables": false,
"noEmit": true

The base tsconfig.json stays as-is so nest build is unaffected. Never enable `strict` in the base — it breaks the production build.

Workflows

CI says "more TS errors than previously recorded"

You introduced new errors. Fix them. Read the script output — it lists the file, error code (TSxxxx), and message for each new error. Do not run tscheck:force in any workspace to paper over them.

CI says "baseline is outdated"

You fixed errors (good). Refresh baselines from the repo root:

yarn tscheck

This runs the refresh for ui, api, and desktop; only the project whose count changed will produce a diff. Commit the updated .tscheck.rec.json.

Adding a brand-new file with TS errors

Same rule: the file × error-code counts went from 0 to N — that's "new errors". Fix them before merging. Strict-mode escape hatches (as any, // @ts-expect-error with justification) are acceptable when fixing legitimately is out of scope, but prefer real fixes.

Bootstrapping a fresh baseline

Only needed once per project (already done for ui/api/desktop). The non-force yarn --cwd redisinsight/<workspace> tscheck calls compare first, which fails against an empty baseline. Use yarn --cwd redisinsight/<workspace> tscheck:force for the very first baseline only.

After yarn install in redisinsight/api/

The api postinstall regenerates redisinsight/api-client/. That can shift UI and Desktop error counts (they both import from apiClient). If yarn type-check:ui or yarn type-check:desktop reports drift after an api install, refresh those baselines.

Local UI check disagrees with CI

UI plugins under redisinsight/ui/src/packages/{redisearch, redisgraph, redistimeseries-app, ri-explain, clients-list} are sub-projects whose source gets type-checked via the UI tsconfig. Their deps live in nested node_modules populated by yarn build:statics (or by running yarn --cwd redisinsight/ui/src/packages/<plugin>). CI runs yarn build:statics before yarn type-check:ui, so the baseline reflects "plugin deps installed."

If yarn type-check:ui shows TS7016 ("Could not find a declaration file for module ...") errors that CI doesn't, you're missing plugin deps. Run yarn build:statics once, then re-run the check. Don't refresh the baseline to your local state — CI runs with plugin deps installed.

Local Desktop check disagrees with CI

Desktop type-check needs redisinsight/api/dist/ populated with the dev nest build (yarn --cwd redisinsight/api build, not build:prod — prod skips .d.ts emission). CI does this automatically. Locally, build api once before generating or refreshing the desktop baseline.

Reviewing PRs

Reject PRs that:

  • Bump a .tscheck.rec.json file × code count up without a corresponding code fix.
  • Use tscheck:force in any workspace (look for the diff: a force overwrite typically touches many lines in the rec file with no related TS changes).
  • Enable strict in redisinsight/api/tsconfig.json (the base). Strict for api belongs only in tsconfig.check.json.

Approve PRs that:

  • Leave counts unchanged.
  • Decrease counts (with the rec file updated and committed).

Related skills

FAQ

What does type-check-baselines do?

type-check-baselines skill documents >-.

When should I use type-check-baselines?

User asks about type-check-baselines, >-.

Is this skill safe to install?

Review the Security Audits panel on this page before installing in production.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.