Skip to content

sp policy

Phase: v1
When agents use this: Validate and apply YAML policy changes; CI gates on validate.

Synopsis

Manage declarative policies: recording, mock, compare.

Structure

text
sp policy <kind> <action>

<kind>: recording | mock | compare

ActionDescription
listList policy documents
get <id>Get policy by id
applyCreate or update (-f file or stdin)
delete <id>Remove policy
validateValidate without save (-f)
export <id>Write YAML to stdout or -o
importImport YAML file (-f)
diffv2: diff local file vs server

Examples

bash
sp policy recording list --json
sp policy recording validate -f policies/recording-prod.yaml --json
sp policy recording apply -f policies/recording-prod.yaml --json
sp policy mock export policy-id-1 -o mock.yaml
sp policy compare get compare-global --json

JSON output (validate)

json
{
  "ok": true,
  "command": "policy recording validate",
  "data": {
    "valid": true,
    "errors": [],
    "warnings": []
  }
}

REST mapping

Recording (/api/recording-policies)

ActionMethodPath
listGET/policies
getGET/policies/{id}
apply (JSON)POST/policies
apply (YAML)POST/policies/yaml (Content-Type: text/yaml)
deleteDELETE/policies/{id}
validatePOST/policies/validate
exportGET/policies/{id}/yaml

Mock (/api/mock-policies)

Same path pattern under /api/mock-policies.

Compare (/api/compare-rules)

ActionMethodPath
listGET/policies
getGET/policies/{id}
applyPOST/policies
validatePOST/policies/validate
exportGET/policies/{id}/yaml
templatesGET/templates, /functions (v2 helpers)

Schema

See Policy YAML and policy-yaml-guide.