Skyvern

ทางการ

เซิร์ฟเวอร์ MCP สำหรับระบบอัตโนมัติบนเบราว์เซอร์ที่ขับเคลื่อนด้วย AI — นำทางเว็บไซต์ กรอกฟอร์ม ดึงข้อมูล และจัดการการเข้าสู่ระบบผ่าน Claude Code CLI

GitHub
22.9k
ลองใช้ MCP นี้ผู้สนับสนุน

คุณทำอะไรได้บ้างด้วย Skyvern MCP?

  • รันงานเบราว์เซอร์ด้วยภาษาธรรมชาติ — ให้ผู้ช่วยของคุณดำเนินงานเว็บแบบหลายขั้นตอนผ่าน page.agent.run_task() เช่น "ค้นหาโพสต์ยอดนิยมบน hackernews วันนี้"
  • ดึงข้อมูลที่มีโครงสร้างจากหน้าเว็บ — ใช้ page.extract() พร้อมกับ JSON schema ที่ไม่บังคับ เพื่อดึงข้อมูลเฉพาะ เช่น รายละเอียดคำสั่งซื้อหรือรายการสินค้า
  • ดำเนินการ Playwright ที่เสริมด้วย AI — คลิก กรอกข้อมูล เลือก หรืออัปโหลดไฟล์โดยใช้คำสั่งภาษาธรรมชาติแทนตัวเลือก CSS/XPath เช่น page.click(prompt="Click the green Submit button")
  • ตรวจสอบสถานะของหน้า — ใช้ page.validate() เพื่อตรวจสอบเงื่อนไข เช่น สถานะการเข้าสู่ระบบ โดยส่งคืนผลลัพธ์เป็นบูลีน
  • ยืนยันตัวตนด้วยข้อมูลประจำตัวที่เก็บไว้ — ใช้ page.agent.login() เพื่อเข้าสู่ระบบด้วยข้อมูลประจำตัวจาก Skyvern, Bitwarden หรือ 1Password รวมถึงการรองรับ 2FA
  • ดาวน์โหลดไฟล์ผ่านคำสั่ง — สั่งให้ page.agent.download_files() นำทางและดึงไฟล์ ซึ่งจะถูกอัปโหลดไปยังที่จัดเก็บแบบบล็อก

เอกสาร


🐉 ทำให้เวิร์กโฟลว์บนเบราว์เซอร์เป็นอัตโนมัติด้วย LLMs และ Computer Vision 🐉

Skyvern ทำให้เวิร์กโฟลว์บนเบราว์เซอร์เป็นอัตโนมัติโดยใช้ LLMs และ computer vision โดยมี SDK ที่เข้ากันได้กับ Playwright ซึ่งเพิ่มความสามารถด้าน AI บนพื้นฐานของ playwright พร้อมทั้งตัวสร้างเวิร์กโฟลว์แบบไม่ต้องเขียนโค้ด เพื่อช่วยให้ทั้งผู้ใช้ที่เชี่ยวชาญด้านเทคนิคและไม่เชี่ยวชาญสามารถทำให้เวิร์กโฟลว์ที่ต้องทำด้วยตนเองบนเว็บไซต์ใดก็ได้เป็นอัตโนมัติ แทนที่โซลูชันอัตโนมัติที่เปราะบางหรือไม่น่าเชื่อถือ

แนวทางดั้งเดิมในการทำเบราว์เซอร์อัตโนมัติจำเป็นต้องเขียนสคริปต์ที่กำหนดเองสำหรับแต่ละเว็บไซต์ ซึ่งมักจะพึ่งพาการแยกวิเคราะห์ DOM และการโต้ตอบแบบ XPath ซึ่งจะพังเมื่อใดก็ตามที่เลย์เอาต์ของเว็บไซต์เปลี่ยนแปลง

แทนที่จะพึ่งพาเฉพาะการโต้ตอบแบบ XPath ที่กำหนดด้วยโค้ด Skyvern ใช้ Vision LLMs เพื่อเรียนรู้และโต้ตอบกับเว็บไซต์

วิธีการทำงาน

Skyvern ได้รับแรงบันดาลใจจากการออกแบบ autonomous agent แบบ Task-Driven ที่ได้รับความนิยมจาก BabyAGI และ AutoGPT -- โดยมีข้อได้เปรียบสำคัญอย่างหนึ่ง: เรามอบความสามารถให้ Skyvern โต้ตอบกับเว็บไซต์โดยใช้ไลบรารีอัตโนมัติของเบราว์เซอร์ เช่น Playwright

