{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/opencode/latest.json",
  "x-lintel": {
    "source": "https://opencode.ai/config.json",
    "sourceSha256": "36879bc9d59b10c4bc53e4e6058fe33279200abce6902eed95ac42c31e00dfc1",
    "fileMatch": [
      "opencode.json",
      "opencode.jsonc",
      "**/.opencode/opencode.json",
      "**/.opencode/opencode.jsonc"
    ],
    "parsers": [
      "json",
      "jsonc"
    ]
  },
  "type": "object",
  "properties": {
    "$schema": {
      "description": "JSON schema reference for configuration validation",
      "type": "string"
    },
    "logLevel": {
      "description": "Log level",
      "ref": "LogLevel",
      "type": "string",
      "enum": [
        "DEBUG",
        "INFO",
        "WARN",
        "ERROR"
      ]
    },
    "server": {
      "description": "Server configuration for opencode serve and web commands",
      "ref": "ServerConfig",
      "type": "object",
      "properties": {
        "port": {
          "description": "Port to listen on",
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        },
        "hostname": {
          "description": "Hostname to listen on",
          "type": "string"
        },
        "mdns": {
          "description": "Enable mDNS service discovery",
          "type": "boolean"
        },
        "mdnsDomain": {
          "description": "Custom domain name for mDNS service (default: opencode.local)",
          "type": "string"
        },
        "cors": {
          "description": "Additional domains to allow for CORS",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "additionalProperties": false
    },
    "command": {
      "description": "Command configuration, see <https://opencode.ai/docs/commands>",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "object",
        "properties": {
          "template": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "agent": {
            "type": "string"
          },
          "model": {
            "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
            "type": "string"
          },
          "subtask": {
            "type": "boolean"
          }
        },
        "required": [
          "template"
        ],
        "additionalProperties": false
      }
    },
    "skills": {
      "description": "Additional skill folder paths",
      "type": "object",
      "properties": {
        "paths": {
          "description": "Additional paths to skill folders",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "urls": {
          "description": "URLs to fetch skills from (e.g., <https://example.com/.well-known/skills/)>",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "additionalProperties": false
    },
    "watcher": {
      "type": "object",
      "properties": {
        "ignore": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "additionalProperties": false
    },
    "snapshot": {
      "description": "Enable or disable snapshot tracking. When false, filesystem snapshots are not recorded and undoing or reverting will not undo/redo file changes. Defaults to true.",
      "type": "boolean"
    },
    "plugin": {
      "type": "array",
      "items": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "array",
            "prefixItems": [
              {
                "type": "string"
              },
              {
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {}
              }
            ]
          }
        ]
      }
    },
    "share": {
      "description": "Control sharing behavior:'manual' allows manual sharing via commands, 'auto' enables automatic sharing, 'disabled' disables all sharing",
      "type": "string",
      "enum": [
        "manual",
        "auto",
        "disabled"
      ]
    },
    "autoshare": {
      "description": "@deprecated Use 'share' field instead. Share newly created sessions automatically",
      "type": "boolean"
    },
    "autoupdate": {
      "description": "Automatically update to the latest version. Set to true to auto-update, false to disable, or 'notify' to show update notifications",
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "string",
          "const": "notify"
        }
      ]
    },
    "disabled_providers": {
      "description": "Disable providers that are loaded automatically",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "enabled_providers": {
      "description": "When set, ONLY these providers will be enabled. All other providers will be ignored",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "model": {
      "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
      "description": "Model to use in the format of provider/model, eg anthropic/claude-2",
      "type": "string"
    },
    "small_model": {
      "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
      "description": "Small model to use for tasks like title generation in the format of provider/model",
      "type": "string"
    },
    "default_agent": {
      "description": "Default agent to use when none is specified. Must be a primary agent. Falls back to 'build' if not set or if the specified agent is invalid.",
      "type": "string"
    },
    "username": {
      "description": "Custom username to display in conversations instead of system username",
      "type": "string"
    },
    "mode": {
      "description": "@deprecated Use `agent` field instead.",
      "type": "object",
      "properties": {
        "build": {
          "ref": "AgentConfig",
          "type": "object",
          "properties": {
            "model": {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
              "type": "string"
            },
            "variant": {
              "description": "Default model variant for this agent (applies only when using the agent's configured model).",
              "type": "string"
            },
            "temperature": {
              "type": "number"
            },
            "top_p": {
              "type": "number"
            },
            "prompt": {
              "type": "string"
            },
            "tools": {
              "description": "@deprecated Use 'permission' field instead",
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {
                "type": "boolean"
              }
            },
            "disable": {
              "type": "boolean"
            },
            "description": {
              "description": "Description of when to use the agent",
              "type": "string"
            },
            "mode": {
              "type": "string",
              "enum": [
                "subagent",
                "primary",
                "all"
              ]
            },
            "hidden": {
              "description": "Hide this subagent from the @ autocomplete menu (default: false, only applies to mode: subagent)",
              "type": "boolean"
            },
            "options": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "color": {
              "description": "Hex color code (e.g., #FF5733) or theme color (e.g., primary)",
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^#[0-9a-fA-F]{6}$"
                },
                {
                  "type": "string",
                  "enum": [
                    "primary",
                    "secondary",
                    "accent",
                    "success",
                    "warning",
                    "error",
                    "info"
                  ]
                }
              ]
            },
            "steps": {
              "description": "Maximum number of agentic iterations before forcing text-only response",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "maxSteps": {
              "description": "@deprecated Use 'steps' field instead.",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "permission": {
              "ref": "PermissionConfig",
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "__originalKeys": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "read": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "edit": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "glob": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "grep": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "list": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "bash": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "task": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "external_directory": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "todowrite": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "question": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "webfetch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "websearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "codesearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "lsp": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "doom_loop": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "skill": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    }
                  },
                  "additionalProperties": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  }
                },
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                }
              ]
            }
          },
          "additionalProperties": {}
        },
        "plan": {
          "ref": "AgentConfig",
          "type": "object",
          "properties": {
            "model": {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
              "type": "string"
            },
            "variant": {
              "description": "Default model variant for this agent (applies only when using the agent's configured model).",
              "type": "string"
            },
            "temperature": {
              "type": "number"
            },
            "top_p": {
              "type": "number"
            },
            "prompt": {
              "type": "string"
            },
            "tools": {
              "description": "@deprecated Use 'permission' field instead",
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {
                "type": "boolean"
              }
            },
            "disable": {
              "type": "boolean"
            },
            "description": {
              "description": "Description of when to use the agent",
              "type": "string"
            },
            "mode": {
              "type": "string",
              "enum": [
                "subagent",
                "primary",
                "all"
              ]
            },
            "hidden": {
              "description": "Hide this subagent from the @ autocomplete menu (default: false, only applies to mode: subagent)",
              "type": "boolean"
            },
            "options": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "color": {
              "description": "Hex color code (e.g., #FF5733) or theme color (e.g., primary)",
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^#[0-9a-fA-F]{6}$"
                },
                {
                  "type": "string",
                  "enum": [
                    "primary",
                    "secondary",
                    "accent",
                    "success",
                    "warning",
                    "error",
                    "info"
                  ]
                }
              ]
            },
            "steps": {
              "description": "Maximum number of agentic iterations before forcing text-only response",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "maxSteps": {
              "description": "@deprecated Use 'steps' field instead.",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "permission": {
              "ref": "PermissionConfig",
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "__originalKeys": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "read": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "edit": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "glob": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "grep": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "list": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "bash": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "task": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "external_directory": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "todowrite": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "question": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "webfetch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "websearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "codesearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "lsp": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "doom_loop": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "skill": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    }
                  },
                  "additionalProperties": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  }
                },
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                }
              ]
            }
          },
          "additionalProperties": {}
        }
      },
      "additionalProperties": {
        "ref": "AgentConfig",
        "type": "object",
        "properties": {
          "model": {
            "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
            "type": "string"
          },
          "variant": {
            "description": "Default model variant for this agent (applies only when using the agent's configured model).",
            "type": "string"
          },
          "temperature": {
            "type": "number"
          },
          "top_p": {
            "type": "number"
          },
          "prompt": {
            "type": "string"
          },
          "tools": {
            "description": "@deprecated Use 'permission' field instead",
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "additionalProperties": {
              "type": "boolean"
            }
          },
          "disable": {
            "type": "boolean"
          },
          "description": {
            "description": "Description of when to use the agent",
            "type": "string"
          },
          "mode": {
            "type": "string",
            "enum": [
              "subagent",
              "primary",
              "all"
            ]
          },
          "hidden": {
            "description": "Hide this subagent from the @ autocomplete menu (default: false, only applies to mode: subagent)",
            "type": "boolean"
          },
          "options": {
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "additionalProperties": {}
          },
          "color": {
            "description": "Hex color code (e.g., #FF5733) or theme color (e.g., primary)",
            "anyOf": [
              {
                "type": "string",
                "pattern": "^#[0-9a-fA-F]{6}$"
              },
              {
                "type": "string",
                "enum": [
                  "primary",
                  "secondary",
                  "accent",
                  "success",
                  "warning",
                  "error",
                  "info"
                ]
              }
            ]
          },
          "steps": {
            "description": "Maximum number of agentic iterations before forcing text-only response",
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          },
          "maxSteps": {
            "description": "@deprecated Use 'steps' field instead.",
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          },
          "permission": {
            "ref": "PermissionConfig",
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "__originalKeys": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "read": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "edit": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "glob": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "grep": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "list": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "bash": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "task": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "external_directory": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "todowrite": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  },
                  "question": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  },
                  "webfetch": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  },
                  "websearch": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  },
                  "codesearch": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  },
                  "lsp": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "doom_loop": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  },
                  "skill": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  }
                },
                "additionalProperties": {
                  "ref": "PermissionRuleConfig",
                  "anyOf": [
                    {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    {
                      "ref": "PermissionObjectConfig",
                      "type": "object",
                      "propertyNames": {
                        "type": "string"
                      },
                      "additionalProperties": {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "ref": "PermissionActionConfig",
                "type": "string",
                "enum": [
                  "ask",
                  "allow",
                  "deny"
                ]
              }
            ]
          }
        },
        "additionalProperties": {}
      }
    },
    "agent": {
      "description": "Agent configuration, see <https://opencode.ai/docs/agents>",
      "type": "object",
      "properties": {
        "plan": {
          "ref": "AgentConfig",
          "type": "object",
          "properties": {
            "model": {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
              "type": "string"
            },
            "variant": {
              "description": "Default model variant for this agent (applies only when using the agent's configured model).",
              "type": "string"
            },
            "temperature": {
              "type": "number"
            },
            "top_p": {
              "type": "number"
            },
            "prompt": {
              "type": "string"
            },
            "tools": {
              "description": "@deprecated Use 'permission' field instead",
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {
                "type": "boolean"
              }
            },
            "disable": {
              "type": "boolean"
            },
            "description": {
              "description": "Description of when to use the agent",
              "type": "string"
            },
            "mode": {
              "type": "string",
              "enum": [
                "subagent",
                "primary",
                "all"
              ]
            },
            "hidden": {
              "description": "Hide this subagent from the @ autocomplete menu (default: false, only applies to mode: subagent)",
              "type": "boolean"
            },
            "options": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "color": {
              "description": "Hex color code (e.g., #FF5733) or theme color (e.g., primary)",
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^#[0-9a-fA-F]{6}$"
                },
                {
                  "type": "string",
                  "enum": [
                    "primary",
                    "secondary",
                    "accent",
                    "success",
                    "warning",
                    "error",
                    "info"
                  ]
                }
              ]
            },
            "steps": {
              "description": "Maximum number of agentic iterations before forcing text-only response",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "maxSteps": {
              "description": "@deprecated Use 'steps' field instead.",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "permission": {
              "ref": "PermissionConfig",
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "__originalKeys": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "read": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "edit": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "glob": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "grep": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "list": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "bash": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "task": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "external_directory": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "todowrite": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "question": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "webfetch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "websearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "codesearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "lsp": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "doom_loop": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "skill": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    }
                  },
                  "additionalProperties": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  }
                },
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                }
              ]
            }
          },
          "additionalProperties": {}
        },
        "build": {
          "ref": "AgentConfig",
          "type": "object",
          "properties": {
            "model": {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
              "type": "string"
            },
            "variant": {
              "description": "Default model variant for this agent (applies only when using the agent's configured model).",
              "type": "string"
            },
            "temperature": {
              "type": "number"
            },
            "top_p": {
              "type": "number"
            },
            "prompt": {
              "type": "string"
            },
            "tools": {
              "description": "@deprecated Use 'permission' field instead",
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {
                "type": "boolean"
              }
            },
            "disable": {
              "type": "boolean"
            },
            "description": {
              "description": "Description of when to use the agent",
              "type": "string"
            },
            "mode": {
              "type": "string",
              "enum": [
                "subagent",
                "primary",
                "all"
              ]
            },
            "hidden": {
              "description": "Hide this subagent from the @ autocomplete menu (default: false, only applies to mode: subagent)",
              "type": "boolean"
            },
            "options": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "color": {
              "description": "Hex color code (e.g., #FF5733) or theme color (e.g., primary)",
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^#[0-9a-fA-F]{6}$"
                },
                {
                  "type": "string",
                  "enum": [
                    "primary",
                    "secondary",
                    "accent",
                    "success",
                    "warning",
                    "error",
                    "info"
                  ]
                }
              ]
            },
            "steps": {
              "description": "Maximum number of agentic iterations before forcing text-only response",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "maxSteps": {
              "description": "@deprecated Use 'steps' field instead.",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "permission": {
              "ref": "PermissionConfig",
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "__originalKeys": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "read": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "edit": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "glob": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "grep": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "list": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "bash": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "task": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "external_directory": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "todowrite": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "question": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "webfetch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "websearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "codesearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "lsp": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "doom_loop": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "skill": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    }
                  },
                  "additionalProperties": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  }
                },
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                }
              ]
            }
          },
          "additionalProperties": {}
        },
        "general": {
          "ref": "AgentConfig",
          "type": "object",
          "properties": {
            "model": {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
              "type": "string"
            },
            "variant": {
              "description": "Default model variant for this agent (applies only when using the agent's configured model).",
              "type": "string"
            },
            "temperature": {
              "type": "number"
            },
            "top_p": {
              "type": "number"
            },
            "prompt": {
              "type": "string"
            },
            "tools": {
              "description": "@deprecated Use 'permission' field instead",
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {
                "type": "boolean"
              }
            },
            "disable": {
              "type": "boolean"
            },
            "description": {
              "description": "Description of when to use the agent",
              "type": "string"
            },
            "mode": {
              "type": "string",
              "enum": [
                "subagent",
                "primary",
                "all"
              ]
            },
            "hidden": {
              "description": "Hide this subagent from the @ autocomplete menu (default: false, only applies to mode: subagent)",
              "type": "boolean"
            },
            "options": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "color": {
              "description": "Hex color code (e.g., #FF5733) or theme color (e.g., primary)",
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^#[0-9a-fA-F]{6}$"
                },
                {
                  "type": "string",
                  "enum": [
                    "primary",
                    "secondary",
                    "accent",
                    "success",
                    "warning",
                    "error",
                    "info"
                  ]
                }
              ]
            },
            "steps": {
              "description": "Maximum number of agentic iterations before forcing text-only response",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "maxSteps": {
              "description": "@deprecated Use 'steps' field instead.",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "permission": {
              "ref": "PermissionConfig",
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "__originalKeys": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "read": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "edit": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "glob": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "grep": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "list": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "bash": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "task": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "external_directory": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "todowrite": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "question": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "webfetch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "websearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "codesearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "lsp": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "doom_loop": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "skill": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    }
                  },
                  "additionalProperties": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  }
                },
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                }
              ]
            }
          },
          "additionalProperties": {}
        },
        "explore": {
          "ref": "AgentConfig",
          "type": "object",
          "properties": {
            "model": {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
              "type": "string"
            },
            "variant": {
              "description": "Default model variant for this agent (applies only when using the agent's configured model).",
              "type": "string"
            },
            "temperature": {
              "type": "number"
            },
            "top_p": {
              "type": "number"
            },
            "prompt": {
              "type": "string"
            },
            "tools": {
              "description": "@deprecated Use 'permission' field instead",
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {
                "type": "boolean"
              }
            },
            "disable": {
              "type": "boolean"
            },
            "description": {
              "description": "Description of when to use the agent",
              "type": "string"
            },
            "mode": {
              "type": "string",
              "enum": [
                "subagent",
                "primary",
                "all"
              ]
            },
            "hidden": {
              "description": "Hide this subagent from the @ autocomplete menu (default: false, only applies to mode: subagent)",
              "type": "boolean"
            },
            "options": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "color": {
              "description": "Hex color code (e.g., #FF5733) or theme color (e.g., primary)",
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^#[0-9a-fA-F]{6}$"
                },
                {
                  "type": "string",
                  "enum": [
                    "primary",
                    "secondary",
                    "accent",
                    "success",
                    "warning",
                    "error",
                    "info"
                  ]
                }
              ]
            },
            "steps": {
              "description": "Maximum number of agentic iterations before forcing text-only response",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "maxSteps": {
              "description": "@deprecated Use 'steps' field instead.",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "permission": {
              "ref": "PermissionConfig",
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "__originalKeys": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "read": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "edit": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "glob": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "grep": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "list": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "bash": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "task": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "external_directory": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "todowrite": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "question": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "webfetch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "websearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "codesearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "lsp": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "doom_loop": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "skill": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    }
                  },
                  "additionalProperties": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  }
                },
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                }
              ]
            }
          },
          "additionalProperties": {}
        },
        "title": {
          "ref": "AgentConfig",
          "type": "object",
          "properties": {
            "model": {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
              "type": "string"
            },
            "variant": {
              "description": "Default model variant for this agent (applies only when using the agent's configured model).",
              "type": "string"
            },
            "temperature": {
              "type": "number"
            },
            "top_p": {
              "type": "number"
            },
            "prompt": {
              "type": "string"
            },
            "tools": {
              "description": "@deprecated Use 'permission' field instead",
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {
                "type": "boolean"
              }
            },
            "disable": {
              "type": "boolean"
            },
            "description": {
              "description": "Description of when to use the agent",
              "type": "string"
            },
            "mode": {
              "type": "string",
              "enum": [
                "subagent",
                "primary",
                "all"
              ]
            },
            "hidden": {
              "description": "Hide this subagent from the @ autocomplete menu (default: false, only applies to mode: subagent)",
              "type": "boolean"
            },
            "options": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "color": {
              "description": "Hex color code (e.g., #FF5733) or theme color (e.g., primary)",
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^#[0-9a-fA-F]{6}$"
                },
                {
                  "type": "string",
                  "enum": [
                    "primary",
                    "secondary",
                    "accent",
                    "success",
                    "warning",
                    "error",
                    "info"
                  ]
                }
              ]
            },
            "steps": {
              "description": "Maximum number of agentic iterations before forcing text-only response",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "maxSteps": {
              "description": "@deprecated Use 'steps' field instead.",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "permission": {
              "ref": "PermissionConfig",
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "__originalKeys": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "read": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "edit": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "glob": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "grep": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "list": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "bash": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "task": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "external_directory": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "todowrite": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "question": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "webfetch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "websearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "codesearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "lsp": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "doom_loop": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "skill": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    }
                  },
                  "additionalProperties": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  }
                },
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                }
              ]
            }
          },
          "additionalProperties": {}
        },
        "summary": {
          "ref": "AgentConfig",
          "type": "object",
          "properties": {
            "model": {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
              "type": "string"
            },
            "variant": {
              "description": "Default model variant for this agent (applies only when using the agent's configured model).",
              "type": "string"
            },
            "temperature": {
              "type": "number"
            },
            "top_p": {
              "type": "number"
            },
            "prompt": {
              "type": "string"
            },
            "tools": {
              "description": "@deprecated Use 'permission' field instead",
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {
                "type": "boolean"
              }
            },
            "disable": {
              "type": "boolean"
            },
            "description": {
              "description": "Description of when to use the agent",
              "type": "string"
            },
            "mode": {
              "type": "string",
              "enum": [
                "subagent",
                "primary",
                "all"
              ]
            },
            "hidden": {
              "description": "Hide this subagent from the @ autocomplete menu (default: false, only applies to mode: subagent)",
              "type": "boolean"
            },
            "options": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "color": {
              "description": "Hex color code (e.g., #FF5733) or theme color (e.g., primary)",
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^#[0-9a-fA-F]{6}$"
                },
                {
                  "type": "string",
                  "enum": [
                    "primary",
                    "secondary",
                    "accent",
                    "success",
                    "warning",
                    "error",
                    "info"
                  ]
                }
              ]
            },
            "steps": {
              "description": "Maximum number of agentic iterations before forcing text-only response",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "maxSteps": {
              "description": "@deprecated Use 'steps' field instead.",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "permission": {
              "ref": "PermissionConfig",
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "__originalKeys": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "read": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "edit": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "glob": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "grep": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "list": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "bash": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "task": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "external_directory": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "todowrite": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "question": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "webfetch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "websearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "codesearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "lsp": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "doom_loop": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "skill": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    }
                  },
                  "additionalProperties": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  }
                },
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                }
              ]
            }
          },
          "additionalProperties": {}
        },
        "compaction": {
          "ref": "AgentConfig",
          "type": "object",
          "properties": {
            "model": {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
              "type": "string"
            },
            "variant": {
              "description": "Default model variant for this agent (applies only when using the agent's configured model).",
              "type": "string"
            },
            "temperature": {
              "type": "number"
            },
            "top_p": {
              "type": "number"
            },
            "prompt": {
              "type": "string"
            },
            "tools": {
              "description": "@deprecated Use 'permission' field instead",
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {
                "type": "boolean"
              }
            },
            "disable": {
              "type": "boolean"
            },
            "description": {
              "description": "Description of when to use the agent",
              "type": "string"
            },
            "mode": {
              "type": "string",
              "enum": [
                "subagent",
                "primary",
                "all"
              ]
            },
            "hidden": {
              "description": "Hide this subagent from the @ autocomplete menu (default: false, only applies to mode: subagent)",
              "type": "boolean"
            },
            "options": {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            "color": {
              "description": "Hex color code (e.g., #FF5733) or theme color (e.g., primary)",
              "anyOf": [
                {
                  "type": "string",
                  "pattern": "^#[0-9a-fA-F]{6}$"
                },
                {
                  "type": "string",
                  "enum": [
                    "primary",
                    "secondary",
                    "accent",
                    "success",
                    "warning",
                    "error",
                    "info"
                  ]
                }
              ]
            },
            "steps": {
              "description": "Maximum number of agentic iterations before forcing text-only response",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "maxSteps": {
              "description": "@deprecated Use 'steps' field instead.",
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            "permission": {
              "ref": "PermissionConfig",
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "__originalKeys": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "read": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "edit": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "glob": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "grep": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "list": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "bash": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "task": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "external_directory": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "todowrite": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "question": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "webfetch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "websearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "codesearch": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "lsp": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    },
                    "doom_loop": {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    "skill": {
                      "ref": "PermissionRuleConfig",
                      "anyOf": [
                        {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        },
                        {
                          "ref": "PermissionObjectConfig",
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {
                            "ref": "PermissionActionConfig",
                            "type": "string",
                            "enum": [
                              "ask",
                              "allow",
                              "deny"
                            ]
                          }
                        }
                      ]
                    }
                  },
                  "additionalProperties": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  }
                },
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                }
              ]
            }
          },
          "additionalProperties": {}
        }
      },
      "additionalProperties": {
        "ref": "AgentConfig",
        "type": "object",
        "properties": {
          "model": {
            "$ref": "https://catalog.lintel.tools/schemas/schemastore/opencode/_shared/latest--model-schema.json#/$defs/Model",
            "type": "string"
          },
          "variant": {
            "description": "Default model variant for this agent (applies only when using the agent's configured model).",
            "type": "string"
          },
          "temperature": {
            "type": "number"
          },
          "top_p": {
            "type": "number"
          },
          "prompt": {
            "type": "string"
          },
          "tools": {
            "description": "@deprecated Use 'permission' field instead",
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "additionalProperties": {
              "type": "boolean"
            }
          },
          "disable": {
            "type": "boolean"
          },
          "description": {
            "description": "Description of when to use the agent",
            "type": "string"
          },
          "mode": {
            "type": "string",
            "enum": [
              "subagent",
              "primary",
              "all"
            ]
          },
          "hidden": {
            "description": "Hide this subagent from the @ autocomplete menu (default: false, only applies to mode: subagent)",
            "type": "boolean"
          },
          "options": {
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "additionalProperties": {}
          },
          "color": {
            "description": "Hex color code (e.g., #FF5733) or theme color (e.g., primary)",
            "anyOf": [
              {
                "type": "string",
                "pattern": "^#[0-9a-fA-F]{6}$"
              },
              {
                "type": "string",
                "enum": [
                  "primary",
                  "secondary",
                  "accent",
                  "success",
                  "warning",
                  "error",
                  "info"
                ]
              }
            ]
          },
          "steps": {
            "description": "Maximum number of agentic iterations before forcing text-only response",
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          },
          "maxSteps": {
            "description": "@deprecated Use 'steps' field instead.",
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          },
          "permission": {
            "ref": "PermissionConfig",
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "__originalKeys": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "read": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "edit": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "glob": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "grep": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "list": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "bash": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "task": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "external_directory": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "todowrite": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  },
                  "question": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  },
                  "webfetch": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  },
                  "websearch": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  },
                  "codesearch": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  },
                  "lsp": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  },
                  "doom_loop": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  },
                  "skill": {
                    "ref": "PermissionRuleConfig",
                    "anyOf": [
                      {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      },
                      {
                        "ref": "PermissionObjectConfig",
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {
                          "ref": "PermissionActionConfig",
                          "type": "string",
                          "enum": [
                            "ask",
                            "allow",
                            "deny"
                          ]
                        }
                      }
                    ]
                  }
                },
                "additionalProperties": {
                  "ref": "PermissionRuleConfig",
                  "anyOf": [
                    {
                      "ref": "PermissionActionConfig",
                      "type": "string",
                      "enum": [
                        "ask",
                        "allow",
                        "deny"
                      ]
                    },
                    {
                      "ref": "PermissionObjectConfig",
                      "type": "object",
                      "propertyNames": {
                        "type": "string"
                      },
                      "additionalProperties": {
                        "ref": "PermissionActionConfig",
                        "type": "string",
                        "enum": [
                          "ask",
                          "allow",
                          "deny"
                        ]
                      }
                    }
                  ]
                }
              },
              {
                "ref": "PermissionActionConfig",
                "type": "string",
                "enum": [
                  "ask",
                  "allow",
                  "deny"
                ]
              }
            ]
          }
        },
        "additionalProperties": {}
      }
    },
    "provider": {
      "description": "Custom provider configurations and model overrides",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "ref": "ProviderConfig",
        "type": "object",
        "properties": {
          "api": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "env": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "id": {
            "type": "string"
          },
          "npm": {
            "type": "string"
          },
          "models": {
            "type": "object",
            "propertyNames": {
              "type": "string"
            },
            "additionalProperties": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "family": {
                  "type": "string"
                },
                "release_date": {
                  "type": "string"
                },
                "attachment": {
                  "type": "boolean"
                },
                "reasoning": {
                  "type": "boolean"
                },
                "temperature": {
                  "type": "boolean"
                },
                "tool_call": {
                  "type": "boolean"
                },
                "interleaved": {
                  "anyOf": [
                    {
                      "type": "boolean",
                      "const": true
                    },
                    {
                      "type": "object",
                      "properties": {
                        "field": {
                          "type": "string",
                          "enum": [
                            "reasoning_content",
                            "reasoning_details"
                          ]
                        }
                      },
                      "required": [
                        "field"
                      ],
                      "additionalProperties": false
                    }
                  ]
                },
                "cost": {
                  "type": "object",
                  "properties": {
                    "input": {
                      "type": "number"
                    },
                    "output": {
                      "type": "number"
                    },
                    "cache_read": {
                      "type": "number"
                    },
                    "cache_write": {
                      "type": "number"
                    },
                    "context_over_200k": {
                      "type": "object",
                      "properties": {
                        "input": {
                          "type": "number"
                        },
                        "output": {
                          "type": "number"
                        },
                        "cache_read": {
                          "type": "number"
                        },
                        "cache_write": {
                          "type": "number"
                        }
                      },
                      "required": [
                        "input",
                        "output"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "input",
                    "output"
                  ],
                  "additionalProperties": false
                },
                "limit": {
                  "type": "object",
                  "properties": {
                    "context": {
                      "type": "number"
                    },
                    "input": {
                      "type": "number"
                    },
                    "output": {
                      "type": "number"
                    }
                  },
                  "required": [
                    "context",
                    "output"
                  ],
                  "additionalProperties": false
                },
                "modalities": {
                  "type": "object",
                  "properties": {
                    "input": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "text",
                          "audio",
                          "image",
                          "video",
                          "pdf"
                        ]
                      }
                    },
                    "output": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "text",
                          "audio",
                          "image",
                          "video",
                          "pdf"
                        ]
                      }
                    }
                  },
                  "required": [
                    "input",
                    "output"
                  ],
                  "additionalProperties": false
                },
                "experimental": {
                  "type": "boolean"
                },
                "status": {
                  "type": "string",
                  "enum": [
                    "alpha",
                    "beta",
                    "deprecated"
                  ]
                },
                "options": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {}
                },
                "headers": {
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {
                    "type": "string"
                  }
                },
                "provider": {
                  "type": "object",
                  "properties": {
                    "npm": {
                      "type": "string"
                    },
                    "api": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": false
                },
                "variants": {
                  "description": "Variant-specific configuration",
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {
                    "type": "object",
                    "properties": {
                      "disabled": {
                        "description": "Disable this variant for the model",
                        "type": "boolean"
                      }
                    },
                    "additionalProperties": {}
                  }
                }
              },
              "additionalProperties": false
            }
          },
          "whitelist": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "blacklist": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "options": {
            "type": "object",
            "properties": {
              "apiKey": {
                "type": "string"
              },
              "baseURL": {
                "type": "string"
              },
              "enterpriseUrl": {
                "description": "GitHub Enterprise URL for copilot authentication",
                "type": "string"
              },
              "setCacheKey": {
                "description": "Enable promptCacheKey for this provider (default false)",
                "type": "boolean"
              },
              "timeout": {
                "description": "Timeout in milliseconds for requests to this provider. Default is 300000 (5 minutes). Set to false to disable timeout.",
                "anyOf": [
                  {
                    "description": "Timeout in milliseconds for requests to this provider. Default is 300000 (5 minutes). Set to false to disable timeout.",
                    "type": "integer",
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991
                  },
                  {
                    "description": "Disable timeout for this provider entirely.",
                    "type": "boolean",
                    "const": false
                  }
                ]
              },
              "chunkTimeout": {
                "description": "Timeout in milliseconds between streamed SSE chunks for this provider. If no chunk arrives within this window, the request is aborted.",
                "type": "integer",
                "exclusiveMinimum": 0,
                "maximum": 9007199254740991
              }
            },
            "additionalProperties": {}
          }
        },
        "additionalProperties": false
      }
    },
    "mcp": {
      "description": "MCP (Model Context Protocol) server configurations",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "anyOf": [
          {
            "anyOf": [
              {
                "ref": "McpLocalConfig",
                "type": "object",
                "properties": {
                  "type": {
                    "description": "Type of MCP server connection",
                    "type": "string",
                    "const": "local"
                  },
                  "command": {
                    "description": "Command and arguments to run the MCP server",
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "environment": {
                    "description": "Environment variables to set when running the MCP server",
                    "type": "object",
                    "propertyNames": {
                      "type": "string"
                    },
                    "additionalProperties": {
                      "type": "string"
                    }
                  },
                  "enabled": {
                    "description": "Enable or disable the MCP server on startup",
                    "type": "boolean"
                  },
                  "timeout": {
                    "description": "Timeout in ms for MCP server requests. Defaults to 5000 (5 seconds) if not specified.",
                    "type": "integer",
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991
                  }
                },
                "required": [
                  "type",
                  "command"
                ],
                "additionalProperties": false
              },
              {
                "ref": "McpRemoteConfig",
                "type": "object",
                "properties": {
                  "type": {
                    "description": "Type of MCP server connection",
                    "type": "string",
                    "const": "remote"
                  },
                  "url": {
                    "description": "URL of the remote MCP server",
                    "type": "string"
                  },
                  "enabled": {
                    "description": "Enable or disable the MCP server on startup",
                    "type": "boolean"
                  },
                  "headers": {
                    "description": "Headers to send with the request",
                    "type": "object",
                    "propertyNames": {
                      "type": "string"
                    },
                    "additionalProperties": {
                      "type": "string"
                    }
                  },
                  "oauth": {
                    "description": "OAuth authentication configuration for the MCP server. Set to false to disable OAuth auto-detection.",
                    "anyOf": [
                      {
                        "ref": "McpOAuthConfig",
                        "type": "object",
                        "properties": {
                          "clientId": {
                            "description": "OAuth client ID. If not provided, dynamic client registration (RFC 7591) will be attempted.",
                            "type": "string"
                          },
                          "clientSecret": {
                            "description": "OAuth client secret (if required by the authorization server)",
                            "type": "string"
                          },
                          "scope": {
                            "description": "OAuth scopes to request during authorization",
                            "type": "string"
                          }
                        },
                        "additionalProperties": false
                      },
                      {
                        "type": "boolean",
                        "const": false
                      }
                    ]
                  },
                  "timeout": {
                    "description": "Timeout in ms for MCP server requests. Defaults to 5000 (5 seconds) if not specified.",
                    "type": "integer",
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991
                  }
                },
                "required": [
                  "type",
                  "url"
                ],
                "additionalProperties": false
              }
            ]
          },
          {
            "type": "object",
            "properties": {
              "enabled": {
                "type": "boolean"
              }
            },
            "required": [
              "enabled"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "formatter": {
      "anyOf": [
        {
          "type": "boolean",
          "const": false
        },
        {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": "object",
            "properties": {
              "disabled": {
                "type": "boolean"
              },
              "command": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "environment": {
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {
                  "type": "string"
                }
              },
              "extensions": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "additionalProperties": false
          }
        }
      ]
    },
    "lsp": {
      "anyOf": [
        {
          "type": "boolean",
          "const": false
        },
        {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "disabled": {
                    "type": "boolean",
                    "const": true
                  }
                },
                "required": [
                  "disabled"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "command": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "extensions": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "disabled": {
                    "type": "boolean"
                  },
                  "env": {
                    "type": "object",
                    "propertyNames": {
                      "type": "string"
                    },
                    "additionalProperties": {
                      "type": "string"
                    }
                  },
                  "initialization": {
                    "type": "object",
                    "propertyNames": {
                      "type": "string"
                    },
                    "additionalProperties": {}
                  }
                },
                "required": [
                  "command"
                ],
                "additionalProperties": false
              }
            ]
          }
        }
      ]
    },
    "instructions": {
      "description": "Additional instruction files or patterns to include",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "layout": {
      "description": "@deprecated Always uses stretch layout.",
      "ref": "LayoutConfig",
      "type": "string",
      "enum": [
        "auto",
        "stretch"
      ]
    },
    "permission": {
      "ref": "PermissionConfig",
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "__originalKeys": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "read": {
              "ref": "PermissionRuleConfig",
              "anyOf": [
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                },
                {
                  "ref": "PermissionObjectConfig",
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  }
                }
              ]
            },
            "edit": {
              "ref": "PermissionRuleConfig",
              "anyOf": [
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                },
                {
                  "ref": "PermissionObjectConfig",
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  }
                }
              ]
            },
            "glob": {
              "ref": "PermissionRuleConfig",
              "anyOf": [
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                },
                {
                  "ref": "PermissionObjectConfig",
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  }
                }
              ]
            },
            "grep": {
              "ref": "PermissionRuleConfig",
              "anyOf": [
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                },
                {
                  "ref": "PermissionObjectConfig",
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  }
                }
              ]
            },
            "list": {
              "ref": "PermissionRuleConfig",
              "anyOf": [
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                },
                {
                  "ref": "PermissionObjectConfig",
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  }
                }
              ]
            },
            "bash": {
              "ref": "PermissionRuleConfig",
              "anyOf": [
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                },
                {
                  "ref": "PermissionObjectConfig",
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  }
                }
              ]
            },
            "task": {
              "ref": "PermissionRuleConfig",
              "anyOf": [
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                },
                {
                  "ref": "PermissionObjectConfig",
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  }
                }
              ]
            },
            "external_directory": {
              "ref": "PermissionRuleConfig",
              "anyOf": [
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                },
                {
                  "ref": "PermissionObjectConfig",
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  }
                }
              ]
            },
            "todowrite": {
              "ref": "PermissionActionConfig",
              "type": "string",
              "enum": [
                "ask",
                "allow",
                "deny"
              ]
            },
            "question": {
              "ref": "PermissionActionConfig",
              "type": "string",
              "enum": [
                "ask",
                "allow",
                "deny"
              ]
            },
            "webfetch": {
              "ref": "PermissionActionConfig",
              "type": "string",
              "enum": [
                "ask",
                "allow",
                "deny"
              ]
            },
            "websearch": {
              "ref": "PermissionActionConfig",
              "type": "string",
              "enum": [
                "ask",
                "allow",
                "deny"
              ]
            },
            "codesearch": {
              "ref": "PermissionActionConfig",
              "type": "string",
              "enum": [
                "ask",
                "allow",
                "deny"
              ]
            },
            "lsp": {
              "ref": "PermissionRuleConfig",
              "anyOf": [
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                },
                {
                  "ref": "PermissionObjectConfig",
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  }
                }
              ]
            },
            "doom_loop": {
              "ref": "PermissionActionConfig",
              "type": "string",
              "enum": [
                "ask",
                "allow",
                "deny"
              ]
            },
            "skill": {
              "ref": "PermissionRuleConfig",
              "anyOf": [
                {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                },
                {
                  "ref": "PermissionObjectConfig",
                  "type": "object",
                  "propertyNames": {
                    "type": "string"
                  },
                  "additionalProperties": {
                    "ref": "PermissionActionConfig",
                    "type": "string",
                    "enum": [
                      "ask",
                      "allow",
                      "deny"
                    ]
                  }
                }
              ]
            }
          },
          "additionalProperties": {
            "ref": "PermissionRuleConfig",
            "anyOf": [
              {
                "ref": "PermissionActionConfig",
                "type": "string",
                "enum": [
                  "ask",
                  "allow",
                  "deny"
                ]
              },
              {
                "ref": "PermissionObjectConfig",
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {
                  "ref": "PermissionActionConfig",
                  "type": "string",
                  "enum": [
                    "ask",
                    "allow",
                    "deny"
                  ]
                }
              }
            ]
          }
        },
        {
          "ref": "PermissionActionConfig",
          "type": "string",
          "enum": [
            "ask",
            "allow",
            "deny"
          ]
        }
      ]
    },
    "tools": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "boolean"
      }
    },
    "enterprise": {
      "type": "object",
      "properties": {
        "url": {
          "description": "Enterprise URL",
          "type": "string"
        }
      },
      "additionalProperties": false
    },
    "compaction": {
      "type": "object",
      "properties": {
        "auto": {
          "description": "Enable automatic compaction when context is full (default: true)",
          "type": "boolean"
        },
        "prune": {
          "description": "Enable pruning of old tool outputs (default: true)",
          "type": "boolean"
        },
        "reserved": {
          "description": "Token buffer for compaction. Leaves enough window to avoid overflow during compaction.",
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        }
      },
      "additionalProperties": false
    },
    "experimental": {
      "type": "object",
      "properties": {
        "disable_paste_summary": {
          "type": "boolean"
        },
        "batch_tool": {
          "description": "Enable the batch tool",
          "type": "boolean"
        },
        "openTelemetry": {
          "description": "Enable OpenTelemetry spans for AI SDK calls (using the 'experimental_telemetry' flag)",
          "type": "boolean"
        },
        "primary_tools": {
          "description": "Tools that should only be available to primary agents.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "continue_loop_on_deny": {
          "description": "Continue the agent loop when a tool call is denied",
          "type": "boolean"
        },
        "mcp_timeout": {
          "description": "Timeout in milliseconds for model context protocol (MCP) requests",
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        }
      },
      "additionalProperties": false
    }
  },
  "allowTrailingCommas": true,
  "ref": "Config",
  "allowComments": true,
  "additionalProperties": false
}
