Skip to main content

Puras SDK + CLI — deploy and call long-running agentic skills on Puras.

Project description

puras

The Python SDK + CLI for Puras — deploy long-running, multi-step agentic skills and call them from anywhere.

pip install puras        # or: uv tool install puras  /  uvx puras

You get two things in one package:

  • import puras — the runtime SDK your deployed skills use (media.generate_image/video/audio, media.transcribe, secret, load_path, subagent.run).
  • puras — a CLI to scaffold, deploy, run, and tail skills from your terminal and CI.

Quickstart

puras login                       # paste a workspace API key (created in the dashboard)
puras init --name "My Skillpack"  # creates the skillpack + writes puras.yaml + scaffolds my-skill/
puras deploy                      # zips ./ and pushes an active deployment
puras run my-skill -i prompt="hi" # submit a job and wait for the result

Want a worked example instead of a blank slate? puras init --template hello-world scaffolds the full hello-world pack — an agentic skill, a deterministic skill, a custom tool, and two subagents.

Auth

  • Interactive: puras login stores your key in ~/.puras/config.json.
  • CI: set PURAS_API_KEY (and optionally PURAS_API_BASE) in the environment — no login step, no browser.
PURAS_API_KEY=puras_live_… puras deploy --skillpack <id>

Commands

Command What it does
puras login / logout / whoami manage stored credentials
puras init create a skillpack, write puras.yaml, scaffold a starter (--template hello-world for the full example)
puras skillpacks list your skillpacks
puras deploy [path] bundle a dir and push a deployment (--no-activate)
puras deployments list deployments for the current skillpack
puras activate <version|id> make a deployment the active one
puras run <skill> -i k=v submit a job and wait (--async, --json)
puras logs <job_id> stream a job's events until it finishes
puras secrets set/ls/rm manage skillpack secrets
puras pull download the active bundle

The skillpack is resolved from --skillpack <id|slug>, else the nearest puras.yaml. The CLI is a convenience over the public HTTP API (POST /v1/jobs, /v1/skillpacks/{id}/deployments, …) — anything it does, you can do with curl and a Bearer key.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

puras-0.17.0.tar.gz (27.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

puras-0.17.0-py3-none-any.whl (34.5 kB view details)

Uploaded Python 3

File details

Details for the file puras-0.17.0.tar.gz.

File metadata

  • Download URL: puras-0.17.0.tar.gz
  • Upload date:
  • Size: 27.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for puras-0.17.0.tar.gz
Algorithm Hash digest
SHA256 897f6c803a28d2b7b55b0a93bd44fd98584882bb38bf06b574e0c86b82b1c14d
MD5 11503a682d63a27b246f7b93b178985d
BLAKE2b-256 ae2ccdb68144743d5d8bf46514938a2a2d6e49edcf18008a0a5d558d917147e4

See more details on using hashes here.

File details

Details for the file puras-0.17.0-py3-none-any.whl.

File metadata

  • Download URL: puras-0.17.0-py3-none-any.whl
  • Upload date:
  • Size: 34.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for puras-0.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 44514979e953a01610b90d146d32182a9e6daf95b6676b1304577afbb8d733d7
MD5 7ed148074d1d2778f7b2c60bd827888e
BLAKE2b-256 0ee894b3ea8389de0836539f83e625385dca506cd0994062c6149043eb878203

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page