Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
98 changes: 0 additions & 98 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ Kernel provides sandboxed, ready-to-use Chrome browsers for browser automations
- Invoke app actions (sync or async) and stream logs
- Create, list, view, and delete managed browser sessions
- Get a live view URL for visual monitoring and remote control
- Search the web across providers and retrieve page content for results

## Installation

Expand Down Expand Up @@ -138,54 +137,6 @@ Commands with JSON output support:
- **Browser Sub-commands**: `replays list/start`, `process exec/spawn`, `fs file-info/list-files`, `webmcp list`, `webmcp custom-tools list/add` (`webmcp invoke` always prints JSON output)
- **Browser NDJSON streaming**: `telemetry stream`

### Search

Search commands always return the full API response as JSON, including results,
warnings, provider attempts, usage, and expiry. They use the normal API key or
OAuth authentication and global `--project` scope. Your organization must have
Search API access enabled.

```bash
# Discover currently configured providers and capabilities
kernel search providers

# Automatic routing
kernel search "Playwright browser automation" --max-results 5

# Retrieve a retained result without another provider call or search charge
kernel search get srch_01jsearchresult

# Use portable filters or other advanced request fields
kernel search --request '{"query":"browser automation","include_domains":["example.com"],"strict_params":true}'

# Fetch content for the top results of a retained search
kernel search contents srch_01jsearchresult --limit 3 --content-source browser
```

- `--max-results` accepts 1–100; the API may clamp it to the provider cap.
- `--request` accepts the complete Search API JSON object, including `max_results`,
typed strategies (`auto`, `pinned`, or `fallback`), portable filters, `content`,
`include_raw`, date/locale filters, and provider-specific options. It cannot be
combined with a positional query, `--provider`, or `--max-results`. Provider-specific
and advanced request validation is performed by the API.
- Create requests are not automatically retried, to avoid duplicate billable
searches after an ambiguous failure. If a request fails ambiguously, use
`search get` only when the API returned a retained search ID.
- Retained searches return 404 when missing, expired, or inaccessible.
- `search contents <id>` retrieves content for selected results of a retained
search. Provide exactly one of `--result-ids` (in desired response order) or
`--limit` (top N results, 1–100). `--timeout-ms` sets the overall deadline
(1000–120000). Content options: `--content-source` (`auto`, `provider`, or
`browser`; default `auto`), `--content-format` (`markdown` or `text`),
`--content-max-chars`, `--content-max-age-hours`, `--content-timeout-ms`,
`--content-browser-id` (reuse an existing browser session), and
`--content-browser-mode` (`curl` or `render`). When no browser ID is given and a
result needs browser retrieval, Kernel creates a temporary browser for the
request; it is billed like any other browser. Requests are not automatically
retried.
- To search for a literal query equal to a subcommand name (`get` or `providers`),
use `--request '{"query":"providers"}'`.

### Authentication

- `kernel login [--force]` - Login via OAuth 2.0
Expand Down Expand Up @@ -1260,55 +1211,6 @@ Automated authentication for web services. The `run` command orchestrates the fu
- `--default-project-max-concurrent-sessions <n>` - Default maximum concurrent browsers for projects without an explicit override (`0` to remove the default)
- `--output json`, `-o json` - Output raw JSON object

### Search

- `kernel search <query>` - Search the web through Kernel's search providers
- `--country <code>` - ISO 3166-1 alpha-2 search locale preference
- `--language <tag>` - BCP 47 search language preference
- `--max-results <n>` - Requested result count, 1-100 (clamped to the serving provider's cap)
- `--recency <window>` - Relative search window: `hour`, `day`, `week`, `month`, or `year`
- `--safe-search <level>` - Safety preference: `off`, `moderate`, or `strict`
- `--start-date <YYYY-MM-DD>` / `--end-date <YYYY-MM-DD>` - Inclusive publication-date bounds (`--recency` takes precedence)
- `--include-domains <hosts>` / `--exclude-domains <hosts>` - Hostname preferences, matching a hostname and its subdomains
- `--strict-params` - Require every supplied portable parameter to be honored exactly instead of approximated
- `--include-raw` - Include untouched provider payloads in the response's raw fields
- `--timeout-ms <ms>` - Overall deadline across search attempts and inline retrieval
- `--content` - Retrieve page content for each result using portable defaults
- `--show-content` - Print the extracted content text for each result (implies `--content`)
- `--content-source <source>` - Retrieval source: `auto`, `provider`, or `browser`
- `--content-format <format>` - Extracted content format: `markdown` or `text`
- `--content-max-chars <n>` - Per-result Unicode character limit after extraction
- `--content-max-age-hours <n>` - Maximum acceptable age of cached page content; `0` forces a live fetch
- `--content-timeout-ms <ms>` - Per-result retrieval deadline
- `--content-browser-id <id>` - Retrieve through an existing browser session (requires `--content-source browser`)
- `--content-browser-mode <mode>` - Browser retrieval mode: `curl` or `render`
- `--provider <slug>` - Pin a single provider (`brave`, `exa`, `perplexity`, `context`, `parallel`, `valyu`, `octen`, `you`, `tavily`, `serpapi`)
- `--fallback-providers <slugs>` - Ordered provider chain to try in turn
- `--fallback-on <outcomes>` - Outcomes that advance to the next provider: `error`, `timeout`, `empty`
- `--provider-options <json>` - Provider-native options as a JSON object keyed by provider slug
- `--output json`, `-o json` - Output raw JSON object
- `kernel search get <id>` - Re-read a retained search without calling a provider or incurring cost
- `--show-content` - Print the extracted content text for each result
- `--output json`, `-o json` - Output raw JSON object
- `kernel search providers` - List providers, result caps, and content capabilities
- `--slug <slug>` - Filter to a single provider; also prints its portable-parameter support matrix and notes
- `--output json`, `-o json` - Output raw JSON array
- `kernel search contents <id>` - Fetch content for selected results of a retained search
- `--result-ids <ids>` - Result IDs from the retained search, in the desired response order
- `--limit <n>` - Number of results to fetch starting from rank 1 (mutually exclusive with `--result-ids`)
- `--timeout-ms <ms>` - Overall deadline across all selected results
- `--content-source <source>` - `auto` (default), `provider`, or `browser`
- `--content-format <format>` - `markdown` or `text`
- `--content-max-chars <n>` - Per-result character limit after extraction
- `--content-max-age-hours <n>` - For `auto`, maximum age of retained provider content; `0` always uses a browser
- `--content-timeout-ms <ms>` - Per-result deadline
- `--content-browser-id <id>` - Retrieve through an existing browser session
- `--content-browser-mode <mode>` - `curl` or `render`

Searches are retained for 24 hours. Omitting the strategy flags lets Kernel pick an
eligible provider; portable filters a provider cannot honor are approximated or
dropped and reported as warnings unless `--strict-params` is set.

## Examples

### Create a new app
Expand Down
Loading