ブログ一覧へ戻る

常駐しても邪魔にならないWindows作業メモリを作る

Slack、Teams、VS Code、Dockerと並べて使う前提で、常駐アプリのメモリ使用量と軽量なデスクトップ実装をどう考えたかをまとめます。

常駐アプリメモリ使用量Windows軽量デスクトップアプリ社用PC

常駐アプリは軽くないと使われない

Contextbergは、画面、ブラウザ履歴、キーボード入力、アプリ利用をバックグラウンドで扱う常駐アプリです。常駐する以上、機能以前に軽さが重要です。

Slack、Teams、Edge、VS Code、Docker Desktopが起動しているPCで、さらに500MB以上使うアプリを入れてもらうのは現実的ではありません。特に企業PCでは、メモリ8GBや16GBの環境もまだ多いです。

目標にしたライン

Contextbergでは、アイドル時メモリ120から180MB、アクティブ時およそ250MB、アイドルCPU 1%未満、MSIXサイズ約100MBを目安にしています。

この数字は、単にベンチマークとしてきれいだからではありません。ユーザーが『入れておいても邪魔にならない』と感じるための実用ラインです。

軽量な実装を優先した理由

ElectronはUI開発の速度では魅力的ですが、常駐アプリとしてChromiumプロセスを抱える時点で、メモリの下限が上がりやすくなります。

Contextbergでは、キーボードフック、フォアグラウンドウィンドウ取得、スクリーンキャプチャ、認証情報の保護、アプリ配布など、OSに近い処理が多くあります。そのため、最初のWindows版では常駐時の軽さと安定性を優先しました。

今後macOS版を出す場合も、同じUI技術に無理に寄せるより、各OSで自然に軽く動く実装を選ぶ方針です。

クロスプラットフォームを後回しにした理由

macOSやLinuxもいずれ対応したいです。ただ、最初から全OS対応を狙って重くなるより、まずWindowsで軽く安定して動くことを優先しました。

エージェントを使う開発者の中にはWindowsユーザーも多く、既存のメモリ系ツールではmacOS前提のものも目立ちます。Windows開発者を置いていかないことは、Contextbergの重要なテーマです。

軽さは信頼の一部

常駐アプリは、使っていない時間の印象で評価されます。必要なときに便利でも、普段からファンを回し、メモリを食い、作業を邪魔するならアンインストールされます。

エージェントメモリは毎日使うインフラに近い存在です。だからこそ、派手な機能だけでなく、普段は静かに動くことを設計上の価値として扱っています。

常駐アプリの性能はUXそのもの

常駐アプリでは、機能が豊富でも重ければ使われません。特にAI memoryは、起動していない時間が増えるほど記憶の穴が増えるので、軽さは品質の一部です。

常駐AI memoryで見る性能指標
指標なぜ見るか悪い場合に起きること
アイドル時メモリ常時起動の心理的負担に直結するSlackやChromeと並べた時に邪魔になる
アクティブ時CPU記録中の体感に直結する開発中のビルドやブラウザ操作を邪魔する
起動時間毎日立ち上げるかどうかに効くユーザーが自動起動を切る
ディスク増加量スクリーンショットやログの継続保存に効くいつの間にか容量を食い、削除対象になる
除外時の負荷記録しない設定でも軽いかを見るプライバシー設定を増やすほど重くなる

技術選定を前面に出しすぎない

記事で前面に出すべきなのは、特定フレームワーク名ではなく、常駐アプリとして軽く、安定して、OSのプライバシー境界を尊重できるかです。

読者が知りたいのはフレームワークの勝敗ではなく、自分のPCに入れて邪魔にならないか、将来macOS版が出たときにも同じ考え方で使えるかです。