Browser Capabilities

Built-in WebKit browser that navigates pages, fills forms, clicks elements, and extracts content.

Overview

Yukkai includes a built-in web browser powered by Apple's native WebKit engine — the same engine that drives Safari. This means Yukkai can visit websites, interact with pages, fill forms, click buttons, extract content, take screenshots, download media, and perform multi-step browsing tasks entirely on your behalf.

Because it runs on real WebKit with a genuine Safari User-Agent, the browser blends in naturally with regular traffic. JavaScript-rendered pages (React, Vue, single-page apps) work out of the box. Each tab is lightweight (~50 MB RAM), so you can keep several open without slowing your Mac.

You can ask Yukkai to browse the web in plain language — "go to this article and summarize it", "search Google for X and open the top three results", "log into my dashboard and download the monthly report" — and Yukkai figures out the technical steps automatically. You can also open the visible browser window at any time to take control manually, for example when a site asks for multi-factor authentication or a CAPTCHA.


How It Works

The browser exposes 42 actions grouped into logical categories. Yukkai chooses the right action based on your request, but here is the full reference so you know what's possible under the hood.

Category Action What it does
Navigation navigate Load a URL and return an indexed DOM tree (handles redirects, 60 s timeout)
back / forward Move through browser history
wait Wait for the page to stabilize
Interaction click Click an element by its index number
input_text Type text into a form field (clears it first)
select_option Choose a value in a dropdown
send_keys Send keyboard keys (Enter, Tab, Escape, etc.)
scroll Scroll the page up, down, left, or right
Content Extraction extract Get the full page content as clean Markdown
search_page Find text matches on the current page
screenshot Capture the page as a PNG image
evaluate Run custom JavaScript and return the result
Tabs get_tabs / new_tab / switch_tab / close_tab Manage multiple browser tabs
Cookies & Window cookies Retrieve session cookies (optionally filtered by domain)
show / hide Open or close the visible browser window
Sessions save_session / load_session Save and restore login state across conversations
list_sessions / delete_session Manage saved sessions
clear_data Clear all cookies and cache
Smart Waits wait_for_selector Wait until a specific element appears
wait_for_text Wait until specific text appears on the page
wait_for_network_idle Wait for all network requests to finish
wait_for_dom_change Wait for the DOM to update
Infinite Scroll scroll_and_collect Auto-scroll and collect repeating elements (great for feeds)
Human-Like Behavior human_click / human_type / human_scroll Natural mouse movement and typing timing to avoid bot detection
Media collect_media List all images and videos on the page
download_media / download_all_media Download specific or all matching media
Data Export export_data Export collected data to JSON, CSV, or Markdown
Request Interceptor start_interceptor / get_intercepted / stop_interceptor Capture background API calls made by the page
Recipes recipe / list_recipes Run pre-built scraping flows (Google Search, GitHub, Reddit, etc.)

DOM Tree Format

When Yukkai loads a page, it receives an indexed DOM tree — a compact representation of the page where interactive elements (links, buttons, inputs) are numbered. Yukkai uses those numbers to click and type with precision, even on complex pages.

[0]<nav />
    [1]<a href="/" />Home
    [2]<a href="/about" />About
[3]<main />
    [4]<input type=search placeholder="Search..." />
    [5]<button />Go

How to Use It

You don't need to know any of the actions above. Just describe what you want in plain language and Yukkai takes care of the rest.

Basic Browsing

"Go to example.com and tell me what the page says."

Yukkai navigates to the URL, extracts the content as Markdown, and summarizes it for you.

Form Filling & Search

"Search Google for 'best mechanical keyboards under $100' and open the top 3 results in separate tabs."

Yukkai types the query into the search box, clicks the search button, reads the results, and opens the top links in new tabs.

Reading & Extraction

"Open this Wikipedia article and extract all the section headings."

Yukkai loads the page, evaluates JavaScript to pull the headings, and lists them for you.

Taking Screenshots

"Take a screenshot of the current page."

The screenshot is saved to ~/YukkaiDocs/ and displayed inline in the conversation.

Persistent Login (Sessions)

"Log into my project dashboard — I'll handle the 2FA myself."

You open the visible browser window, complete the authentication manually, and then tell Yukkai it can take over. Yukkai saves the session so you don't have to log in again next time.

Pre-Built Recipes

Yukkai ships with ready-to-use scraping recipes for popular sites:

Recipe Description
google_search Run a Google search and collect results
github_repo Fetch repository details from GitHub
github_trending List trending GitHub repositories
hackernews Top stories from Hacker News
reddit Browse a subreddit
twitter Search or read Twitter/X
youtube_search Search YouTube videos
wikipedia Fetch a Wikipedia article
amazon_search Search products on Amazon
linkedin_company Get a LinkedIn company profile


Examples

Example 1 — Research a Topic

"Search Google for 'Swift concurrency best practices', open the first three results, and give me a summary of each article."

Yukkai runs the google_search recipe, reads each result page with extract, and compiles a summary.

Example 2 — Fill a Form

"Go to this contact form, fill in my name 'John Doe', email 'john@example.com', and message 'Hello there', then submit it."

Yukkai identifies the input fields by their DOM index, types the values, and clicks the submit button.

Example 3 — Infinite Scroll & Collect

"Scroll through this Reddit thread and collect all the top-level comments."

Yukkai uses scroll_and_collect to keep scrolling and gathering comments until the page ends or a limit is reached.

Example 4 — Download Media

"Download all the images from this product page."

Yukkai lists all images with collect_media, then downloads them with download_all_media into your documents folder.

Example 5 — Capture API Calls

"Open this dashboard and tell me what API endpoints the page calls in the background."

Yukkai starts the request interceptor, reloads the page, and shows you every fetch/XHR request the page made.


Tips

Use Plain Language

You never need to specify action names, indices, or selectors. Just describe the outcome you want and Yukkai handles the mechanics.

Take Over for Sensitive Steps

When a website asks for passwords, multi-factor authentication, passkeys, or CAPTCHAs, open the visible browser window with show and complete those steps yourself. Yukkai resumes once you're done. Never paste passwords directly into the chat — use the Vault or your password manager.

Save Sessions to Avoid Repeated Logins

If you need Yukkai to access a site that requires login, ask it to save the session after you authenticate. Next time, Yukkai can load that session and skip the login flow entirely.

Lean on Recipes for Speed

Pre-built recipes are faster and more reliable than ad-hoc navigation for well-known sites like Google, GitHub, Reddit, or Wikipedia. Ask "list the trending GitHub repos" and Yukkai uses the recipe automatically.

Human-Like Behavior for Tricky Sites

Some sites detect automated browsing. Yukkai can switch to human-like clicking, typing, and scrolling — with natural mouse movements and variable timing — to get past basic bot detection.

Use extract for Clean Reading

The extract action returns page content as structured Markdown, stripping away ads, navigation chrome, and scripts. It's the best way to read articles or documentation.

Multiple Tabs for Comparison

Yukkai can open several tabs at once, which is handy when you want to compare products, read multiple search results, or cross-reference sources side by side.

Screenshots Are Saved Locally

All screenshots are written to ~/YukkaiDocs/ and displayed inline. You can reference them later without re-navigating to the page.

For Simple Fetches Without JavaScript

If you just need the raw HTML of a static page and don't need JavaScript rendering, Yukkai can use a lighter fetch method. The browser is best for interactive, dynamic, or JavaScript-heavy pages.