mcpField
N
node-typescript

node-typescript

github.com/paldom開発151 回インストール8 週間前に更新
リポジトリ

node-typescript について

コードの利用形態に合わせ、明示的なコンパイラー設定を行う TypeScript 向けスキルです。ライブラリとアプリの設定、型チェックのゲート、段階的な strict 化を扱います。

主な機能

  1. 01明示的な tsconfig オプション
  2. 02ライブラリとアプリの設定ガイド
  3. 03型チェック用スクリプトと CI ゲート
  4. 04段階的な strict 化計画
  5. 05宣言ファイル出力の指針

活用シーン

  1. 01利用者向け Node パッケージの設定
  2. 02バンドルアプリ向け TypeScript の設定
  3. 03既存コードベースで strict チェックを段階的に有効化

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/paldom/node-skills --skill node-typescript

インストール後、Claude Code で/node-typescriptを入力して読み込まれたか確認します。

同梱ファイルevals/evals.jsonreferences/tsconfig-playbook.md

詳細

node-typescript

コードの消費方法に対して明示的、厳格、かつ適切な TypeScript 設定を生成します。このスキルで解決する問題は、TypeScript のメジャーバージョン間で暗黙のデフォルト値が変わった tsconfig をモデルがコピーすること、バンドルしない Node パッケージに bundler 解決を選んで利用側で問題を起こすこと、そして大規模なコードベース全体の strict モードをレビューできない一括変更で有効にすることです。

使用しない場合

  • Lint/フォーマットのルール → node-lint。
  • バンドルと exports マップ/利用側の型解決 → node-packaging(このスキルは宣言の出力を担当し、パッケージング用スキルは利用側での解決方法を担当します)。
  • テストランナーの TypeScript サポート → node-testing。

ワークフロー

  1. まず明示的な設定の原則を徹底します。 生成されたデフォルト値やバージョン依存のデフォルト値には決して頼らないでください。TypeScript のメジャーバージョンによって変更されているためです。重要なオプションはすべて、references/tsconfig-playbook.md の設定ブロックに従って明記します。
  2. 流行ではなく、コードの消費方法に基づいて選択します。
    • 公開する/バンドルしない Node パッケージ → nodenext ファミリーの module/moduleResolution、verbatimModuleSyntax、declaration + declarationMap、API の範囲が許す場合は isolatedDeclarations(並列処理が可能で、ツールに依存しない宣言出力)。
    • バンドルするアプリのコード → noEmit を指定した bundler 解決(出力はバンドラーが行います)。
  3. ゲートを設けます。スクリプトと CI ジョブ(接続方法 → node-ci)で tsc --noEmit(プロジェクト参照の場合は -b)を実行します。
  4. 既存のコードベースを段階的に厳格化します。一括切り替えではなく、まずエラーの範囲を測定し、フラグごとまたはディレクトリごとにフラグを順次有効にして、新たなエラーを許さないルールで CI を通過させ続けます。順序はプレイブックを参照してください。
  5. 検証します。tsc --noEmit がエラーなく完了することを確認します。公開パッケージでは、宣言が出力されることを確認し、利用側の解決検証は node-packaging のゲートに任せます。

出力仕様

重要なオプションをすべて明記した tsconfig、型チェック用スクリプトと CI ゲート、ライブラリではマップ付きの宣言出力、モジュール/解決方法を選んだ理由の文書化、および該当する場合は測定可能なチェックポイントを含む段階的な厳格化計画。

注意点

  • Node から直接利用するパッケージで bundler 解決を使うと、ローカルでは型チェックに通っても、利用側では問題が発生します。必ずコードの消費方法に基づいて選択してください。
  • verbatimModuleSyntax を有効にすると、型のみのインポートでは import type が必須になり、CJS 出力のデフォルトエクスポートにも制約が加わります。コードモッドの適用と同時に有効にしてください。
  • isolatedDeclarations では、エクスポートする API に明示的な戻り値の型が必要になります。ライブラリには適していますが、アプリでは煩雑になるため、アプリの設定に考えなしに追加しないでください。
  • TypeScript 7(ネイティブコンパイラー、2026 年 7 月に GA)は typescript@latest がインストールするバージョンです。明示的な tsconfig との互換性は保たれますが、6.0 で非推奨となった設定(baseUrl、target: es5、moduleResolution: classic)は 7 では致命的なエラーになります。プレイブックに該当項目と、API に依存するツール向けの @typescript/typescript6 フォールバックが記載されています。
  • バージョンゲート:TypeScript のメジャーバージョンが変わるたびに、公式の TSConfig リファレンスでデフォルト値とフラグの動作を再確認してください。

ファイル

  • references/tsconfig-playbook.md — 明示的な設定ブロック(ライブラリ/アプリ)、nodenext と bundler の選択方法、段階的な厳格化、検証コマンド。

コメント