Docker
The parley CLI is published as a container image, so you can run services without installing Node:
docker run --rm ghcr.io/solomonjames/parley demoThe image's entrypoint is parley, so every CLI command works. It runs as a non-root user, exposes ports 7447 and 8080, and is built for linux/amd64 and linux/arm64.
Bind to 0.0.0.0 inside containers
Parley listens on 127.0.0.1 by default. Inside a container, pass --host 0.0.0.0 so the published port reaches it.
Wrap an API
docker run --rm -p 7447:7447 -e GITHUB_TOKEN \
ghcr.io/solomonjames/parley openapi --preset github --host 0.0.0.0
docker run --rm -p 7447:7447 ghcr.io/solomonjames/parley \
openapi https://petstore3.swagger.io/api/v3/openapi.json --base https://petstore3.swagger.io/api/v3 --host 0.0.0.0Add --http 8080 -p 8080:8080 to also serve the HTTP bridge. Upstream credentials go in with -e, and the model never sees them.
Which principal it trusts
A wrapped API only accepts writes authorized by principals it trusts. Pass yours in:
docker run --rm -p 7447:7447 -e PARLEY_TRUST="$(parley whoami | awk '/principal/{print $2}')" \
ghcr.io/solomonjames/parley openapi --preset github --host 0.0.0.0Then point your AI tool at it: parley add parley://127.0.0.1:7447.
The example services
docker run --rm -p 7447:7447 -p 7449:7449 -e PARLEY_TRUST=… ghcr.io/solomonjames/parley examples --host 0.0.0.0Verify the image
Images are published from tagged releases with build provenance. See Verified releases.