Skyvern ใช้กลุ่มของ agents เพื่อทำความเข้าใจเว็บไซต์ และวางแผนและดำเนินการ:

แนวทางนี้มีข้อดีหลายประการ:

  1. Skyvern สามารถทำงานบนเว็บไซต์ที่ไม่เคยเห็นมาก่อน เนื่องจากสามารถจับคู่องค์ประกอบภาพกับการดำเนินการที่จำเป็นเพื่อทำให้เวิร์กโฟลว์สำเร็จ โดยไม่ต้องใช้โค้ดที่กำหนดเอง
  2. Skyvern ทนทานต่อการเปลี่ยนแปลงเลย์เอาต์ของเว็บไซต์ เนื่องจากไม่มี XPaths หรือ selectors อื่นที่กำหนดไว้ล่วงหน้าที่ระบบของเราค้นหาในขณะที่พยายามนำทาง
  3. Skyvern สามารถนำเวิร์กโฟลว์เดียวไปใช้กับเว็บไซต์จำนวนมากได้ เนื่องจากสามารถใช้เหตุผลผ่านการโต้ตอบที่จำเป็นเพื่อทำให้เวิร์กโฟลว์สำเร็จ รายงานทางเทคนิคโดยละเอียดสามารถดูได้ ที่นี่

เดโม

https://github.com/user-attachments/assets/5cab4668-e8e2-4982-8551-aab05ff73a7f

เริ่มต้นใช้งานอย่างรวดเร็ว

Skyvern Cloud

Skyvern Cloud เป็นเวอร์ชันคลาวด์ที่ได้รับการจัดการของ Skyvern ที่ช่วยให้คุณรัน Skyvern ได้โดยไม่ต้องกังวลเกี่ยวกับโครงสร้างพื้นฐาน รองรับการรัน Skyvern หลายอินสแตนซ์พร้อมกัน และมาพร้อมกับกลไกตรวจจับ anti-bot เครือข่ายพร็อกซี และตัวแก้ CAPTCHA

หากคุณต้องการลองใช้ ไปที่ app.skyvern.com และสร้างบัญชี

รันในเครื่อง (UI + Server)

เลือกวิธีการตั้งค่าที่คุณต้องการ:

ค่าเริ่มต้นของฐานข้อมูล: skyvern quickstart และ skyvern run server ค่าเริ่มต้นเป็นฐานข้อมูล SQLite ที่ ~/.skyvern/data.db ดังนั้นเส้นทาง pip จึงทำงานได้โดยไม่ต้องใช้ Postgres หรือ Docker หากต้องการใช้ Postgres แทน ให้ส่ง --database-string สำหรับฐานข้อมูลที่มีอยู่ (หรือละเว้น --no-postgres เพื่อให้ quickstart เริ่มคอนเทนเนอร์ Postgres ของตัวเอง) Docker Compose ใช้บริการ Postgres ที่มาพร้อมกันเสมอ

ตัวเลือก A: ติดตั้งด้วย pip (แนะนำสำหรับการตั้งค่าในเครื่องที่จัดการด้วย Python)

dependencies ที่จำเป็น:

เพิ่มเติม สำหรับ Windows:

  • Rust
  • VS Code พร้อมเครื่องมือพัฒนา C++ และ Windows SDK

1. ติดตั้ง Skyvern

pip install "skyvern[all]"

2. รัน Skyvern

skyvern quickstart

pip quickstart ใช้ SQLite เป็นค่าเริ่มต้น หากต้องการใช้คอนเทนเนอร์ Postgres ในเครื่องแทน ให้รัน skyvern quickstart (คอนเทนเนอร์ Postgres จะถูกเริ่มต้นเว้นแต่คุณจะส่ง --no-postgres) หรือเชื่อมต่อกับฐานข้อมูลที่มีอยู่ด้วย --database-string=postgresql+psycopg://user:pass@host:5432/dbname

ตัวเลือก B: Docker Compose

