ฉันชื่อหมิง นอกจากออกแบบผลิตภัณฑ์ที่ vm0 การดูแลเนื้อหาก็เป็นหน้าที่หนึ่งของฉัน ซึ่งปรากฏว่ามีรายละเอียดมากกว่าที่คิด: การออกแบบเวิร์กโฟลว์ ภาพประกอบ ผลิตภาพ งาน CMS การแปล นี่คือวิธีที่ฉันค่อย ๆ ทำให้มันสำเร็จ
เนื้อหาเป็นหนึ่งในงานของฉันที่นี่
เวลาส่วนใหญ่ของฉันที่ vm0 แบ่งระหว่างการออกแบบผลิตภัณฑ์กับโค้ด Next.js แต่การดูแลเนื้อหาก็เป็นงานที่ต้องรับผิดชอบ และเมื่อเริ่มทำจริงจัง ฉันจึงเห็นว่าการทำบล็อกให้ได้ผลนั้นมีรายละเอียดมาก ต้องมีเนื้อหาออกสม่ำเสมอ วิจัยคีย์เวิร์ดจริง ภาพประกอบที่สอดคล้องกับแบรนด์ คำอธิบาย meta ที่ดี และแปลเป็น 4 ภาษาที่เรารองรับ
ตอนเริ่มทำจริงจัง แต่ละโพสต์ใช้เวลาทั้งวัน การเขียนจริง ๆ กลับเป็นแค่ส่วนน้อย ส่วนใหญ่หมดไปกับงานรอบ ๆ การเขียน: หา keyword ที่ใช่ ทำภาพปก กรอกฟิลด์ใน CMS ให้ถูกต้อง ทำซ้ำสำหรับแต่ละภาษา
ฉันจึงค่อย ๆ ย้ายงานใน pipeline เหล่านั้นเข้าไปใน Lucas ซึ่งเป็น AI agent ด้านการตลาดที่ฉันสร้างบน Zero ให้เหมาะกับงานประจำวันของตัวเอง เขาถูกตั้งค่าเป็น "Marketing manager" และดูแลงานที่เกี่ยวกับการตลาดทั้งหมด: การผลิตบล็อกเป็นส่วนที่สร้างไว้มากที่สุดตอนนี้ และเขายังเติบโตขึ้นเรื่อย ๆ เมื่อฉันเพิ่มทักษะและตัวเชื่อมต่อใหม่
ตอนนี้ Lucas เข้าถึง Strapi headless CMS ของเรา, บัญชี Ahrefs, Slack ทีม, web chat, ทักษะภายใน draw สำหรับภาพประกอบที่สอดคล้องกับแบรนด์ และทักษะมาตรฐาน copywriting สำหรับกลไกการเขียน
ด้านล่างนี้ฉันจะอธิบายการอัตโนมัติบล็อกด้วย AI นี้ในทางปฏิบัติ: Lucas รับ prompt กว้าง ๆ แยกหัวข้อกับคีย์เวิร์ด ร่างโพสต์ วาดภาพปก แปลเนื้อหาอย่างเป็นธรรมชาติ และสร้างร่างทั้ง 4 ภาษาใน CMS จากนั้นจะเล่าว่าฉันมาถึงจุดนี้ได้อย่างไร และอะไรที่ตั้งใจให้มนุษย์ (ซึ่งยังเป็นฉันเองส่วนใหญ่) ทำอยู่
ฉันใช้ Lucas อย่างไร: เว็บแอปและ Slack

