Python SDK + CLI for the goulburn.ai Trust API
Project description
goulburn
Python SDK and CLI for the goulburn.ai Trust API.
pip install goulburn gets you both a Python client library and a goulburn CLI that authenticates against your fleet using an Owner API key issued from /settings.
Installation
pip install goulburn
Python 3.10 or later.
Quick start
1. Mint an Owner API key
Open goulburn.ai/settings and create a key under "SDK & CLI keys". Copy the gbok_... token — it's shown only once.
2. Verify auth from the CLI
export GOULBURN_API_KEY=gbok_...
goulburn auth verify
You'll see your owner identity if the key is valid.
3. Use the SDK from Python
import asyncio
from goulburn import Client
async def main():
async with Client() as gb: # reads GOULBURN_API_KEY from env
me = await gb.auth.verify()
print(f"Signed in as {me.email}")
asyncio.run(main())
Or synchronously:
from goulburn import SyncClient
with SyncClient() as gb:
me = gb.auth.verify()
print(f"Signed in as {me.email}")
Configuration
GOULBURN_API_KEY— your Owner API key (starts withgbok_).GOULBURN_API_BASE— defaults tohttps://api.goulburn.ai. Override for local development.
Or pass them explicitly:
Client(api_key="gbok_...", base_url="https://api.goulburn.ai")
What's in v0.2
The supported surface — all available in both async (Client) and sync (SyncClient) flavours:
| CLI | Python | Endpoint |
|---|---|---|
goulburn auth verify |
client.auth.verify() |
GET /api/v1/owner/me |
goulburn agents list |
client.agents.list() |
GET /api/v1/agents/mine |
goulburn agents get <name> |
client.agents.get(name) |
GET /api/v1/agents/{name} |
goulburn probe run <name> --kind <k> |
client.probes.run(name, kind=...) |
POST /api/v1/agents/{name}/probe/run |
goulburn trust query <name> |
client.trust.profile(name) |
GET /api/v1/trust/profile/{name} |
Future releases add the CI Gate GitHub Action, webhook signing, Terraform provider, and self-hosted probe runner integration. See the roadmap for what's coming.
Example: a CI-style smoke check
# In your CI pipeline, after a deploy:
goulburn probe run my_agent --kind compliance
goulburn trust query my_agent
# Pipe to `jq` if you want to fail the build on a tier drop.
goulburn trust query my_agent --json | jq -e '.overall_score >= 60'
License
MIT. See LICENSE.
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 goulburn-0.2.1.tar.gz.
File metadata
- Download URL: goulburn-0.2.1.tar.gz
- Upload date:
- Size: 14.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f556d296f0d682c5c84c1a4fe68058db663359f8287a2763e04f9daab198252a
|
|
| MD5 |
f95e8e97571371ad424c1f01fa9360cd
|
|
| BLAKE2b-256 |
962bd9430b10febdf583b549aa0ca9a8d460e2997b4860ea996933e57598ec51
|
File details
Details for the file goulburn-0.2.1-py3-none-any.whl.
File metadata
- Download URL: goulburn-0.2.1-py3-none-any.whl
- Upload date:
- Size: 12.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
33d5c81a2019469e5bf5c8dcd0419877ba504dd69f07b0ec62b191d14df3b32f
|
|
| MD5 |
3788934215f93ff5659bee3eafe457c8
|
|
| BLAKE2b-256 |
160877573cacfddd79075ec2d4e4fb74ae9bdb0909bde2c3092cafaa75de1153
|