Tailwind CSSはAIフレンドリーではない。
AI フレンドリーであるという主張
styled-components がメンテナンスモードになり、それを報告する記事内で CSS-in-JS 自体を推奨しないという発言があったことを受けて、Tailwind CSS は AI フレンドリーであり破壊的変更が少ないため負債化しにくい最適な選択であるといった声が見られました。
しかし、AI フレンドリーであることと破壊的な変更が少ないことは、少なくとも現在は事実ではないと思います。
注意
私個人が Tailwind CSS を毛嫌いしているから、この記事を書いているわけではありません。
現在ブログを運用しているサイトでも利用しているように、選択肢の 1 つとしては良いと考えています。大衆による使われ方や喧伝のされ方に思うところがあるものの、Tailwind CSS の作者の思想には共感できるところが多くあります。
Tailwind CSS の破壊的変更は誠実でない
Tailwind CSS は、ほぼ全てのメジャーアップデートで、アップグレードガイドラインに明示されていない破壊的変更を行っていると思います。
ユーティリティが廃止されるケースはまだいいですが、ほぼ全てのバージョンでスタイルの変更が入っています。これにより、開発者に気づかれずサイトのデザインが変わってしまっているケースをいくつか目にしています。そしてこれらの変更が、アップグレードガイドラインに分かりやすく明示されたり列挙されていたことはなかったと記憶しています。
また v4 では設定や@apply
の変更について来られず、未だに v3 のままの開発環境が多く見られます。
このように Tailwind CSS は決して破壊的変更が少ないとは言えないですし、その変更の仕方があまり誠実ではなかった歴史があると思います。
Tailwind CSS は現状 AI フレンドリーではない
まず、Tailwind CSS の記事の多くは Tailwind CSS v3 未満のときに書かれたものであるように見えます。加えて、現在多くのモデルが学習した期間と Tailwind CSS v4 のリリースがずれてしまっているため、追加で知識を与えない限り、多くのモデルは現在の v4 の設定やユーティリティの変更を理解していないコードを生成してしまいます。
また、追加で最新の知識を学習させたとしても、次の問題は残る可能性があります:
- ユーザーがプラグインや
@apply
を使って独自に生やしたユーティリティを Tailwind CSS が提供するものと区別できない - バージョン毎のユーティリティによる差異を認識できない
これらは多くの場合エラーが出ず、検知が難しいため、AI エージェントなどによる自己修復が困難です。
このように、Tailwind CSS は現状 AI フレンドリーとは言えない状況にあります。ただし、これは AI の進化によって改善する可能性があります。
まとめ
Tailwind CSS は、少なくとも現在は AI フレンドリーではなく、これまでの破壊的変更の仕方を見ると他のスタックに比べて特段負債になりにくいとは言えない状況にあります。
多くの CSS-in-JS ライブラリよりは技術的な理由により負債にならない可能性が高いですが、Tailwind CSS の採用には慎重になるべきです。
個人的には、AI フレンドリーや破壊的変更の少なさのみを考えるのであれば、より生の CSS に近いもの、CSS Modules などが優れた選択肢であると思います。