Automation
โฟลว์งาน
โฟลว์งานคือฐานรองรับการประสานโฟลว์ที่อยู่เหนือ งานเบื้องหลัง โดยจัดการโฟลว์หลายขั้นตอนที่คงทนพร้อมสถานะของตัวเอง การติดตามรีวิชัน และความหมายเชิงซิงก์ ขณะที่งานแต่ละรายการยังคงเป็นหน่วยของงานที่แยกออกไปทำงาน
เมื่อใดควรใช้โฟลว์งาน
ใช้โฟลว์งานเมื่องานครอบคลุมหลายขั้นตอนแบบลำดับหรือแบบแตกแขนง และคุณต้องติดตามความคืบหน้าที่คงทนข้ามการรีสตาร์ต Gateway สำหรับการดำเนินการเบื้องหลังรายการเดียว งาน ธรรมดาก็เพียงพอ
| สถานการณ์ | ใช้ |
|---|---|
| งานเบื้องหลังรายการเดียว | งานธรรมดา |
| ไปป์ไลน์หลายขั้นตอน (A แล้ว B แล้ว C) | โฟลว์งาน (แบบจัดการ) |
| สังเกตงานที่สร้างจากภายนอก | โฟลว์งาน (แบบมิเรอร์) |
| การเตือนครั้งเดียว | งาน Cron |
รูปแบบเวิร์กโฟลว์ตามกำหนดเวลาที่เชื่อถือได้
สำหรับเวิร์กโฟลว์ที่เกิดซ้ำ เช่น บรีฟข่าวกรองตลาด ให้ถือว่ากำหนดเวลา การประสานงาน และการตรวจสอบความน่าเชื่อถือเป็นเลเยอร์แยกกัน:
- ใช้ งานตามกำหนดเวลา สำหรับการกำหนดเวลา
- ใช้เซสชัน cron แบบถาวรเมื่อเวิร์กโฟลว์ควรต่อยอดจากบริบทก่อนหน้า
- ใช้ Lobster สำหรับขั้นตอนที่กำหนดแน่นอน เกตการอนุมัติ และโทเค็นสำหรับดำเนินต่อ
- ใช้โฟลว์งานเพื่อติดตามการรันหลายขั้นตอนข้ามงานลูก การรอ การลองใหม่ และการรีสตาร์ต Gateway
ตัวอย่างรูปแบบ cron:
openclaw cron add \ --name "Market intelligence brief" \ --cron "0 7 * * 1-5" \ --tz "America/New_York" \ --session session:market-intel \ --message "Run the market-intel Lobster workflow. Verify source freshness before summarizing." \ --announce \ --channel slack \ --to "channel:C1234567890"ใช้ session:<id> แทน isolated เมื่อเวิร์กโฟลว์ที่เกิดซ้ำต้องการประวัติโดยเจตนา สรุปการรันก่อนหน้า หรือบริบทถาวร ใช้ isolated เมื่อการรันแต่ละครั้งควรเริ่มใหม่ และสถานะที่จำเป็นทั้งหมดระบุไว้อย่างชัดเจนในเวิร์กโฟลว์
ภายในเวิร์กโฟลว์ ให้วางการตรวจสอบความน่าเชื่อถือไว้ก่อนขั้นตอนสรุปของ LLM:
name: market-intel-briefsteps: - id: preflight command: market-intel check --json - id: collect command: market-intel collect --json stdin: $preflight.json - id: summarize command: market-intel summarize --json stdin: $collect.json - id: approve command: market-intel deliver --preview stdin: $summarize.json approval: required - id: deliver command: market-intel deliver --execute stdin: $summarize.json condition: $approve.approvedการตรวจสอบก่อนเริ่มที่แนะนำ:
- ความพร้อมใช้งานของเบราว์เซอร์และการเลือกโปรไฟล์ เช่น
openclawสำหรับสถานะที่จัดการ หรือuserเมื่อต้องใช้เซสชัน Chrome ที่ลงชื่อเข้าใช้แล้ว ดู เบราว์เซอร์ - ข้อมูลรับรอง API และโควตาสำหรับแต่ละแหล่งข้อมูล
- การเข้าถึงเครือข่ายสำหรับปลายทางที่จำเป็น
- เครื่องมือที่จำเป็นเปิดใช้งานสำหรับเอเจนต์แล้ว เช่น
lobster,browserและllm-task - กำหนดปลายทางเมื่อเกิดความล้มเหลวสำหรับ cron แล้ว เพื่อให้เห็นความล้มเหลวจากการตรวจสอบก่อนเริ่ม ดู งานตามกำหนดเวลา
ฟิลด์ที่มาของข้อมูลที่แนะนำสำหรับทุกรายการที่เก็บรวบรวม:
{ "sourceUrl": "https://example.com/report", "retrievedAt": "2026-04-24T12:00:00Z", "asOf": "2026-04-24", "title": "Example report", "content": "..."}ให้เวิร์กโฟลว์ปฏิเสธหรือทำเครื่องหมายรายการที่เก่าแล้วก่อนการสรุป ขั้นตอน LLM ควรได้รับเฉพาะ JSON ที่มีโครงสร้าง และควรถูกขอให้คง sourceUrl, retrievedAt และ asOf ไว้ในเอาต์พุต ใช้ งาน LLM เมื่อคุณต้องการขั้นตอนโมเดลที่ตรวจสอบกับสคีมาได้ภายในเวิร์กโฟลว์
สำหรับเวิร์กโฟลว์ที่นำกลับมาใช้ซ้ำได้สำหรับทีมหรือชุมชน ให้แพ็กเกจ CLI, ไฟล์ .lobster และบันทึกการตั้งค่าใด ๆ เป็น Skills หรือ Plugin แล้วเผยแพร่ผ่าน ClawHub เก็บ guardrail เฉพาะเวิร์กโฟลว์ไว้ในแพ็กเกจนั้น เว้นแต่ Plugin API จะขาดความสามารถทั่วไปที่จำเป็น
โหมดซิงก์
โหมดจัดการ
โฟลว์งานเป็นเจ้าของวงจรชีวิตตั้งแต่ต้นจนจบ โดยสร้างงานเป็นขั้นตอนของโฟลว์ ขับเคลื่อนจนเสร็จสมบูรณ์ และเลื่อนสถานะโฟลว์โดยอัตโนมัติ
ตัวอย่าง: โฟลว์รายงานรายสัปดาห์ที่ (1) รวบรวมข้อมูล (2) สร้างรายงาน และ (3) ส่งมอบรายงาน โฟลว์งานจะสร้างแต่ละขั้นตอนเป็นงานเบื้องหลัง รอให้เสร็จสมบูรณ์ แล้วจึงไปยังขั้นตอนถัดไป
Flow: weekly-report Step 1: gather-data → task created → succeeded Step 2: generate-report → task created → succeeded Step 3: deliver → task created → runningโหมดมิเรอร์
โฟลว์งานสังเกตงานที่สร้างจากภายนอกและรักษาสถานะโฟลว์ให้ซิงก์กันโดยไม่รับ ownership การสร้างงาน โหมดนี้มีประโยชน์เมื่องานมีต้นทางจากงาน cron, คำสั่ง CLI หรือแหล่งอื่น ๆ และคุณต้องการมุมมองแบบรวมของความคืบหน้าในฐานะโฟลว์
ตัวอย่าง: งาน cron อิสระสามรายการที่รวมกันเป็นกิจวัตร "ปฏิบัติการตอนเช้า" โฟลว์แบบมิเรอร์จะติดตามความคืบหน้ารวมของงานเหล่านั้นโดยไม่ควบคุมว่าจะรันเมื่อใดหรืออย่างไร
สถานะคงทนและการติดตามรีวิชัน
แต่ละโฟลว์เก็บสถานะของตัวเองอย่างถาวรและติดตามรีวิชัน เพื่อให้ความคืบหน้าอยู่รอดหลังการรีสตาร์ต Gateway การติดตามรีวิชันช่วยตรวจจับความขัดแย้งเมื่อหลายแหล่งพยายามเลื่อนโฟลว์เดียวกันพร้อมกัน
รีจิสทรีของโฟลว์ใช้ SQLite พร้อมการบำรุงรักษา write-ahead log แบบมีขอบเขต รวมถึง
checkpoint เป็นระยะและตอนปิดระบบ เพื่อให้ Gateway ที่รันเป็นเวลานานไม่เก็บ
ไฟล์ sidecar registry.sqlite-wal แบบไม่จำกัด
พฤติกรรมการยกเลิก
openclaw tasks flow cancel ตั้งเจตนาการยกเลิกแบบติดค้างบนโฟลว์ งานที่กำลังทำงานอยู่ภายในโฟลว์จะถูกยกเลิก และจะไม่เริ่มขั้นตอนใหม่ เจตนาการยกเลิกจะคงอยู่ข้ามการรีสตาร์ต ดังนั้นโฟลว์ที่ถูกยกเลิกจะยังคงถูกยกเลิก แม้ว่า Gateway จะรีสตาร์ตก่อนที่งานลูกทั้งหมดจะสิ้นสุด
คำสั่ง CLI
# List active and recent flowsopenclaw tasks flow list # Show details for a specific flowopenclaw tasks flow show <lookup> # Cancel a running flow and its active tasksopenclaw tasks flow cancel <lookup>| คำสั่ง | คำอธิบาย |
|---|---|
openclaw tasks flow list |
แสดงโฟลว์ที่ติดตามพร้อมสถานะและโหมดซิงก์ |
openclaw tasks flow show <id> |
ตรวจสอบโฟลว์หนึ่งรายการตาม flow id หรือ lookup key |
openclaw tasks flow cancel <id> |
ยกเลิกโฟลว์ที่กำลังรันและงานที่ทำงานอยู่ของโฟลว์นั้น |
โฟลว์สัมพันธ์กับงานอย่างไร
โฟลว์ประสานงาน ไม่ได้แทนที่งาน โฟลว์หนึ่งรายการอาจขับเคลื่อนงานเบื้องหลังหลายรายการตลอดอายุของมัน ใช้ openclaw tasks เพื่อตรวจสอบระเบียนงานแต่ละรายการ และใช้ openclaw tasks flow เพื่อตรวจสอบโฟลว์ที่ทำหน้าที่ประสานงาน
ที่เกี่ยวข้อง
- งานเบื้องหลัง — บัญชีแยกประเภทงานที่แยกออกไป ซึ่งโฟลว์ใช้ประสานงาน
- CLI: งาน — อ้างอิงคำสั่ง CLI สำหรับ
openclaw tasks flow - ภาพรวมระบบอัตโนมัติ — กลไกระบบอัตโนมัติทั้งหมดโดยสรุป
- งาน Cron — งานตามกำหนดเวลาที่อาจป้อนเข้าสู่โฟลว์