Runner CLI — author and run hosted Runner apps from your terminal (the `runner` command).
Project description
acsetra — the Runner CLI
A thin client for building and running hosted Runner apps from your terminal.
It holds no framework logic: every authoring command serializes to {op, args}
and is POSTed to the hosted API, where validation, reserved-code guards, and
doctor compiles all run server-side. You get the grammar of the framework, not
its implementation.
Install
pipx install acsetra # recommended (isolated)
# or: pip install acsetra
runner signin
Exposes three console scripts — runner (primary), acsetra (brand alias), and
r (continuity with ./r).
Quick start
runner signin # device-flow sign-in; caches a token
runner whoami
runner app create crm --label "CRM" # create an app scope in your workspace
runner set put crm contacts ada --json '{"role":"eng"}'
runner read contacts -S <workspace>.crm
runner doctor <workspace>.crm && runner compile <workspace>.crm
runner dev <workspace>.crm # open the app's hosted surface in your browser
How it fits together
runner signinruns the OAuth device flow: it prints a URL + code, you approve in the browser, and the CLI caches a token at~/.config/acsetra/credentials(0600).runner docs pullwritesCLAUDE.md+.runner/docs/*— a compact model of the framework, the exact command grammar, and a live skeleton of your app — so a coding agent (Claude Code) has the context it needs to build withrunner.- The hosted DB is the source of truth. Local files are instructions and mirrors,
never runtime source.
runner checkoutproduces disposable working copies under.tmp/for grep and inspection;runner dev <app>just opens the live hosted surface in your browser.
Environment overrides
| Var | Meaning |
|---|---|
ACSETRA_API_BASE |
hosted API origin (default https://pen.acsetra.com) |
ACSETRA_TOKEN |
bearer token (skips the cached credential) |
ACSETRA_WORKSPACE |
act in this workspace slug |
ACSETRA_SCOPE |
default app scope for -S-less commands |
Run runner help for the full verb list.
Project details
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 acsetra-0.1.7.tar.gz.
File metadata
- Download URL: acsetra-0.1.7.tar.gz
- Upload date:
- Size: 36.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
76d28d25fb7a8454521f812e6c1395e3e3721b4efe3d75aceab937af42cef040
|
|
| MD5 |
fda55e1bf55db69ca84d68f2c2c37434
|
|
| BLAKE2b-256 |
3fba4e9a2582a1acbed337635f2a6d62a9b6cb7bf6349922d80f219f8f7edf3f
|
File details
Details for the file acsetra-0.1.7-py3-none-any.whl.
File metadata
- Download URL: acsetra-0.1.7-py3-none-any.whl
- Upload date:
- Size: 44.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
beca091a4cbe594421af09926b29e31c42ed6f93a670f060a449ccabf9c4f7a7
|
|
| MD5 |
25c203ec23d354818321ed2c32f0dd8c
|
|
| BLAKE2b-256 |
746f1f5442f200ec33a081ba14d702dad7e42a52cc322c58d1fbdd0a3451d615
|