{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ReviewStartParams",
"type": "object",
"required": [
"target",
"threadId"
],
"properties": {
"delivery": {
"description": "Where to run the review: inline (default) on the current thread or detached on a new thread (returned in `reviewThreadId`).",
"default": null,
"anyOf": [
{
"$ref": "#/definitions/ReviewDelivery"
},
{
"type": "null"
}
]
},
"target": {
"$ref": "#/definitions/ReviewTarget"
},
"threadId": {
"type": "string"
}
},
"definitions": {
"ReviewDelivery": {
"type": "string",
"enum": [
"inline",
"detached"
]
},
"ReviewTarget": {
"oneOf": [
{
"description": "Review the working tree: staged, unstaged, and untracked files.",
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"uncommittedChanges"
],
"title": "UncommittedChangesReviewTargetType"
}
},
"title": "UncommittedChangesReviewTarget"
},
{
"description": "Review changes between the current branch and the given base branch.",
"type": "object",
"required": [
"branch",
"type"
],
"properties": {
"branch": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"baseBranch"
],
"title": "BaseBranchReviewTargetType"
}
},
"title": "BaseBranchReviewTarget"
},
{
"description": "Review the changes introduced by a specific commit.",
"type": "object",
"required": [
"sha",
"type"
],
"properties": {
"sha": {
"type": "string"
},
"title": {
"description": "Optional human-readable label (e.g., commit subject) for UIs.",
"type": [
"string",
"null"
]
},
"type": {
"type": "string",
"enum": [
"commit"
],
"title": "CommitReviewTargetType"
}
},
"title": "CommitReviewTarget"
},
{
"description": "Arbitrary instructions, equivalent to the old free-form prompt.",
"type": "object",
"required": [
"instructions",
"type"
],
"properties": {
"instructions": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"custom"
],
"title": "CustomReviewTargetType"
}
},
"title": "CustomReviewTarget"
}
]
}
}
}