ใช้ตัวเลือกนี้หากคุณต้องการให้ทุกอย่างอยู่ในคอนเทนเนอร์ (Postgres, API, UI) และไม่ต้องการติดตั้ง Python/Node ในเครื่อง

  1. ติดตั้ง Docker Desktop
  2. โคลน repository:
    git clone https://github.com/skyvern-ai/skyvern.git && cd skyvern
    
  3. กำหนดค่า LLM provider ของคุณใน .env (คำสั่ง quickstart --docker-compose ด้านล่างจะสร้างจาก .env.example หากไม่มี):
    cp .env.example .env  # if not already created
    # edit .env to add your LLM API key
    
  4. เริ่มทุกอย่าง:
    docker compose up -d
    
  5. เปิด http://localhost:8080

การแก้ไขปัญหา

(sqlite3.OperationalError) table organizations already exists — คุณพบบั๊กที่ทราบใน pip install skyvern==1.0.31 วิธีแก้ไข:

rm ~/.skyvern/data.db   # remove the leftover SQLite file
pip install --upgrade skyvern   # 1.0.32+ contains the fix
skyvern quickstart

หากคุณยังอยู่ที่เวอร์ชัน 1.0.31 และไม่สามารถอัปเกรดได้ ให้ติดตั้งผ่าน uv แทน:

uv pip install skyvern

pip install skyvern ล้มเหลวด้วย ResolutionImpossible (litellm / fastmcp) — คุณพบความขัดแย้งในการแก้ไข dependencies ในเวอร์ชัน 1.0.31 อัปเกรดเป็น 1.0.32+ หรือใช้ uv: uv pip install skyvern

SDK

Skyvern เป็นส่วนขยายของ Playwright ที่เพิ่มระบบอัตโนมัติของเบราว์เซอร์ที่ขับเคลื่อนด้วย AI ให้พลังเต็มรูปแบบของ Playwright พร้อมความสามารถ AI เพิ่มเติม—ใช้พรอมต์ภาษาธรรมชาติเพื่อโต้ตอบกับองค์ประกอบ แยกข้อมูล และทำให้เวิร์กโฟลว์หลายขั้นตอนที่ซับซ้อนเป็นอัตโนมัติ

การติดตั้ง:

  • Python SDK / cloud API: pip install skyvern
  • เซิร์ฟเวอร์ในเครื่อง + UI แบบแพ็กเกจ: pip install "skyvern[all]" จากนั้นรัน skyvern quickstart
  • เซิร์ฟเวอร์ในเครื่อง + UI แบบแพ็กเกจพร้อม Postgres: pip install "skyvern[all]" จากนั้นรัน skyvern quickstart --database-string=postgresql+psycopg://user:pass@host:5432/dbname
  • UI แบบแพ็กเกจสำหรับ API ที่มีอยู่: pip install "skyvern[ui]" จากนั้นตั้งค่า VITE_API_BASE_URL (และ VITE_SKYVERN_API_KEY หาก API ของคุณต้องใช้คีย์) และรัน skyvern run ui
  • TypeScript: npm install @skyvern/client

คำสั่งเพจที่ขับเคลื่อนด้วย AI

Skyvern เพิ่มคำสั่ง AI หลักสี่คำสั่งบนออบเจกต์เพจโดยตรง:

คำสั่งคำอธิบาย
page.act(prompt)ดำเนินการโดยใช้ภาษาธรรมชาติ (เช่น "คลิกปุ่มเข้าสู่ระบบ")
page.extract(prompt, schema)แยกข้อมูลที่มีโครงสร้างจากเพจพร้อม schema JSON ที่ไม่บังคับ
page.validate(prompt)ตรวจสอบสถานะของเพจ คืนค่า bool (เช่น "ตรวจสอบว่าผู้ใช้เข้าสู่ระบบแล้ว")
page.prompt(prompt, schema)ส่งพรอมต์ตามอำเภอใจไปยัง LLM พร้อม schema การตอบสนองที่ไม่บังคับ

นอกจากนี้ page.agent ให้คำสั่งเวิร์กโฟลว์ระดับสูง:

คำสั่งคำอธิบาย
page.agent.run_task(prompt)ดำเนินงานหลายขั้นตอนที่ซับซ้อน
page.agent.login(credential_type, credential_id)ยืนยันตัวตนด้วยข้อมูลประจำตัวที่เก็บไว้ (Skyvern, Bitwarden, 1Password)
page.agent.download_files(prompt)นำทางและดาวน์โหลดไฟล์
page.agent.run_workflow(workflow_id)ดำเนินเวิร์กโฟลว์ที่สร้างไว้ล่วงหน้า