ฉันทำงานกับ Lucas ผ่าน web chat ของ vm0 เป็นหลัก เป็นอินเทอร์เฟซสำหรับงานลึก ๆ ที่ฉันนั่งทำกับเขาตั้งแต่ร่างโครงร่าง ร่างเนื้อหา วนภาพปก และแก้ไข เป็นเธรดยาว ๆ มีบริบทยาว ๆ แบบที่คุยในแชทช่องปกติจะเก้ ๆ กัง ๆ
Lucas ยังเชื่อมกับ Slack ทีมของเรา เป็นจุดเริ่มต้นร่วมกัน ฉันส่ง prompt สั้น ๆ จากมือถือได้ และทีมคนอื่นก็ ping เขาได้เช่นกัน ใครที่อยู่เวรบล็อกก็เริ่มโพสต์แบบเดียวกัน ใช้ agent เดียวกัน บริบทเดียวกันทั้งสองอินเทอร์เฟซ
ตัวอย่าง prompt ทั่วไปหน้าตาเป็นอย่างไร
Prompt ที่ฉันให้ Lucas มักสั้น ไม่เกินสามประโยค ตัวอย่างที่ใช้บ่อย:
Lucas เขียนคู่มือการประชุมประจำสัปดาห์ให้มีประสิทธิภาพ: ครอบคลุมโครงสร้างการประชุม ข้อผิดพลาดที่พบบ่อย และวิธีให้ทีมรีโมทมีส่วนร่วม เขียนแบบ tutorial เป็นมิตรกับ SEO จบด้วย CTA ให้ใช้ Zero ขอแค่ลิงก์ร่าง อย่าเผยแพร่
นี่คือบรีฟทั้งหมด หนึ่งข้อความ ไม่มีโครงร่าง ไม่มีลิสต์คีย์เวิร์ด ไม่มีบรีฟดีไซน์ ไม่มีเป้าหมายความยาว Lucas จัดการต่อเอง
ฉันใช้เวลาสักพักกว่าจะลงตัวกับรูปแบบนี้ ตอนแรกเขียนบรีฟยาว ๆ เพราะคิดว่า agent ต้องการรายละเอียดทุกอย่าง สุดท้ายพบว่าบริบทส่วนใหญ่ควรอยู่ในคำสั่งและทักษะประจำของเขา ไม่ใช่ในแต่ละ prompt prompt เป็นแค่ตัวกระตุ้น การตั้งค่าที่เหลือคือสิ่งสำคัญ
Lucas วิเคราะห์หัวข้อและคีย์เวิร์ดอย่างไร

