Windows App Development CLI(winapp)がパブリックプレビューで登場 - Visual Studio不要のWindows開発

Windows App Development CLI(winapp)がパブリックプレビューで登場 - Visual Studio不要のWindows開発

作成日:
読了:約7分
更新日:

当サイトは Amazon.co.jp を宣伝しリンクすることで紹介料を得る手段を提供する、Amazonアソシエイト・プログラムの参加者です。価格・在庫はリンク先の最新情報をご確認ください。

winappとは

2026年1月22日、MicrosoftはWindows App Development CLI(winapp)をパブリックプレビューとしてリリースしました。これは、Visual StudioやMSBuildを使わずにWindowsアプリケーションを開発するための新しいオープンソースのコマンドラインツールです。

従来、Windows開発は複数のSDKの管理、マニフェストの作成・編集、証明書の生成、複雑なパッケージング要件への対応など、多くの煩雑な作業が必要でした。winapp CLIはこれらのタスクを単一のCLIに統合し、開発者が設定ではなくアプリ開発に集中できるようにします。


対象となる開発者

winapp CLIは、特に以下のような開発者をターゲットにしています。

フレームワーク用途
ElectronWeb技術でのデスクトップアプリ開発
C++/CMakeネイティブアプリ開発
.NETクロスプラットフォーム.NETアプリ
Rustシステムプログラミング
Dart/FlutterクロスプラットフォームUI

これらのフレームワークから、Windows AI API、セキュリティ機能、シェル統合などのモダンなWindows APIに直接アクセスできるようになります。


主な機能

1. ワンコマンドで環境セットアップ

initコマンドで、ワークスペース全体をブートストラップします。

winapp init

このコマンドだけで以下が自動的に行われます:

  • 必要なSDKパッケージのダウンロード
  • C++/WinRTプロジェクションの生成
  • マニフェストとアセットの作成
  • 開発用証明書の生成
  • 依存関係の管理

複数のマシンや開発者間でプロジェクトを共有する場合は、winapp restoreで設定ファイルに定義された環境を再現できます。

2. デバッグ用のPackage Identity

Windows AI API、通知、MCPホストなどの多くのモダンWindows APIは、アプリケーションにPackage Identityが必要です。従来はこれをテストするために、アプリを完全にパッケージ化してインストールする必要がありました。

winapp CLIでは、単一のコマンドでPackage Identityを実行可能ファイルに追加できます。

winapp create-debug-identity my-app.exe

これにより、Package Identityが必要なコードを通常の開発ループでテスト・デバッグできます。

3. マニフェストと証明書の管理

有効なappxmanifest.xmlの作成と開発用証明書のセットアップを自動化します。

# 画像からすべてのアセットを生成
winapp manifest update-assets C:\images\my-logo.png
 
# 開発用証明書の生成
winapp cert generate

ロゴ画像から必要なすべての画像アセットを正しいアスペクト比で自動生成できます。

4. MSIXパッケージング

アプリをMSIXとしてパッケージングする作業も、ワンコマンドで完了します。

winapp pack ./my-app-files --cert ./devcert.pfx

パッキングと署名を処理し、ストア配布またはサイドロード用のパッケージを生成します。

5. Electron統合

Electron開発者向けに、CLIはnpmパッケージとしても提供されています。

npm install --save-dev @microsoft/winappcli

Node.jsとネイティブWindowsコード間のギャップを埋めるコマンドが追加されています:

  • Windows App SDKとWindows SDKにアクセスするためのC++/C#ネイティブアドオンのスキャフォールド
  • winapp node add-electron-debug-identityで実行中のElectronプロセスにPackage Identityを注入
  • Windows App SDKの自動ブートストラップ

また、@microsoft/winapp-windows-ai npmパッケージを使用して、Node.jsから直接Windows AI APIを使用できます。


インストール方法

WinGetでインストール(一般用途)

winget install microsoft.winappcli

npmでインストール(Electronプロジェクト)

npm install --save-dev @microsoft/winappcli

コミュニティの反応

winapp CLIの発表は、開発者コミュニティで注目を集めています。

