TypeScript strict modeへの移行をClaudeと進める
既存のJavaScriptプロジェクトをTypeScriptのstrict modeへ移行するのは、地味に骨が折れる作業です。エラーが何百件も出てどこから手をつければいいか分からない、という経験はありませんか?Claude Codeを使えば、この移行を段階的かつ安全に進められます。
まず現状のエラー数を把握する
Section titled “まず現状のエラー数を把握する”いきなり"strict": trueにするのではなく、まず現在地を確認しましょう。Claude Codeに次のように依頼します。
tsconfig.jsonにstrictオプションを追加したときに発生するエラーの一覧を出してください。ファイルごとのエラー件数も集計してください。Claudeはターミナルで以下のコマンドを実行し、結果を解析してくれます。
npx tsc --strict --noEmit 2>&1 | grep "error TS" | sed 's/(.*//g' | sort | uniq -c | sort -rnこれでエラーが多いファイルから優先的に対処するリストが作れます。件数が多くて怖く見えても、パターンが限られていることがほとんどです。
ファイル単位で段階的に修正する
Section titled “ファイル単位で段階的に修正する”一気に全修正しようとすると混乱します。Claude Codeにはファイルを1つずつ渡して修正してもらいましょう。
src/utils/api.ts のstrict modeエラーを修正してください。anyの使用は最小限にして、適切な型を推論・定義してください。修正後に変更内容の概要も教えてください。Claudeは型の文脈を読んでunknownやas const、ジェネリクスを使い分けながら修正してくれます。修正ごとにgit commitしておくと、問題が起きたときにすぐ戻せて安心です。
レビューと型定義の整備を依頼する
Section titled “レビューと型定義の整備を依頼する”修正が一通り終わったら、全体的な型定義の品質レビューをClaudeに任せましょう。
strict化が完了したsrc/配下のファイルをレビューしてください。anyが残っている箇所、型アサーション(as)の乱用、改善できる型定義があれば指摘してください。このレビューでanyの残留や過度な型アサーションが見つかることが多いです。Claudeは代替となる型定義も一緒に提案してくれるので、そのままコードに反映できます。
移行完了後は、CIにtsc --noEmitを追加しておくと、今後の変更で型エラーが紛れ込むのを防げます。Claude Codeを使えば、一人で抱え込みがちなTypeScript移行作業が、ずっと取り組みやすくなるはずです。
※TypeScript: JavaScriptに型定義を追加した言語。型チェックによりバグを事前に発見しやすくなる。