โพสต์ไปยัง X (Twitter)
โพสต์ข้อความ รูปภาพ วิดีโอ และบทความยาวไปยัง X ผ่านเบราว์เซอร์ Chrome จริง
ใน Codex อย่าสับสนเส้นทางเบราว์เซอร์เหล่านี้:
- ปลั๊กอิน Codex Chrome /
@chrome/ ส่วนขยาย Chrome: ใช้สกิลchrome:Chromeที่มาพร้อมกันและไคลเอนต์เบราว์เซอร์ Node REPL ของมัน นี่เป็นสิ่งจำเป็นเมื่อผู้ใช้พูดว่า "ปลั๊กอิน Codex Chrome", "Codex 自带的 Chrome 插件",@chromeหรือคล้ายกัน - Chrome Computer Use: ใช้
mcp__computer_use__.*กับ UI ของ Google Chrome ที่มองเห็นได้เฉพาะเมื่อผู้ใช้ขอ Computer Use หรือไม่ระบุความชอบปลั๊กอิน Chrome และ Computer Use พร้อมใช้งาน - โหมดสคริปต์ CDP: ใช้เป็นทางเลือกสำรองเฉพาะเมื่อโหมดที่เลือกไม่พร้อมใช้งานหรือผู้ใช้ร้องขอโหมด CDP/สคริปต์อย่างชัดเจน
ไดเรกทอรีสคริปต์
สำคัญ: สคริปต์ทั้งหมดอยู่ในไดเรกทอรีย่อย scripts/ ของสกิลนี้
คำแนะนำการดำเนินการสำหรับเอเจนต์:
- กำหนดเส้นทางไดเรกทอรีของไฟล์ SKILL.md นี้เป็น
{baseDir} - เส้นทางสคริปต์ =
{baseDir}/scripts/<script-name>.ts - แทนที่
{baseDir}ทั้งหมดในเอกสารนี้ด้วยเส้นทางจริง - แก้ไขรันไทม์
${BUN_X}: ถ้ามีการติดตั้งbun→bun; ถ้ามีnpx→npx -y bun; ถ้าไม่มี แนะนำให้ติดตั้ง bun
การอ้างอิงสคริปต์:
| สคริปต์ | วัตถุประสงค์ |
|---|---|
scripts/x-browser.ts | โพสต์ปกติ (ข้อความ + รูปภาพ), ทางเลือกสำรอง CDP |
scripts/x-video.ts | โพสต์วิดีโอ (ข้อความ + วิดีโอ), ทางเลือกสำรอง CDP |
scripts/x-quote.ts | ทวีตอ้างอิงพร้อมความคิดเห็น, ทางเลือกสำรอง CDP |
scripts/x-article.ts | การเผยแพร่บทความยาว (Markdown), ทางเลือกสำรอง CDP |
scripts/md-to-html.ts | การแปลง Markdown → HTML |
scripts/copy-to-clipboard.ts | คัดลอกเนื้อหาไปยังคลิปบอร์ด |
scripts/paste-from-clipboard.ts | ส่งการกดแป้นวางจริง |
scripts/check-paste-permissions.ts | ตรวจสอบสภาพแวดล้อมและสิทธิ์ |
การเลือกโหมดการดำเนินการ (จำเป็น)
เลือกหนึ่งโหมดก่อนที่จะโต้ตอบกับ X:
- ถ้าผู้ใช้ร้องขอปลั๊กอิน Codex Chrome,
@chrome, ส่วนขยาย Chrome หรือ "Codex 自带的 Chrome 插件" อย่างชัดเจน ให้ใช้ โหมดปลั๊กอิน Codex Chrome อย่าเรียก Computer Use ก่อน - ถ้าผู้ใช้ร้องขอ Chrome Computer Use อย่างชัดเจน ให้ใช้ โหมด Chrome Computer Use อย่าตกไปใช้ CDP, Playwright, เบราว์เซอร์ในแอป หรือปลั๊กอิน Chrome โดยไม่บอกผู้ใช้และขออนุมัติ
- ถ้าผู้ใช้ร้องขอโหมด CDP/สคริปต์อย่างชัดเจน ให้ใช้ โหมดสคริปต์ CDP
- ในกรณีอื่น ให้ใช้ โหมด Chrome Computer Use ก่อน สำหรับ บทความ X ที่เป็น Markdown พร้อมรูปภาพเนื้อหาท้องถิ่น ให้ใช้ขั้นตอนตัวแก้ไข X ที่ทดสอบแล้ว: แทรกรูปภาพในเนื้อหาทีละภาพจากแถบเครื่องมือ (
แทรก->สื่อ-> ปุ่มไอคอนกล่องโต้ตอบเพิ่มรูปภาพหรือวิดีโอ) ที่ตัวยึดตำแหน่ง แล้วลบข้อความตัวยึดตำแหน่ง ใช้โหมดสคริปต์ CDP เฉพาะเมื่อโหมดควบคุมเบราว์เซอร์ที่เลือกไม่พร้อมใช้งาน หรือขั้นตอนอัปโหลด/เลือกผ่าน UI ไม่น่าเชื่อถือ
อย่าใช้เบราว์เซอร์ในแอปสำหรับขั้นตอนการเผยแพร่ X
โหมดปลั๊กอิน Codex Chrome
ใช้โหมดนี้เมื่อผู้ใช้ร้องขอปลั๊กอิน Codex Chrome, @chrome หรือเส้นทางส่วนขยาย Chrome สิ่งนี้ใช้โปรไฟล์ Chrome และการเข้าสู่ระบบ X จริงของผู้ใช้ผ่านปลั๊กอิน Chrome ที่มาพร้อมกัน ไม่ใช่ Computer Use และไม่ใช่ CDP
การตั้งค่า
- โหลดสกิล
chrome:Chromeก่อนทำงานกับเบราว์เซอร์ - ใช้
tool_searchสำหรับnode_repl jsถ้าเครื่องมือjsของ Node REPL ยังไม่ปรากฏ - เริ่มต้นไคลเอนต์เบราว์เซอร์ Chrome ตามที่สกิล Chrome ระบุไว้ จากนั้นเรียกใช้คำสั่งเบา ๆ เช่น
browser.user.openTabs()เพื่อตรวจสอบการเชื่อมต่อส่วนขยาย - ถ้าคำสั่งเบาครั้งแรกล้มเหลว ให้รอ 2 วินาทีแล้วลองอีกครั้งหนึ่ง ถ้ายังล้มเหลว ให้ทำตามขั้นตอนตรวจสอบและกู้คืนของสกิล Chrome ถ้าผ่านการตรวจสอบแต่การสื่อสารยังล้มเหลว ให้ถามผู้ใช้ก่อนที่จะเปิดหน้าต่าง Chrome ใหม่ อย่าเปลี่ยนไปใช้ Computer Use หรือ CDP โดยไม่บอกกล่าว
กฎทั่วไป
- ใช้
browser.tabs.*,tab.playwright.*,tab.cua.*และ API ตัวเลือกไฟล์ของปลั๊กอิน Chrome สำหรับการกระทำ UI ของ X - อนุญาตให้ใช้คำสั่งเชลล์สำหรับการประมวลผล Markdown ล่วงหน้าและการเตรียมคลิปบอร์ด HTML แบบสมบูรณ์ สำหรับรูปภาพในเนื้อหาของบทความ X อย่าพึ่งพาการวางรูปภาพจากคลิปบอร์ด ให้ใช้ขั้นตอนอัปโหลด
แทรก->สื่อของตัวแก้ไข - ถ้าการอัปโหลดไฟล์ล้มเหลวด้วย
ไม่อนุญาตให้บอกผู้ใช้:เพื่อเปิดใช้งานการอัปโหลดไฟล์ ให้ไปที่ chrome://extensions ใน Chrome คลิก รายละเอียด ใต้ส่วนขยาย Codex และเปิดใช้งาน "อนุญาตให้เข้าถึง URL ไฟล์" ดู https://developers.openai.com/codex/app/chrome-extension#upload-files สำหรับรายละเอียด - ถ้าปลั๊กอิน Chrome รายงานว่า
native pipe is closedให้ลองเรียกเบราว์เซอร์แบบเบาอีกครั้งหลังจาก 2 วินาที จากนั้นรันการตรวจสอบสภาพของสกิล Chrome ถ้า Chrome กำลังทำงานอยู่ ส่วนขยายเปิดใช้งาน และ native host manifest ถูกต้อง ให้ขออนุญาตเปิดหน้าต่าง Chrome ใหม่แล้วลองอีกครั้ง อย่าส่งคำสั่งเบราว์เซอร์ผ่าน pipe ที่เสียหาย - อย่าคลิก
เผยแพร่,โพสต์หรือการส่งใด ๆ ที่มองเห็นภายนอกโดยไม่ได้รับการยืนยันขั้นสุดท้ายอย่างชัดเจนจากผู้ใช้ในการสนทนาปัจจุบัน
บทความ X
- แปลง Markdown และเก็บแมปรูปภาพ:
${BUN_X} {baseDir}/scripts/md-to-html.ts article.md --save-html /tmp/x-article-body.html > /tmp/x-article.json - อ่านผลลัพธ์ JSON สำหรับ
title,coverImageและcontentImages(placeholder→localPath) - เปิดหรือสร้างร่างบทความที่
https://x.com/compose/articles - อัปโหลดปกด้วยขั้นตอนตัวเลือกไฟล์ของปลั๊กอิน Chrome ถ้าการอัปโหลดถูกบล็อกโดยสิทธิ์ส่วนขยาย ให้หยุดและรายงานการแก้ไขสิทธิ์ข้างต้น
- กรอกชื่อเรื่อง แล้วคัดลอก HTML แบบสมบูรณ์:
${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts html --file /tmp/x-article-body.html - วางลงในเนื้อหาบทความด้วยการกดแป้นวางจริงผ่านปลั๊กอิน Chrome บน macOS ใช้
Meta+V - ตรวจสอบว่าข้อความในตัวแก้ไขมีเนื้อหาบทความและตัวยึดตำแหน่ง
XIMGPH_อย่าพึ่งพาtab.clipboard.readText()เป็นหลักฐานของคลิปบอร์ดระบบหลังจากเขียนคลิปบอร์ดผ่านเชลล์ บน macOS ตรวจสอบด้วยpbpasteถ้าจำเป็น - สำหรับแต่ละรายการ
contentImagesตามลำดับตัวยึดตำแหน่ง:- ค้นหาข้อความตัวยึดตำแหน่งที่มองเห็น (
XIMGPH_N) แล้วคลิกเพื่อวาง caret ที่นั่น - เปิดเมนูแถบเครื่องมือ
แทรก->สื่อ - ในโมดอล คลิกปุ่มไอคอนที่มี
aria-label="Add photos or video"อย่าคลิกข้อความ/พื้นที่วาง หรืออินพุตไฟล์ที่ซ่อนอยู่ - ใช้ตัวเลือกไฟล์เพื่ออัปโหลด
localPathของรูปภาพนั้น - หลังจากรูปภาพปรากฏขึ้น ถ้า
XIMGPH_Nยังคงอยู่เหนือรูปภาพ ให้เลือกตัวยึดตำแหน่งนั้นอย่างแน่นอนแล้วกดDeleteก่อน ใช้Backspaceเฉพาะเมื่อDeleteล้มเหลวและข้อความที่เลือกตรงกับตัวยึดตำแหน่งจริง - ตรวจสอบว่าจำนวน
XIMGPH_Nนั้นเป็น0
- ค้นหาข้อความตัวยึดตำแหน่งที่มองเห็น (
- เปิดดูตัวอย่างและตรวจสอบชื่อเรื่อง ปก เนื้อหา ลิงก์ และรูปภาพ
- ขอการยืนยันอย่างชัดเจนก่อนคลิก
เผยแพร่
ค่ากำหนด (EXTEND.md)
ตรวจสอบ EXTEND.md ตามลำดับความสำคัญ — อันแรกที่พบจะถูกใช้:
| ลำดับ | เส้นทาง | ขอบเขต |
|---|---|---|
| 1 | .baoyu-skills/baoyu-post-to-x/EXTEND.md | โปรเจกต์ |
| 2 | ${XDG_CONFIG_HOME:-$HOME/.config}/baoyu-skills/baoyu-post-to-x/EXTEND.md | XDG |
| 3 | $HOME/.baoyu-skills/baoyu-post-to-x/EXTEND.md | โฮมผู้ใช้ |
ถ้าไม่พบ ให้ใช้ค่าเริ่มต้น
EXTEND.md รองรับ: โปรไฟล์ Chrome เริ่มต้น
ข้อกำหนดเบื้องต้น
- Google Chrome หรือ Chromium
- รันไทม์
bun - การเรียกใช้ครั้งแรก: เข้าสู่ระบบ X ด้วยตนเอง (เซสชันถูกบันทึก)
การตรวจสอบก่อนบิน (ไม่บังคับ)
ก่อนการใช้งานครั้งแรก แนะนำให้รันการตรวจสอบสภาพแวดล้อม ผู้ใช้สามารถข้ามได้หากต้องการ
${BUN_X} {baseDir}/scripts/check-paste-permissions.ts
ตรวจสอบ: Chrome, การแยกโปรไฟล์, Bun, การช่วยการเข้าถึง, คลิปบอร์ด, การกดแป้นวาง, ข้อขัดแย้งของ Chrome
ถ้าการตรวจสอบใดล้มเหลว ให้คำแนะนำการแก้ไขต่อรายการ:
| การตรวจสอบ | การแก้ไข |
|---|---|
| Chrome | ติดตั้ง Chrome หรือตั้งค่าตัวแปรสภาพแวดล้อม X_BROWSER_CHROME_PATH |
| ไดเรกทอรีโปรไฟล์ | โปรไฟล์ที่แชร์ที่ baoyu-skills/chrome-profile (ดูส่วนโปรไฟล์ Chrome ใน CLAUDE.md) |
| รันไทม์ Bun | brew install oven-sh/bun/bun (macOS) หรือ npm install -g bun |
| การช่วยการเข้าถึง (macOS) | การตั้งค่าระบบ → ความเป็นส่วนตัวและความปลอดภัย → การช่วยการเข้าถึง → เปิดใช้งานแอปเทอร์มินัล |
| การคัดลอกคลิปบอร์ด | ตรวจสอบให้แน่ใจว่ามี Swift/AppKit (เครื่องมือบรรทัดคำสั่ง Xcode บน macOS: xcode-select --install) |
| การกดแป้นวาง (macOS) | เหมือนกับการแก้ไขการช่วยการเข้าถึงด้านบน |
| การกดแป้นวาง (Linux) | ติดตั้ง xdotool (X11) หรือ ydotool (Wayland) |
ข้อมูลอ้างอิง
- โพสต์ปกติ: ดู
references/regular-posts.mdสำหรับขั้นตอนด้วยตนเอง การแก้ไขปัญหา และรายละเอียดทางเทคนิค - บทความ X: ดู
references/articles.mdสำหรับคู่มือการเผยแพร่บทความยาว
โหมด Chrome Computer Use
ใช้โหมดนี้เมื่อผู้ใช้ร้องขอ Chrome Computer Use อย่างชัดเจน หรือเมื่อไม่มีการระบุความชอบปลั๊กอิน Chrome และ Codex สามารถควบคุม Google Chrome ด้วย Computer Use สิ่งนี้ใช้หน้าต่าง Chrome, คุกกี้, การเข้าสู่ระบบ, ส่วนขยาย และเซสชัน X ที่มีอยู่ของผู้ใช้
กฎทั่วไป:
- เริ่มต้นแต่ละเทิร์นของผู้ช่วยที่ควบคุม Chrome โดยเรียก
get_app_stateสำหรับGoogle Chrome - ชอบการกระทำตามดัชนีองค์ประกอบเมื่อพร้อมใช้งาน ใช้พิกัดเฉพาะสำหรับการเลือกข้อความในตัวแก้ไขหรือการเลือกแบบลาก
- อย่าใช้เบราว์เซอร์ในแอป, ปลั๊กอิน Chrome, Playwright หรือ CDP สำหรับการกระทำ UI ของ X ในโหมดนี้ เว้นแต่ผู้ใช้อนุมัติการเปลี่ยนโหมด
- อย่าคลิก
เผยแพร่,โพสต์หรือการส่งใด ๆ ที่มองเห็นภายนอกโดยไม่ได้รับการยืนยันขั้นสุดท้ายอย่างชัดเจนจากผู้ใช้ในการสนทนาปัจจุบัน
โพสต์ปกติ:
- เปิดหรือนำทาง Chrome ไปที่
https://x.com/compose/post - พิมพ์ข้อความโพสต์ลงในตัวเขียนโดยใช้ Computer Use
- สำหรับแต่ละรูปภาพ ให้รัน:
${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts image /absolute/path/to/image.png - วางด้วย Computer Use (
super+vบน macOS,control+vบน Windows/Linux) แล้วรอจนกว่า X จะอัปโหลดสื่อเสร็จ - ขอการยืนยันก่อนคลิก
โพสต์
โพสต์วิดีโอ:
- เปิดหรือนำทาง Chrome ไปที่
https://x.com/compose/post - พิมพ์ข้อความโพสต์ลงในตัวเขียน
- ใช้ UI อัปโหลดสื่อ/ตัวเลือกไฟล์ที่มองเห็นเพื่อแนบวิดีโอ
- รอให้การอัปโหลดและประมวลผลเสร็จสิ้น
- ขอการยืนยันก่อนคลิก
โพสต์
ทวีตอ้างอิง:
- เปิด URL ของทวีตใน Chrome
- ใช้ UI อ้างอิง/รีโพสต์ที่มองเห็นเพื่อเลือก อ้างอิง
- พิมพ์ความคิดเห็น
- ขอการยืนยันก่อนคลิก
โพสต์
บทความ X:
- แปลง Markdown และเก็บแมปรูปภาพ:
${BUN_X} {baseDir}/scripts/md-to-html.ts article.md --save-html /tmp/x-article-body.html > /tmp/x-article.json - อ่านผลลัพธ์ JSON สำหรับ
title,coverImageและcontentImages(placeholder→localPath) - ใน Chrome เปิด
https://x.com/compose/articlesสร้างหรือเปิดร่าง อัปโหลดปกหากมี และกรอกชื่อเรื่อง - คัดลอก HTML แบบสมบูรณ์ไปยังคลิปบอร์ด:
${BUN_X} {baseDir}/scripts/copy-to-clipboard.ts html --file /tmp/x-article-body.html - วางลงในเนื้อหาบทความด้วย Computer Use
- สำหรับแต่ละรายการ
contentImagesตามลำดับตัวยึดตำแหน่ง:- ค้นหาข้อความตัวยึดตำแหน่งที่มองเห็นเช่น
XIMGPH_3แล้วคลิกเพื่อตั้งจุดแทรก - เปิดเมนูแบบเลื่อนลง
แทรกของแถบเครื่องมือ เลือกสื่อจากนั้นคลิกปุ่มไอคอนในโมดอลที่ระบุว่าเพิ่มรูปภาพหรือวิดีโอ - ใช้ตัวเลือกไฟล์ดั้งเดิมเพื่อเลือก
localPathของรูปภาพ - รอจนกว่าบล็อกรูปภาพจะปรากฏขึ้นและกิจกรรมการอัปโหลดใด ๆ เสร็จสิ้น
- ถ้าตัวยึดตำแหน่งยังคงอยู่เหนือรูปภาพที่แทรก ให้เลือกข้อความตัวยึดตำแหน่งนั้นอีกครั้งอย่างแน่นอนแล้วกด
Deleteก่อน ใช้Backspaceเฉพาะเมื่อDeleteล้มเหลวและข้อความที่เลือกตรงกับตัวยึดตำแหน่งจริง
- ค้นหาข้อความตัวยึดตำแหน่งที่มองเห็นเช่น
- ตรวจสอบว่าไม่มีตัวยึดตำแหน่ง
XIMGPH_เหลืออยู่และรูปภาพที่คาดหวังปรากฏขึ้น - เปิดดูตัวอย่างและตรวจสอบชื่อเรื่อง ปก เนื้อหา ลิงก์ และรูปภาพ
- ขอการยืนยันอย่างชัดเจนก่อนคลิก
เผยแพร่
ถ้าการเลือกของ Computer Use, การอัปโหลดผ่านแถบเครื่องมือ หรือการควบคุมตัวเลือกไฟล์ไม่น่าเชื่อถือ ให้หยุดและรายงานอุปสรรค แทนที่จะเปลี่ยนไปใช้ปลั๊กอิน Chrome หรือ CDP โดยไม่บอกกล่าว
โหมดสคริปต์ CDP (ทางเลือกสำรอง)
ใช้ส่วนสคริปต์ด้านล่างเฉพาะเมื่อโหมดควบคุมเบราว์เซอร์ที่เลือกไม่พร้อมใช้งาน ไม่น่าเชื่อถือ หรือไม่ได้ร้องขออย่างชัดเจน สคริปต์เหล่านี้เปิดหรือใช้ซ้ำอินสแตนซ์ Chrome จริงผ่าน CDP และเปิดเบราว์เซอร์ไว้เพื่อตรวจสอบ
อย่าใช้โหมดสคริปต์ CDP เมื่อผู้ใช้ร้องขอปลั๊กอิน Codex Chrome หรือ Chrome Computer Use อย่างชัดเจน เว้นแต่ผู้ใช้อนุมัติทางเลือกสำรองหลังจากที่คุณอธิบายอุปสรรค
การเลือกประเภทโพสต์
เว้นแต่ผู้ใช้ระบุประเภทโพสต์อย่างชัดเจน:
- ข้อความล้วน + ภายใน 10,000 ตัวอักษร → โพสต์ปกติ (สมาชิก Premium รองรับสูงสุด 10,000 ตัวอักษร, ไม่ใช่ Premium: 280 ตัวอักษร)
- ไฟล์ Markdown (.md) → บทความ X
โพสต์ปกติ
${BUN_X} {baseDir}/scripts/x-browser.ts "สวัสดี!" --image ./photo.png
พารามิเตอร์:
| พารามิเตอร์ | คำอธิบาย |
|---|---|
<text> | เนื้อหาโพสต์ (ตำแหน่ง) |
--image <path> | ไฟล์รูปภาพ (ทำซ้ำได้, สูงสุด 4) |
--profile <dir> | โปรไฟล์ Chrome ที่กำหนดเอง |
หมายเหตุ: สคริปต์เปิดเบราว์เซอร์พร้อมเนื้อหาที่กรอกไว้ ผู้ใช้ตรวจสอบและเผยแพร่ด้วยตนเอง
หมายเหตุโหมด Codex: ถ้าผู้ใช้ร้องขอปลั๊กอิน Codex Chrome อย่างชัดเจน ให้ใช้ โหมดปลั๊กอิน Codex Chrome ในกรณีอื่น ถ้าเปิดใช้งาน Chrome Computer Use ให้ใช้ โหมด Chrome Computer Use แทนการรัน x-browser.ts
โพสต์วิดีโอ
ข้อความ + ไฟล์วิดีโอ
${BUN_X} {baseDir}/scripts/x-video.ts "ดูนี่สิ!" --video ./clip.mp4
พารามิเตอร์:
| พารามิเตอร์ | คำอธิบาย |
|---|---|
<text> | เนื้อหาโพสต์ (ตำแหน่ง) |
--video <path> | ไฟล์วิดีโอ (MP4, MOV, WebM) |
--profile <dir> | โปรไฟล์ Chrome ที่กำหนดเอง |
หมายเหตุ: สคริปต์เปิดเบราว์เซอร์พร้อมเนื้อหาที่กรอกไว้ ผู้ใช้ตรวจสอบและเผยแพร่ด้วยตนเอง
หมายเหตุโหมด Codex: ถ้าผู้ใช้ร้องขอปลั๊กอิน Codex Chrome อย่างชัดเจน ให้ใช้ โหมดปลั๊กอิน Codex Chrome ในกรณีอื่น ถ้าเปิดใช้งาน Chrome Computer Use ให้ใช้ โหมด Chrome Computer Use แทนการรัน x-video.ts
ขีดจำกัด: ปกติสูงสุด 140 วินาที, Premium สูงสุด 60 นาที การประมวลผล: 30-60 วินาที
ทวีตอ้างอิง
อ้างอิงทวีตที่มีอยู่พร้อมความคิดเห็น
${BUN_X} {baseDir}/scripts/x-quote.ts https://x.com/user/status/123 "ข้อมูลเชิงลึกที่ยอดเยี่ยม!"
พารามิเตอร์:
| พารามิเตอร์ | คำอธิบาย |
|---|---|
<tweet-url> | URL ที่จะอ้างอิง (ตำแหน่ง) |
<comment> | ข้อความความคิดเห็น (ตำแหน่ง, ไม่บังคับ) |
--profile <dir> | โปรไฟล์ Chrome ที่กำหนดเอง |
หมายเหตุ: สคริปต์เปิดเบราว์เซอร์พร้อมเนื้อหาที่กรอกไว้ ผู้ใช้ตรวจสอบและเผยแพร่ด้วยตนเอง
หมายเหตุโหมด Codex: ถ้าผู้ใช้ร้องขอปลั๊กอิน Codex Chrome อย่างชัดเจน ให้ใช้ โหมดปลั๊กอิน Codex Chrome ในกรณีอื่น ถ้าเปิดใช้งาน Chrome Computer Use ให้ใช้ โหมด Chrome Computer Use แทนการรัน x-quote.ts
บทความ X
บทความ Markdown แบบยาว (ต้องใช้ X Premium)
${BUN_X} {baseDir}/scripts/x-article.ts article.md
${BUN_X} {baseDir}/scripts/x-article.ts article.md --cover ./cover.jpg
พารามิเตอร์:
| พารามิเตอร์ | คำอธิบาย |
|---|---|
<markdown> | ไฟล์ Markdown (ตำแหน่ง) |
--cover <path> | รูปปก |
--title <text> | แทนที่ชื่อเรื่อง |
Frontmatter: รองรับ title, cover_image ใน YAML front matter
หมายเหตุโหมด Codex: ถ้าผู้ใช้ร้องขอปลั๊กอิน Codex Chrome อย่างชัดเจน ให้ปฏิบัติตาม โหมดปลั๊กอิน Codex Chrome ข้างต้น ถ้าผู้ใช้ร้องขอ Chrome Computer Use อย่างชัดเจน ให้ปฏิบัติตาม โหมด Chrome Computer Use ในกรณีอื่น ให้ใช้ Chrome Computer Use ก่อน สำหรับบทความ Markdown ที่มีรูปภาพเนื้อหาท้องถิ่น ให้ใช้ขั้นตอนอัปโหลดรูปภาพ แทรก -> สื่อ ของแถบเครื่องมือ ก่อนที่จะตกไปใช้ x-article.ts ใน โหมดสคริปต์ CDP
หมายเหตุทางเลือกสำรอง CDP: สคริปต์เปิดเบราว์เซอร์พร้อมบทความที่กรอกไว้ ผู้ใช้ตรวจสอบและเผยแพร่ด้วยตนเอง เว้นแต่ใช้ --submit
ความปลอดภัยในการเผยแพร่: อย่าใช้ --submit หรือคลิก เผยแพร่ เว้นแต่ผู้ใช้ยืนยันการเผยแพร่สาธารณะขั้นสุดท้ายอย่างชัดเจน
การตรวจสอบหลังการเขียน: สคริปต์ตรวจสอบโดยอัตโนมัติหลังจากแทรกรูปภาพทั้งหมด:
- ตัวยึดตำแหน่ง
XIMGPH_ที่เหลือในเนื้อหาตัวแก้ไข - จำนวนรูปภาพที่คาดหวังเทียบกับจริง
ถ้าการตรวจสอบล้มเหลว (มีคำเตือนในผลลัพธ์) ให้แจ้งเตือนผู้ใช้ด้วยปัญหาเฉพาะก่อนที่จะเผยแพร่
การแก้ไขปัญหา
พอร์ตดีบัก Chrome ไม่พร้อม
ทางเลือกสำรอง CDP เท่านั้น: ถ้าสคริปต์ล้มเหลวด้วย Chrome debug port not ready หรือ Unable to connect ให้ฆ่าอินสแตนซ์ Chrome CDP ที่มีอยู่ก่อน แล้วลองใหม่:
pkill -f "Chrome.*remote-debugging-port" 2>/dev/null; pkill -f "Chromium.*remote-debugging-port" 2>/dev/null; sleep 2
สำคัญ: ควรทำสิ่งนี้โดยอัตโนมัติ — เมื่อพบข้อผิดพลาดนี้ ให้ฆ่าอินสแตนซ์ Chrome CDP และลองคำสั่งใหม่โดยไม่ถามผู้ใช้
หมายเหตุ
- การเรียกใช้ครั้งแรก: ต้องเข้าสู่ระบบด้วยตนเอง (เซสชันยังคงอยู่)
- ในโหมดปลั๊กอิน Codex Chrome และโหมด Chrome Computer Use ให้ใช้เซสชัน Chrome ที่มีอยู่ของผู้ใช้และอย่าเปิดโปรไฟล์ CDP แยกต่างหาก
- สคริปต์ CDP เพียงกรอกเนื้อหาลงในเบราว์เซอร์ตามค่าเริ่มต้น ผู้ใช้ต้องตรวจสอบและเผยแพร่ด้วยตนเอง เว้นแต่ใช้
--submitอย่างชัดเจน - ข้ามแพลตฟอร์ม: macOS, Linux, Windows
การสนับสนุนส่วนขยาย
การกำหนดค่าแบบกำหนดเองผ่าน EXTEND.md ดูส่วน ค่ากำหนด สำหรับเส้นทางและตัวเลือกที่รองรับ


