claude-coach · plugin marketplace for Claude Code COACHED 042

Every prompt you send get ^gets coached.

📣 subject–verb agreement — "every prompt" is singular 📣 subject–verb agreement — "every prompt" เป็นเอกพจน์ กริยาต้องเติม s

Two coaches on the sideline of every session. prompting-coach stops the play when a prompt is too vague to run on, and hands you a rewritten one to accept. english-coach turns the prompt you just wrote into a one-glance English drill — built for Thai-speaking developers. Same coaches, two grounds: your terminal and your Discord server. โค้ชสองคนยืนข้างสนามทุก session — prompting-coach หยุดเกมเมื่อ prompt คลุมเครือเกินจะลงมือ แล้วยื่น prompt ฉบับเขียนใหม่ให้กดรับ english-coach เปลี่ยน prompt ที่คุณเพิ่งพิมพ์เป็นบทเรียนภาษาอังกฤษ อ่านจบในแวบเดียว — สร้างมาเพื่อนักพัฒนาไทย โค้ชชุดเดียวกัน ลงสองสนาม: terminal ของคุณ และ Discord server ของคุณ

One full turn: the gate opens a real chooser, you pick with one keypress, Claude does the actual work, the English lesson closes it. Both plugins hook UserPromptSubmit — no model discipline required. ครบหนึ่ง turn: gate เปิด chooser จริง กดเลือกปุ่มเดียว Claude ทำงานจริงตรงกลาง แล้ว บทเรียนอังกฤษปิดท้าย — สอง plugin เกาะ hook UserPromptSubmit ไม่ต้องพึ่งความจำของ model

home ground · claude cli DRILLS 04

In the terminal, every turn is practice ในเทอร์มินัล ทุก turn คือการซ้อม

Install the plugins and each prompt runs the drill automatically — prompting-coach gates only the prompts that need it, english-coach closes every turn. Four real turns: ติดตั้ง plugin แล้วทุก prompt รันการซ้อมอัตโนมัติ — prompting-coach กันเฉพาะ prompt ที่จำเป็น english-coach ปิดท้ายทุก turn สี่ turn จริง:

prompting-coach · pass-through

Most prompts see nothing at all. The gate fires only when a wrong guess would waste real work — no verdict, no commentary, no extra turn. prompt ส่วนใหญ่ไม่เจออะไรเลย gate ทำงานเฉพาะตอนเดาผิดแล้วงานเสียจริง — ไม่มี verdict ไม่มีคำวิจารณ์ ไม่กิน turn เพิ่ม

english-coach · thai prompt

Type in Thai, get the answer — and the English you could have written, in three registers, at the end of the reply. พิมพ์ไทย ได้คำตอบ — พร้อมภาษาอังกฤษที่คุณควรเขียน สามระดับ อยู่ท้ายคำตอบ

prompting-coach · gate

A load-bearing gap opens a real AskUserQuestion chooser — option 1's preview holds the rewritten prompt, "Other" is the edit path. One keypress beats twenty minutes on a guess. gap ที่ชี้ขาดจะเปิด AskUserQuestion chooser จริง — preview ของตัวเลือกแรกคือ prompt ที่เขียนใหม่ให้แล้ว ส่วน "Other" คือช่องแก้เอง กดปุ่มเดียวจบ ดีกว่าเดาผิดยี่สิบนาที

english-coach · correction

English with slips comes back marked up, with the why in Thai — grammar you absorb turn by turn. ภาษาอังกฤษที่มีพลาดถูกส่งกลับพร้อมรอยแก้ และ เหตุผลเป็นภาษาไทย — แกรมมาซึมเข้าไปทีละ turn

away game · discord DRILLS 03

On Discord, the coach plays quiet บน Discord โค้ชเล่นเงียบ ๆ

The repo ships an OpenClaw workspace — a Discord bot that answers like Claude and coaches every message the same way. Lessons arrive folded in spoiler tags, so they never get between you and the answer. repo นี้แถม OpenClaw workspace — Discord bot ที่ตอบเหมือน Claude และโค้ชทุกข้อความแบบเดียวกัน บทเรียนมาแบบพับใน spoiler tags ไม่มีวันเกะกะระหว่างคุณกับคำตอบ

discord · two-spoiler turn

Task messages end with two tap-to-reveal spoilers — the prompt verdict and the English lesson. Nothing is coached out loud unless you open it. ข้อความสั่งงานปิดท้ายด้วย spoiler แตะเปิดสองอัน — prompt verdict กับบทเรียนอังกฤษ ไม่มีอะไรโผล่จนกว่าคุณจะเปิดเอง

