Skyvern

ทางการ

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

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

  • เรียกใช้งานเบราว์เซอร์จากคำสั่งภาษาธรรมชาติ — ใช้ skyvern.run_task เพื่อนำทางเว็บไซต์และบรรลุเป้าหมาย เช่น "ค้นหาโพสต์ยอดนิยมบน HackerNews วันนี้"

  • ดึงข้อมูลที่มีโครงสร้างพร้อมสคีมา — ส่ง data_extraction_schema ไปยัง skyvern.run_task เพื่อรับผลลัพธ์ JSON ที่สอดคล้องกับคุณสมบัติที่คุณกำหนด

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

  • ดำเนินการโต้ตอบหน้าด้วย AI — ใช้ page.act, page.extract, page.validate หรือ page.agent.run_task เพื่อโต้ตอบกับหน้าเว็บด้วยภาษาธรรมชาติแทนการใช้ตัวเลือก

  • เชื่อมโยงเวิร์กโฟลว์หลายขั้นตอน — สร้างเวิร์กโฟลว์ใน UI ที่รวมงานเบราว์เซอร์ การดึงข้อมูล การตรวจสอบ การดาวน์โหลดไฟล์ และคำขอ HTTP เป็นลำดับอัตโนมัติเดียว

เอกสาร


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

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

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

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

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

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

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

วิธีการนี้มีข้อดีบางประการ:

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

การสาธิต

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

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

Skyvern Cloud

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

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

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

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

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

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

สิ่งที่ต้องมี:

นอกจากนี้ สำหรับ Windows:

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

1. ติดตั้ง Skyvern

pip install "skyvern[all]"

2. รัน Skyvern

skyvern quickstart

การเริ่มต้นอย่างรวดเร็วด้วย pip ใช้ SQLite เป็นค่าเริ่มต้น สำหรับคอนเทนเนอร์ Postgres ภายในเครื่อง ให้รัน skyvern quickstart --postgres

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

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

  1. ติดตั้ง Docker Desktop
  2. โคลนที่เก็บ:
    git clone https://github.com/skyvern-ai/skyvern.git && cd skyvern
    
  3. กำหนดค่าผู้ให้บริการ LLM ของคุณใน .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) — คุณพบข้อขัดแย้งในการแก้ไขการพึ่งพาใน 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 --postgres
  • UI ที่แพ็คเกจสำหรับ API ที่มีอยู่: pip install "skyvern[ui]" จากนั้นรัน skyvern run ui --api-url <api-url> --api-key <api-key>
  • TypeScript: npm install @skyvern/client

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

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

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

นอกจากนี้ 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:

การกระทำPlaywrightเสริมด้วย AI
คลิก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 ที่ตรงกัน สำหรับการตั้งค่าแบบไม่โต้ตอบ ให้ใช้ skyvern run ui --install-ui หรือ skyvern run all --install-ui

ในการรันเฉพาะ UI ที่แพ็คเกจกับ Skyvern API ที่มีอยู่ ให้ติดตั้ง skyvern[ui] และส่ง --api-url; CLI จะอนุมาน --wss-url จาก URL ของ API เว้นแต่คุณจะเขียนทับ คุณยังสามารถตั้งค่า VITE_API_BASE_URL, VITE_WSS_BASE_URL, VITE_ARTIFACT_API_BASE_URL, VITE_SKYVERN_API_KEY, และ VITE_BROWSER_STREAMING_MODE ก่อนรัน skyvern run ui

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: เปิดใช้งานการดีบักระยะไกลใน 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 ทันเนลในงานของคุณ:

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 เสมอเมื่อเปิดเผยเบราว์เซอร์ของคุณผ่านทันเนล หากไม่มีมัน ใครก็ตามที่มี URL จะสามารถควบคุมเบราว์เซอร์ของคุณได้อย่างเต็มที่ ดู เอกสารความปลอดภัย

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

รับสคีมาเอาต์พุตที่สอดคล้องกันจากการรันของคุณ

คุณสามารถทำได้โดยเพิ่มพารามิเตอร์ 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 มีประสิทธิภาพล้ำสมัยบน WebBench benchmark ด้วยความแม่นยำ 64.4% รายงานทางเทคนิค + การประเมินผลสามารถดูได้ ที่นี่

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

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

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

งาน Skyvern

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

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

เวิร์กโฟลว์ Skyvern

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

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

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

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

  1. งานเบราว์เซอร์
  2. การกระทำของเบราว์เซอร์
  3. การดึงข้อมูล
  4. การตรวจสอบ
  5. ลูป For
  6. การแยกวิเคราะห์ไฟล์
  7. การส่งอีเมล
  8. พรอมต์ข้อความ
  9. บล็อกคำขอ HTTP
  10. บล็อกโค้ดที่กำหนดเอง
  11. การอัปโหลดไฟล์ไปยังที่เก็บข้อมูลแบบบล็อก
  12. (เร็วๆ นี้) เงื่อนไข

การสตรีมสด

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

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

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

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

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

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

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

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

การยืนยันตัวตน

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

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

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

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

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

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

การผสานรวมกับ Password Manager

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

  • Bitwarden
  • Custom Credential Service (HTTP API)
  • 1Password
  • LastPass

Model Context Protocol (MCP)

Skyvern รองรับ Model Context Protocol (MCP) เพื่อให้คุณสามารถใช้ LLM ใดๆ ที่รองรับ MCP ได้

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

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

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

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

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

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

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

จองเดโมเพื่อดูการทำงานจริง

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

💡 ดูการทำงาน

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

💡 ดูการทำงาน

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

💡 ดูการทำงาน

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

💡 ดูการทำงาน

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

💡 ดูการทำงาน

💡 ดูการทำงาน

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

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

  1. รันคำสั่งนี้เพื่อสร้าง virtual environment (.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" เพื่อเริ่มต้น!

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

เทเลเมทรี

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

ใบอนุญาต

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

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

ประวัติการให้ดาว

Star History Chart