การดำเนินการ Playwright ที่เสริมด้วย AI

การดำเนินการ Playwright มาตรฐานทั้งหมดรองรับพารามิเตอร์ prompt ที่ไม่บังคับสำหรับการค้นหาองค์ประกอบที่ขับเคลื่อนด้วย AI:

การดำเนินการPlaywrightAI-Augmented
คลิกpage.click("#btn")page.click(prompt="Click login button")
กรอกpage.fill("#email", "a@b.com")page.fill(prompt="Email field", value="a@b.com")
เลือกpage.select_option("#country", "US")page.select_option(prompt="Country dropdown", value="US")
อัปโหลดpage.upload_file("#file", "doc.pdf")page.upload_file(prompt="Upload area", files="doc.pdf")

โหมดการโต้ตอบสามแบบ:

# 1. Traditional Playwright - CSS/XPath selectors
await page.click("#submit-button")

# 2. AI-powered - natural language
await page.click(prompt="Click the green Submit button")

# 3. AI fallback - tries selector first, falls back to AI if it fails
await page.click("#submit-btn", prompt="Click the Submit button")

คำสั่ง AI หลัก - ตัวอย่าง

# act - Perform actions using natural language
await page.act("Click the login button and wait for the dashboard to load")

# extract - Extract structured data with optional JSON schema
result = await page.extract("Get the product name and price")
result = await page.extract(
    prompt="Extract order details",
    schema={"order_id": "string", "total": "number", "items": "array"}
)

# validate - Check page state (returns bool)
is_logged_in = await page.validate("Check if the user is logged in")

# prompt - Send arbitrary prompts to the LLM
summary = await page.prompt("Summarize what's on this page")

ตัวอย่างการเริ่มต้นอย่างรวดเร็ว

รันผ่าน UI:

skyvern run all

ไปที่ http://localhost:8080 เพื่อรันงานผ่านอินเทอร์เฟซเว็บ หาก UI แบบแพ็กเกจหายไป skyvern run ui จะเสนอให้ติดตั้งแพ็กเกจ UI ที่ตรงกัน

