home / skills / openclaw / skills / yutori-web-research

yutori-web-research skill

/skills/juanpin/yutori-web-research

This skill uses Yutori's research and browsing APIs to conduct web research, gather sources, and extract structured facts for user questions.

npx playbooks add skill openclaw/skills --skill yutori-web-research

Review the files below or copy the command above to add this skill to your agents.

Files (3)
SKILL.md
3.5 KB
---
name: yutori-web-research
description: Use Yutori’s Research API and Browsing API (cloud browser) to research topics, collect sources, and extract structured facts from the web. Use when the user asks to “research X”, “monitor/find papers”, or “navigate to a site and extract info” and you have access to YUTORI dev/prod endpoints via YUTORI_API_BASE and an API key in env (YUTORI_API_KEY or ~/.openclaw/openclaw.json env.YUTORI_API_KEY).
---

# yutori-web-research

Use Yutori’s cloud agents for two things:

1) **Research** (wide/deep web research + citations) via `POST /v1/research/tasks`
2) **Browsing** (web navigation agent on a cloud browser) via `POST /v1/browsing/tasks`

This skill is for **web tasks** where a dedicated web agent is helpful (papers, competitors, product info, extracting lists from a site), and where OpenClaw’s local `web_fetch` or `browser` tool is not ideal.

## Preconditions (auth + endpoint)

- Requires **YUTORI_API_KEY** (preferred: provided by OpenClaw Gateway env; fallback: `~/.openclaw/openclaw.json` at `env.YUTORI_API_KEY`).
- Endpoint defaults to **dev** unless overridden:
  - Set `YUTORI_API_BASE=https://api.dev.yutori.com` (dev)
  - or `YUTORI_API_BASE=https://api.yutori.com` (prod)

If requests return `403 Forbidden`, the key likely lacks access to the requested API product (Research/Browsing).

## Bundled runner scripts

This skill expects a small Node runner script to exist (or be bundled alongside this skill):

- `yutori-research.mjs` — create + poll a research task; prints **pretty text** output.

Recommended: bundle it under `scripts/yutori-research.mjs` in this skill folder.

## Workflow: Research a topic (brief + reading list)

When the user asks for research (example: “RL papers in the last month”):

1) Write a tight query prompt that requests:
   - **1-page brief** (themes + trends)
   - **curated reading list** (10–15 items, each with title, 1–2 sentence summary, why it matters, and link)
   - Prefer primary sources (arXiv + publisher pages)

2) Run the research task using the runner script (example):

```bash
cd /Users/juanpin/.openclaw/workspace
node yutori-research.mjs "Research reinforcement learning papers from the last 30 days. Output (1) a concise 1-page brief of themes/trends and (2) a curated list of 12 papers with title, 2-sentence summary, why it matters, and a link. Prefer arXiv + conference links."
```

3) Return results to the user as **clean bullets** (not raw JSON), and include source URLs.

## Workflow: Browse a site and extract info (e.g., employees list)

Use the Browsing API when the user asks:
- “Navigate to <site> and list …”
- “Fill a form / click through pages / collect items”

Create a browsing task (example curl):

```bash
curl --request POST \
  --url "$YUTORI_API_BASE/v1/browsing/tasks" \
  --header "x-api-key: $YUTORI_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
    "task": "Give me a list of all employees (names and titles) of Yutori.",
    "start_url": "https://yutori.com",
    "max_steps": 60
  }'
```

Poll until `succeeded`, then return a deduplicated list.

## Output style

- Prefer **pretty text** + bullets.
- Include the key source URLs.
- If the agent output contains HTML (e.g., `<pre>...</pre>`), strip it and return plain text.

## Troubleshooting

- `401 Missing API key header`: ensure you are sending the correct header. Yutori uses `x-api-key` for most APIs.
- `403 Forbidden`: key doesn’t have access to that product in that environment.
- Long-running tasks: share the `view_url` and optionally poll longer.

Overview

This skill uses Yutori’s Research and Browsing cloud agents to research topics, gather sources, and extract structured facts from the web. It’s designed for tasks like literature surveys, monitoring papers, competitor research, and navigating sites to collect lists or form-driven data. The skill expects a YUTORI_API_KEY and optional YUTORI_API_BASE to select dev or prod endpoints.

How this skill works

For broad research, it creates research tasks via POST /v1/research/tasks that instruct the cloud agent to produce a one‑page brief and a curated reading list with source URLs. For site navigation and targeted extraction, it creates browsing tasks via POST /v1/browsing/tasks so a cloud browser can click, paginate, and scrape structured items. The typical flow is: craft a tight query, submit a task, poll the task until succeeded, then return cleaned plain‑text bullets and deduplicated facts with source links.

When to use it

  • When you need a literature survey or curated reading list (papers, articles, reports).
  • When you want an indexed summary plus primary source citations (arXiv, publisher pages).
  • When you need to navigate a site, click through pages, or fill simple forms to extract lists (employees, products, pricing).
  • When local web_fetch or a headless browser isn’t sufficient and a cloud browsing agent is required.
  • When you need results delivered as cleaned bullets with explicit source URLs.

Best practices

  • Provide a focused, tight prompt describing desired deliverables (one‑page brief + curated reading list, or an explicit extraction schema).
  • Prefer primary sources in the prompt (arXiv, publisher pages) and ask for explicit links per item.
  • Set max_steps for browsing tasks when deep navigation is needed and share a start_url.
  • Bundle or use a small runner script that creates and polls tasks; surface the view_url for long‑running jobs.
  • Strip HTML and return plain text; deduplicate extracted items and always include source URLs.

Example use cases

  • Research recent reinforcement learning papers: produce a 1‑page brief and a curated list of 10–15 papers with summaries and links.
  • Monitor and collect new publications on a topic by scheduling periodic research tasks.
  • Navigate a company site and extract an employees list with names and titles, deduplicated and sourced.
  • Scrape product listings across paginated search results and return a structured CSV or bullet list with URLs.
  • Collect citations and links for a whitepaper or market report, prioritizing primary sources.

FAQ

What environment variables are required?

Set YUTORI_API_KEY for authentication. Optionally set YUTORI_API_BASE to switch between dev and prod endpoints (dev: https://api.dev.yutori.com, prod: https://api.yutori.com).

What do I do if I get 403 or 401 errors?

401 indicates a missing or incorrect API key header—ensure you send x-api-key. 403 means the key lacks access to the requested product or environment; verify your key permissions and the YUTORI_API_BASE value.