home/dot_agents/skills/typescript-recommend-tools/SKILL.md
Recommend a modern TypeScript toolchain. Use when choosing or updating a TypeScript stack for Node or CLI projects, libraries or packages, and web apps or APIs; selecting tsgo as the primary typechecker with tsc as compatibility fallback; recommending Hono, tsx, tsdown, Vite, Vitest, oxlint, oxlint-tsgolint, oxfmt, or deciding between bun and pnpm.
npx skillsauth add hayatosc/dotfiles typescript-recommend-toolsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Recommend a tsgo-first TypeScript toolchain for the current project shape. Start from a clear default stack, explain why it fits, and only branch when runtime, packaging, workspace, or repository constraints require it.
Follow these steps in order:
Node/CLI, library/package, or web app / web API codebase.bun or pnpm, follow it.ni and nr, use those wrappers for commands while still making the underlying bun or pnpm choice explicit.tsgo as the primary typecheck command.tsc as a compatibility and fallback check.Vitest for testing, oxlint for fast linting, oxlint --type-aware with oxlint-tsgolint for type-aware linting, and oxfmt for formatting.Node/CLI: use tsx when there is no more specific tool-owned dev loop. If the project runs on Bun, prefer bun run.library/package: prefer tsdown, and prefer its watch or dev mode over wiring tsx into package build workflows.web app / web API: prefer Hono, and add Vite when browser assets or a frontend build are part of the stack. Prefer vite dev over tsx when Vite is already part of the project. Highlight Hono's Node, Bun, and edge runtime support when it matters.tsc in the toolchain even when tsgo is primary.Biome only when the repository clearly benefits from a single integrated formatter and linter across multiple asset types.typescript-eslint only when the repository already depends on the ESLint plugin ecosystem or Oxlint cannot provide the required rules.tsgo for primary typechecking.tsc as typecheck:compat or other explicit compatibility checks.tsdown --watch and vite dev before reaching for tsx.Hono for web frameworks.bun and pnpm with the user or the repository state. Do not force one without context.references/default-stacks.md for the quick matrix of recommended stacks and the shared defaults.references/tool-selection-rules.md for when to choose bun, pnpm, Hono, Biome, typescript-eslint, or Bun-native vs tsx dev loops.references/linting-and-formatting.md for .oxlintrc.json and .oxfmtrc.json configurations, type-aware linting strategies, and integration patterns.references/node-cli-toolchain.md for concrete Node and CLI scripts.references/library-and-web-toolchains.md for concrete library, package, and Hono web scripts.tools
Recommend a modern TypeScript toolchain. Use when choosing or updating a TypeScript stack for Node or CLI projects, libraries or packages, and web apps or APIs; selecting tsgo as the primary typechecker with tsc as compatibility fallback; recommending Hono, tsx, tsdown, Vite, Vitest, oxlint, oxlint-tsgolint, oxfmt, or deciding between bun and pnpm.
development
Implement, review, and refactor TypeScript code with a strong bias toward type safety. Use to fix TypeScript errors, remove `any` or unsafe `as`, review type safety, tighten TypeScript or lint settings, and ship ESM-first code that passes the repository's typecheck without weakening types.
development
Self-review, improve, commit, and push code that Claude has just written. Use this skill when the user asks Claude to "self-ship", "review and ship", "review then commit and push", or wants Claude to autonomously review its own output, apply improvements, and publish the changes to the remote repository. Triggered by: "self-ship", "ship it", "review and push", "review my changes and commit", or similar requests to complete the full write → review → commit → push cycle.
development
Analyze and execute behavior-preserving refactors in small, verified steps. Use when the user asks to refactor, clean up code structure, extract functions or modules, reduce duplication, improve maintainability, or modernize code without changing external behavior.