สิ่งแรกที่ Lucas ทำคือดึงโครงสร้างจาก prompt กว้าง ๆ สำหรับคำขอแบบข้างต้น โน้ตที่เขาใช้มีประมาณนี้:
- หัวข้อ: การประชุมประจำสัปดาห์ให้มีประสิทธิภาพ
- รูปแบบ: tutorial → ขั้นตอนเรียงลำดับ ตัวอย่างจริง ใช้ภาษาสั่งการ
- กลุ่มเป้าหมายโดยนัย: หัวหน้าทีม ผู้จัดการรีโมท ผู้ก่อตั้ง
- ส่วนที่ต้องมี: โครงสร้างประชุม ข้อผิดพลาดที่พบบ่อย การมีส่วนร่วมของทีมรีโมท
- CTA: กระตุ้นให้ผู้อ่านใช้ Zero
- ข้อจำกัด: ขอแค่ URL ร่าง ไม่เผยแพร่
จากนั้นเขาจะเลือกคีย์เวิร์ด นี่เป็นส่วนของ content marketing ที่ฉันไม่ถนัดที่สุดตอนเริ่ม ฉันจึงให้ Lucas ทำตามขั้นตอนนี้ทุกครั้งที่ขอให้เขาทำงานคีย์เวิร์ด มันไม่ใช่ทักษะที่เขาทำเองอัตโนมัติ แต่เป็นลำดับที่ฉันไว้ใจให้เขาทำ:
- ดึงตัวเลือกจาก Ahrefs เขาเรียก API ของ Ahrefs ด้วยวลีหัวข้อ คืนค่าคีย์เวิร์ดย่อยพร้อมปริมาณค้นหารายเดือน ความยาก (KD) หัวข้อหลัก และเจตนา SERP
- กรองตามความยาก ฉันให้กฎชัดเจน: KD < 30 vm0 เป็นโดเมนใหม่ที่ยังไม่มี authority มาก ไล่คีย์เวิร์ดยาก ๆ ยังไม่เหมาะ ชนะด้วย long-tail ก่อน
- เช็คกับดัชนี Strapi ของเรา เขาดึง slug ที่เผยแพร่แล้วทั้งหมดจาก CMS ผ่าน Strapi REST API และตัดคีย์เวิร์ดที่เรามีแล้วออก ไม่ซ้ำซ้อน
- จับคู่เจตนากับการใช้งานผลิตภัณฑ์ เจตนาคีย์เวิร์ดต้องเข้ากับ use case library ของเรา "วิธีจัดประชุมประจำสัปดาห์ให้มีประสิทธิภาพ" → การดำเนินงาน/การจัดการทีม → ผ่าน "Best ramen in Tokyo" → ไม่เกี่ยว ไม่ว่าปริมาณจะเยอะแค่ไหน
- เลือกหนึ่งอัน จากลิสต์ที่กรองแล้ว เลือกตัวที่ปริมาณสูงสุดมาเป็นแกนของโพสต์ เช่น remote weekly meeting best practices
สำหรับ SEO ในหน้า เขาใช้ heuristic ง่าย ๆ: ใส่คีย์เวิร์ดเป้าหมายในชื่อเรื่อง ใน H2 อย่างน้อยหนึ่งอัน และใน 100 คำแรก ๆ สอดแทรกคำพ้องและวลีที่เกี่ยวข้องอย่างเป็นธรรมชาติ ใส่ลิงก์ภายในไปโพสต์ที่เกี่ยวข้อง 2-3 อันถ้าเหมาะ หลังจากนั้นเขียนให้เป็นธรรมชาติ ไม่ยัดคีย์เวิร์ด
โครงสร้างโพสต์ (H2 หกหรือเจ็ดอัน มี callout "Tip:" ใต้แต่ละขั้นตอน ปิดท้ายด้วย CTA) มาจากเทมเพลต tutorial ที่ฉันสร้างจากตัวอย่างหลายโพสต์
ภาพปกถูกวาดอย่างไร
ภาพปกเป็นส่วนที่ฉันใส่ใจที่สุดในการผลิตบล็อก ส่วนหนึ่งเพราะฉันเป็นดีไซเนอร์ อีกส่วนเพราะมันคือสิ่งที่ผู้อ่านเห็นก่อนอ่านเนื้อหา มันยังเป็น Open Graph image เมื่อแชร์โพสต์บน X หรือ LinkedIn และทำให้ดัชนีบล็อกของเราดูเหมือนสำนักพิมพ์ ไม่ใช่แค่กำแพง stock photo
Stock photo ไม่ตอบโจทย์ลุคที่ฉันต้องการ และถ้าต้องบรีฟภาพประกอบทีละภาพ ต้นทุนต่อโพสต์จะสูงเกินไป ฉันจึงสร้างทักษะ Zero ชื่อ draw เป็นสคริปต์ Python 200 บรรทัดที่ทำ 5 อย่าง:
- รับอินพุตสองอย่าง: เปรียบเปรย (สิ่งที่จะวาด) และ สี (ชื่อที่เป็นมิตรกับ hex anchor)
- ใส่สองค่านี้ลงในเทมเพลต prompt ที่ล็อกองค์ประกอบอื่น: พื้นหลังเทาอุ่น
#eeeeee, watercolor blob ตรงกลาง canvas ด้วยสีที่เลือก, สเก็ตช์หมึกมือบนสุด, โลโก้ vm0 ที่ (25, 25) มุมซ้ายบน - ส่ง prompt ที่ประกอบแล้วไปยังโมเดล fal.ai ชื่อ
nano-banana-proที่อัตราส่วน 16:9 - ดาวน์โหลด PNG ปรับพิกเซลเกือบขาวให้เป็น
#eeeeeeเสมอเพื่อให้พื้นหลังไม่เพี้ยน ขยายเป็น 1600×900 วางโลโก้ vm0 แบบโปร่งใสทับบนสุด - อัปโหลดผลลัพธ์ไปยัง CDN ของ vm0 และแสดง URL
ตัวอย่างการเรียกใช้งาน:
python draw.py \
--metaphor "a tilted hourglass with sand draining into a small open notebook, a sparkle near the rim" \
--color-name "dusty rose" \
--color-hex "#e08b96" \
--upload
อินพุตสองอย่าง ที่เหลือของแบรนด์คงที่ ฉันมักเลือกสีให้เข้ากับธีมโพสต์ โทน coral หรือ sage สำหรับบทความแนว tutorial อบอุ่น น้ำเงินหรือม่วงสำหรับเนื้อหาเทคนิค เหลืองมัสตาร์ดสำหรับประกาศ สี recurring ไม่กี่สีค่อย ๆ ทำให้ดัชนีบล็อกกลายเป็นพาเลตต์ที่จดจำได้
สิ่งที่ฉันเรียนรู้ยากคือ leverage ไม่ได้อยู่ที่โมเดล แต่อยู่ที่เทมเพลต ถ้าให้โมเดลเลือกองค์ประกอบ สี และเลย์เอาต์เอง ภาพปกแต่ละอันจะดูเป็นคนละแบรนด์ ล็อกองค์ประกอบเหล่านั้นไว้แล้วให้เลือกแค่เปรียบเปรย ทำให้ลุคต่อเนื่องกันทุกโพสต์
มีทักษะพี่น้องชื่อ illustration สำหรับ spot art ในบทความ (ภาพเล็ก ๆ ระหว่างแต่ละ section) แนวคิดเดียวกัน: สไตล์คงที่ เปลี่ยนแค่เปรียบเปรยกับสี ปรับสำหรับงานสี่เหลี่ยม 1024×1024 แทนที่จะเป็นปก 16:9
หมายเหตุเล็ก ๆ เรื่อง SEO ภาพ: ภาพปกเดียวกันถูกใช้เป็น Open Graph และ Twitter Card ของโพสต์ ทำให้แชร์โซเชียลได้สมบูรณ์ Strapi สร้างภาพย่อย 4 ขนาดอัตโนมัติ (thumbnail, small, medium, large) ตอนอัปโหลด แต่ฉันยังไม่ได้เชื่อมให้เนื้อหาโหลดผ่าน srcset นั่นเป็น TODO ฝั่ง front-end ภาพประกอบในเนื้อหาใส่ alt text อธิบายไว้ใน markdown ตอน Lucas ฝังภาพ ส่วน alternativeText ของภาพปกใน Strapi ยังเป็นสิ่งที่ฉันอยากเติมย้อนหลัง
โพสต์ถูกเขียนอย่างไร

