Skip to content

Claude Code Routines: ย้าย Automation ขึ้น Cloud อย่างไรให้เวิร์กและไม่เจ็บตัว

VibeSolo
Claude Code Routines: ย้าย Automation ขึ้น Cloud อย่างไรให้เวิร์กและไม่เจ็บตัว

ฟีเจอร์ล่าสุดของ Claude Code ไม่ได้มีดีแค่การตั้งเวลา แต่คือการยกระดับให้ Automation ไปรันบน Cloud โดยไม่ต้องเปิดเครื่องทิ้งไว้อีกต่อไป

ถอดบทเรียนจากคลิปของ Nate Herk | สิ่งสำคัญไม่ใช่ตัวฟีเจอร์ Routines แต่อยู่ที่ "วิธีตั้งค่าให้ใช้งานได้จริง" เพราะพอโยน Workflow ขึ้น Cloud คุณจะเจอปัญหามากมาย ทั้ง API Key, GitHub Repo, การอนุญาตเครือข่าย รวมถึงงานที่คิดว่ารันได้แต่กลับไม่ผ่าน

สำหรับเจ้าของธุรกิจหรือทีม Operations ที่อยากใช้ AI จับงานจริง ฟีเจอร์นี้ช่วยงาน Routine ประจำวันได้ดี เช่น สรุปความเห็นลูกค้า อัปเดตงานเข้า ClickUp หรือ Slack ตรวจ GitHub Issue หรือให้ AI รีวิวโค้ดตามเวลา แต่คุณต้องเข้าใจกฎเกณฑ์ก่อน ไม่งั้นจะเสียเวลาตั้งค่าแล้วพบว่าระบบไม่ทำงานดังหวัง

Step 1: เข้าใจก่อนว่า Claude Code Routines คืออะไร
Routines คือการเปลี่ยน Prompt ของเราเป็นงานอัตโนมัติ แล้วให้ Claude Code ไปรันบน Infrastructure ของ Anthropic แทนเครื่องส่วนตัว อธิบายง่ายๆ คือการสั่งว่า "เมื่อถึงเวลาหรือมีเหตุการณ์บางอย่าง ให้ Claude จัดการสิ่งนี้แทน" โดยมีวิธี Trigger หลัก 3 แบบ: ตามตารางเวลา, จากการเรียก API, หรือจากเหตุการณ์บน GitHub

จุดแข็งที่ทำให้ฟีเจอร์นี้มีน้ำหนัก คือการรักษาสถานะ "Agent" ไว้ได้เต็มที่ ไม่ใช่แค่สคริปต์อัตโนมัติธรรมดา Claude ยังอ่านไฟล์ใน Repo, เข้าใจ Claude.md, ใช้ Skills และแก้ปัญหาเฉพาะหน้าได้ ถ้าเราตั้งค่า Prompt และสภาพแวดล้อมมาดีพอ

ในมุมธุรกิจไทย Use Case ที่จับต้องได้ที่สุดคืองานซ้ำๆ รายวัน ซึ่งเดิมต้องพึ่งการเปิดเครื่องทิ้งไว้ หรือต่อเชื่อมเครื่องมือหลายตัว ตอนนี้สามารถมอบหมายงานบางส่วนให้ Claude จัดการบน Cloud ได้ทันที

Step 2: ตั้ง Routine ให้ถูกตั้งแต่ต้น
การสร้าง Routine ใหม่มีองค์ประกอบไม่มาก แต่ทุกช่องสำคัญหมด ตั้งแต่การตั้งชื่องาน, เขียน Prompt หรือคำสั่ง, เลือกโมเดล, เลือก GitHub Repository, ตั้งค่าสภาพแวดล้อมบน Cloud, กำหนดความถี่, เพิ่ม Connectors (ถ้าจำเป็น) ไปจนถึงกำหนดสิทธิ์

ข้อจำกัดที่ควรรู้คือ ความถี่ขั้นต่ำอยู่ที่ 1 ชั่วโมง (ยังตั้งทุก 10 นาทีไม่ได้) ถ้างานต้องการความถี่มากกว่านี้ ฟีเจอร์นี้อาจยังไม่ตอบโจทย์

อีกประเด็นที่ Nate เน้นและเห็นด้วยอย่างยิ่ง คือ Routine ต้องถูกออกแบบเป็น One-shot Prompt คือสั่งให้ Claude ทำงานให้จบในทีเดียวโดยไม่ต้องย้อนถาม เพราะถ้ามันหยุดรอการยืนยันจากคน ความหมายของการทำอัตโนมัติก็หายไป

มุมนี้สำคัญมากสำหรับคนทำธุรกิจ หลายคนชินกับการใช้ AI แบบคุยกันไปมา ค่อยๆ ปรับ Prompt แต่พอเปลี่ยนมาเป็น Scheduled Automation คุณต้องเปลี่ยนความคิดเป็น "สั่งงานให้จบในรอบเดียว"

