はじめに
こんにちは!syumaiです。
今回は、2025年12月号として、11月上旬〜12月中頃に見かけて気になった、JavaScript/TypeScript(以下、JS/TS)、Web、および生成AI関連の話題についてご紹介させていただきます!今回は、生成AI関連の話題を多めにお届けします。
JS/TSツールチェーン
AnthropicによるBun買収
Bunが、Anthropicにより買収されたことがアナウンスされました。
Bunは、高速性を売りにしているJS/TSランタイムで、Node.jsやDenoなどのV8を使用するランタイムと異なり、Appleの開発するJavaScriptCoreを採用している点が特徴的です。
Bunが提供する機能のうちの一つにSingle-file executableがあります。この機能を利用すると、JS/TS製のコマンドを、Bun本体とまとめて一つの実行可能ファイルとして扱えるようになり、Node.jsやBunなどを別途インストールしないと導入できないコマンドよりも、手軽に配布することができます。実は、Claude Codeのnative installがこの機能を利用して配布されており、AnthropicとしてもBunに投資する明確な理由があった、という関係性となります。
JS/TSランタイムを開発する企業がいかにして収益化を行うかについては、DenoによるDeno Deployのような、Webアプリケーションをホストするプラットフォームの開発・運営しか基本的にないのではないかと思われていましたが、今回の件を受けて、その認識が大きく覆ったという点でも大きなニュースでした。
TypeScript 7の開発状況報告
Microsoftから、TypeScript 7の開発状況についての報告がありました。
もともとTypeScriptは、型チェックやJavaScriptへのトランスパイルといったコアのロジックをTypeScriptおよびJavaScriptによって実装していました。そして、それら機能を提供するtscコマンドは、TypeScriptからJavaScriptにトランスパイルされた実装がNode.jsなどのJSランタイム上で動作するという仕組みになっています。TypeScript 7では、こうしたコアのロジックが全てGoに書き直され、ネイティブのコマンドとして実行されるようになる予定です。
Microsoftによると、TypeScript 7の開発はここ数ヶ月で大きく進み、現在では非常に高速かつ安定して動作しているとのことです。いよいよTypeScript 7の正式リリースが近いということで、既存のTypeScriptおよびJavaScriptをベースとした実装は、こちらも近日リリース予定となるTypeScript 6.0が最後(TypeScript 6.1はない。TypeScript 6.0.1などのパッチリリースはあり得る)ということがアナウンスされました。
TypeScript 7のプレビュー版は、npmで配布されているので、簡単に手元で試すことができます。気になる方は、ぜひ記事の方をご覧になってください。
Vite 8 Betaがリリース、Rolldownベースへ
Vite 8 Betaがリリースされ、Rolldownベースの仕組みに置き換えられることがVoidZeroからアナウンスされました。
従来のViteは、開発向けにはGo製の高速なesbuildを、本番向けにはJS製のRollupを使用するという組み合わせで動作していましたが、Vite 8からは、開発向け・本番向けのいずれもRolldownによって処理されるようになり、体験が統一されます。RolldownはRust製のバンドラーで、従来使用していたJS製のRollupよりも10〜30倍高速となる点についても強調されています。互換性にも注意を払って実装されているそうです。
RolldownベースのViteは、2025年5月にリリースされたプレビュー版のrolldown-viteとして半年ほどの期間に渡ってテストされてきました。rolldown-viteが一定の成果を収めたので、Vite 8での移行の判断に至ったようです。こちらの経緯については、以下のnakasyouさんの記事が参考になります。
JS/TSライブラリ・フレームワーク
RSCの脆弱性(CVE-2025-55182)の公開
フロントエンド開発に関わっている方は、既にほとんどの方が認識されていると思いますが、React Server Componentsの脆弱性(CVE-2025-55182)が公開されるというニュースがありました。
React2Shellと命名されたこの脆弱性は、認証不要で任意のコードを実行可能という非常に重大なもので、国内でもこの脆弱性を悪用した攻撃が発生しているという報告も上がっています。もし、React Server Componentsを使用している古いままのプロジェクトに思い当たるものがあれば、開発用だったり、プレビュー用にしか使っていないものだったりしても、すぐにReactのバージョンを更新するか、アプリケーション自体を止めるといった対応を行うことを強く推奨します。
Web関連
AkamaiによるFermyon買収
AkamaiがFermyonを買収しました。
正直なところ、日本での知名度があまり高くないためご存じない方もいらっしゃると思いますが、FermyonはWebAssembly(以下、Wasm)ベースのWebアプリケーションをホストする、Fermyon Cloudというプラットフォームを提供している会社です。FermyonはSpinという、Wasm ComponentsベースのWebアプリケーションフレームワークを開発しており、Wasmのエコシステムの発展に貢献してきていました。その他の有名なプロジェクトとしては、SpinのJavaScript SDKのために、SpiderMonkeyの最適化されたWasmビルドを生成するためのフォークである、StarlingMonkeyをFastly Computeのチームとともに開発しています。
2025年の3月にFermyon Wasm Functionsをリリースしたとき、そのサーバーレス関数が世界中のAkamaiのエッジネットワークで動作することがアナウンスされ、筆者は驚きました。その頃からのAkamaiとのパートナーシップが実を結び、今回の買収に繋がったようです。Akamaiによる買収後も、Spinは引き続きオープンソースで開発されるとのことです。
Temporal APIのChrome betaサポート
JavaScriptの日付型の改善版として期待されるTemporal APIが、Chromeのbeta版によりサポートされました。
他のブラウザの実装状況としては、Firefoxが実装済み、Safariは現在実装中となっています。Proposalの進行状況としてはStage 3で、基本的には仕様として決まっており、各JSエンジンによる実装待ちの状況となっています。ただし、Temporalはその仕様が非常に大きく、Stageが上がってからもそのスコープが見直されたこともある、特殊な機能です。そのため、各ブラウザベンダーも慎重に実装を進めている状況ですが、今回Chromeでの実装が進んだことで、利用可能になるまでの道筋が見えてきたといえます。
Temporalの想定仕様、および従来のDateにあった課題については、以下のSajiさん(@sajikix )の記事が参考になるので、興味のある方はぜひご覧ください。
生成AI関連
GoogleによるCode Wikiの登場
Googleから、Code Wikiという製品の公開プレビュー版が発表されました。
Code Wikiは、コードベース全体をスキャンして、自動的にドキュメントを生成・更新し続けてくれる製品です。自動生成されたドキュメントに対して質問のできるチャットエージェントも付属しているなど、その活用方法も込みの製品です。従来、ドキュメントの更新は実装に対してその作業が漏れることも多く、メンテナンスが課題となっていたので、非常に便利そうです。
しかしながら、こうした製品の特徴は、DevinのDeepWikiに非常によく似ています。DeepWikiはDevin内蔵のWikiとして登場し、その公開版の完成度の高さによって話題になりました。Code Wikiは、今後DeepWikiと、どう差別化していくかが注目されます。既にGemini CLI向けの拡張機能がアナウンス内容に含まれているので、他のGoogle製品との連携での差別化が行われるのではないかと想像しています。
ClaudeのTool search toolの発表
Anthropicから、Claudeで利用可能なTool search toolなどの発表が行われました。
MCP(Model Context Protocol)のToolは、そのコンテキストウィンドウの使用量が課題となっています。MCPサーバーをコーディングエージェントに登録するだけで、そのToolの使い方やスキーマの情報がコンテキストに読み込まれるので、使うツールであればまだいいですが、使わないツールもあれば非常に無駄が大きくなってしまいます。また、コンテキストウィンドウの圧迫によって、Toolの選択をエージェントが誤る可能性も上がってしまいます。これらの理由から、最近ではその利用を控える方向性での議論が活発に行われています。特に、同じくAnthropicから発表されたClaudeのAgent Skillsは、必要に応じて専門知識を読み込む、段階的な開示(progressive disclosure)によってコンテキスト管理を効率的に行えるという点で大きく注目されています。
Tool search toolは、MCPのToolを検索して呼び出してくれるToolです。MCPのToolをコンテキストに読み込まず、必要になったタイミングでToolを検索する仕組みとなっています。Toolを事前にコンテキストに読み込まないことで、MCPのプロトコルそのものの良さを生かしつつ、課題の解消に繋げる仕組みとなります。これからは、このTool search toolのように、MCPサーバーの機能は別の機能を通じて間接的に、必要な知識を遅延して読み込む方法が主流になっていきそうです。
Tool search toolの実際の使用例については、以下のazukiazusaさん(@azukiazusa9
)の記事が参考となりますので、ぜひご覧ください。
Claude Code on desktopの発表
Anthropicから、Claude Code on desktopのプレビュー版が発表されました。
従来、Claude Codeを使うには、ターミナル上で動作するCLI版、そして、IDE拡張が主体で、それに加えてWeb版もありました。今回、Claude Code on desktopが登場したことで、Claude Codeをデスクトップ版のClaudeから簡単に実行できるようになりました。
Claude Code on desktopは、ターミナルでの作業に慣れていない方でも簡単に使えます。そうしたユースケースは、従来Claude Code on webによって担保されていましたが、Claude Code on webはあくまでAnthropicが提供するクラウド環境上での開発が基本となっていました。今回、Claude Code on desktopが登場したことで、ローカルの開発でも同様の体験ができるようになりました。この機能は、Claude CodeとClaude Code on webとの間を埋めるものとなります。
OpenAIのCodex cloudなども以前登場し話題となりましたが、このように、コーディングエージェントをターミナルやIDEからの起動に限らない、あらゆるシーンで利用可能になることで、より幅広いユースケースに対応できる世界が広がっていくので、期待が高まっています。
Google ADKのGo / TS(JS)対応
GoogleのADK(Agent Development Kit)に、Go版および、TypeScript(およびJavaScript)版が登場しました。
GoogleのADKは、AIエージェントを開発するためのGoogle製のオープンソースのフレームワークです。Google Cloud上でAIエージェントを構築する際の第一の選択肢として挙げられることの多かったADKですが、開発に使える言語がPython、およびJavaのみだったという点で足踏みしていた方もいらっしゃったのではないかと思います。今回、GoとTypeScriptに対応したことで、その導入ハードルが大きく下がったので、興味のある方はぜひ試してみてください。
おわりに
11〜12月は、JSエコシステムで発生した脆弱性や、生成AI関連の話題が多かったです。特に、MCPは登場して1年が経ち、その利便性だけでなく課題について見直されるようになりました。コーディングエージェントは、既に多くの開発者にとって、なくてはならない存在となっています。今後も、より便利に、快適に開発を進めていくための方法を筆者も探っていきたいので、コーディングエージェント周辺の動向について本連載でご紹介していければと思います。2月には、Go 1.26のリリースも控えているので、そちらでも何か注目すべき話題があればご紹介できればと思います。
それでは、また次号もよろしくお願いします!
