Host-side Python bindings for capOS, the capability operating system: a remote-session client over the CapSet forwarding protocol (https://cap-os.dev).
Project description
capos (Python)
Host-side Python bindings for capOS, a research capability operating system where every resource is a typed Cap'n Proto capability.
This package is the working base for the host-side capOS SDK: it binds capOS's
in-repo host remote-session client, which speaks the CapSet forwarding protocol
that a running capOS exposes. That protocol is the concrete shape of the capos
Rust crate's reserved remote transport, surfaced here in Python. Today it
covers connecting, authenticating, listing the forwarded CapSet, and reading
session metadata; more of the typed capability surface follows.
Install
pip install capos
Prebuilt wheels target Linux x86_64, CPython 3.9+ (abi3). On other platforms pip falls back to the source distribution, which builds the Cap'n Proto schema and therefore needs the pinned Cap'n Proto compiler on the build host.
Hello world
Needs no capOS instance:
import capos
print(capos.hello())
print("capos", capos.__version__)
Connect to a running capOS
Start a capOS instance from the repo (make run) so it forwards the remote
CapSet on 127.0.0.1:2327, then:
import capos
with capos.Client(host="127.0.0.1", port=2327) as client:
client.login_anonymous(profile="operator")
print(client.system_motd())
for cap in client.list_capset():
print(cap)
See examples/ for runnable scripts.
Links
- Project: https://cap-os.dev
- Source: https://github.com/ei-grad/capos
Licensed under either of MIT or Apache-2.0 at your option.
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 capos-0.1.3.tar.gz.
File metadata
- Download URL: capos-0.1.3.tar.gz
- Upload date:
- Size: 5.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6cfcd2c5d57edfd98534e71759ea3a80a25811d577f9a3f777cdaca4ee3a0b62
|
|
| MD5 |
69d59c74f0492d5cb0910d589e7434ce
|
|
| BLAKE2b-256 |
29045632ac1250a53805f3f7daa58862f8bc715d1932e3883964d03a6f160248
|
Provenance
The following attestation bundles were made for capos-0.1.3.tar.gz:
Publisher:
python-release.yml on ei-grad/capos
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
capos-0.1.3.tar.gz -
Subject digest:
6cfcd2c5d57edfd98534e71759ea3a80a25811d577f9a3f777cdaca4ee3a0b62 - Sigstore transparency entry: 2187429625
- Sigstore integration time:
-
Permalink:
ei-grad/capos@ecaa25ac214f68861cdb8b12a21cff2321a9b85d -
Branch / Tag:
refs/tags/python-v0.1.3 - Owner: https://github.com/ei-grad
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-release.yml@ecaa25ac214f68861cdb8b12a21cff2321a9b85d -
Trigger Event:
push
-
Statement type:
File details
Details for the file capos-0.1.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: capos-0.1.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 395.6 kB
- Tags: CPython 3.9+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
217f77110ca769bf98d6e00b8c23e89567ce1f30063a72d478162a91120a88c4
|
|
| MD5 |
bce445ab4f80e967d09a2eb558bee255
|
|
| BLAKE2b-256 |
e7ea78f76512614d171e20b775637394230761efad1e5c8f4ad3ee7e7aad87ad
|
Provenance
The following attestation bundles were made for capos-0.1.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
python-release.yml on ei-grad/capos
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
capos-0.1.3-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
217f77110ca769bf98d6e00b8c23e89567ce1f30063a72d478162a91120a88c4 - Sigstore transparency entry: 2187429650
- Sigstore integration time:
-
Permalink:
ei-grad/capos@ecaa25ac214f68861cdb8b12a21cff2321a9b85d -
Branch / Tag:
refs/tags/python-v0.1.3 - Owner: https://github.com/ei-grad
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-release.yml@ecaa25ac214f68861cdb8b12a21cff2321a9b85d -
Trigger Event:
push
-
Statement type: