mirror of
https://github.com/Tencent/BrowserSkill.git
synced 2026-09-10 13:01:23 +08:00
156 lines
3.6 KiB
JSON
156 lines
3.6 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"title": "RequestHelpParams",
|
|
"type": "object",
|
|
"required": [
|
|
"prompt",
|
|
"session_id"
|
|
],
|
|
"properties": {
|
|
"completion_criteria": {
|
|
"description": "Optional explicit success detector. Navigation by itself is not a completion signal; these criteria must match before the tool can auto-complete without the user clicking Done.",
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/definitions/HelpCompletionCriteria"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"prompt": {
|
|
"description": "Message shown to the user explaining what to do.",
|
|
"type": "string"
|
|
},
|
|
"session_id": {
|
|
"type": "string"
|
|
},
|
|
"tab_id": {
|
|
"description": "Target tab. Defaults to the Agent Window's active tab.",
|
|
"type": [
|
|
"integer",
|
|
"null"
|
|
],
|
|
"format": "int64"
|
|
},
|
|
"targets": {
|
|
"description": "Optional components to scroll to + flash-highlight.",
|
|
"type": [
|
|
"array",
|
|
"null"
|
|
],
|
|
"items": {
|
|
"$ref": "#/definitions/HelpTarget"
|
|
}
|
|
},
|
|
"timeout_ms": {
|
|
"description": "Hard upper bound on the wait. Defaults to 300000 (5 min), enforced daemon-side via the generic tool timeout.",
|
|
"type": [
|
|
"integer",
|
|
"null"
|
|
],
|
|
"format": "uint32",
|
|
"minimum": 1.0
|
|
},
|
|
"title": {
|
|
"description": "Optional custom title for the help overlay. Falls back to the extension's default localized title when omitted.",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"definitions": {
|
|
"HelpCompletionCondition": {
|
|
"type": "object",
|
|
"properties": {
|
|
"selector_exists": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"selector_missing": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"text_exists": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"text_missing": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"url_contains": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"url_matches": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"HelpCompletionCriteria": {
|
|
"type": "object",
|
|
"properties": {
|
|
"all": {
|
|
"type": [
|
|
"array",
|
|
"null"
|
|
],
|
|
"items": {
|
|
"$ref": "#/definitions/HelpCompletionCondition"
|
|
}
|
|
},
|
|
"any": {
|
|
"type": [
|
|
"array",
|
|
"null"
|
|
],
|
|
"items": {
|
|
"$ref": "#/definitions/HelpCompletionCondition"
|
|
}
|
|
},
|
|
"stable_for_ms": {
|
|
"type": [
|
|
"integer",
|
|
"null"
|
|
],
|
|
"format": "uint32",
|
|
"minimum": 0.0
|
|
}
|
|
}
|
|
},
|
|
"HelpTarget": {
|
|
"description": "One component the user is asked to look at / interact with. Exactly one of `ref` / `selector` should be supplied (mirrors the click/fill convention). When neither matches a live element the overlay still shows the prompt and reports the miss via [`ResolvedTarget`].",
|
|
"type": "object",
|
|
"properties": {
|
|
"ref": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"selector": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|