
Kiro CLI で意図しない言語が検出される場合は上位ディレクトリを確認してみましょう
はじめに
Kiro CLI のコードインテリジェンス機能とは、LSP (Language Server Protocol) を統合することで、自然言語を通じたシンボル検索や定義への移動といった高度なコード解析とナビゲーションを可能にする機能です。
この機能を使うときは、上位ディレクトリのファイルに注意が必要です。本記事では、実際にハマった事例を紹介します。
やってみたが、できない
早速試してみようと思い、TypeScript プロジェクトで実行してみたのですが、

というように、なぜか Python プロジェクトとも認識されてしまいます。もちろん、プロジェクトには Python ファイルは存在していません。
そもそも、Workspace がカレントディレクトリではなく、ホームディレクトリになっていました。なぜだ?
上位ディレクトリに注意
Workspace となっているホームディレクトリを見てみると、requirements.txt がありました。いつかの不要なファイルでしょう。
requirements.txt を削除すると、無事、想定通りの挙動をするようになりました。

Kiro CLI ではプロジェクトファイルやファイル拡張子からプロジェクトの言語を判定しますが、プロジェクトファイルについては上位階層のディレクトリまで探しにいっているようです。
When you initialize a workspace, it detects languages from project markers (like package.json, Cargo.toml) and file extensions, then starts the appropriate language servers.
https://kiro.dev/docs/cli/code-intelligence/
おわりに
本事象と 30 分ほど格闘していました。同じような問題に遭遇したら、上位ディレクトリに不要なプロジェクトファイルがないかどうかを確認しましょう。
この記事がどなたかのお役に立てれば幸いです。







