ITADN
openxlings/xlings
openxlings/xlings · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

xlings

具备类操作系统 SubOS 隔离的通用软件包基础设施。
多版本 · 无根权限 · 去中心化索引 · 支持 Agent。

Website | Docs | Package Index | Forum

中文 | English

使用者:MCPP · 即将推出的 Luban Linux

为什么选择 xlings?

一个工具即可安装任意版本的任何软件,以无根权限运行,并实现类操作系统隔离——适用于 Linux、macOS 和 Windows。

“支持”包含三个独立的问题,因此这里列出三列。xlings 运行的平台并不自动意味着每个软件包都有该平台的构建产物,而这两者也都无法说明 --sandbox 实际能为你提供多少隔离。

平台xlings 发布状态软件包覆盖范围subos --sandbox 隔离
Linux x86_64✅ 已发布完整文件系统(bwrap / proot)
Linux aarch64✅ 已发布部分——许多配方仅发布 x86_64 构建产物文件系统,一旦该架构的可用后端就绪
macOS 14+ arm64✅ 已发布部分——部分配方仅提供 x86_64$HOME
Windows x86_64✅ 已发布部分%USERPROFILE%

包覆盖范围是配方(recipe)的属性,而非 xlings 的属性:xlings install 仅当配方枚举了其架构且你的架构不在其中时,才会拒绝该目标。当配方仅包含一个工件时,它将被安装, 并告知你该配方无法确认你的架构。

macOS 和 Windows --sandbox 并非安全边界。 它重定向 主目录,以便工具将点文件写入某个隔离位置。它不 隔离文件系统、网络或进程。请使用操作系统沙箱或 虚拟机来运行你不信任的代码。

xlings 与 apt / nix / docker 的对比

核心能力

  1. 通用包基础设施 — 二进制 / 脚本 / 配置 / subos / 教程,全部以 xpkg 形式提供
  2. 多版本共存 — N 个版本并行;版本视图 + 引用计数(N 个环境 ≈ 1 倍存储)
  3. 3 级 SubOS 隔离 — shell(环境切换)/ FS(bwrap/proot,无 root)/ image(ext4,root)
  4. 去中心化包索引 — 官方 + 第三方 + 自托管;用于二进制镜像的资源服务器
  5. JSON 事件接口xlings interface(NDJSON),面向 AI 代理、CI 及第三方工具
  6. 自诊断xlings self doctor --fix 检查四个状态层并在一次运行中修复它们

快速开始

安装 — Linux / macOS

curl -fsSL https://raw.githubusercontent.com/openxlings/xlings/main/tools/other/quick_install.sh | bash

安装 — Windows (PowerShell)

irm https://raw.githubusercontent.com/openxlings/xlings/main/tools/other/quick_install.ps1 | iex
xlings install gcc@16 node@24 cmake   # install (version optional)
xlings use gcc@16                      # switch active version
xlings search python                   # search packages
xlings list                            # list installed

让 AI 智能体安装并解释它

将此内容粘贴到任何 AI 智能体(Claude、Codex、OpenCode、…)中:

Read the README of https://github.com/openxlings/xlings and install xlings on my machine.
- Linux/macOS: curl -fsSL https://raw.githubusercontent.com/openxlings/xlings/main/tools/other/quick_install.sh | bash
- Windows: irm https://raw.githubusercontent.com/openxlings/xlings/main/tools/other/quick_install.ps1 | iex
Then run `xlings agent usage` and follow it to show me how to use xlings.

xlings 内置了一个代理指南——安装后,任何代理都可以自学完整的工作流程:

xlings agent           # overview + skill list
xlings agent usage     # complete usage guide written for LLM agents

使用场景

🛠 多版本工具链,一处命令通用

安装任意版本的任意工具并让它们并存 — 即时切换,无冲突,无需 sudo。相同的命令在 Linux、macOS 和 Windows 上均可使用。

xlings install gcc@16 gcc@11 node@24 cmake
xlings use gcc@11        # switch back anytime — both stay installed

多版本指南

📦 可复现的项目环境,跨操作系统保持一致

提交一个 .xlings.json,用于声明各平台的版本。每个项目都拥有自己隔离的 SubOS,因此团队成员和 CI —— 无论在任何发行版或操作系统上 —— 都能进入完全相同的环境,而无需触及主机或其他项目。

{
  "workspace": {
    "xmake": "3.0.7",
    "gcc":  { "linux":  "16.1.0" },
    "llvm": { "macosx": "20.1.7", "windows": "19.1.0" }
  }
}
cd my-project/           # entering the dir activates the project SubOS
xlings install           # installs the declared versions, project-local

项目环境指南

🤖 在隔离的 SubOS 中运行代理与不受信任的代码

在 Linux 上,在根权限隔离的文件系统 SubOS 中运行代理。在 macOS 和 Windows 上,SubOS 会重定向主目录,但不会隔离不受信任的代码;当需要该边界时,请使用操作系统沙箱或虚拟机。

xlings subos new agent-ws --from subos:dev-env@latest
xlings subos use agent-ws --sandbox                       # enter the isolated world
xlings subos use agent-ws --sandbox --cmd "python run.py" # or one-shot exec

SubOS & Agent 指南

🩺 升级与修复,无需手动编辑状态

升级客户端,然后让 xlings 检查其自身的四个状态层——workspace、 version database、shims、payloads——并修复发现的问题。一次运行;你阅读的 报告是修复之后的状态,且它打印的每条命令都是你可以直接粘贴的。

xlings self update                     # upgrade xlings itself
xlings self doctor                     # read-only check (exit 0 = healthy)
xlings self doctor --fix --dry-run     # preview the repairs
xlings self doctor --fix               # repair

自我管理指南

文档

指南、设计笔记和规范位于 docs/

领域文档
快速开始多版本 · 项目环境 · SubOS 与 Agent · 自定义索引 · 自我管理 · 从源码构建
架构系统概览
设计SubOS-as-XPKG · xvm 版本控制 · SubOS 隔离 · 索引生态系统 · 接口协议
规范xpkg manifest v1 · .xlings.json schema · Interface NDJSON v1

生态系统

项目角色
MCPP现代 C++ 构建工具链生态系统 — 通过 xlings 分发
Luban Linux即将发布的 Linux 发行版,使用 xlings 作为系统级包管理器 (链接待发布)
xim-pkgindex官方包索引 — 60+ 个包且持续增长

社区

贡献

贡献者

Star History Chart