fystash
Python SDK for the Fystash public API. Catalog operations are generated from
the same operation catalog as TypeScript. Ergonomic handles (Revision,
Branch, Plan, Run, Evidence) live in a handwritten layer above that
transport (ADR-0091). This package is not a second CLI.
Install
pip install fystash
Configure
Set environment variables, or pass them explicitly. The SDK does not read
~/.fystash/credentials.json unless you call Fystash.from_cli_context().
FYSTASH_API_URL default https://api.fystash.ai/v1
FYSTASH_ACCESS_TOKEN
FYSTASH_PROJECT_ID
from fystash import Fystash
fystash = Fystash.from_env()
# or: Fystash.connect(api_url=..., access_token=..., project_id=...)
Quickstart
fystash = Fystash.from_env()
revision = fystash.environments.compile_file("environment.yaml")
branch = fystash.branches.create(
revision=revision.id,
name="dev"
)
plan = fystash.runs.plan(
revision=revision.id,
branch=branch.id
)
run = plan.apply()
run.wait_ready()
run.exec(["pytest", "-q"])
evidence = run.evidence.list()
run.stop()
plan.apply() submits the digest stored on that Plan object. Retrying apply()
on the same handle reuses one idempotency key; constructing a new Plan starts a
new intent.
run.exec(argv) maps to catalog execProcess with component=workspace and
actor=agent unless overridden. It never invokes a local shell.
Errors
Failures keep the canonical envelope code. Convenience classes
(AuthenticationError, PermissionError, CapabilityUnavailableError,
ApprovalRequiredError, ConflictError, TimeoutError) wrap that envelope.
License
Apache-2.0
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
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
File details
Details for the file fystash-0.6.0.tar.gz.
File metadata
- Download URL: fystash-0.6.0.tar.gz
- Upload date:
- Size: 35.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
89768d0f5a6ca7a7262d1bf97a4dfe996872d34020d5d4c9045a2c30569d0cfe
|
|
| MD5 |
4d3d02ecf7d798d5369e6a48d5773db9
|
|
| BLAKE2b-256 |
79f63fd0820f57c2bebff683074025005a1f4b615ead341327752caff295034f
|
File details
Details for the file fystash-0.6.0-py3-none-any.whl.
File metadata
- Download URL: fystash-0.6.0-py3-none-any.whl
- Upload date:
- Size: 32.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b6d9a065ab214cdd612e86e572ab1410f9c5dde21ff72323520a36b57b574212
|
|
| MD5 |
8cfc2fd7e76d682f8ea7727ae0a5bb8a
|
|
| BLAKE2b-256 |
f7a61e0b1c89e6578819b0334633ff269f1c84e8274298eba664166bbdfc236a
|