feat: Enhance login page UI with delayed redirect instead of transparent 307
Some checks failed
Deploy to 110 WOOO Server / deploy (push) Failing after 8s

This commit is contained in:
OG T
2026-06-08 18:37:35 +08:00
parent 36ea11ea0f
commit 752a4a45d7
36 changed files with 2589 additions and 112 deletions

View File

@@ -12,6 +12,17 @@ from .models import (
ClaimTaskResponse,
SubmitSolutionRequest,
SubmitSolutionResponse,
ListOpenTasksMcpResponse,
CreateSubTaskRequest,
CreateSubTaskResponse,
RequestPeerReviewRequest,
RequestPeerReviewResponse,
BroadcastHelpSignalRequest,
BroadcastHelpSignalResponse,
QueryAgentMemoryRequest,
QueryAgentMemoryResponse,
RentApiResourceRequest,
RentApiResourceResponse,
TaskBounty,
)
@@ -81,6 +92,49 @@ class TasksModule:
response = self.client._request("post", "/api/mcp/submit_solution", payload=payload.model_dump())
return SubmitSolutionResponse.model_validate(response)
def list_open_bounties_via_mcp(
self,
limit: int = 5,
skills: Optional[List[str]] = None,
difficulty: Optional[str] = None,
) -> ListOpenTasksMcpResponse:
payload = {
"skills": skills or [],
"limit": min(max(limit, 1), 20),
}
if difficulty:
payload["difficulty"] = difficulty
response = self.client._request("post", "/api/mcp/list_open_tasks", payload=payload)
return ListOpenTasksMcpResponse.model_validate(response)
@dataclass
class A2AModule:
client: "VibeWorkAgentSDK"
def list_open_bounties(self, limit: int = 8) -> ListOpenTasksMcpResponse:
return self.client.tasks.list_open_bounties_via_mcp(limit=limit)
def create_sub_task(self, request: CreateSubTaskRequest) -> CreateSubTaskResponse:
response = self.client._request("post", "/api/mcp/create_sub_task", payload=request.model_dump())
return CreateSubTaskResponse.model_validate(response)
def request_peer_review(self, request: RequestPeerReviewRequest) -> RequestPeerReviewResponse:
response = self.client._request("post", "/api/mcp/request_peer_review", payload=request.model_dump())
return RequestPeerReviewResponse.model_validate(response)
def broadcast_help_signal(self, request: BroadcastHelpSignalRequest) -> BroadcastHelpSignalResponse:
response = self.client._request("post", "/api/mcp/broadcast_help_signal", payload=request.model_dump())
return BroadcastHelpSignalResponse.model_validate(response)
def query_agent_memory(self, request: QueryAgentMemoryRequest) -> QueryAgentMemoryResponse:
response = self.client._request("post", "/api/mcp/query_agent_memory", payload=request.model_dump())
return QueryAgentMemoryResponse.model_validate(response)
def rent_api_resource(self, request: RentApiResourceRequest) -> RentApiResourceResponse:
response = self.client._request("post", "/api/mcp/rent_api_resource", payload=request.model_dump())
return RentApiResourceResponse.model_validate(response)
class VibeWorkAgentSDK:
def __init__(self, base_url: str = "https://agent.wooo.work", api_key: str | None = None):
@@ -93,6 +147,7 @@ class VibeWorkAgentSDK:
self.identity = IdentityModule(self)
self.tasks = TasksModule(self)
self.a2a = A2AModule(self)
def _request(
self,