Skip to main content

rcli-kit-pin

Bump cmake/sdk-pin.cmake to a new published SDK C++ desktop kit (version + SHA-256 + IDL lock). Use after an SDK GitHub Release is published (not draft), when fetch-kit.sh 404s, or when SCHEMA_LOCK mismatches.

Datos de origen

Repositorio
RunanywhereAI/RCLI
Última actividad en el origen
25 de agosto de 2026 a las 18:06
Idioma detectado de SKILL.md
inglés
Estrellas
1544
Forks
85

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
rcli-kit-pin
description
Bump cmake/sdk-pin.cmake to a new published SDK C++ desktop kit (version + SHA-256 + IDL lock). Use after an SDK GitHub Release is published (not draft), when fetch-kit.sh 404s, or when SCHEMA_LOCK mismatches.
# RCLI kit pin Pin file: `cmake/sdk-pin.cmake`. Fetcher: `scripts/fetch-kit.sh`. Overlay: `scripts/fetch-private-pack.sh`. CMake wrapper: `cmake/RunAnywhereSDK.cmake`. Companion: **cpp-desktop-kit** in runanywhere-sdks (what the tarball contains). ## Preconditions 1. SDK GitHub Release `v$SDK` is **published** (`isDraft=false`). Drafts 404 for this repo's `GITHUB_TOKEN`. Prerelease is fine; `latest` is not required. 2. Public assets exist: `RunAnywhere-cpp-desktop-{macos-arm64,windows-x64}-v$SDK.tar.gz` (+ windows-arm64 once that kit is on the release). 3. Do **not** point `RCLI_SDK_DIR` at SDK **source** — configure error. Prefix is `-DCMAKE_PREFIX_PATH=` or `-DRCLI_SDK_KIT=`. ## Bump together (never version-only) ```bash # After SDK v$SDK is published: gh release download "v$SDK" --repo RunanywhereAI/runanywhere-sdks \ --pattern 'RunAnywhere-cpp-desktop-*-v'"$SDK"'.tar.gz*' -D /tmp/kits shasum -a 256 /tmp/kits/RunAnywhere-cpp-desktop-*.tar.gz ``` Update in `cmake/sdk-pin.cmake`: - `RCLI_PINNED_SDK_VERSION` - `RCLI_PINNED_KIT_SHA256_MACOS_ARM64` - `RCLI_PINNED_KIT_SHA256_WINDOWS_X64` - `RCLI_PINNED_KIT_SHA256_WINDOWS_ARM64` (uncomment once the asset exists) - IDL triple copied from the kit's `share/runanywhere/SCHEMA_LOCK`: `RCLI_PINNED_IDL_VERSION`, `RCLI_PINNED_IDL_SCHEMA_SHA256`, `RCLI_PINNED_IDL_PROTOC_VERSION` `fetch-kit.sh` refuses `SDK_VERSION != RCLI_PINNED_SDK_VERSION`. Do not override only an env var to "try" a newer kit — checksums are keyed to the pin. Configure fails if the extracted kit's `SCHEMA_LOCK` does not match the IDL pin. When the schema changes, consume a new kit and bump the pin — never regenerate headers locally. RCLI never runs `protoc`. ## CI Swift tree `.github/workflows/ci.yml` and `release.yml` check out `RunanywhereAI/runanywhere-sdks` at `ref: v$SDK` into `.deps/runanywhere-sdks` for the Apple MLX host (`RCLI_SDK_SWIFT_PATH`). Bump that ref in the **same commit** as the pin. macos-26 (Xcode 26 / Swift 6.2 — matches SDK `swift-tools-version: 6.2`); macos-15 is Swift 6.1; macos-14 is Swift 5.10. ## Private overlays Not part of the pin. Applied after extract: 1. `RCLI_PRIVATE_OVERLAY` (local tarball) 2. tarball next to the kit prefix named `RunAnywhere-cpp-desktop-{macos-arm64-neurt,windows-arm64-qhexrt}-private-v*.tar.gz` 3. skip (OSS) unless `RCLI_REQUIRE_PRIVATE=1` QHexRT is Windows ARM64 only. Public bottles must stay OSS — never bake overlay bytes into a Homebrew bottle or a public GitHub Release asset. Windows ARM64 **public** kit is commons-only (no llama.cpp). Overlay apply then rebuild product `rcli.exe`. `v0.20.28` ARM64 kits are missing `lib/libcurl.lib` (packager only globbed x64-windows-static) — copy from vcpkg `arm64-windows-static` until the next SDK kit train. RCLI `cmake/RunAnywhereSDK.cmake` links that import lib when present. NeuRT: public mac bottle has MLX, not NeuRT. Overlay tarball + `RCLI_APPLE_MLX_HOST=ON` rebuild. See **rcli-e2e** for QAIRT / SD15 / DSP gotchas; do not weaken public CI to require overlays. ## Verify ```bash bash scripts/fetch-kit.sh macos-arm64 /tmp/kit cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=/tmp/kit cmake --build build -j "$(sysctl -n hw.logicalcpu)" RCLI_SDK_KIT=/tmp/kit bash scripts/e2e.sh ./build/rcli ```
Ver en GitHub