หากต้องการรันเฉพาะ UI แบบแพ็กเกจกับ Skyvern API ที่มีอยู่ ให้ติดตั้ง skyvern[ui] และตั้งค่าตัวแปรสภาพแวดล้อมด้านล่างก่อนรัน skyvern run ui:

  • VITE_API_BASE_URL (เช่น http://localhost:8000/api/v1) — ชี้ UI ไปที่ Skyvern API ของคุณ
  • VITE_SKYVERN_API_KEY — คีย์ API หาก API ของคุณต้องใช้คีย์
  • VITE_WSS_BASE_URL — จุดสิ้นสุด WebSocket (อนุมานจาก VITE_API_BASE_URL หากไม่ได้ตั้งค่า)
  • VITE_ARTIFACT_API_BASE_URL — URL พื้นฐานสำหรับการดาวน์โหลด artifacts
  • VITE_BROWSER_STREAMING_MODE — โหมดสตรีมมิ่ง viewport ของเบราว์เซอร์

Python SDK:

from skyvern import Skyvern

# Local mode
skyvern = Skyvern.local()

# Or connect to Skyvern Cloud
skyvern = Skyvern(api_key="your-api-key")

# Launch browser and get page
browser = await skyvern.launch_cloud_browser()
page = await browser.get_working_page()

# Mix Playwright with AI-powered actions
await page.goto("https://example.com")
await page.click("#login-button")  # Traditional Playwright
await page.agent.login(credential_type="skyvern", credential_id="cred_123")  # AI login
await page.click(prompt="Add first item to cart")  # AI-augmented click
await page.agent.run_task("Complete checkout with: John Snow, 12345")  # AI task

TypeScript SDK:

import { Skyvern } from "@skyvern/client";

const skyvern = new Skyvern({ apiKey: "your-api-key" });
const browser = await skyvern.launchCloudBrowser();
const page = await browser.getWorkingPage();

// Mix Playwright with AI-powered actions
await page.goto("https://example.com");
await page.click("#login-button");  // Traditional Playwright
await page.agent.login("skyvern", { credentialId: "cred_123" });  // AI login
await page.click({ prompt: "Add first item to cart" });  // AI-augmented click
await page.agent.runTask("Complete checkout with: John Snow, 12345");  // AI task

await browser.close();

การดำเนินงานอย่างง่าย:

from skyvern import Skyvern

skyvern = Skyvern()
task = await skyvern.run_task(prompt="Find the top post on hackernews today")
print(task)

การใช้งานขั้นสูง

ควบคุมเบราว์เซอร์ของคุณเอง (Chrome)

ให้ Skyvern ควบคุมเบราว์เซอร์ Chrome ที่มีอยู่ของคุณ—พร้อมคุกกี้ การเข้าสู่ระบบ และส่วนขยายทั้งหมดของคุณ

ขั้นตอนที่ 1: เปิดใช้งาน remote debugging ใน Chrome

  1. เปิด Chrome และไปที่ chrome://inspect/#remote-debugging
  2. คลิก Enable เพื่อเริ่มเซิร์ฟเวอร์การดีบัก
  3. คุณควรเห็น: Server running at: 127.0.0.1:9222

[!TIP] คำสั่ง skyvern init browser สามารถทำสิ่งนี้ได้โดยอัตโนมัติ—มันเปิด chrome://inspect/#remote-debugging รอให้คุณเปิดใช้งาน และบันทึกการกำหนดค่า

ขั้นตอนที่ 2: เชื่อมต่อ Skyvern

ตัวเลือก A — โค้ด Python:

from skyvern import Skyvern

skyvern = Skyvern(
    base_url="http://localhost:8000",
    api_key="YOUR_API_KEY",
    browser_address="http://127.0.0.1:9222",
)
task = await skyvern.run_task(
    prompt="Find the top post on hackernews today",
)

ตัวเลือก B — บริการ Skyvern:

เพิ่มตัวแปรสองตัวในไฟล์ .env ของคุณ:

BROWSER_TYPE=cdp-connect
BROWSER_REMOTE_DEBUGGING_URL=http://127.0.0.1:9222

รีสตาร์ทบริการ Skyvern skyvern run all และรันงานผ่าน UI หรือโค้ด

เชื่อมต่อ Skyvern Cloud กับเบราว์เซอร์ในเครื่องของคุณ

ให้ Skyvern Cloud ควบคุมเบราว์เซอร์ Chrome ที่รันบนเครื่องของคุณ—พร้อมคุกกี้ การเข้าสู่ระบบ และส่วนขยายที่มีอยู่ทั้งหมด มีประโยชน์สำหรับการทำให้เว็บไซต์ที่คุณเข้าสู่ระบบแล้วหรืออยู่หลัง VPN เป็นอัตโนมัติ

# One command to start Chrome + create a tunnel to Skyvern Cloud
skyvern browser serve --tunnel

จากนั้นใช้ URL ของ tunnel ในงานของคุณ:

from skyvern import Skyvern

skyvern = Skyvern(api_key="your-api-key")
task = await skyvern.run_task(
    prompt="Download the latest invoice from my account",
    browser_address="https://abc123.ngrok-free.dev",
)

[!WARNING] ใช้ --api-key เสมอเมื่อเปิดเผยเบราว์เซอร์ของคุณผ่าน tunnel หากไม่มี ผู้ที่มี URL จะควบคุมเบราว์เซอร์ของคุณได้อย่างเต็มรูปแบบ ดู เอกสารความปลอดภัย

ดู เอกสารฉบับเต็ม สำหรับตัวเลือกทั้งหมด การตั้งค่า tunnel ด้วยตนเอง และการแก้ไขปัญหา

รับ schema ผลลัพธ์ที่สอดคล้องกันจากการรันของคุณ

คุณสามารถทำได้โดยเพิ่มพารามิเตอร์ data_extraction_schema:

from skyvern import Skyvern

skyvern = Skyvern()
task = await skyvern.run_task(
    prompt="Find the top post on hackernews today",
    data_extraction_schema={
        "type": "object",
        "properties": {
            "title": {
                "type": "string",
                "description": "The title of the top post"
            },
            "url": {
                "type": "string",
                "description": "The URL of the top post"
            },
            "points": {
                "type": "integer",
                "description": "Number of points the post has received"
            }
        }
    }
)

คำสั่งที่เป็นประโยชน์สำหรับการดีบักปัญหา

# Launch the Skyvern Server Separately*
skyvern run server

# Launch the Skyvern UI
skyvern run ui

# Check status of the Skyvern service
skyvern status

# Stop the Skyvern service
skyvern stop all

# Stop the Skyvern UI
skyvern stop ui

# Stop the Skyvern Server Separately
skyvern stop server

ประสิทธิภาพและการประเมินผล

Skyvern มีประสิทธิภาพ SOTA บน เกณฑ์มาตรฐาน WebBench ด้วยความแม่นยำ 64.4% รายงานทางเทคนิค + การประเมินผลสามารถดูได้ ที่นี่

ประสิทธิภาพในงาน WRITE (เช่น การกรอกแบบฟอร์ม การเข้าสู่ระบบ การดาวน์โหลดไฟล์ ฯลฯ)

Skyvern เป็น agent ที่มีประสิทธิภาพดีที่สุดในงาน WRITE (เช่น การกรอกแบบฟอร์ม การเข้าสู่ระบบ การดาวน์โหลดไฟล์ ฯลฯ) ซึ่งส่วนใหญ่ใช้สำหรับงานที่เกี่ยวข้องกับ RPA (Robotic Process Automation)

คุณสมบัติของ Skyvern

งาน Skyvern (Skyvern Tasks)

งานเป็นหน่วยการสร้างพื้นฐานภายใน Skyvern แต่ละงานคือคำขอเดียวไปยัง Skyvern โดยสั่งให้มันนำทางผ่านเว็บไซต์และบรรลุเป้าหมายเฉพาะ

งานกำหนดให้คุณระบุ url, prompt และสามารถรวม data schema ได้โดยไม่บังคับ (หากคุณต้องการให้ผลลัพธ์เป็นไปตาม schema เฉพาะ) และ error codes (หากคุณต้องการให้ Skyvern หยุดทำงานในสถานการณ์เฉพาะ)

เวิร์กโฟลว์ Skyvern (Skyvern Workflows)

เวิร์กโฟลว์เป็นวิธีเชื่อมโยงหลายงานเข้าด้วยกันเพื่อสร้างหน่วยการทำงานที่สอดคล้องกัน

ตัวอย่างเช่น หากคุณต้องการดาวน์โหลดใบแจ้งหนี้ทั้งหมดที่ใหม่กว่าวันที่ 1 มกราคม คุณสามารถสร้างเวิร์กโฟลว์ที่นำทางไปยังหน้าใบแจ้งหนี้ก่อน จากนั้นกรองให้แสดงเฉพาะใบแจ้งหนี้ที่ใหม่กว่าวันที่ 1 มกราคม แยกรายการใบแจ้งหนี้ที่มีสิทธิ์ทั้งหมด และวนซ้ำผ่านใบแจ้งหนี้แต่ละใบเพื่อดาวน์โหลด

อีกตัวอย่างหนึ่ง หากคุณต้องการทำให้การซื้อสินค้าจากร้านค้าอีคอมเมิร์ซเป็นอัตโนมัติ คุณสามารถสร้างเวิร์กโฟลว์ที่นำทางไปยังสินค้าที่ต้องการก่อน จากนั้นเพิ่มลงในตะกร้า ประการที่สอง มันจะนำทางไปยังตะกร้าและตรวจสอบสถานะของตะกร้า สุดท้าย มันจะผ่านกระบวนการชำระเงินเพื่อซื้อสินค้า

คุณสมบัติเวิร์กโฟลว์ที่รองรับ ได้แก่:

  1. งานเบราว์เซอร์ (Browser Task)
  2. การดำเนินการเบราว์เซอร์ (Browser Action)
  3. การแยกข้อมูล (Data Extraction)
  4. การตรวจสอบ (Validation)
  5. ลูป For (For Loops)
  6. การแยกวิเคราะห์ไฟล์ (File parsing)
  7. การส่งอีเมล (Sending emails)
  8. พรอมต์ข้อความ (Text Prompts)
  9. บล็อกคำขอ HTTP (HTTP Request Block)
  10. บล็อกโค้ดที่กำหนดเอง (Custom Code Block)
  11. การอัปโหลดไฟล์ไปยังบล็อกสตอเรจ (Uploading files to block storage)
  12. (เร็วๆ นี้) เงื่อนไข (Conditionals)

การสตรีมสด (Livestreaming)

Skyvern ช่วยให้คุณสตรีม viewport ของเบราว์เซอร์ไปยังเครื่องของคุณแบบสด เพื่อให้คุณเห็นสิ่งที่ Skyvern กำลังทำบนเว็บได้อย่างชัดเจน ซึ่งมีประโยชน์สำหรับการดีบักและทำความเข้าใจว่า Skyvern โต้ตอบกับเว็บไซต์อย่างไร และสามารถแทรกแซงได้เมื่อจำเป็น

การกรอกแบบฟอร์ม

Skyvern มีความสามารถในการกรอกข้อมูลในฟอร์มบนเว็บไซต์ได้โดยตรง การส่งข้อมูลผ่าน navigation_goal จะช่วยให้ Skyvern เข้าใจข้อมูลและกรอกฟอร์มได้อย่างถูกต้อง

การดึงข้อมูล

Skyvern ยังสามารถดึงข้อมูลจากเว็บไซต์ได้อีกด้วย

คุณสามารถระบุ data_extraction_schema ลงในพรอมต์หลักโดยตรงเพื่อบอก Skyvern ว่าต้องการดึงข้อมูลใดจากเว็บไซต์ ในรูปแบบ jsonc ผลลัพธ์ของ Skyvern จะถูกจัดโครงสร้างตามสคีมาที่ระบุ

การดาวน์โหลดไฟล์

Skyvern สามารถดาวน์โหลดไฟล์จากเว็บไซต์ได้ ไฟล์ที่ดาวน์โหลดทั้งหมดจะถูกอัปโหลดไปยังบล็อกสตอเรจโดยอัตโนมัติ (หากมีการกำหนดค่า) และคุณสามารถเข้าถึงได้ผ่าน UI

การรับรองความถูกต้อง

Skyvern รองรับวิธีการรับรองความถูกต้องหลายวิธีเพื่อให้การทำงานอัตโนมัติหลังการเข้าสู่ระบบง่ายขึ้น หากคุณต้องการทดลองใช้ โปรดติดต่อเรา ทางอีเมล หรือ discord

🔐 การรองรับ 2FA (TOTP)

Skyvern รองรับวิธีการ 2FA หลายวิธีเพื่อให้คุณสามารถทำงานอัตโนมัติที่ต้องใช้ 2FA ได้

ตัวอย่างเช่น:

  1. 2FA แบบ QR (เช่น Google Authenticator, Authy)
  2. 2FA ทางอีเมล
  3. 2FA ทาง SMS

🔐 เรียนรู้เพิ่มเติมเกี่ยวกับการรองรับ 2FA ที่นี่

การผสานรวมตัวจัดการรหัสผ่าน

Skyvern รองรับการผสานรวมตัวจัดการรหัสผ่านต่อไปนี้:

  • Bitwarden
  • บริการข้อมูลประจำตัวแบบกำหนดเอง (HTTP API)
  • 1Password
  • LastPass

โปรโตคอลบริบทโมเดล (MCP)

Skyvern รองรับโปรโตคอลบริบทโมเดล (MCP) เพื่อให้คุณสามารถใช้ LLM ใดก็ได้ที่รองรับ MCP

ดูเอกสาร MCP ที่นี่

การผสานรวม Zapier / Make.com / N8N

Skyvern รองรับ Zapier, Make.com และ N8N เพื่อให้คุณเชื่อมต่อเวิร์กโฟลว์ Skyvern กับแอปอื่น ๆ ได้

🔐 เรียนรู้เพิ่มเติมเกี่ยวกับการรองรับ 2FA ที่นี่

ตัวอย่างการใช้งาน Skyvern ในโลกจริง

เรายินดีที่ได้เห็นว่า Skyvern ถูกนำไปใช้ในโลกจริงอย่างไร ต่อไปนี้คือตัวอย่างการใช้งาน Skyvern เพื่อทำงานอัตโนมัติในโลกจริง โปรดเปิด PR เพื่อเพิ่มตัวอย่างของคุณเอง!

การดาวน์โหลดใบแจ้งหนี้จากเว็บไซต์ต่าง ๆ มากมาย

จองการสาธิตเพื่อดูสด

ทำให้กระบวนการสมัครงานเป็นอัตโนมัติ

💡 ดูการทำงาน

ทำให้การจัดซื้อวัสดุสำหรับบริษัทผู้ผลิตเป็นอัตโนมัติ

💡 ดูการทำงาน

การนำทางไปยังเว็บไซต์ของรัฐบาลเพื่อลงทะเบียนบัญชีหรือกรอกแบบฟอร์ม

💡 ดูการทำงาน

การกรอกแบบฟอร์มติดต่อเราทั่วไป

💡 ดูการทำงาน

การดึงข้อมูลใบเสนอราคาประกันจากผู้ให้บริการประกันในทุกภาษา

💡 ดูการทำงาน

💡 ดูการทำงาน

การตั้งค่าสำหรับผู้มีส่วนร่วม

ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง uv แล้ว

  1. รันคำสั่งนี้เพื่อสร้างสภาพแวดล้อมเสมือนของคุณ (.venv)
    uv sync --group dev
    
  2. ดำเนินการกำหนดค่าเซิร์ฟเวอร์เริ่มต้น
    uv run skyvern quickstart
    
  3. ไปที่ http://localhost:8080 ในเบราว์เซอร์ของคุณเพื่อเริ่มใช้ UI Skyvern CLI รองรับ Windows, WSL, macOS และ Linux

เอกสารประกอบ

เอกสารประกอบเพิ่มเติมสามารถพบได้ใน 📕 หน้าเอกสาร โปรดแจ้งให้เราทราบหากมีสิ่งใดไม่ชัดเจนหรือขาดหายไปโดยการเปิด issue หรือติดต่อเรา ทางอีเมล หรือ discord

LLM ที่รองรับ

ผู้ให้บริการโมเดลที่รองรับ
OpenAIGPT-5.5, GPT-5.4, GPT-5, GPT-4.1, o3, o4-mini
AnthropicClaude 4.7 Opus, Claude 4.6 (Sonnet, Opus), Claude 4.5 (Haiku, Sonnet, Opus)
Azure OpenAIโมเดล GPT ใด ๆ ที่ปรับใช้กับการสมัครสมาชิก Azure ของคุณ
AWS BedrockClaude 4.7, Claude 4.6 (Sonnet, Opus), Claude 4.5 (Sonnet, Opus)
GeminiGemini 3.1 Pro, Gemini 3 Flash, Gemini 2.5 Pro/Flash
Ollamaรันโมเดลที่โฮสต์ในเครื่องใดก็ได้ผ่าน Ollama
OpenRouterเข้าถึงโมเดลผ่าน OpenRouter
OpenAI-compatibleปลายทาง API แบบกำหนดเองใด ๆ ที่เป็นไปตามรูปแบบ API ของ OpenAI (ผ่าน liteLLM)

สำหรับการกำหนดค่า LLM โดยละเอียด รวมถึงคีย์โมเดลทั้งหมด ตัวแปรสภาพแวดล้อม และการตั้งค่าโมเดลหลายตัว โปรดดู เอกสารการกำหนดค่า LLM

การมีส่วนร่วม

เรายินดีต้อนรับ PR และข้อเสนอแนะ! อย่าลังเลที่จะเปิด PR/issue หรือติดต่อเรา ทางอีเมล หรือ discord โปรดดู คู่มือการมีส่วนร่วม และ "Help Wanted" issues เพื่อเริ่มต้น!

หากคุณต้องการแชทกับที่เก็บ skyvern เพื่อรับภาพรวมระดับสูงของโครงสร้าง วิธีสร้างต่อยอด และวิธีแก้ไขคำถามการใช้งาน โปรดดู Code Sage

การเก็บข้อมูลทางไกล

โดยค่าเริ่มต้น Skyvern จะเก็บสถิติการใช้งานพื้นฐานเพื่อช่วยให้เราเข้าใจว่า Skyvern ถูกใช้งานอย่างไร หากคุณต้องการไม่เข้าร่วมการเก็บข้อมูลทางไกล โปรดตั้งค่าตัวแปรสภาพแวดล้อม SKYVERN_TELEMETRY เป็น false

ใบอนุญาต

ที่เก็บโอเพนซอร์สของ Skyvern รองรับผ่านคลาวด์ที่จัดการ ตรรกะหลักทั้งหมดที่ขับเคลื่อน Skyvern มีอยู่ในที่เก็บโอเพนซอร์สนี้ภายใต้ ใบอนุญาต AGPL-3.0 ยกเว้นมาตรการต่อต้านบอทที่มีให้ในบริการคลาวด์ที่จัดการของเรา

หากคุณมีคำถามหรือข้อกังวลเกี่ยวกับใบอนุญาต โปรด ติดต่อเรา แล้วเรายินดีให้ความช่วยเหลือ

ประวัติดาว

Star History Chart