mirror of
https://github.com/browser-use/web-ui.git
synced 2026-03-22 11:17:17 +08:00
28 lines
955 B
Python
28 lines
955 B
Python
import pyperclip
|
|
from browser_use.agent.views import ActionResult
|
|
from browser_use.browser.context import BrowserContext
|
|
from browser_use.controller.service import Controller
|
|
|
|
|
|
class CustomController(Controller):
|
|
def __init__(self):
|
|
super().__init__()
|
|
self._register_custom_actions()
|
|
|
|
def _register_custom_actions(self):
|
|
"""Register all custom browser actions"""
|
|
|
|
@self.registry.action("Copy text to clipboard")
|
|
def copy_to_clipboard(text: str):
|
|
pyperclip.copy(text)
|
|
return ActionResult(extracted_content=text)
|
|
|
|
@self.registry.action("Paste text from clipboard", requires_browser=True)
|
|
async def paste_from_clipboard(browser: BrowserContext):
|
|
text = pyperclip.paste()
|
|
# send text to browser
|
|
page = await browser.get_current_page()
|
|
await page.keyboard.type(text)
|
|
|
|
return ActionResult(extracted_content=text)
|