← Back to Skills Marketplace
wbavon

Install Stack Flagos

by Flagos · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
78
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install install-stack-flagos
Description
Install the 5-package multi-chip software stack (vLLM, FlagTree, FlagGems, FlagCX, vllm-plugin-FL) inside a GPU container. Handles network mirror detection,...
README (SKILL.md)

Install Multi-Chip Software Stack

Install 5 packages inside a running GPU container, in dependency order, with per-package validation and structured error reporting.

Skill Components

install-stack/
├── SKILL.md                           # This file — execution flow
├── scripts/
│   ├── detect_network.py              # Probe GitHub/PyPI, return mirror config (JSON)
│   ├── collect_env_info.py            # Python/glibc/arch/vendor/disk info (JSON)
│   ├── select_flagtree_wheel.py       # Match vendor+python+glibc → wheel specifier (JSON)
│   └── validate_packages.py           # Import-test all 5 packages, report status (JSON)
└── references/
    ├── vendor-mappings.md             # FlagCX make flags, adaptor names, dependency chain
    └── network-mirrors.md             # GitHub/PyPI mirror config rules

Prerequisites

  • A running Docker container with PyTorch + GPU access (from /gpu-container-setup)
  • Know the container name and GPU vendor

If invoked standalone, ask the user for container name and GPU vendor. If invoked from /flagrelease orchestrator, these are passed as context.

Execution Flow

Step 0: Resolve Container & Vendor

Verify the container is running:

docker inspect --format='{{.State.Status}}' \x3CCONTAINER> | grep -q running

Copy and run scripts/collect_env_info.py inside the container to get vendor, Python version, glibc version, architecture, and free disk space:

docker cp \x3CSKILL_DIR>/scripts/collect_env_info.py \x3CCONTAINER>:/tmp/
docker exec \x3CCONTAINER> python3 /tmp/collect_env_info.py

If vendor is unknown and user didn't provide --vendor, ask the user.

Step 1: Detect Network Environment

Copy and run scripts/detect_network.py inside the container:

docker cp \x3CSKILL_DIR>/scripts/detect_network.py \x3CCONTAINER>:/tmp/
docker exec \x3CCONTAINER> python3 /tmp/detect_network.py

Parse the JSON output to get GITHUB_PREFIX and PIP_INDEX for all subsequent commands. See references/network-mirrors.md for fallback rules.

Step 2: Check Disk Space

From collect_env_info.py output, verify at least 10GB free. If not, warn user and ask whether to proceed.

Step 3: Install Packages (in dependency order)

See references/vendor-mappings.md for dependency chain and install order: vLLM → FlagTree → FlagGems → FlagCX → vllm-plugin-FL


3.1: vLLM 0.13.0

docker exec \x3CCONTAINER> pip install ${PIP_INDEX} vllm==0.13.0

Quick validate:

docker exec \x3CCONTAINER> python3 -c "import vllm; assert vllm.__version__ == '0.13.0'"

GATE: If vLLM install fails → record error and EXIT the skill.


3.2: FlagTree (pre-compiled wheel)

Run scripts/select_flagtree_wheel.py to find the correct wheel:

python3 \x3CSKILL_DIR>/scripts/select_flagtree_wheel.py \
    --vendor \x3CVENDOR> --python \x3CPY_VER> --glibc \x3CGLIBC_VER>

If status is FOUND, uninstall stock triton and install the wheel:

docker exec \x3CCONTAINER> bash -c '
python3 -m pip uninstall -y triton
python3 -m pip uninstall -y triton
python3 -m pip install \x3CSPECIFIER> \x3CPIP_ARGS>
'

If status is NOT_FOUND, record the mismatch and continue (do not exit).


3.3: FlagGems

docker exec \x3CCONTAINER> bash -c "
cd /tmp && git clone ${GITHUB_PREFIX}/FlagOpen/FlagGems
cd FlagGems && pip install ${PIP_INDEX} -e .
"

Failure → record and continue.


3.4: FlagCX (two-phase build)

Read references/vendor-mappings.md to look up the correct Make flag and FLAGCX_ADAPTOR for the detected vendor.

Phase 1: Build C++ library:

docker exec \x3CCONTAINER> bash -c "
cd /tmp && git clone ${GITHUB_PREFIX}/flagos-ai/FlagCX
cd FlagCX && git submodule update --init --recursive
make \x3CMAKE_FLAG> -j\$(nproc)
"

Phase 2: Install PyTorch plugin:

docker exec \x3CCONTAINER> bash -c "
cd /tmp/FlagCX/plugin/torch
FLAGCX_ADAPTOR=\x3CADAPTOR> pip install -e . --no-build-isolation
"

Failure → record and continue.


3.5: vllm-plugin-FL

