Claude Code เพิ่มฟีเจอร์ Loop สั่งงานวนซ้ำอัตโนมัติด้วยภาษาธรรมดา ได้นานสุด 3 วัน
Claude Code เพิ่มฟีเจอร์ใหม่ชื่อ Loop ให้สั่งงานวนซ้ำอัตโนมัติด้วยภาษาธรรมดา เช่น ทุกเช้า 8 โมง ให้สรุป git ของเมื่อวาน โดยไม่ต้องตั้ง cron job ภายนอก ตั้งได้ขั้นต่ำ 1 นาที วนซ้ำได้นานสุด 3 วัน แต่มีข้อแม้สำคัญคือ ทำงานได้เฉพาะตอนที่ session ยังเปิดอยู่ ปิดเมื่อไหร่ task ทั้งหมดหยุดทันที

ลองนึกถึงงานที่ต้องทำซ้ำเวลาเดิมทุกวัน เช่น ทุกเช้าเปิดดูว่าเมื่อวานทีมเขียน code อะไรไปบ้าง แล้วสรุปเป็นบันทึกสั้น ๆ ปกติงานแบบนี้ต้องนั่งทำเองทุกเช้า หรือไม่ก็ต้องเขียน cron job ตั้งเวลาแยกต่างหาก คนทั่วไปที่ไม่ได้เป็นสาย DevOps อาจเริ่มไม่ถูกตั้งแต่ตรงนี้
ตอนนี้ Claude Code เพิ่มฟีเจอร์ใหม่ชื่อ Loop ให้สั่งงานวนซ้ำแบบนี้ได้ด้วยการพิมพ์ภาษาธรรมดาในหน้าต่างที่กำลังคุยอยู่ แค่พิมพ์ว่า "ทุกวัน 8 โมงเช้า ดู git history แล้วสรุปงานของเมื่อวานให้หน่อย" Claude Code ก็จะตั้งให้งานนี้รันซ้ำเองตามเวลาที่บอก ไม่ต้องไปแตะ cron ภายนอกเลย ตั้งให้รันถี่สุดได้ทุก 1 นาที และวนซ้ำต่อเนื่องได้นานสุด 3 วัน
แต่ก่อนจะตื่นเต้นเกินไป มีข้อแม้ใหญ่ข้อหนึ่งที่ต้องรู้ตั้งแต่ต้น เพราะมันเปลี่ยนวิธีใช้ฟีเจอร์นี้ไปทั้งหมด
ทำไมต้องมีฟีเจอร์นี้ตั้งแต่แรก
คนที่ใช้ Claude Code ทำงานยาว ๆ จะเจอปัญหาคล้ายกัน คือพอสั่งงานชิ้นใหญ่ไปแล้ว ระหว่างทาง Claude มักหยุดกลางคันเพื่อถาม หรือคุยกันยาวจนต้องบีบอัดบทสนทนาหลายรอบ แล้วมันก็เริ่ม "ลืม" ว่าตอนแรกตั้งใจจะทำอะไร งานที่ควรเดินต่อได้เองเลยค้างเติ่ง รอคนมากดต่อ
ก่อนหน้านี้ชุมชนคนใช้เลยคิดวิธีแก้กันเอง โดยป้อนคำสั่งเดิมซ้ำ ๆ ให้ Claude กลับมาเดินงานต่อไม่หยุด Loop เอาแนวคิดนี้มาเป็นฟีเจอร์ในตัว แทนที่จะต้องคอยป้อนซ้ำเอง ก็แค่ตั้งให้มันวนกลับมาทำงานตามรอบ งานเลยเดินต่อได้โดยไม่ต้องเฝ้า
สั่งด้วยภาษาคน ไม่ต้องจำ syntax ของ cron
พิมพ์เป็นประโยคเดียว แล้ว Claude Code ตั้งรอบให้เอง ไม่ต้องไปแตะ cron เลย
จุดที่ทำให้ Loop ใช้ง่ายคือไม่ต้องเรียนรู้รูปแบบเวลาแบบ cron ที่เป็นเครื่องหมายดอกจันเรียงกันให้ปวดหัว แค่บอกเป็นประโยคธรรมดา
เริ่มจากพิมพ์คำสั่ง /loop ตามด้วยรอบเวลาและงานที่อยากให้ทำ หรือพิมพ์เป็นประโยคยาว ๆ ไปเลยก็ได้ เช่น "ทุก 4 ชั่วโมง ไปดึงข่าวจาก Hacker News แล้วส่งอีเมลสรุปข่าวสาย AI กับ dev ให้" จากนั้น Claude Code จะตั้งงานตามรอบให้ พร้อมแสดงให้ดูก่อนว่าแต่ละรอบจะส่งคำสั่งอะไรไปทำ เราจะได้ตรวจก่อนว่าตรงกับที่ตั้งใจไหม
ถ้าอยากดูว่าตั้งงานอะไรค้างไว้บ้าง ก็ถามเป็นภาษาคนได้เลยว่า "ตอนนี้มี task อะไรตั้งเวลาไว้บ้าง" ระบบจะไล่ดูรายการให้ และถ้าอยากเลิกงานไหน ก็บอกว่า "ยกเลิกงานที่ไปดึงข่าว Hacker News ทุก 4 ชั่วโมง" มันก็จะลบงานนั้นให้เอง เบื้องหลังการสั่งงานพวกนี้มีเครื่องมือสามตัวเพิ่มเข้ามา สำหรับสร้างงาน ดูรายการงาน และลบงาน แต่ในมุมคนใช้ ไม่ต้องจำชื่อคำสั่งพวกนั้นเลย พูดเอาก็พอ
ข้อแม้ที่เปลี่ยนทุกอย่าง Loop ไม่ใช่ตัวตั้งเวลาที่รันตลอด
Loop ผูกกับ session ที่เปิดอยู่ · ปิดเมื่อไหร่งานหยุดหมด งานที่ต้องรันข้ามคืนต้องใช้ตัวอื่น
นี่คือจุดที่ต้องเข้าใจให้ชัด: Loop ไม่ใช่ cron job ของระบบที่รันอยู่เบื้องหลังตลอดเวลาแม้ปิดเครื่อง มันผูกติดกับ session ที่กำลังเปิดอยู่เท่านั้น แปลว่างานที่ตั้งไว้จะทำงานต่อเมื่อ Claude Code ยังเปิดค้างอยู่ พอปิดหน้าต่างนั้น ปิด terminal หรือปิดเครื่องเมื่อไหร่ งานทั้งหมดที่ตั้งไว้หยุดทันที
ฟังดูเหมือนข้อจำกัด แต่จริง ๆ มันคือกุญแจที่บอกว่าควรเอาไปใช้ยังไง เพราะ Loop อยู่ใน session เดียวกับที่เราทำงานอยู่ จึงเข้าถึงทุกอย่างใน session นั้นได้ทันที ทั้งไฟล์ตั้งค่าของโปรเจกต์ ทักษะหรือเครื่องมือเสริมที่ต่อไว้ในรอบนั้น งานวนซ้ำจึงทำงานซับซ้อนได้มากกว่าแค่ดึงข้อมูล เพราะมันมีบริบทเดียวกับเราครบ
วิธีคิดที่ตรงที่สุดคือมองมันเป็นการ "มอบหมายงานประจำให้ผู้ช่วยที่นั่งทำงานอยู่ข้าง ๆ" ตราบใดที่ผู้ช่วยคนนี้ยังอยู่ที่โต๊ะ งานก็เดินไปเรื่อย ๆ แต่พอผู้ช่วยลุกออกไป งานก็พักไว้ก่อน ดังนั้นมันจึงเหมาะกับงานที่ทำควบคู่ไปกับช่วงที่เรานั่งทำงานอยู่แล้ว ไม่ใช่งานที่ต้องรันข้ามคืนตอนปิดเครื่องนอน
ตั้งเวลาได้ละเอียดแค่ไหน
รอบเวลาที่ตั้งได้ถี่สุดคือทุก 1 นาที ถ้าใส่ค่าที่สั้นกว่านั้นเข้าไป ระบบจะปัดขึ้นเป็น 1 นาทีให้เอง ส่วนรอบยาวสุดที่งานหนึ่งจะวนซ้ำได้คือ 3 วัน พอครบกำหนดงานนั้นจะหมดอายุและหยุดไปเอง ไม่ค้างรันไปเรื่อย ๆ
มีรายละเอียดเล็ก ๆ ที่คิดมาดีอยู่อย่างหนึ่ง คือเวลาตั้งงานตามรอบ ระบบจะขยับเวลายิงงานจริงให้เหลื่อมจากเวลาเป๊ะ ๆ เล็กน้อย ได้มากสุดราว 10% ของรอบ เช่น ตั้งไว้ทุก 4 ชั่วโมง งานจริงอาจยิงราว ๆ 7 นาทีหลังต้นชั่วโมง แทนที่จะตรงชั่วโมงเป๊ะ ที่ทำแบบนี้เพื่อไม่ให้งานทุกอันยิงคำขอพร้อมกันจนโหลดพุ่งทีเดียว และถ้าอยากปิดฟีเจอร์ Loop ทั้งหมดในครั้งเดียว ก็ตั้งค่าปิดผ่านตัวเลือก CLAUDE_CODE_DISABLE_CRON ได้
เอาไปใช้กับงานจริงแบบไหนได้บ้าง
เมื่อรู้ข้อแม้แล้ว งานที่เข้ากับ Loop ได้ดีคืองานประจำที่ทำคู่ไปกับช่วงนั่งทำงานปกติ ตัวอย่างเช่น ทุกเช้า 8 โมงให้ไปไล่ดู git ของเมื่อวานแล้วสรุปเป็นไฟล์บันทึกวางไว้บนหน้าจอ หรือทุก 4 ชั่วโมงให้ดึงข่าวจากแหล่งที่ติดตามมาสรุปส่งเข้าอีเมล
ฝั่งงานพัฒนาก็ใช้ช่วยตรวจงานซ้ำ ๆ ได้ เช่น ให้คอยไล่ดู PR ที่เปิดค้างไว้ทั้งหมด คอยแก้ปัญหา build ให้อัตโนมัติเมื่อมีคอมเมนต์เข้ามา หรือทุกเช้าให้ไปดู Slack แล้วสรุปโพสต์ที่ถูกแท็กถึง งานพวกนี้มีจุดร่วมเดียวกันคือเป็นงานซ้ำที่อยากให้เดินเองระหว่างวัน ไม่ใช่งานที่ต้องรันข้ามคืน
ถ้าเป็นงานที่ต้องรันต่อเนื่องจริง ๆ แม้ปิดเครื่อง อันนั้นต้องใช้เครื่องมือที่ออกแบบมาให้รันตลอดอย่าง GitHub Actions แทน ไม่ใช่หน้าที่ของ Loop ตั้งแต่แรก
จะเห็นว่า Loop ไม่ได้พยายามเป็นระบบตั้งเวลาที่ทำได้ทุกอย่าง แต่มันทำสิ่งเดียวให้ง่ายขึ้นมาก คือเปลี่ยนงานซ้ำ ๆ ที่อยู่ในหัวเราให้เป็นงานที่เดินเองได้ด้วยการพูดประโยคเดียว ยิ่งโยกงานประจำออกจากมือได้มากเท่าไร เวลาที่เหลือก็เอาไปคิดงานที่สำคัญกว่าได้มากเท่านั้น
vibecodingth
ทีมผู้เขียน Vibe Coding Thailand



