Turbine GraphQL CLI for human operators and AI agents
Project description
NetRise Turbine CLI
SDK-backed CLI for the Turbine platform — resource-oriented commands for everyday work, full GraphQL API as an escape hatch.
Approach
Two tiers, one runtime:
| Tier | When to use | Example |
|---|---|---|
| Curated (default) | Everyday tasks — list assets, remediate vulns, manage groups | turbine asset list |
api |
Full GraphQL coverage, custom inputs, new SDK ops | turbine api assets-relay --schema |
Same auth and output modes for both tiers; only rendering changes:
- TTY — Rich tables, panels, confirmation prompts
--output jsonor pipe — compact JSON on stdout (NDJSON for lists), exit codes, no prompts
| Audience | Guide |
|---|---|
| Human operators | docs/human.md — runnable examples |
| AI / automation | docs/agent.md — loop, I/O contract, token discipline |
Install
Three tiers — pick how much you want:
| Tier | Command | You get |
|---|---|---|
| SDK only | pip install netrise-turbine-sdk |
Python SDK |
| SDK + CLI | uv tool install netrise-turbine-cli (or pipx / pip) |
turbine command, SDK included |
| Everything | turbine skill install |
Agent skill in Cursor, Claude Code, and Codex |
turbine skill install detects which agent tools you have (~/.cursor, ~/.claude, ~/.agents/~/.codex) and installs the bundled skill to each; use --agent / --scope project for explicit control and turbine skill status to inspect. Developing in this repo? make turbine-cli-test sets up the poetry env with the local SDK.
Auth
Set credentials via TURBINE_* env vars (legacy unprefixed names still work) or .env:
TURBINE_ENDPOINT · TURBINE_AUDIENCE · TURBINE_DOMAIN · TURBINE_CLIENT_ID · TURBINE_CLIENT_SECRET · TURBINE_ORGANIZATION_ID
turbine auth status
turbine auth login --save # verify + persist non-secrets to ~/.config/turbine/config.toml
Command map
| Resource | Commands |
|---|---|
asset |
list, get, upload, files, status, activity, hashes |
vuln |
list, get, overview, remediate |
group |
list, members, create, update, delete, add-assets, remove-assets |
component |
list, grouped, crypto |
secret, credential, cert, key, misconfig, license, protection |
list |
user |
list, invite, delete, remove |
org |
info, settings |
search |
full-text search |
api |
all 114 GraphQL ops + catalog, graphql, schema |
Quick start
Human — list assets (lite detail, default):
turbine asset list --limit 10
Agent — catalog then execute:
turbine api catalog --json
turbine asset list --dry-run -o json
turbine api assets-relay --schema -o json
--output / -o may appear before or after the subcommand.
Documentation
| File | What |
|---|---|
| docs/human.md | Human guide + per-command examples |
| docs/agent.md | Agent playbook |
| reference.md | Generated API index + curated mapping |
| SKILL.md | Cursor agent skill |
Regenerate
From repo root:
make turbine-python-cli
Rebuilds API commands, catalog, coverage manifest, reference, SKILL auto-section, and human examples.
Test
make turbine-cli-test
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 netrise_turbine_cli-0.1.0.tar.gz.
File metadata
- Download URL: netrise_turbine_cli-0.1.0.tar.gz
- Upload date:
- Size: 52.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e3065321fc181abe7ac27edeef46dcc3c12b59bd9e6ef79a03845d137b0edd59
|
|
| MD5 |
a69376a2c0ecee53deae5cd847f66679
|
|
| BLAKE2b-256 |
46690472d4db08c6e7eb81e46848f8aca4e63e4cebe53131fac6d3f87c586423
|
File details
Details for the file netrise_turbine_cli-0.1.0-py3-none-any.whl.
File metadata
- Download URL: netrise_turbine_cli-0.1.0-py3-none-any.whl
- Upload date:
- Size: 69.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
69215352fa18c99cbba1a3591d785027daf305d8612f3ce1167e6b7f5a11a547
|
|
| MD5 |
8da938ad7e43323ae6c03080f0fb0f58
|
|
| BLAKE2b-256 |
d6b1554e39ba8c2709e426ac62bde310fb4e379e07c5b928fb8a9ab4b7f08807
|