Skip to content
Published on

いま注目のオープンソース (2) ビルド・エディタ・CLI・ターミナル

シェア
Authors

はじめに — 待ち時間が消えたら習慣が変わった

開発者ツールでここ数年に起きた変化は、機能の追加ではなく速度でした。依存関係のインストール、リント、バンドルのように一日に何十回も繰り返す作業がネイティブ言語で書き直され、待ち時間が大きく減りました。

これは単なる利便性の話ではありません。リントに3秒かかるならコミット前に一度だけ走らせますが、30ミリ秒なら保存するたびに走らせます。ツールが速くなると使用頻度が変わり、頻度が変わるとワークフローが変わります

以下は順位ではなく、役割ごとの地図です。

スナップショット

プロジェクトライセンス(リポジトリの宣言に基づく)スター最新のプッシュ
oven-sh/bunMIT(LGPL-2ライブラリを静的リンク)95,3892026-08-12
astral-sh/uvApache-2.088,6672026-08-12
zed-industries/zedGPL-3.0とApacheの併存88,4722026-08-12
vitejs/viteMIT82,3222026-08-12
jesseduffield/lazygitMIT81,2522026-08-12
ghostty-org/ghosttyMIT59,5392026-08-12
astral-sh/ruffMIT49,1632026-08-12
helix-editor/helixMPL-2.045,8022026-08-11
zellij-org/zellijMIT34,8532026-08-12
atuinsh/atuinMIT31,1232026-08-12
biomejs/biomeApache-2.025,5492026-08-12
oxc-project/oxcMIT22,2812026-08-12

すべて2026-08-12時点です。

ランタイムとパッケージ管理

oven-sh/bunは、ランタイム、パッケージマネージャ、バンドラ、テストランナーを一つの実行ファイルに入れました。複数のツールを組み合わせていた場所を、一つで置き換えようとする試みです。Node互換は広がりましたが完全ではないので、既存のサービスを移す計画があるなら、まず依存関係を実際に動かしてみてください。

astral-sh/uvはPython側で同じことをします。仮想環境の作成、依存関係の解決、ロックファイル、インタプリタのインストールまでを一つにまとめており、体感速度の差が大きいです。ただし、ソースからのビルドが必要な科学計算パッケージや社内のプライベートインデックスのように経路が特殊な環境では、まだ例外に出会うこともあります。CIを先に移してみて、ローカルは後で変える順序が安全です。

# 例: プロジェクトの初期化から実行まで
uv init myproj && cd myproj
uv add httpx
uv run python -c "import httpx; print(httpx.__version__)"

リンタとビルド

astral-sh/ruffは、複数のPythonリンタが分担していたルールを一つのバイナリにまとめ、フォーマットまで含みます。ルール名が既存のツールと互換になるよう設計されているため、移行コストは低めです。

biomejs/biomeはJavaScript側でリンタとフォーマッタを統合します。ただし既存のESLintプラグインのエコシステム全体を置き換えることはできないので、チームが依存しているカスタムルールの一覧をまず確認する必要があります。

oxc-project/oxcは、パーサ、リンタ、トランスフォーマといったJavaScriptツールチェーンの部品をRustで作る詰め合わせです。他のツールが部品として取り込んで使う性格が強く、構成要素ごとに完成度が異なります。エンドユーザー向けのツールを期待して近づくと食い違います。

vitejs/viteは、いまや新しく作るフロントエンドプロジェクトの既定の選択肢に近い存在です。内部エンジンの入れ替えが進行中の領域なので、プラグインを自分で作るなら、上位のAPIに乗るほうが安全です。

エディタ

helix-editor/helixは、LSPとTree-sitterを内蔵したモーダルエディタです。プラグインなしでもすぐ使えるように作られている代わりに、拡張性は限定的です。ライセンスがMPL-2.0なので、修正したファイル単位で公開義務がつく弱いコピーレフトです。

zed-industries/zedはRustで作られた協業志向のエディタです。ここではライセンスが特に重要です。リポジトリにLICENSE-GPLLICENSE-APACHEが一緒に置かれているため、GitHubは単一のライセンスに分類できずOtherと表示します。つまり構成要素ごとに条件が違うので、社内配布や製品への組み込みの計画があるなら、どの部分にどのファイルが適用されるのかを確認する必要があります。

ターミナルとCLI

ghostty-org/ghosttyはZigで作られたGPUアクセラレーション対応のターミナルで、各プラットフォームのネイティブUIを使う点が特徴です。公開リポジトリが開かれた時期が比較的最近なので、プラットフォームごとの対応範囲にムラがある可能性があります。リモート接続環境や特殊なキーバインドに依存しているなら、事前に確認してください。

zellij-org/zellijはtmuxが占めていた場所を狙うターミナルマルチプレクサで、標準のレイアウトとプラグイン構造を前面に押し出します。手に馴染んだtmuxの設定があるなら、わざわざ移る理由は大きくありません。

jesseduffield/lazygitは、ステージング、リベース、チェリーピックのような作業をターミナルの画面で処理します。コマンドを暗記する代わりに目で見て選べるようにしてくれますが、gitが何をしているのか分からないまま使うと、ミスをより速く作るだけです。

atuinsh/atuinは、シェルの履歴をSQLiteに入れて、検索と端末間の同期を付け加えます。同期サーバーは自分で運用できます。コマンドの履歴には認証情報が混ざりやすいので、どこに保存されるのかを確認してから使ってください。

導入前の確認

ライセンスの全文を自分で確認し、商用導入は法務レビューを通してください。この記事は法律アドバイスではありません。

特にoven-sh/bunは、LICENSEファイルがBun自体はMITだと明示しつつ、LGPL-2ライブラリを静的リンクしていることと、それに伴う再リンクの条件を併せて説明しています。社内で使うことと、製品に入れて再配布することは、レビューの範囲が違います。

ツール自体は、たいてい個人が先に導入します。チームの標準に引き上げるときは、CIイメージ、ロックファイルの形式、新しく入った人のインストール手順まで一緒に変わることを計算に入れてください。

リポジトリの情報(スター数・ライセンス・最近の活動)は、2026-08-12にGitHubで直接確認した時点の値です。数値と状態は変わります。

リンク

シリーズ: 前の記事 — AIエージェントとLLMツール · 次の記事 — インフラとデータベース

このブログの関連記事:

ツール: テキスト比較 · 正規表現テスター