This release is a pre-release and may not be stable for production use.
convilyn
Official Python client for the Convilyn API — convert files, run AI workflows, and ship in five lines of Python or a single shell command.
pip install convilyn
export CONVILYN_API_KEY=ck_...
convilyn convert report.docx --to pdf
from convilyn import Convilyn
client = Convilyn() # reads CONVILYN_API_KEY from env
file = client.files.upload("report.docx")
job = client.convert.create_and_wait(file=file, target_format="pdf")
client.convert.download_to(job, to="report.pdf")
What you get
-
Python SDK —
Convilyn(sync) andAsyncConvilyn(async) with resource-style accessors:client.files,client.convert,client.goals(agentic / AI workflows with HITL slot filling),client.workflows(community marketplace), andclient.account(billing tier + cost-preview).Goal progress is polling-only in v1. Follow a run with
client.goals.wait(...)/retrieve(...)(orconvilyn goals statusfrom the shell). The WebSocket gateway does not accept consumerck_keys yet, sogoals.events()streaming raises with guidance pointing back at polling until that lands. -
CLI — five sub-command groups installed with the package:
convilyn convert <file> --to <format>— upload, convert, downloadconvilyn doctor— environment + connectivity diagnosticsconvilyn api <METHOD> <PATH>— gh-style escape hatch for any API endpointconvilyn goals {start,status,events,fill-slot,confirm,cancel,retry}— drive AI workflows from the shell (NDJSON streaming, HITL, pinned exit codes)convilyn account {plan,quota}— pre-flight your billing tier and workflow cost before running
-
Free to install, metered to use —
pip install convilynis free. API calls draw on your monthly quota (a generous free tier is available; Pro lifts the cap). The SDK raises typedPlanRequiredError/QuotaExceededError(both subclassAPIError) when an action exceeds your tier — see QUICKSTART §8. -
Resilient by default — retry on 5xx / 429 / 408 with exponential backoff + jitter,
Idempotency-Keyauto-stamped on mutating verbs,Retry-Afterhonoured. -
AI-agent friendly — every command supports
--jsonfor machine-readable output,--dry-runfor safe previews, and pinned exit codes (0 / 1 / 2 / 3 / 130) so agent loops can branch on the result without parsing free-text.
Companion package — building your own workflows
convilyn is the consumer SDK (you call the API). If you want to
build a tool server or author a workflow spec for the Convilyn
platform, install the author SDK:
pip install convilyn-author # separate package
convilyn-author init my-server
The two packages are intentionally separate so consumers don't pay
the uvicorn / FastAPI dependency cost. See
sdk/author-python
in the source repo.
Next
- QUICKSTART.md — 5-minute new-user guide (covers convert, goals, workflows, and account / quota chapters)
- STABILITY.md — what the public API is and the SemVer / deprecation promise behind it
- CHANGELOG.md — version history
- examples/ — runnable Python + shell scripts
- AGENT.md — guidance for AI coding agents contributing to this SDK
Licence
Apache-2.0. See LICENSE.
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 convilyn-1.1.1b5.tar.gz.
File metadata
- Download URL: convilyn-1.1.1b5.tar.gz
- Upload date:
- Size: 986.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
67d165a086c634a62c13f831bffc97ee703116454705f647c60b1b5a0d971732
|
|
| MD5 |
54f9965db2e74dcdbfd53253165b9851
|
|
| BLAKE2b-256 |
873d7b99b4b63e3acb876c4a9c094c2d3f006f512633e89f9b538efe6ea9a510
|
Provenance
The following attestation bundles were made for convilyn-1.1.1b5.tar.gz:
Publisher:
sdk-publish.yml on CoreNovus/convilyn
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
convilyn-1.1.1b5.tar.gz -
Subject digest:
67d165a086c634a62c13f831bffc97ee703116454705f647c60b1b5a0d971732 - Sigstore transparency entry: 2136734183
- Sigstore integration time:
-
Permalink:
CoreNovus/convilyn@a4be74f87cbd58827a1371ddbbd891f4e1317175 -
Branch / Tag:
refs/tags/sdk-consumer-python/v1.1.1b5 - Owner: https://github.com/CoreNovus
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
sdk-publish.yml@a4be74f87cbd58827a1371ddbbd891f4e1317175 -
Trigger Event:
push
-
Statement type:
File details
Details for the file convilyn-1.1.1b5-py3-none-any.whl.
File metadata
- Download URL: convilyn-1.1.1b5-py3-none-any.whl
- Upload date:
- Size: 84.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
900e6e87ac7351ac9af339b6780a69a8b973a6b4d9a11e1a9b74f80e3bd7a102
|
|
| MD5 |
7fa2e927688ae335dbdf0dc6e3561278
|
|
| BLAKE2b-256 |
fc652c183d875cc6ef1a3972c376f47ad37e168d74388d7db234084717b72035
|
Provenance
The following attestation bundles were made for convilyn-1.1.1b5-py3-none-any.whl:
Publisher:
sdk-publish.yml on CoreNovus/convilyn
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
convilyn-1.1.1b5-py3-none-any.whl -
Subject digest:
900e6e87ac7351ac9af339b6780a69a8b973a6b4d9a11e1a9b74f80e3bd7a102 - Sigstore transparency entry: 2136734204
- Sigstore integration time:
-
Permalink:
CoreNovus/convilyn@a4be74f87cbd58827a1371ddbbd891f4e1317175 -
Branch / Tag:
refs/tags/sdk-consumer-python/v1.1.1b5 - Owner: https://github.com/CoreNovus
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
sdk-publish.yml@a4be74f87cbd58827a1371ddbbd891f4e1317175 -
Trigger Event:
push
-
Statement type: