feat: add guided exploration and share user-started MCP backend
This commit is contained in:
1 parent
f86db1ced6
commit
ee256ad7ce
144 files changed
+8625
-2075
No files matched your search
@@ -143,7 +143,7 @@ async def mobile_workspace(include_devices: bool = True) -> dict:
|
||||
|
||||
@mcp.tool()
|
||||
async def mobile_config(
|
||||
section: Literal["model", "capabilities", "reports"] = "model",
|
||||
section: Literal["model", "capabilities", "reports", "exploration"] = "model",
|
||||
changes: dict[str, Any] | None = None,
|
||||
persist_defaults: bool = False,
|
||||
) -> dict:
|
||||
@@ -163,6 +163,8 @@ async def mobile_config(
|
||||
worker_cleanup_timeout_seconds (30), adb_auto_connect (true),
|
||||
adb_discovery_interval_seconds (10), adb_discovery_timeout_seconds (5).
|
||||
reports: formats=['docx','xlsx'] (at least one).
|
||||
exploration: model (default gpt-6.1-sol), reasoning_effort (high), timeout_seconds
|
||||
(1800 active seconds), demonstration_timeout_seconds (900), demonstration_warning_seconds (60).
|
||||
API keys are never accepted or returned: use the Web UI or .env for credentials.
|
||||
Saving settings does not change an already running task. Flash/Pro are execution
|
||||
profiles, not model names. Model retries do not repeat device test cases.
|
||||
@@ -171,6 +173,16 @@ async def mobile_config(
|
||||
"model": ("/api/system/model-settings", MODEL_FIELDS),
|
||||
"capabilities": ("/api/system/capability-settings", CAPABILITY_FIELDS),
|
||||
"reports": ("/api/automation/preferences", {"formats"}),
|
||||
"exploration": (
|
||||
"/api/explorations/settings",
|
||||
{
|
||||
"model",
|
||||
"reasoning_effort",
|
||||
"timeout_seconds",
|
||||
"demonstration_timeout_seconds",
|
||||
"demonstration_warning_seconds",
|
||||
},
|
||||
),
|
||||
}[section]
|
||||
if changes is not None:
|
||||
if not persist_defaults:
|
||||
@@ -182,7 +194,9 @@ async def mobile_config(
|
||||
return current
|
||||
payload = {key: value for key, value in current.items() if key in allowed}
|
||||
payload.update(changes)
|
||||
return await _request("PUT" if section == "reports" else "POST", route, json=payload)
|
||||
return await _request(
|
||||
"PUT" if section in {"reports", "exploration"} else "POST", route, json=payload
|
||||
)
|
||||
|
||||
|
||||
@mcp.tool()
|
||||
|
||||
Reference in new issue
Block a user