肯定的な意見

  • Visual Studio不要: 「VSを使わずにWindowsアプリを開発できるのは大きな進歩」
  • クロスプラットフォーム開発者に朗報: 「Electron/RustでWindows APIにアクセスできるのは嬉しい」
  • Package Identity問題の解決: 「デバッグ時のPackage Identity問題がやっと解決された」
  • MSIXパッケージングの簡素化: 「MSIXの作成がこんなに簡単になるとは」

懸念点・要望

  • まだプレビュー段階: 「本番利用にはもう少し安定性が必要」
  • ドキュメントの充実を期待: 「より多くの実用的なサンプルがほしい」
  • 対応フレームワークの拡大: 「PythonやGoにも対応してほしい」

GitHubの状況

公開直後のGitHubリポジトリには31スター、4フォークが付いており、Microsoftはフィードバックを積極的に収集しています。


今後の展望

現在winapp CLIはパブリックプレビュー段階であり、多くのWindows開発シナリオがまだ開発中です。Microsoftは実際の使用状況から学び、フィードバックと機能リクエストを収集し、開発者にとって最も重要な領域に投資を集中させる方針です。

特に注目されているのは:

  • Windows AI APIとの統合: Phi Silicaなどのローカル AI モデルへのアクセス
  • CI/CD統合: GitHub ActionsとAzure DevOpsのアクション
  • より多くのフレームワーク対応: 現在のElectron、.NET、C++、Rustに加えた拡張

まとめ

項目内容
ツール名Windows App Development CLI(winapp)
リリース2026年1月22日(パブリックプレビュー)
対象Electron、C++/CMake、.NET、Rust、Dart開発者
主な機能環境セットアップ、Package Identity、マニフェスト管理、MSIXパッケージング
インストールWinGet または npm
ソースオープンソース(GitHub)

Visual StudioやMSBuildに依存せずにWindowsアプリを開発したい開発者にとって、winapp CLIは大きな可能性を秘めたツールです。まだプレビュー段階ですが、今後の発展に期待が高まります。


参考リンク

Rust 入門 - rustup でインストールして、コラッツ数列ツールで動作確認する

Rust 入門 - rustup でインストールして、コラッツ数列ツールで動作確認する

約13分

Rust をこれから触る人向けに、言語の特徴(所有権・借用によるメモリ安全、GCなしの高速性、Cargo と充実したツール)を整理し、公式の rustup でのインストール手順、cargo の基本コマンドを通します。最後に動作確認として書いた「コラッツ数列ジェネレータ」を題材に、Result によるエラー処理、checked_mul でのオーバーフロー対策、構造体とテストの同居といった Rust らしい書き方を、実際の実行結果つきで紹介します。Rust 1.96.0 / edition 2024 で検証。

プランタンの開発ツールをオープンソース化しました - 日々使っている49本の一覧ページを公開

プランタンの開発ツールをオープンソース化しました - 日々使っている49本の一覧ページを公開

約21分

プランタン(printemps.tokyo)が日々の開発・運用で使っている自作ツールをオープンソース化し、一覧ページ printemps-tokyo.github.io にまとめました。Web解析・AI/LLM・開発ツール・セキュリティ/メール/DNS・画像/動画/出版・仕事効率化・遊び/学びの7分類、全49本(MITライセンス)を、カテゴリ別の表と言語・公開時期の内訳で紹介します。

Git 3.0 で何が変わるのか - SHA-256・reftable・main 既定化と、備えるための自作ツール git3ready

Git 3.0 で何が変わるのか - SHA-256・reftable・main 既定化と、備えるための自作ツール git3ready

約26分

Git の次の破壊的リリース Git 3.0 で予定されている変更を、公式の Documentation/BreakingChanges.adoc をもとに整理します。新規リポジトリの既定が SHA-256・reftable・main になり、safe.bareRepository が explicit に、git whatchanged などが削除され、ビルドに Rust が必須になる予定です。壊れるのは Git 本体ではなく周辺のスクリプト・フック・CI であることを示し、その箇所を洗い出して新しい既定値でテストを試走できる自作 CLI「git3ready」を紹介します。

楽天市場のおすすめPR / 楽天アフィリエイト