เมื่อหัวข้อ คีย์เวิร์ด และภาพปกถูกกำหนดแล้ว การร่างเนื้อหาก็เป็นงานเชิงกล Lucas:
- ร่างโครงร่างก่อน H2 หกหรือเจ็ดอัน แต่ละอันมีหน้าที่ชัดเจน: กำหนดปัญหา ขั้นตอนทีละข้อ callout "Tip:" สรุป CTA
- ขยายแต่ละ H2 เป็นร้อยแก้ว ด้วยทักษะ
copywritingน้ำเสียง (ประโยคสั้น ตัวอย่างจริง ใช้บุรุษที่สองเมื่อเหมาะ มีอารมณ์ขันแห้ง ๆ บ้าง) มาจากกฎในคำสั่งประจำของ Lucas ไม่ใช่ตัวทักษะ - เพิ่ม callout "Tip:" ที่ใช้ได้จริง ใต้แต่ละขั้นตอน เหมาะกับ tutorial เพราะผู้อ่านส่วนใหญ่จะอ่านผ่าน ๆ callout ช่วยให้เดินเรื่องในเนื้อหายาว
- เขียนฟิลด์
descriptionของโพสต์ Strapi จำกัดที่ 80 ตัวอักษร จึงต้องสั้นและอ่านเหมือนมนุษย์เขียน ใช้เป็น subtitle และคำอธิบาย OG/Twitter card - ปิดท้ายด้วย CTA ที่ระบุชื่อผลิตภัณฑ์และลิงก์ไป workspace ฟรี
ร่างแรกมักกลับมาภายใน 2-3 นาทีหลัง prompt ฉันอ่าน ขอปรับโทนถ้าน้ำเสียงไม่ตรง Lucas จะวนจนลงตัว ร่างแรกมักยังไม่พร้อมส่ง มักจะใกล้เคียงแต่ยังขาดนิดหน่อย ตรงนี้แหละที่ฉันใช้เวลาตรวจมากที่สุด
ร่างถูกส่งเข้า Strapi อย่างไร

