| Artifact | Audience | Published as |
|---|---|---|
| Rust crates | Rust library users and surface binaries | crates.io |
rkat | CLI users | Homebrew tap for macOS/Linux, GitHub Release binary, Rust crate binary |
rkat-rpc | SDK backends and JSON-RPC hosts | GitHub Release binary |
rkat-rest | HTTP/SSE service hosts | GitHub Release binary |
rkat-mcp | MCP host integrations | GitHub Release binary |
| Python SDK | Python applications | meerkat-sdk on PyPI |
| TypeScript SDK | Node applications | @rkat/sdk on npm |
| Web SDK | Browser applications | @rkat/web on npm |
Release Checks
Run the release gate before cutting a tag:Binary Artifacts
Release assets are built for these binaries:rkatrkat-rpcrkat-restrkat-mcp
x86_64-unknown-linux-gnuaarch64-unknown-linux-gnuaarch64-apple-darwinx86_64-apple-darwinx86_64-pc-windows-msvc
checksums.sha256index.json
Homebrew Tap
The featured CLI install path is the Homebrew tap:rkat plus the companion binaries:
rkat-rpcrkat-restrkat-mcp
SDK Bootstrap
Python and TypeScript SDK users should not need a local Rust toolchain.| SDK | Install | Runtime resolution |
|---|---|---|
| Python | pip install meerkat-sdk | Uses MEERKAT_BIN_PATH when set; otherwise resolves a matching rkat-rpc release binary |
| TypeScript | npm install @rkat/sdk | Uses an explicit binary path when configured; otherwise resolves a matching rkat-rpc release binary |
Release Workflow
- Validate the release candidate.
- Build platform binaries.
- Create the GitHub release and upload binary assets.
- Update the Homebrew tap formula.
- Publish Rust crates.
- Publish Python, TypeScript, and Web SDK packages.
- Run install smoke checks for at least one platform.
BuildBuddy
Cargo is the default backend. BuildBuddy is selected explicitly:make buildbuddy-doctor when the local BuildBuddy setup looks suspicious.
It checks the API key, pinned bb CLI, generated Bazel files, selector
behavior, and lane isolation without printing secrets.
Credentials
Registry credentials are independent:| Registry | Credential |
|---|---|
| Homebrew tap | HOMEBREW_TAP_TOKEN |
| crates.io | Cargo publish token |
| PyPI | PYPI_API_TOKEN |
| npm | NPM_TOKEN |
Hard Rules
- Release only from tagged versions.
- Never publish mismatched Rust, Python, TypeScript, or contract versions.
- Never publish SDKs from a commit with stale generated schema artifacts.
- Keep public binary names stable:
rkat,rkat-rpc,rkat-rest,rkat-mcp. - Publish checksums and an index for release binary consumers.
