Kinds and platforms
The four package kinds, where each installs, and the platform ids apps are published against.
Generated from the code that implements this. If the schemas, the platform table or the routes change, this page changes with them — and the tests fail if it does not.
Kinds
| Kind | Platforms | Installs to | Command |
|---|---|---|---|
skill | any | ~/.senclaw/managed/skills | senclaw skill install <scope>/<name> |
app | per platform | chosen by the installer | senclaw app install <scope>/<name> |
plugin | any | ~/.senclaw/managed/plugins | senclaw plugin install <scope>/<name> |
workflow | any | ~/senclaw/workflows | senclaw workflow install <scope>/<name> |
Only apps have a platform matrix. Skills, plugins and workflows are text, so they carry a single artifact with platform any — which is why one publish path serves every kind instead of four.
Platform ids
The canonical id is ${process.platform}-${process.arch}. The CLI is Node, so resolving a build on your machine is a lookup, not a guess.
| Id | Means | Rust triple | Tauri key | Go GOOS/GOARCH |
|---|---|---|---|---|
darwin-arm64 | macOS (Apple Silicon) | aarch64-apple-darwin | darwin-aarch64 | darwin/arm64 |
darwin-x64 | macOS (Intel) | x86_64-apple-darwin | darwin-x86_64 | darwin/amd64 |
win32-x64 | Windows (x64) | x86_64-pc-windows-msvc | windows-x86_64 | windows/amd64 |
win32-arm64 | Windows (ARM64) | aarch64-pc-windows-msvc | windows-aarch64 | windows/arm64 |
linux-x64 | Linux (x64) | x86_64-unknown-linux-gnu | linux-x86_64 | linux/amd64 |
linux-arm64 | Linux (ARM64) | aarch64-unknown-linux-gnu | linux-aarch64 | linux/arm64 |
Publish against the canonical id. Translation from a Rust or Go build target happens once, at publish time, where the target is known — never at install time on a user's machine. The one exception is the Tauri updater endpoint, which receives Tauri's own names in the request path and translates back.
libc
| Value | Means |
|---|---|
na | Not applicable — macOS, Windows, or a non-binary package |
glibc | Linux build linked against glibc |
musl | Linux build linked against musl |
Never null. SQLite treats NULLs as distinct in a unique index, so a nullable libc would quietly admit two identical Linux rows and make artifact resolution nondeterministic.
Formats and channels
| Format |
|---|
tgz |
zip |
dmg |
exe |
msi |
nsis |
appimage |
deb |
rpm |
| Channel | Means |
|---|---|
stable | The default lane |
beta | Pre-release lane (beta) |
alpha | Pre-release lane (alpha) |
A channel is the artifact lane. It is not the same thing as the latest dist-tag, which points at a version.