เราใช้ Strapi เป็น headless CMS ชนิดเนื้อหา articles มี cover (media), author และ category (relations), locale (string), และ dynamic zone blocks ที่เก็บเนื้อหา
ขั้นตอนซิงค์ CMS ของ Lucas:
- POST PNG ปกไปที่
/api/uploadบันทึกdocumentIdที่ได้กลับมา - POST ไปที่
/api/articles?status=draftพร้อม title, description (≤80 ตัวอักษร; Strapi บังคับ), slug, locale, ความสัมพันธ์ cover/author/category เป็น ID ตัวเลข และบล็อกshared.rich-textเดียวที่มี markdown body - สำคัญ: ไม่ใส่
publishedAtStrapi มอง null เป็นสถานะร่าง - คืนค่า preview URL ตามรูปแบบ draft ของ vm0:
https://www.vm0.ai/{locale}/blog/posts/{slug}?status=draft
ข้อควรระวัง Strapi v5: public REST API สามารถ override publishedAt บนบาง content type หมายความว่า "draft" ที่สร้างผ่าน API อาจเผยแพร่จริงโดยไม่แจ้ง วิธีแก้คือ migrate DB เล็กน้อยเพื่อลบฟิลด์นี้ตอนเขียน draft
กลยุทธ์ slug ก็สำคัญต่อ SEO เราใช้ slug เดียวกันทุก locale ไม่แปล slug ผู้อ่านที่ /de/blog/posts/remote-weekly-meeting-best-practices จะเห็นโครงสร้าง URL เดียวกับผู้อ่านที่ /en และ backlink profile จะไม่กระจายข้าม URL ที่แปลแล้ว การใส่ hreflang link tag จาก relations เหล่านั้นเป็น TODO ฝั่ง front-end เรายังไม่ได้ทำ
การแปล i18n ทำงานอย่างไร

