Skill: Use Steel Browser

Trigger: пользователь просит открыть браузер, сделать скриншот, заполнить форму, скрапить сайт

Зачем

Steel.dev — облачный браузер. Агент создаёт сессию через API, получает CDP URL, управляет через Playwright/Puppeteer в терминале. Не нужен локальный Chrome.

Шаги

  1. Создай сессию:
terminal: SESSION=$(curl -fsSL -X POST "https://api.steel.dev/v1/sessions" \
  -H "Steel-Api-Key: $STEEL_API_KEY" -H "Content-Type: application/json" -d '{}') && \
SESSION_ID=$(echo $SESSION | python3 -c "import sys,json; d=json.load(sys.stdin); print(d['id'])") && \
echo "Session: $SESSION_ID"
  1. Выполни задачу через Node.js + Playwright:
terminal: node - <<'JS'
const { chromium } = require('playwright-core');
(async () => {
  const browser = await chromium.connectOverCDP(
    `wss://connect.steel.dev?apiKey=${process.env.STEEL_API_KEY}&sessionId=${process.env.SESSION_ID}`
  );
  const page = await browser.newPage();
  await page.goto('https://example.com');
  console.log(await page.title());
  await page.screenshot({ path: '/opt/data/screenshot.png' });
  await browser.close();
})();
JS
  1. Освободи сессию после использования:
terminal: curl -fsSL -X POST "https://api.steel.dev/v1/sessions/$SESSION_ID/release" \
  -H "Steel-Api-Key: $STEEL_API_KEY" > /dev/null && echo "released"
  1. Залогируй в daily что был использован Steel browser

Viewer

Пока сессия активна — пользователь может наблюдать в реальном времени:
https://app.steel.dev/sessions/{SESSION_ID}