Step 3: รู้ก่อนว่า Remote Routine ทำงานบน GitHub repo ไม่ได้อ่านเครื่องเรา
นี่คือจุดตายที่หลายคนมักพลาดตอนลองครั้งแรก

Remote Routine ไม่ได้รันบนเครื่องของคุณ แต่มันจะ Clone GitHub Repo ขึ้นมาชั่วคราวบน Cloud อ่านไฟล์ใน Repo นั้น รันงาน แล้วทำลายสภาพแวดล้อมทิ้งเมื่อเสร็จ

นั่นหมายความว่าอะไรบ้าง? มันเข้าถึงไฟล์ในเครื่องคุณไม่ได้ มันเห็นแค่สิ่งที่อยู่ใน GitHub Repo หรือเข้าถึงผ่าน API ได้เท่านั้น ถ้ามีไฟล์ที่ถูก Gitignore อย่าง .env ไฟล์นั้นจะไม่ถูก Push ขึ้น Repo และ Claude จะมองไม่เห็น

จุดนี้คือต้นตอของปัญหาเกือบทั้งหมด ผู้ที่คุ้นเคยกับการใช้ Claude Code บนเครื่องตัวเองมักเผลอคิดว่า Automation เดิมจะย้ายขึ้น Cloud ได้เหมือนเปี๊ยบ แต่ความจริงคือ Remote Routine ทำงานในสภาพแวดล้อมที่แยกขาด มันไม่มีไฟล์ลับ ไม่มี Cookies เดิม ไม่มี Session เดิม และไม่มีข้อมูลใดๆ ที่เก็บอยู่ในเครื่องคุณ

Step 4: ใส่ API Key ให้ถูกที่ ไม่ใช่หวังพึ่ง .env
ตัวอย่างที่ Nate ทดสอบคือการส่งข้อความเข้า ClickUp เพื่อตรวจว่า Routine เรียกใช้ API ได้จริงไหม คำตอบคือ "ได้" แต่ต้องตั้งค่าสภาพแวดล้อมให้ถูกต้องก่อน

วิธีที่ถูกต้องคือ เอา API Keys ไปใส่ใน Cloud Environment ของ Task นั้นๆ โดยตรง ไม่ใช่คาดหวังให้มันอ่านจาก .env ในเครื่อง

ใน Environment นี้ คุณสามารถตั้งค่าได้หลายอย่าง เช่น ชื่อ, การเข้าถึงเครือข่าย, และตัวแปรสภาพแวดล้อม ตัวอย่างเช่น ถ้า Routine ต้องเรียก YouTube API หรือ ClickUp API ก็ให้เอา Key ไปใส่ตรงนี้ แล้วเขียน Prompt บอก Claude ให้ดึงค่าจากตัวแปรสภาพแวดล้อมที่เตรียมไว้

ประเด็นที่น่าสนใจคือ ในบางงาน Claude อาจเดาได้ว่าต้องดึงค่าจาก Environment แต่บางงานมันไม่เดา เช่น กรณี YouTube API ที่ Nate พบ คุณต้องระบุใน Prompt ให้ชัดเจนว่า API Key อยู่ใน Environment Variable ไหน ให้ดึงค่าจากตรงนั้นโดยตรง ไม่ต้องไปค้นหาใน .env

นี่คือบทเรียนสำคัญสำหรับทุกธุรกิจ ถ้า Automation ของคุณต้องเชื่อมต่อกับระบบภายนอก เช่น CRM ระบบแชท ระบบจองคิว หรือช่องทาง Marketing ใดๆ จงระบุตำแหน่งของ Credential ใน Prompt ให้ชัดเจน อย่าปล่อยให้ AI เดาเอง

Step 5: ตั้ง Network Access ให้เหมาะ ไม่งั้น Routine จะวิ่งไม่ผ่าน
อีกปัญหาที่พบบ่อยคือการตั้งค่าการเข้าถึงเครือข่าย

ค่าเริ่มต้นของ Environment มักเป็นแบบ Trusted ซึ่งอนุญาตให้เข้าถึงเฉพาะ Service หรือ Domain ที่ผ่านการรับรองแล้ว แต่บาง Service อย่าง ClickUp ในเคสของ Nate ต้องเปลี่ยนเป็น Full ถึงจะทำงานได้

ความแตกต่างแบบสรุปสั้นๆ คือ: Trusted ออกเน็ตได้เฉพาะปลายทางที่ Anthropic อนุญาต, Full ออกเน็ตได้กว้างกว่า, และ Custom เลือก Whitelist ปลายทางเองได้บางส่วน

แน่นอนว่าการเปิด Full ย่อมเสี่ยงกว่า เพราะถ้า Routine เผลอไปอ่านข้อมูลอันตราย มันอาจถูก Prompt Injection ชักจูงให้ส่งข้อมูลออกไปยังที่อื่นได้

หลักการที่ควรยึดถือคือ
อ่านต้นฉบับ: