{"$id":"https://sce.crocoder.dev/config.json","$schema":"https://json-schema.org/draft/2020-12/schema","title":"SCE Config","description":"Canonical JSON Schema for global and repo-local sce/config.json files.","type":"object","properties":{"$schema":{"type":"string","const":"https://sce.crocoder.dev/config.json"},"log_level":{"type":"string","enum":["error","warn","info","debug"]},"log_format":{"type":"string","enum":["text","json"]},"log_file":{"type":"string","minLength":1},"log_file_mode":{"type":"string","enum":["truncate","append"]},"timeout_ms":{"type":"integer","minimum":0},"workos_client_id":{"type":"string"},"policies":{"type":"object","properties":{"attribution_hooks":{"type":"object","properties":{"enabled":{"type":"boolean"}},"additionalProperties":false},"bash":{"type":"object","properties":{"presets":{"type":"array","items":{"type":"string","enum":["forbid-git-all","forbid-git-commit","use-pnpm-over-npm","use-bun-over-npm","use-nix-flake-over-cargo"]},"uniqueItems":true,"allOf":[{"not":{"allOf":[{"contains":{"const":"use-pnpm-over-npm"}},{"contains":{"const":"use-bun-over-npm"}}]}}]},"custom":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"not":{"enum":["forbid-git-all","forbid-git-commit","use-pnpm-over-npm","use-bun-over-npm","use-nix-flake-over-cargo"]}},"match":{"type":"object","properties":{"argv_prefix":{"type":"array","items":{"type":"string","minLength":1},"minItems":1}},"additionalProperties":false,"required":["argv_prefix"]},"message":{"type":"string","minLength":1}},"additionalProperties":false,"required":["id","match","message"]}}},"additionalProperties":false}},"additionalProperties":false}},"additionalProperties":false,"dependentRequired":{"log_file_mode":["log_file"]}}