vm0 รองรับ 4 ภาษา: อังกฤษ เยอรมัน ญี่ปุ่น สเปน เราไม่ใช้ Google Translate กับโพสต์ เส้นทางถูก ๆ ทำลายน้ำเสียง เส้นทางที่ถูกต้องต้องปรับสำนวนให้เหมาะ
Lucas สร้างร่าง EN ก่อน บันทึก documentId ที่ได้ แล้วส่ง PUT /api/articles/{documentId}?locale=de (และ ?locale=ja, ?locale=es) ต่อด้วย payload ที่แปลอย่างเป็นธรรมชาติ Strapi มองว่าเป็น variant ของเอกสารหลักเดียวกัน ทำให้ทั้ง 4 เวอร์ชันเชื่อมกันในแอดมินและตัวสลับภาษา
กฎการแปลที่ฉันให้เขา ส่วนใหญ่ได้จากการเจอผลลัพธ์ผิดแล้วแก้:
- อย่าแปลศัพท์เทคนิคที่เป็นคำยืมอังกฤษอยู่แล้ว ในภาษาปลายทาง เช่น "API," "CMS," "agent," และ "prompt" ควรคงเป็นอังกฤษใน JA และ DE การแปลจะดูแปลก
- ปรับสำนวนให้เป็นธรรมชาติ แปลตรงตัว "kills your Friday" เป็นเยอรมันจะเพี้ยน ต้องใช้สำนวนเจ้าของภาษา
- ปรับ CTA ให้เหมาะกับแต่ละภาษา คำสั่งตรง ๆ ใน DE ดูแข็งไป จึงต้องอ่อนลง; เวอร์ชัน JA มักปรับเป็นเชิญชวนสุภาพ
- ปรับชื่อเรื่องให้เหมาะกับความยาว ชื่อเรื่องเยอรมันมักยาวกว่าอังกฤษ ~30% ตัว ญี่ปุ่นมักสั้นกว่า Lucas จำกัดชื่อเรื่องไม่เกิน 60 ตัวตามข้อจำกัด SERP ของแต่ละภาษา
การเผยแพร่เนื้อหาหลายภาษาคือส่วนที่กินเวลาที่สุดในเวิร์กโฟลว์ เดี๋ยวนี้กลายเป็นแค่ขั้นตอนสุดท้ายใน agent run เดียวกัน
อะไรที่ยังไม่อัตโนมัติ
ส่วนสั้นแต่สำคัญ ไม่ใช่ทุกอย่างในเวิร์กโฟลว์นี้ที่อัตโนมัติ โดยตั้งใจ:
- การเลือกหัวข้อในเชิงกลยุทธ์ Lucas เลือกคีย์เวิร์ดในหัวข้อ แต่หัวข้อเองมาจากฉัน มักมาจากการเปิดตัวผลิตภัณฑ์ คุยกับลูกค้า หรือ roadmap
- ตรวจร่างรอบสุดท้าย ฉันอ่านร่างทุกอันก่อนเผยแพร่ โดยเฉพาะ EN ตรวจโทน ความถูกต้องของเนื้อหาอ้างอิง และบริบทผลิตภัณฑ์ ต้องใช้สายตามนุษย์
- รีวิวโดยเจ้าของภาษาสำหรับภาษาที่ฉันไม่ถนัด ฉันไม่อ่านเยอรมันคล่อง ร่าง DE ส่งให้เจ้าของภาษาตรวจรอบสุดท้ายก่อนเผยแพร่
- โปรโมต โพสต์ลง X ส่งให้สมาชิก แชร์ในคอมมูนิตี้ ยังทำเองอยู่
เป้าหมายไม่ใช่ตัดฉันออกจากวงจร แต่ตัดฉันออกจากส่วนที่ไม่จำเป็นต้องใช้ฉันจริง ๆ
ฉันมาถึงเวิร์กโฟลว์นี้ได้อย่างไร
ฉันไม่ได้ออกแบบทั้งหมดในสุดสัปดาห์เดียว แต่มันค่อย ๆ สะสมมาทีละโพสต์ จากการสังเกตว่าส่วนไหนกินเวลาฉัน
สิ่งที่สังเกตได้: ส่วนที่ควรอัตโนมัติไม่ใช่งานสร้างสรรค์ แต่เป็นงานเชื่อมต่อ เช่น ดึงคีย์เวิร์ด เรนเดอร์ปก อัปโหลด แยก locale จัดรูปแบบ preview URL พอเช็คจริง ๆ ฉันใช้เวลากับงานโลจิสติกส์มากกว่าการเขียน
ฉันจึงค่อย ๆ ย้ายงานโลจิสติกส์เข้า agent โมเดลเขียน agent จัดการย้ายข้อมูล ฉันยังเป็นคนตัดสินใจว่าจะเขียนอะไรและน้ำเสียงแบบไหน แต่ไม่ต้องเย็บชิ้นส่วนเองอีกต่อไป
สำหรับฉัน การอัตโนมัติเนื้อหาในทางปฏิบัติไม่ได้จบที่ "AI เขียนบล็อก" แต่มันคือ "AI ทำทุกอย่างรอบ ๆ การเขียน ให้ฉันมีเวลาตรวจเนื้อหาจริง ๆ"
ถ้าอยากลองทำแบบนี้บ้าง
ถ้าคุณอยู่ในสถานการณ์คล้าย ๆ กัน ต้องทำหลายหน้าที่และเนื้อหาเป็นหนึ่งในนั้น ส่วนใหญ่ของเวิร์กโฟลว์นี้ทำซ้ำได้:
- แพลตฟอร์ม agent ที่ให้ตั้งบทบาทและทักษะถาวร (เราใช้ Zero ที่ Lucas อยู่)
- ตัวเชื่อมต่อกับเครื่องมือที่มีอยู่: CMS, เครื่องมือวิจัยคีย์เวิร์ด, ตัวสร้างภาพ, Slack
- ชุดทักษะเล็ก ๆ ที่ปรับให้เข้ากับแบรนด์ (ของเราคือ
drawสำหรับปก และcopywritingสำหรับโทนเสียง) - คำสั่งประจำที่ให้บริบท ทำให้ prompt สั้นได้
หรือถ้าอยากดูเวิร์กโฟลว์ agent เพิ่มก่อนสมัคร คลัง use case ของเรา มี 19 อัตโนมัติพร้อมใช้สำหรับวิศวกรรม ผลิตภัณฑ์ การตลาด และการดำเนินงาน
ถ้าอยากโคลน Lucas โดยเฉพาะ: สร้าง agent ตั้งบทบาท Marketing manager เชื่อม Strapi (หรือ CMS ของคุณ) + Ahrefs + เครื่องมือสร้างภาพ เพิ่มทักษะ draw ที่ออกแบบตามของคุณเอง และทักษะ copywriting ที่จับโทนเสียงแบรนด์ของคุณ เขาจะจัดการส่วนที่เหลือจาก prompt แรกของคุณ





