Skip to main content

plone-restapi-shell

A non-interactive, composable command-line shell over the core Plone REST API, built for automation agents.

Every invocation performs one logical operation and emits exactly one versioned JSON result envelope on stdout — on success and on failure alike — with a stable process-exit taxonomy that reports the failure class rather than an HTTP status.

$ plone-restapi --profile production content get --path /news
{"command":"content.get","meta":{…},"ok":true,"result":{…},"schema":"plone-restapi-shell/v1"}
$ echo $?
0

Installation

$ pipx install plone-restapi-shell

uv tool install plone-restapi-shell and plain pip install work as well. OS keyring support is the optional keyring extra. See docs/installation.md.

The shell also ships the agent skill for driving it, with a command reference rendered from its own command tree:

$ plone-restapi skill install          # into every known agent skills directory
$ plone-restapi skill update           # after upgrading the shell

Documentation

  • Quick start — profile, credential, read, write, confirm, and the exit taxonomy.
  • Agent idioms — the six obligations this shell puts on its caller, and the idiom for each.
  • Command reference — every family and operation with its safety class.
  • Releasing — version policy and the release gates.

plone-restapi <family> <operation> --help is the authoritative reference and needs no configuration, keyring, or network.

Verified against

Plone 6.2.0 with plone.restapi 10.0.2 is the maintained target and receives the full suite. Plone 6.1.5 and 6.0.15 are security-supported compatibility references verified by a smoke subset. CPython 3.10–3.14, on Linux, macOS, and Windows.

Development

$ make venv     # install the package and its tools
$ make check    # lint, types, and everything that needs no container
$ make gate     # the real-Plone suite with the 229/229 coverage gate

make help lists the rest. Implementation is tracked in issues/0023-implement-the-plone-restapi-shell-cli.md.

Licence

GPL-2.0-only. See LICENSE.

Release files for plone-restapi-shell 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for plone-restapi-shell 0.1.0
File Size Uploaded
plone_restapi_shell-0.1.0.tar.gz 488.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for plone-restapi-shell 0.1.0
File Interpreter ABI Platform
plone_restapi_shell-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 836.8 kB

Release files / plone_restapi_shell-0.1.0.tar.gz

Download URL plone_restapi_shell-0.1.0.tar.gz
Size 488.5 kB
Tags Source
SHA-256 checksum
How to use checksums
3064d77c7bfe3ad0c39791f04a93e216068f75eae955381bba94a4b484978689
BLAKE2b-256 checksum
How to use checksums
56c1ce1ffd5f9dfde929422919298d732f82cee9f6cfc5252b798415439d63cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / plone_restapi_shell-0.1.0-py3-none-any.whl

Download URL plone_restapi_shell-0.1.0-py3-none-any.whl
Size 348.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
aed10699f81bd0d8799519897e177695949f546ee4ecaff50f7547ca8d0ac24a
BLAKE2b-256 checksum
How to use checksums
38359f241dcb6eb03147cacee7fb09eaca4f98927972282bf48a89e81508f55d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

0.2.0

2 release files

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page