- เครื่องมือที่ใช้เสียงจาก Warcraft / StarCraft / Zelda ฯลฯ เพื่อ แจ้งด้วยเสียงเมื่อ AI coding agent ทำงานเสร็จหรือขอให้ป้อนข้อมูล
- ทำงานร่วมกับ IDE หลักอย่าง Claude Code, Codex, Cursor, OpenCode ได้ และช่วยให้รับรู้สถานะผ่านเสียงโดยไม่ต้องคอยจ้องเทอร์มินัลตลอดเวลา
- รองรับ sound pack มากกว่า 40 แบบ รวมเสียงตัวละครจากเกมต่าง ๆ เช่น Warcraft, StarCraft, Portal, Zelda
- มีทั้งคนงานออร์ค/คนงานมนุษย์/อันเดด/เมอร์ล็อกจาก Warcraft, แบทเทิลครูเซอร์/เคอร์ริแกน/ซีจแทงก์จาก StarCraft, Duke Nukem, วิศวกรโซเวียตจาก Red Alert ฯลฯ
- ทำงานบน macOS, Linux, WSL2 และ ติดตั้งได้ง่ายด้วย Homebrew หรือคำสั่ง curl
ภาพรวม
- PeonPing คือ ระบบแจ้งเตือนด้วยเสียงสำหรับ Claude Code และ Codex ที่จะแจ้งด้วย เสียงตัวละครจากเกม เมื่อ AI coding agent ทำงานเสร็จหรือร้องขออินพุต
- ใช้เสียง Peon (Orc Peon) จาก Warcraft III เป็นค่าเริ่มต้น
- มีแพ็กเสียงตัวละครจากแฟรนไชส์ต่าง ๆ เช่น StarCraft, Portal, Zelda
- ผู้ใช้สามารถ รับรู้สถานะงานได้ทันทีผ่าน feedback เสียง โดยไม่ต้องคอยเฝ้าหน้าต่างเทอร์มินัลตลอดเวลา
ฟีเจอร์หลัก
- รองรับมาตรฐาน Coding Event Sound Pack Specification (CESP) โดยแมปเหตุการณ์จาก IDE เข้ากับหมวดเสียงมาตรฐาน
- เล่นเสียงตามอีเวนต์ เช่น
session.start, task.complete, input.required, user.spam
- ตัวอย่างเช่น “Ready to work?”, “Work, work.”, “Something need doing?”
- มาพร้อมความสามารถ เปลี่ยนชื่อแท็บเทอร์มินัลและแจ้งเตือนบนเดสก์ท็อป
- แสดงการแจ้งเตือนแบบภาพได้แม้ตอนที่เทอร์มินัลไม่ได้อยู่ในสถานะใช้งาน
- รองรับ คำสั่งควบคุมผ่าน CLI
- ควบคุมเสียงและการแจ้งเตือนได้ด้วยคำสั่งอย่าง
peon toggle, peon pause, peon packs use
- รองรับการเติมคำสั่งอัตโนมัติของแท็บ
การติดตั้งและสภาพแวดล้อม
- วิธีติดตั้ง
- บน macOS และ Linux สามารถติดตั้งด้วยคำสั่ง
brew install PeonPing/tap/peon-ping หรือ curl -fsSL ... | bash
- เมื่อติดตั้งจะมีแพ็กเสียงภาษาอังกฤษ 10 ชุดมาให้โดยค่าเริ่มต้น
- ใช้ตัวเลือก
--all เพื่อติดตั้งทุกภาษาและทุกแฟรนไชส์ได้
- สภาพแวดล้อมที่รองรับ
- macOS(
afplay), Linux(paplay, ffplay, mpv, aplay), WSL2(PowerShell MediaPlayer)
- ใช้งานร่วมกับ IDE เช่น Claude Code, Codex, Cursor, OpenCode
- ต้องใช้ Python3
การตั้งค่าและการควบคุมโดยผู้ใช้
- ไฟล์ตั้งค่าจะถูกเก็บไว้ที่
~/.claude/hooks/peon-ping/config.json
- ปรับ ระดับเสียง (0.0–1.0), เปิด/ปิดตามหมวดการแจ้งเตือน, และ เดสก์ท็อปแจ้งเตือน on/off ได้
- มีตัวเลือก
silent_window_seconds สำหรับยับยั้งการแจ้งเตือนของงานสั้น ๆ
- ใช้
pack_rotation เพื่อสุ่มสลับแพ็กเสียงในแต่ละเซสชันได้
- สามารถสั่งปิดเสียงหรือเปิดกลับได้ทันทีผ่านคำสั่ง
/peon-ping-toggle ใน Claude Code หรือผ่าน CLI
การจัดชุด sound pack
- มีแพ็กให้มากกว่า 40 แบบ ตัวอย่างแพ็กเด่น ๆ ได้แก่:
peon: คนงานออร์คจาก Warcraft III
peasant: คนงานมนุษย์
glados: GLaDOS จาก Portal
sc_kerrigan: Sarah Kerrigan จาก StarCraft
dota2_axe, duke_nukem, tf2_engineer, hd2_helldiver เป็นต้น
- สามารถฟังตัวอย่างทุกแพ็กได้ที่ openpeon.com/packs
- ผู้ใช้สามารถสลับแพ็กได้ด้วยคำสั่ง
peon packs use
วิธีการทำงาน
- สคริปต์
peon.sh จะตรวจจับอีเวนต์ SessionStart, UserPromptSubmit, Stop, Notification, PermissionRequest ของ Claude Code
- จากนั้นแมปแต่ละอีเวนต์ไปยังหมวด CESP แล้วเล่นเสียงแบบสุ่ม
- มีการป้องกันการเล่นซ้ำ และอัปเดตชื่อแท็บเทอร์มินัลไปพร้อมกัน
- sound pack จะถูกดาวน์โหลดจาก OpenPeon registry
- แพ็กทางการโฮสต์อยู่ที่ PeonPing/og-packs
- ไฟล์เสียงเป็นทรัพย์สินของผู้เผยแพร่แต่ละเกม และเผยแพร่เพื่อใช้เป็นการแจ้งเตือนส่วนตัวภายใต้ขอบเขต fair use
ข้อมูลอื่น ๆ
14 ความคิดเห็น
ช้าไปหน่อยแต่ผมอัดเสียงแมวที่บ้านมาเปลี่ยนแล้วครับ 555
พอทำงานหนึ่งอย่างเสร็จแล้วมันร้องเหมียวเรียก ก็รู้สึกชื่นใจมากเลยครับ
55555 พร้อมลุยงาน
55555555555
ชอบลิสต์ซาวด์แพ็กมากเลยครับ รู้สึกได้ถึงความคลาสสิกดั้งเดิม
55555555555555555555555555555555555555555555555555555555
ดูท่าจะสนุกมากเลยนะ ?
ใช่เลย!
Job's Done! ต้องลองเดี๋ยวนี้เลย 555
555 ตลกมากครับ
พร้อมทำงานไหม? ทำงาน ทำงาน
ถ้าอยากทำให้เรียบง่ายกว่านี้ สามารถดาวน์โหลดเฉพาะเสียงที่ต้องการจากเว็บไซต์ https://www.wowhead.com/sounds/name:peon แล้วตั้งค่า
~/.claude/settings.jsonตามด้านล่างได้เลยถ้าใช้ Codex เป็นหลัก การตั้งค่าของอันนี้จะสะดวกกว่า https://github.com/mrdavey/codex-peon
ยอดเยี่ยมที่สุดในบรรดาโปรเจกต์ที่ได้เห็นมาเมื่อไม่นานนี้
5555555555
ความคิดเห็นจาก Hacker News
ในที่สุดก็มีคนใช้ LLM ทำงานที่มีประโยชน์จริงๆ แทนอะไรทำนอง “Claude ช่วยสร้าง SaaS ไร้ประโยชน์อีกอันให้หน่อย”
อย่างที่ทำนายไว้ จุดสร้างความแตกต่างที่แท้จริงคือ ความคิดสร้างสรรค์ ไม่ใช่ฝีมือการเขียนโค้ด
มันน่าจะทำได้ตั้งแต่ราว 10 ปีก่อนแล้วแท้ๆ แต่น่าเสียดายที่โปรเจ็กต์แบบนี้ชะงักเพราะตัวอย่างเสียงคุณภาพสูงถูกผูกไว้กับเจ้าของลิขสิทธิ์และผลประโยชน์ทางการค้า
.shที่ vibe code แบบสุ่มๆเช่น ไปดาวน์โหลดและรันสคริปต์อื่น แก้
~/.bashrcหรือ parse JSON จากระยะไกลแล้วดึงไฟล์มาซอฟต์แวร์ดีๆ ทุกวันนี้มักให้ความรู้สึกว่า “คนทำสนุกกับมัน” เรารับรู้ความต่างได้ทันทีระหว่างเครื่องมือที่แค่ใช้งานได้ กับเครื่องมือที่ทำให้คิดว่า “อันนี้สนุกดี”
โปรเจ็กต์นี้ทำให้นึกถึง Warcraft 1 เลย ถ้าคลิกยูนิตเดิมซ้ำๆ มันจะตอบกลับแบบหงุดหงิดขึ้นเรื่อยๆ แล้วทหารมนุษย์ที่พูดว่า “ทำไมจับฉันอยู่ได้?” นี่ดีที่สุดแล้ว
วิดีโอที่เกี่ยวข้อง
สำหรับผม สิ่งที่ฮาสุดคือเรือพิฆาตออร์คใน Warcraft II ที่พยายามจะร้องเพลงทะเล
เมื่อประมาณ 20 ปีก่อน ระบบบิลด์ของ Google ชื่อว่า “grunt” แล้วในคำอธิบาย CL มีข้อความว่า “ทำให้บิลด์ตลกขึ้น 10%”
เลยทำให้ในบิลด์ล็อกมีโอกาส 10% ที่จะพิมพ์ “zug-zug” ออกมา
ผมก็ลองทำแบบนี้เหมือนกัน แล้วชอบมากเวลาที่ Claude Code เรียกผมด้วยเสียง “Work complete!”
วิดีโออ้างอิง
หลังจากนั้นผมพบว่าข้อความที่ผูกกับแต่ละโปรเจ็กต์ตามเหตุการณ์มีประโยชน์กว่า บน macOS ตั้งค่าแบบนี้
sayก็พอไอเดียนี้ดีมาก เพียงแต่ถ้าเป็นเสียง Warcraft II น่าจะดีกว่าอีก
ขอฝากถึงหลายๆ ทีมวิจัยเลยว่า อยากให้มีอะไรอย่าง ฟอร์แมต JSON สำหรับสลับการตั้งค่าเสียงแบบ local ได้
ช่วงนี้ผมใช้แอป OpenAI Codex บ่อยมาก ถ้ามีฟีเจอร์นี้ในตัวคงดีขึ้นเยอะ
ตอนทำแผนที่ custom ของ Warcraft II สมัยก่อน ถ้าตั้งเวลาในการก่อสร้างอาคารเป็น 0 ตัวอาคารจะเสร็จทันทีแต่จะออกมาในสภาพเสียหาย
พอให้ชาวนาสร้างฟาร์ม ก็จะได้ฟาร์มที่กำลังไหม้พร้อมเสียง “Job’s Done!” ซึ่งขำมาก
ถ้าจะใช้ asset ของ Warcraft 3 คุณต้องมีต้นฉบับอยู่แล้ว การที่ไม่มีการพูดถึงเรื่องนี้ดูแปลกนะ
นี่ก็เป็นการละเมิดลิขสิทธิ์ พอๆ กับกระบวนการฝึก LLM เลย หรือว่ามีกฎหมายใหม่แนว “ถ้าใช้กับ AI ถือว่ายกเว้น” แล้ว?
Generative AI จะทำให้เราต้องกลับมาคิดระบบลิขสิทธิ์กันใหม่
มันไม่ได้ทำลายตลาดของต้นฉบับ และอาจกระตุ้นความคิดถึงจนช่วยเพิ่มยอดขายด้วยซ้ำ
พอเห็นสิ่งนี้ก็รู้สึกว่า “อ๋อ นี่แหละสิ่งที่ฉันต้องการจริงๆ”
แต่อยากทำด้วย เสียงคอมพิวเตอร์จาก Star Trek มากกว่า ลองใช้ Elevenlabs ทันที แล้วภายใน 30 นาทีก็มีเสียงเตือนว่า “ssh tunnel ถูกตัดการเชื่อมต่อแล้ว” จนขำออกมา
เป็นโปรเจ็กต์ที่เจ๋ง แต่พอเห็น pipeline แบบ
curl | bashก็เลยตัดสินใจไม่ลองวิธีติดตั้งแบบนี้มันเก่าเกินไปแล้ว และผมไม่อยากเอาความทรงจำดีๆ ไปผูกกับ Claude และงาน
แต่ก็แอบตลกที่เป็นโค้ดจาก repository เดียวกันแท้ๆ บางส่วนยอมรัน บางส่วนกลับปฏิเสธ
curl | bashจริงๆ แต่ก่อนทุกคนก็โหลดตัวติดตั้งจากเว็บแล้วเอามารันกันทั้งนั้น
สิ่งสำคัญคือ ความน่าเชื่อถือของแหล่งที่มา และ การตรวจสอบโค้ด มากกว่า แล้วทางเลือกคืออะไรล่ะ?
ผมคิดว่าโปรเจ็กต์นี้ไม่ใช่แค่ของเล่นสนุกๆ แต่เป็น สัญญาณของการเปลี่ยนแปลงที่กำลังมา
หลังจากลองทำ agentic coding แบบจริงจังเมื่อปีที่แล้ว ก็ชัดเจนว่าสุดท้ายเราจะไปสู่แนวคิด software factory
พอคิดต่อว่าจะจัดการโค้ดในระดับนั้นยังไง ก็ได้ข้อสรุปว่า UI แบบวิดีโอเกม นี่แหละคือคำตอบ
วิธีนำเสนอข้อมูลแบบในเกมสามารถนำไปใช้ซ้ำในบริบทอื่นได้
ภายนอกมันอาจดูเหมือนมุกขำๆ แต่จริงๆ แล้วผมมองว่าเป็นการมีส่วนร่วมที่จริงจังมาก