CLI reference
picoo create <namespace>/<name>
Section titled “picoo create <namespace>/<name>”Scaffold a new op.
| Flag | Required | Notes |
|---|---|---|
--runtime |
yes | python, node, or binary |
--description |
yes | shown in list/show/search |
--input |
no, repeatable | key:type, e.g. --input title:string --input body:string? (append ? for optional) |
--entry |
no | script filename; defaults to main.py / index.js / main |
--auth |
no | auth provider name, stored in the manifest |
--network |
no, repeatable | allowed network host for the permissions allowlist |
--python |
no | PEP 723 requires-python constraint (python ops only), e.g. ">=3.12" |
picoo update <namespace>/<name>
Section titled “picoo update <namespace>/<name>”Patch an existing op’s manifest. Every flag is optional; only what you pass is
changed. --input, when given, replaces the whole input schema rather than
merging.
picoo run <namespace>/<name>
Section titled “picoo run <namespace>/<name>”Run an op.
| Flag | Notes |
|---|---|
--input |
repeatable, key=value |
Validates inputs against the manifest before spawning the subprocess. Prints the
op’s result or error envelope as pretty JSON; exits non-zero on error.
picoo list
Section titled “picoo list”Lists every locally known op with its runtime kind and description.
picoo show <namespace>/<name>
Section titled “picoo show <namespace>/<name>”Prints an op’s full manifest (as TOML) plus where its script lives on disk.
picoo search <query>
Section titled “picoo search <query>”Semantic search over op descriptions.
| Flag | Notes |
|---|---|
--top |
max results, default 5 |
--json |
machine-readable output |
Returns id, description, and input schema per hit, enough to build a picoo run
call without a follow-up show.
picoo doctor
Section titled “picoo doctor”Checks whether the runtimes your ops need (python/uv, node) are available on
this machine, and prints an install hint for anything missing.
Storage
Section titled “Storage”Ops live at ~/.picoo/ops/<namespace>/<name>/ (global). A local ./.picoo/ops/
directory, if present, is checked first and takes precedence.