プラグインで拡張できる、Node.js、Java、Go、Pythonなどの開発ランタイム向けクロスプラットフォームバージョン管理ツール。
openxlings/xlings
複数バージョンを並行してインストールでき、rootlessでOSのように隔離されたSubOS環境を実行できるクロスプラットフォームのパッケージマネージャー。
- スター
- 615
- フォーク
- 49
- 未解決の Issue
- 28
- 最終コミット
- 8 日前
これは何?
xlingsは、Linux、macOS、Windows上で、バイナリ、スクリプト、設定、環境ベースを「xpkg」という単一の形式でインストールするパッケージマネージャーです。同じツールの複数バージョン(gcc 11とgcc 16など)を同時にインストールし、競合させずに1つのコマンドで切り替えられます。
中核となるのはSubOSです。SubOSは名前付きの環境で、それぞれ独自のツール、ホームディレクトリ、ポリシーを持ちます。SubOSはPATHを切り替えるだけの軽量な構成から、プライベートネットワークを備えたrootlessサンドボックスまで設定できます。プロジェクトではワークスペースファイルに必要なツールのバージョンを宣言できるため、チーム全員が1つのインストールコマンドで同じ環境を利用できます。
xlingsは、AIエージェント向けの利用ガイド、わかりやすい終了コード、NDJSONインターフェース、状態を自己修復するセルフチェックコマンドなど、エージェントを意識したインターフェースも提供します。サンドボックスによる隔離が最も強固なのはLinuxです。macOSとWindowsではユーザーのホームディレクトリのみを隔離するため、セキュリティ境界としては機能しません。
主な機能
- 01パッケージの任意のバージョンを並行してインストールし、1つのコマンドで有効なバージョンを切り替えられます。
- 02Linux、macOS、Windowsでroot権限なしに実行できます。
- 03独自のツール、ホームディレクトリ、ポリシーを持つ名前付きのSubOS環境を作成でき、プライベートネットワークを備えたLinuxサンドボックスにも対応します。
- 04ワークスペースファイルにプロジェクトごとのツールバージョンを宣言し、チーム内で一貫した環境を構成できます。
- 05公式、サードパーティ、自前でホストするパッケージインデックスに対応します。
- 06利用ガイド、終了コード、NDJSON出力を備えたエージェント向けインターフェースを提供します。
ユースケース
- 複数のプロジェクトで使うコンパイラやランタイムのバージョンを、競合させずに複数インストールしておく。
- プロジェクトファイル1つから、バージョンを固定した共通の開発環境をチームに提供する。
- Linux上のサンドボックス化されたSubOSで、エージェントが生成したコードや信頼できないコードを実行する。
- 管理者権限のないマシンに、rootlessのツールチェーンをセットアップする。
クイックスタート
- 1
READMEに記載されているLinuxまたはmacOS用の公式インストールスクリプトを実行します
- 2
READMEに記載されているWindows(PowerShell)用の公式インストールスクリプトを実行します
- 3
mcpp、luban、nodeなどのパッケージをインストールします
xlings install mcpp luban node # install (the latest)
使う前に知っておきたいこと
- macOSとWindowsでは、--sandboxで隔離されるのはホームディレクトリのみであり、セキュリティ境界としては機能しません。
- ファイルシステム、プロセス、ネットワークを含む完全なサンドボックス分離は、Linuxでのみ利用できます。
収録されている特集
トピック
よくある質問
- xlings とは?
- 複数バージョンを並行してインストールでき、rootlessでOSのように隔離されたSubOS環境を実行できるクロスプラットフォームのパッケージマネージャー。 xlingsは、Linux、macOS、Windows上で、バイナリ、スクリプト、設定、環境ベースを「xpkg」という単一の形式でインストールするパッケージマネージャーです。同じツールの複数バージョン(gcc 11とgcc 16など)を同時にインストールし、競合させずに1つのコマンドで切り替えられます。
- xlings は無料で使えますか?ライセンスは?
- xlings は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- xlings は今もメンテナンスされていますか?
- 活発にメンテナンス中。xlings の最終コミットは 2026年10月30日 です。
- xlings は何に使えますか?
- 複数のプロジェクトで使うコンパイラやランタイムのバージョンを、競合させずに複数インストールしておく。 プロジェクトファイル1つから、バージョンを固定した共通の開発環境をチームに提供する。 Linux上のサンドボックス化されたSubOSで、エージェントが生成したコードや信頼できないコードを実行する。 管理者権限のないマシンに、rootlessのツールチェーンをセットアップする。
- xlings のインストール方法は?
- READMEに記載されているLinuxまたはmacOS用の公式インストールスクリプトを実行します READMEに記載されているWindows(PowerShell)用の公式インストールスクリプトを実行します mcpp、luban、nodeなどのパッケージをインストールします: xlings install mcpp luban node # install (the latest)
- xlings はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/openxlings/xlings
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
ユーザー/シェルごとに複数のNode.jsバージョンをインストール・切り替えできる、POSIX準拠のbashスクリプト。
Windows向けのNode.jsバージョン管理ツール。プロジェクトごと、またはグローバルに複数のNode.jsバージョンをインストールして切り替えられます。
Pythonの複数バージョンをインストールし、全体・プロジェクトごと・シェルセッションごとに切り替えられるコマンドラインツール。
プロジェクトのツールをインストールし、環境変数を設定してタスクを実行できる、mise.tomlを中心としたRust製CLI。
プラグインシステムを通じて多くの言語に対応し、プロジェクトごとにランタイムのバージョンを切り替えるCLIバージョン管理ツールです。