Back to feed

kerlos/pordee

kerlos/pordee
225
+12/day
24
JavaScriptAI/ML

ตอบสั้นๆ ก็เข้าใจแบบพอดีๆ

From the README

pordee (พอดี)

ทำไมใช้คำเยอะ ตอบสั้นๆ ก็เข้าใจ

ได้แรงบันดาลใจมาจาก caveman — pordee เป็นรุ่นภาษาไทยที่ตัด token ทิ้งโดยไม่เสียความถูกต้องทาง technical

pordee คือ Claude Code plugin สั่งให้ agent ตอบภาษาไทยกระชับ — ตัดคำสุภาพ (ครับ/ค่ะ/นะคะ), คำลังเล (อาจจะ/น่าจะ), และคำเชื่อมที่ไม่จำเป็นทิ้ง เก็บ technical term อังกฤษไว้ตามเดิม

ผล: ใช้ token น้อยลง 60-75% เนื้อหาเท่าเดิม

ติดตั้ง

ผ่าน Claude Code plugin (แนะนำ)

claude plugin marketplace add kerlos/pordee
claude plugin install pordee@pordee

หลังติดตั้งเสร็จ hooks จะถูก register อัตโนมัติ — เริ่ม session ใหม่แล้ว /pordee ใช้ได้ทันที

วิธีใช้

Slash command

| คำสั่ง | ผล | |---|---| | /pordee | เปิด default level (full) | | /pordee lite | โหมดเบา — ตัดคำสุภาพและ filler ออก แต่ grammar เต็ม | | /pordee full | โหมดเต็ม — ตัดให้สั้นที่สุด | | /pordee stop | ปิด | | /pordee-stats | ดูสถิติ token ของ session ปัจจุบัน | | /pordee-stats --share | สรุปสถิติ 1 บรรทัด (copy-paste ได้) |

Keyword (ไม่ต้องพิมพ์ slash)

พิมพ์คำเหล่านี้เป็นข้อความปกติในแชต — pordee จะเปิด/ปิดให้อัตโนมัติ ต้องเป็นข้อความทั้งบรรทัด ไม่ใช่ส่วนหนึ่งของประโยค

| Keyword | ผล | |---|---| | พอดี | เปิด | | พอดีโหมด | เปิด | | พูดสั้นๆ | เปิด | | หยุดพอดี | ปิด | | พูดปกติ | ปิด |

ระดับ (Levels)

🪶 Lite — /pordee lite

ตัดคำสุภาพ (ครับ/ค่ะ/นะคะ), คำลังเลใจ (อาจจะ/น่าจะ/จริงๆแล้ว), และคำทักทาย (ได้เลยครับ/แน่นอน) ทิ้ง แต่เก็บ grammar เต็ม อ่านแล้วยังเป็นภาษาไทยปกติ professional

⚡ Full — /pordee หรือ /pordee full (default)

ตัดเหมือน lite + ตัด particle ที่ซ้ำซ้อน (ที่/ซึ่ง/ว่า/อยู่/กำลัง) + ตัด nominalizer (การ-, ความ-) + ใช้คำสั้น (ดู ไม่ใช่ ตรวจสอบ) + ประโยคสั้นได้

Pattern: [ของ] [ทำ] [เหตุผล]. [ขั้นต่อ].

ก่อน / หลัง (Before / After)

ตัวอย่าง 1 — "ทำไม React component ถึง re-render?"

🗣️ Normal~80 tokens 🪶 Lite~45 tokens · 44% saved ⚡ Full~22 tokens · 73% saved

"แน่นอนครับ ผมยินดีจะอธิบายให้นะครับ จริงๆ แล้วเหตุผลที่ React component ของคุณ re-render นั้น น่าจะเกิดจากการที่คุณส่ง object reference ใหม่เป็น prop ในทุกครั้งที่ component ถูก render ซึ่งทำให้ React มองว่า prop เปลี่ยน และทำการ re-render component ลูก ดังนั้นคุณอาจจะลองใช้ useMemo เพื่อ memoize object นั้นดูครับ" "React component re-render เพราะส่ง object reference ใหม่เป็น prop ทุกครั้งที่ render ทำให้ React มองว่า prop เปลี่ยน และ re-render component ลูก ลองใช้ useMemo เพื่อ memoize object นั้น" "Object ref ใหม่ทุก render. Inline object prop = ref ใหม่ = re-render. ห่อด้วย useMemo."

┌─────────────────────────────────────┐
│  Lite  ████░░░░░░  44% saved        │
│  Full  ███████░░░  73% saved        │
└─────────────────────────────────────┘

ตัวอย่าง 2 — "อธิบาย database connection pooling"

🗣️ Normal~70 tokens 🪶 Lite~35 tokens · 50% saved ⚡ Full~18 tokens · 74% saved

"ครับ การทำ database connection pooling นั้น โดยทั่วไปแล้วก็คือการที่เราเก็บ connection ของ database ที่เปิดไว้แล้ว เพื่อนำกลับมาใช้ใหม่อีกครั้ง แทนที่จะต้องเปิด connection ใหม่ทุกครั้งที่มี