{ "$schema": "http://json-schema.org/draft-07/schema#", "definitions": { "AbsolutePathBuf": { "description": "A path that is guaranteed to be absolute and normalized (though it is not guaranteed to be canonicalized or exist on the filesystem).\n\nIMPORTANT: When deserializing an `AbsolutePathBuf`, a base path must be set using [AbsolutePathBufGuard::new]. If no base path is set, the deserialization will fail unless the path being deserialized is already absolute.", "type": "string" }, "FileSystemAccessMode": { "description": "Access mode for a filesystem entry.\n\nWhen two equally specific entries target the same path, we compare these by conflict precedence rather than by capability breadth: `none` beats `write`, and `write` beats `read`.", "enum": [ "read", "write", "none" ], "type": "string" }, "FileSystemPath": { "oneOf": [ { "properties": { "path": { "$ref": "#/definitions/AbsolutePathBuf" }, "type": { "enum": [ "path" ], "title": "PathFileSystemPathType", "type": "string" } }, "required": [ "path", "type" ], "title": "PathFileSystemPath", "type": "object" }, { "properties": { "type": { "enum": [ "special" ], "title": "SpecialFileSystemPathType", "type": "string" }, "value": { "$ref": "#/definitions/FileSystemSpecialPath" } }, "required": [ "type", "value" ], "title": "SpecialFileSystemPath", "type": "object" } ] }, "FileSystemSandboxEntry": { "properties": { "access": { "$ref": "#/definitions/FileSystemAccessMode" }, "path": { "$ref": "#/definitions/FileSystemPath" } }, "required": [ "access", "path" ], "type": "object" }, "FileSystemSandboxKind": { "enum": [ "restricted", "unrestricted", "external-sandbox" ], "type": "string" }, "FileSystemSandboxPolicy": { "properties": { "entries": { "items": { "$ref": "#/definitions/FileSystemSandboxEntry" }, "type": "array" }, "kind": { "$ref": "#/definitions/FileSystemSandboxKind" } }, "required": [ "kind" ], "type": "object" }, "FileSystemSpecialPath": { "oneOf": [ { "properties": { "kind": { "enum": [ "root" ], "type": "string" } }, "required": [ "kind" ], "title": "RootFileSystemSpecialPath", "type": "object" }, { "properties": { "kind": { "enum": [ "minimal" ], "type": "string" } }, "required": [ "kind" ], "title": "MinimalFileSystemSpecialPath", "type": "object" }, { "properties": { "kind": { "enum": [ "current_working_directory" ], "type": "string" } }, "required": [ "kind" ], "title": "CurrentWorkingDirectoryFileSystemSpecialPath", "type": "object" }, { "properties": { "kind": { "enum": [ "project_roots" ], "type": "string" }, "subpath": { "type": [ "string", "null" ] } }, "required": [ "kind" ], "title": "KindFileSystemSpecialPath", "type": "object" }, { "properties": { "kind": { "enum": [ "tmpdir" ], "type": "string" } }, "required": [ "kind" ], "title": "TmpdirFileSystemSpecialPath", "type": "object" }, { "properties": { "kind": { "enum": [ "slash_tmp" ], "type": "string" } }, "required": [ "kind" ], "title": "SlashTmpFileSystemSpecialPath", "type": "object" }, { "description": "WARNING: `:special_path` tokens are part of config compatibility. Do not make older runtimes reject newly introduced tokens. New parser support should be additive, while unknown values must stay representable so config from a newer Codex degrades to warn-and-ignore instead of failing to load. Codex 0.112.0 rejected unknown values here, which broke forward compatibility for newer config. Preserves future special-path tokens so older runtimes can ignore them without rejecting config authored by a newer release.", "properties": { "kind": { "enum": [ "unknown" ], "type": "string" }, "path": { "type": "string" }, "subpath": { "type": [ "string", "null" ] } }, "required": [ "kind", "path" ], "type": "object" } ] } }, "description": "Create a directory on the host filesystem.", "properties": { "path": { "allOf": [ { "$ref": "#/definitions/AbsolutePathBuf" } ], "description": "Absolute directory path to create." }, "recursive": { "description": "Whether parent directories should also be created. Defaults to `true`.", "type": [ "boolean", "null" ] }, "sandboxPolicy": { "anyOf": [ { "$ref": "#/definitions/FileSystemSandboxPolicy" }, { "type": "null" } ], "description": "Optional sandbox policy for re-invoking this filesystem operation under a sandbox." } }, "required": [ "path" ], "title": "FsCreateDirectoryParams", "type": "object" }