discord · casual chat

Plain chat skips the prompt verdict — you just get the English drill, one spoiler, every message a small rep. แชทเล่นข้าม prompt verdict — ได้แค่ english drill หนึ่ง spoiler ทุกข้อความคือการซ้อมเล็ก ๆ

discord · /coach control

One slash command tunes the whole bench — per-user, persisted. Full options in the playbook below. คำสั่ง slash เดียวจูนได้ทั้งม้านั่ง — รายคน จำข้าม session ตัวเลือกเต็มอยู่ใน playbook ข้างล่าง

Same coaches, away kitโค้ชชุดเดิม ใส่ชุดเยือน

The Discord coach runs on OpenClaw — a self-hosted gateway that puts Claude in your server. The workspace in this repo adds: Discord coach รันบน OpenClaw — gateway แบบ self-host ที่พา Claude เข้า server ของคุณ workspace ใน repo นี้เพิ่ม:

  • the same two coaching formats as the CLI pluginsฟอร์แมตโค้ชสองแบบเดียวกับ plugin ฝั่ง CLI
  • spoiler / plain / DM delivery — your channel stays readableส่งแบบ spoiler / plain / DM — channel ยังอ่านง่าย
  • /coach settings per user, persisted across sessionsตั้งค่า /coach รายคน จำข้าม session

kick-off

Three commands, inside Claude Code 3 คำสั่ง ใน Claude Code

claude — install
/plugin marketplace add nuipawarit/claude-coach
/plugin install prompting-coach@claude-coach
/plugin install english-coach@claude-coach

Step 1 registers the marketplace; steps 2–3 are independent — install only the coach you want. The plugins are POSIX sh hooks plus skills, fetched straight from GitHub. Discord setup is its own play — see PLAY 03 below. คำสั่งแรกลงทะเบียน marketplace; ข้อ 2–3 อิสระต่อกัน — ลงเฉพาะโค้ชที่อยากได้ ตัว plugin เป็น POSIX sh hooks + skills ดึงตรงจาก GitHub ส่วน Discord มี play ของตัวเอง — ดู PLAY 03 ข้างล่าง

PLAY 01How it worksกลไกการทำงาน

Each plugin ships a UserPromptSubmit hook that runs the moment you hit enter — before Claude reads your request. That's why coaching can't be forgotten mid-session: the harness enforces it, not the model's memory. plugin แต่ละตัวมาพร้อม hook UserPromptSubmit ที่ทำงานทันทีที่กด enter ก่อนที่ Claude จะอ่านคำขอของคุณ นี่คือเหตุผลที่การโค้ชไม่มีวันถูกลืมกลางคัน: harness เป็นคนบังคับ ไม่ใช่ความจำของ model

prompting-coachgates before the workกันก่อนเริ่มงาน

  • The hook hands a ~1.2 KB rubric to the model already running your turn — no sidecar, no second model call.hook ส่ง rubric ~1.2 KB ให้ model ตัวที่รัน turn ของคุณอยู่แล้ว — ไม่มี sidecar ไม่มี model call ที่สอง
  • A load-bearing gap on deliverable, do-vs-advise, or targets opens a real AskUserQuestion chooser.gap ที่ชี้ขาดเรื่อง deliverable, ทำหรือแค่วิเคราะห์, หรือ เป้าหมาย จะเปิด AskUserQuestion chooser จริง
  • Option 1 previews the rewritten prompt, "Other" lets you edit. Everything else passes through silently.ตัวเลือกแรก preview prompt ที่เขียนใหม่ให้ "Other" ไว้แก้เอง นอกนั้นผ่านไปเงียบ ๆ

english-coachcloses the responseปิดท้ายคำตอบ

  • Thai prompt — corrected English + concise + idiomatic versions.Prompt ภาษาไทย — อังกฤษฉบับแก้แล้ว + แบบกระชับ + แบบ native
  • English with slips — corrected, with the why-tip in Thai.อังกฤษมีพลาด — แก้ให้พร้อมเหตุผลภาษาไทย
  • Clean English — ✅ praise + a more native-sounding upgrade.อังกฤษสะอาด — ได้ ✅ พร้อมเวอร์ชันที่ native กว่า

