Python SDK for Treeship - portable trust receipts for agent workflows
Project description
treeship-sdk
Python SDK for Treeship -- portable trust receipts for agent workflows.
Install
pip install treeship-sdk
Requires the treeship CLI binary in PATH:
curl -fsSL treeship.dev/install | sh
treeship init
Usage
from treeship_sdk import Treeship
ts = Treeship()
# Attest an action
result = ts.attest_action(actor="agent://my-agent", action="tool.call")
print(result.artifact_id) # art_abc123...
# Attest a decision (LLM reasoning)
ts.attest_decision(
actor="agent://analyst",
model="claude-opus-4",
tokens_in=8432,
tokens_out=1247,
summary="Contract looks standard.",
confidence=0.91,
)
# Attest an approval
approval = ts.attest_approval(
approver="human://alice",
description="approve payment max $500",
)
print(approval.nonce) # single-use nonce
# Attest with approval binding
ts.attest_action(
actor="agent://executor",
action="stripe.charge.create",
approval_nonce=approval.nonce,
)
# Verify
result = ts.verify("art_abc123")
print(result.outcome) # "pass"
# Push to Hub
push = ts.dock_push("art_abc123")
print(push.hub_url) # https://treeship.dev/verify/art_abc123
# Wrap a command
result = ts.wrap("npm test", actor="agent://ci")
print(result.artifact_id)
API
| Method | Returns | Description |
|---|---|---|
attest_action(actor, action, ...) |
ActionResult |
Sign an action receipt |
attest_approval(approver, description, ...) |
ApprovalResult |
Sign an approval with nonce |
attest_handoff(from_actor, to_actor, artifacts) |
ActionResult |
Sign a handoff receipt |
attest_decision(actor, model, ...) |
ActionResult |
Sign a decision receipt |
verify(artifact_id) |
VerifyResult |
Verify an artifact chain |
dock_push(artifact_id) |
PushResult |
Push to Hub |
wrap(command, actor) |
ActionResult |
Wrap a shell command |
How it works
The SDK calls the treeship CLI binary via subprocess. All signing happens in the Rust binary. The Python SDK is a thin wrapper.
License
Apache-2.0
Project details
Release history Release notifications | RSS feed
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 treeship_sdk-0.9.4.tar.gz.
File metadata
- Download URL: treeship_sdk-0.9.4.tar.gz
- Upload date:
- Size: 8.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
16364028e746e80a267b23ce7bb4e8235c6e6334da0ac9e32ce5322c68519892
|
|
| MD5 |
ff8a0b9024501230ad2ca39a19892fbf
|
|
| BLAKE2b-256 |
2c65b184aa763e6424581b393e8b813184f2af6b407b5f1c004fa40efd60a624
|
File details
Details for the file treeship_sdk-0.9.4-py3-none-any.whl.
File metadata
- Download URL: treeship_sdk-0.9.4-py3-none-any.whl
- Upload date:
- Size: 9.1 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 |
64f186d4bce6b27ac079c43c14ea25f6298b9ac55ba2e23eb8493e4faef1333b
|
|
| MD5 |
f6ffaad2f8b6212a5e5e33a67311ad29
|
|
| BLAKE2b-256 |
a3cd206b65c6cd794ca34ff5ecd7695e6c751130c0107821920dda26ec4eb3a5
|