Yaver Python SDK
Embed Yaver's local-first agent runtime into your Python applications. Zero dependencies (stdlib only).
Install
pip install yaver
Quick Start
Getting an auth token
Three ways, depending on context:
import yaver
# 1. Email + password — non-interactive, good for scripts/CI
token = yaver.login_with_email("you@example.com", "your-password")
# 2. Sign up a new account — non-interactive
token = yaver.signup_with_email("Your Name", "you@example.com", "your-password")
# 3. Browser OAuth — interactive, supports Apple/Google/GitHub/GitLab/Microsoft
# Opens https://yaver.io/auth?client=cli in the default browser and runs
# a tiny local HTTP listener on 127.0.0.1:19836 to capture the callback.
# Same flow as the `yaver auth` CLI command.
token = yaver.signin_via_browser()
Tokens are long-lived (30 days). Cache them in your app's keystore or env var; a fresh sign-in is only required after expiry or sign-out.
Using the client
from yaver import YaverClient
client = YaverClient("http://localhost:18080", token)
# Create a task
task = client.create_task("Fix the login bug")
print(f"Task {task['id']} created")
# Stream output
for chunk in client.stream_output(task["id"]):
print(chunk, end="")
# List all tasks
tasks = client.list_tasks()
Features
- Task management: create, list, get, stop, delete, continue tasks
- Output streaming: poll-based streaming with configurable interval
- Auth client: validate tokens, list devices, manage settings via Convex backend
- Verbosity control: set response detail level 0-10
- Native mode: optional ctypes bindings via C shared library (libyaver.so)
- Zero dependencies: uses only Python stdlib
Auth Client
from yaver import YaverAuthClient
auth = YaverAuthClient("your-token")
user = auth.validate_token()
devices = auth.list_devices()
settings = auth.get_settings()
Links
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
yaver-0.3.1.tar.gz
(11.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
yaver-0.3.1-py3-none-any.whl
(11.9 kB
view details)
File details
Details for the file yaver-0.3.1.tar.gz.
File metadata
- Download URL: yaver-0.3.1.tar.gz
- Upload date:
- Size: 11.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a7827a5d57b22a07e86fcba07c8803b8c5ad1ff7411e7f03ef91133565a96c18
|
|
| MD5 |
a8477bcafbc456034287ef84cf80bb15
|
|
| BLAKE2b-256 |
d2b9f13f9a76abe51876757a73c76dc8cc91a2933b7b35cb1dd72cce4e8f1ec4
|
File details
Details for the file yaver-0.3.1-py3-none-any.whl.
File metadata
- Download URL: yaver-0.3.1-py3-none-any.whl
- Upload date:
- Size: 11.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
493f3e75dec35052a93688ff6bc4280d83f3535445b853283aca13477b6b5d36
|
|
| MD5 |
edcafadb755b3d5c5c7969e28a001cb4
|
|
| BLAKE2b-256 |
7435274f740f92deede9f0d044d825829c6d50dea8300cc314ee878b262b6569
|