english-coach evaluates in a background sidecar started the moment you submit, and delivers at the end of the same turn — because it overlaps the main task, it usually adds no waiting at all. Both plugins are fail-open: if a hook ever breaks, your prompt passes through untouched. They never touch your files — only the conversation. english-coach ประเมินใน sidecar เบื้องหลัง ที่เริ่มทันทีตอนคุณกดส่ง แล้วส่งผลตอนจบ turn เดียวกัน — เพราะทำงานทับกับงานหลัก ปกติจึงไม่ต้องรอเพิ่มเลย ทั้งสอง plugin เป็น fail-open: ถ้า hook พังเมื่อไหร่ prompt ของคุณผ่านไปตามปกติ ไม่แตะไฟล์ของคุณ — อยู่แค่ในบทสนทนาเท่านั้น

PLAY 02Configurationการตั้งค่า

Both hooks read their config file on every prompt, so a change takes effect on your next prompt — no session restart. hook ทั้งสองอ่านไฟล์ config ทุก prompt เปลี่ยนค่าแล้วมีผลที่ prompt ถัดไปทันที ไม่ต้องเปิด session ใหม่

/prompting-coach:config

on · offenable / disable the gateเปิด / ปิด gate
statusshow current settingsดูค่าปัจจุบัน

No levels: the gate already fires only on gaps where guessing wrong wastes real work. ไม่มี level เพราะ gate ทำงานเฉพาะ gap ที่เดาผิดแล้วงานเสียอยู่แล้ว

/english-coach:config

on · offenable / disable coachingเปิด / ปิดการโค้ช
level full|lightlight = corrections only, no praiselight = แก้อย่างเดียว ไม่มีคำชม
statusshow current settingsดูค่าปัจจุบัน

PLAY 03Discord — the away fixtureDiscord — สนามเยือน

Self-host the OpenClaw workspace from this repo, point it at your Discord bot token, and every channel it can read gets the same two coaches. Delivery defaults to spoiler tags — the Discord demos above are exactly what lands in the channel. Discord has no chooser widget, so there the prompt coach stays a spoiler-wrapped verdict rather than the CLI's gate. Self-host OpenClaw workspace จาก repo นี้ ชี้ไปที่ Discord bot token ของคุณ แล้วทุก channel ที่บอทอ่านได้ จะได้โค้ชชุดเดียวกัน ค่าเริ่มต้นส่งแบบ spoiler tags — ตัวอย่าง Discord ข้างบนคือสิ่งที่ลงใน channel จริง ๆ Discord ไม่มี widget แบบ chooser ฝั่งนั้น prompt coach จึงยังเป็น verdict ห่อ spoiler ไม่ใช่ gate แบบ CLI

Tune it withจูนด้วย /coach

/coach prompt offsilence the prompt verdictปิด prompt verdict
/coach english offsilence the English lessonปิดบทเรียนอังกฤษ
/coach level lightload-bearing feedback onlyเฉพาะ feedback ที่ชี้ขาด
/coach delivery spoiler|plain|dmhow lessons arriveรูปแบบการส่งบทเรียน

PLAY 04Limitationsข้อจำกัด

  • Hooks are POSIX sh scripts — Windows needs Git Bash (untested).hook เป็น POSIX sh script — Windows ต้องใช้ Git Bash (ยังไม่ได้ทดสอบ)
  • Fail-open: if a hook breaks, prompts pass through untouched.fail-open: ถ้า hook พัง prompt ผ่านตามปกติ
  • Hook output renders as dim plain text with no markdown, so english-coach uses box-drawing rules instead of headings and bold.output ของ hook แสดงเป็น plain text สี dim ไม่ผ่าน markdown — english-coach จึงใช้เส้นกรอบแทน heading กับตัวหนา
  • english-coach needs an interactive session: its background evaluation is an async hook, and claude -p kills those children on exit.english-coach ต้องใช้ session แบบ interactive — การประเมินเบื้องหลังเป็น async hook ที่ claude -p ฆ่าทิ้งตอนจบ
  • english-coach costs one small-model call per prompt; prompting-coach costs none, only the rubric's tokens.english-coach เสีย model call เล็ก ๆ หนึ่งครั้งต่อ prompt; prompting-coach ไม่เสียเลย มีแค่ token ของ rubric
  • The Discord coach needs a self-hosted OpenClaw instance — it is not a public bot invite.Discord coach ต้อง self-host OpenClaw เอง — ไม่ใช่บอทสาธารณะที่กด invite ได้