Skip to content
Musher Docs

SDKs

Official client libraries for pulling, verifying, caching, and loading versioned bundles of prompts, skills, toolsets, and agent specs from Musher.

Get Started

bash
pip install musher-sdk
python
from musher import pull

bundle = pull("acme/code-review-kit")

for asset in bundle.manifest.assets:
    print(f"{asset.type}: {asset.path}")

Choose Your Language

Feature Comparison

FeaturePythonTypeScript
Packagemusher-sdk@musher-dev/musher-sdk
RuntimePython 3.13+Node.js 20+
Sync clientClient
Async clientAsyncClientMusherClient
Pull bundlespull() / pull_async()pull()
Resolve metadataresolve() / resolve_async()resolve()
VerificationBeta Coming soonSHA-256 integrity
LockfilesBeta Coming soonwriteLockfile()
Typed handlesFile, Skill, Prompt, Toolset, AgentSpecFile, Skill, Prompt, Toolset, AgentSpec
Schema validationPydanticZod
Authenv, keyring, file, programmaticenv, keyring, file, programmatic
Claude integrationBeta Coming soonPlugin export, skill install
OpenAI integrationLocal + hosted exportLocal + inline + agents
VS Code integrationBeta Coming soonSkill install
Dependencieshttpx, keyring, platformdirs, pydanticzod

Authentication

Both SDKs automatically discover credentials from multiple sources, checked in order:

  1. MUSHER_API_KEY environment variable
  2. OS keyring (musher/<host>)
  3. Credential file (~/.local/share/musher/credentials/)
  4. Programmatic — pass a token directly to the client constructor

The SDK uses the first credential found. For most use cases, setting the MUSHER_API_KEY environment variable is the simplest option.