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.2.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.2.0
File Size Uploaded
plone_restapi_shell-0.2.0.tar.gz 490.9 kB Details

Built distribution (wheel)

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

Total release size: 841.1 kB

Release files / plone_restapi_shell-0.2.0.tar.gz

Download URL plone_restapi_shell-0.2.0.tar.gz
Size 490.9 kB
Tags Source
SHA-256 checksum
How to use checksums
f075aff3f3b1edbc6fd72c6c84ed8c328222d121620d6d7274ec8e2592df3e44
BLAKE2b-256 checksum
How to use checksums
2dc3095c9e5a990e8e3b1c0e8b4771042704bb9566103978a234c4c5235dcf4f
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.2.0-py3-none-any.whl

Download URL plone_restapi_shell-0.2.0-py3-none-any.whl
Size 350.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a0c1f492052ea20a5627ac3466ede73906115df668c2ae9a3451b0fa0785b636
BLAKE2b-256 checksum
How to use checksums
d2f3516f336daac32878bf49aebb4f9d9ffd3a26c9f98c971f68bffedef9ed22
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

This release

0.2.0 This release

2 release files

0.1.0

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