Scripting
JSON input, pagination, retries, and the scripting contract.
Pass complex payloads inline, from a file, or through stdin. Explicit flags override fields from the JSON input.
epismo playbook create --input @playbook.json
epismo case record append <case-id> --input @record.json
epismo playbook suggestion create <playbook-id> --input - < suggestion.jsonSuccess writes JSON to stdout and exits 0. Failure writes a JSON-shaped error to stderr and exits non-zero. Automation should inspect the error code and retryable fields. Keep these defaults in CI; --diagnostic-format human is for terminal use.
List and search commands use --page-size and --cursor; use --all to follow every returned cursor or --limit to cap results. Use --output jsonl for one result per line. --output value --field checkout_url extracts a scalar; the built-in --jq supports field projections such as .playbooks[] | .id.
Mutation commands generate an idempotency UUID when omitted. Reuse a key only for the identical uncertain request. Case and Task updates require the latest lock version; after a conflict, re-read state and reconsider the intended change. Use --dry-run before impactful archive, delete, revoke, close, or ACL changes.