docker exec \x3CCONTAINER> bash -c "
cd /tmp && git clone ${GITHUB_PREFIX}/flagos-ai/vllm-plugin-FL
cd vllm-plugin-FL
pip install ${PIP_INDEX} -r requirements.txt
pip install --no-build-isolation -e .
"

On Iluvatar, if requirements.txt fails, retry with requirements_iluvatar.txt.

GATE: If vllm-plugin-FL fails → record error and EXIT the skill.


Step 4: Validate All Packages

Copy and run scripts/validate_packages.py inside the container:

docker cp \x3CSKILL_DIR>/scripts/validate_packages.py \x3CCONTAINER>:/tmp/
docker exec \x3CCONTAINER> python3 /tmp/validate_packages.py

This produces a comprehensive JSON report of all 5 packages with import status, versions, and gate check.

Step 5: Set Runtime Environment

If FlagCX installed successfully, persist FLAGCX_PATH:

docker exec \x3CCONTAINER> bash -c "echo 'export FLAGCX_PATH=/tmp/FlagCX' >> ~/.bashrc"

Step 6: Produce Final Report

Combine all results into structured output:

{
  "status": "PASS | PARTIAL | FAIL",
  "stage": "install-stack",
  "container": "\x3Cname>",
  "vendor": "\x3Cvendor>",
  "network": {"github_mirror": true, "pypi_mirror": true},
  "python_version": "3.11",
  "glibc_version": "2.34",
  "packages": {
    "vllm": {"status": "PASS", "version": "0.13.0"},
    "flagtree": {"status": "PASS", "version": "0.4.1+ascend3.2"},
    "flaggems": {"status": "PASS", "version": "..."},
    "flagcx": {"status": "PASS", "version": "0.10.0"},
    "vllm_plugin_fl": {"status": "PASS", "version": "..."}
  },
  "flagcx_path": "/tmp/FlagCX",
  "gate_passed": true,
  "errors": []
}

Status logic:

  • PASS — all 5 packages installed and validated
  • PARTIAL — vLLM + plugin installed, some of FlagTree/FlagGems/FlagCX failed
  • FAIL — vLLM or plugin failed (gate failed)

Error Handling

Failure Behavior
Container not running Report error, exit
Network unreachable (both direct and mirror) Report, exit
pip install fails Report package, full error, continue (unless gate)
Build from source fails Report compiler error, continue
No matching FlagTree wheel Report vendor/python/glibc mismatch, continue
Import fails after install Report traceback, continue
Disk space \x3C 10GB Warn user, ask whether to proceed
Timeout (any command) All commands use timeout; report which step

Timeout Rules

Operation Timeout
pip install (per package) 300s
git clone 120s
make (FlagCX) 300s
Network probe 5s
Validation (import) 30s
Usage Guidance
Treat this as an incomplete review result: the command sandbox failed with `bwrap: loopback: Failed RTM_NEWADDR: Operation not permitted`, so the skill should be re-scanned in an environment where `metadata.json` and `artifact/` can be inspected.
Capability Assessment
Purpose & Capability
Not assessable from artifact content because file inspection failed before any workspace files could be read.
Instruction Scope
Not assessable from artifact content because file inspection failed before any workspace files could be read.
Install Mechanism
Not assessable from artifact content because file inspection failed before any workspace files could be read.
Credentials
Not assessable from artifact content because file inspection failed before any workspace files could be read.
Persistence & Privilege
Not assessable from artifact content because file inspection failed before any workspace files could be read.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install install-stack-flagos
  3. After installation, invoke the skill by name or use /install-stack-flagos
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
- Initial release: install-stack-flagos 1.0.0 installs a 5-package multi-chip software stack (vLLM, FlagTree, FlagGems, FlagCX, vllm-plugin-FL) in a running GPU container. - Handles network mirror detection, disk space verification, package dependency ordering, wheel selection for FlagTree, per-package validation, and structured error reporting. - Includes detailed execution flow, timeout rules for each step, and user prompts for required inputs if context is missing. - Produces a comprehensive final JSON report with install status for each package and overall outcome. - Supports partial installation (with gating on critical failures), and logs errors for troubleshooting.
Metadata
Slug install-stack-flagos
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Install Stack Flagos?

Install the 5-package multi-chip software stack (vLLM, FlagTree, FlagGems, FlagCX, vllm-plugin-FL) inside a GPU container. Handles network mirror detection,... It is an AI Agent Skill for Claude Code / OpenClaw, with 78 downloads so far.

How do I install Install Stack Flagos?

Run "/install install-stack-flagos" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Install Stack Flagos free?

Yes, Install Stack Flagos is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Install Stack Flagos support?

Install Stack Flagos is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Install Stack Flagos?

It is built and maintained by Flagos (@wbavon); the current version is v1.0.0.

💬 Comments