---
name: psf-writer
description: เขียนและแก้ไข Thailand-PSF Application สำหรับอาจารย์มหาวิทยาลัย ครอบคลุม Part 2 และ Part 3 ตามกรอบ THPSF ระดับ 1-4 ใช้ /psf-writer เมื่อต้องการเริ่มเขียนใหม่ หรือเขียนใหม่โดยอิงจากผลการตรวจของ /psf-reviewer
version: 3.0.0
metadata:
  hermes:
    tags: [education, thailand-psf, reflective-writing, thai]
    category: education
---

# SKILL: psf-writer

---

## ขั้นตอนที่ 0: ตรวจสอบสถานะ folder

โหลด context ก่อนเสมอ:
- `~/.hermes/context/psf_guidelines.md`
- `~/.hermes/context/thpsf_framework.md`

จากนั้นตรวจ working directory แล้วเลือก path ตามลำดับต่อไปนี้:

**A — มี `PSF_review.md`**
> "พบผลการตรวจจาก /psf-reviewer ครับ ระบบจะอ่านและขอ confirm ทีละจุดก่อนแก้ไข พร้อมดำเนินการได้เลยมั้ยครับ?"

รอ confirm → ไป **ขั้นตอนที่ 4**

**B — มี `cv_background.md` และ `teaching_cases.md` ครบแล้ว**

ไป **ขั้นตอนที่ 1** ทันที ไม่ต้องถาม intake ซ้ำ

**C — มีไฟล์ `.md` อื่น ๆ ที่ไม่ใช่ไฟล์ระบบ**

> "พบไฟล์ [ชื่อไฟล์] ในโฟลเดอร์ครับ ดูเหมือนอาจารย์เตรียมข้อมูลมาแล้ว จะอ่านและจัดเรียงลงระบบให้เลยมั้ยครับ?"

รอ confirm → ไป **ขั้นตอนที่ 0a**

**D — ยังไม่มีข้อมูล**

ไป **ขั้นตอนที่ 0b**

---

## ขั้นตอนที่ 0a: แปลงไฟล์จากแหล่งอื่น

อ่านไฟล์ `.md` ทุกตัวที่ผู้ใช้เตรียมมา (เช่น จาก ChatGPT หรือเครื่องมืออื่น)

1. **สกัดข้อมูล** จากไฟล์ทั้งหมด แบ่งเป็น:
   - ข้อมูลส่วนตัว / ประวัติการศึกษา / ภาระงานสอน
   - ข้อมูลกรณีศึกษา 4 ด้าน (ต่อกรณี)
   - หลักฐานที่ระบุไว้และสถานะของแต่ละชิ้น

2. **จัดเรียงลงใน template** โดยใช้โครงสร้างเดียวกับ `~/.hermes/templates/cv_background.md` และ `~/.hermes/templates/teaching_cases.md`
   - ข้อมูลที่สกัดได้ชัดเจน → บันทึกลงช่องที่ตรงกันทันที
   - ข้อมูลที่คลุมเครือ → ใส่ไว้พร้อม comment `<!-- ตรวจสอบ: ... -->`

3. **แสดงผลให้อาจารย์ยืนยัน** ก่อนบันทึก:
   > "จัดเรียงข้อมูลเรียบร้อยแล้วครับ นี่คือสิ่งที่สกัดได้:
   > [แสดง summary ของข้อมูลแต่ละกลุ่ม]
   > ข้อมูลที่ยังไม่ชัดเจน [N] รายการ จะระบุไว้ใน comment ให้อาจารย์เติมทีหลังได้ครับ
   > บันทึกได้เลยมั้ยครับ?"

4. บันทึกเป็น `cv_background.md` และ `teaching_cases.md` → ไป **ขั้นตอนที่ 1**

---

## ขั้นตอนที่ 0b: Intake (กรณียังไม่มีข้อมูล)

ยินดีต้อนรับอาจารย์ พร้อมแจ้งว่าระบบจะถามข้อมูล 5 กลุ่มทีละกลุ่ม ได้แก่ ข้อมูลส่วนตัว ประวัติการศึกษาและภาระงานสอน กรณีศึกษาที่ 1 กรณีศึกษาที่ 2 และการพัฒนาวิชาชีพ

**กลุ่ม 1 — ข้อมูลส่วนตัว**

ถาม: ชื่อ-นามสกุล (ไทย/อังกฤษ) / ตำแหน่งทางวิชาการ / คณะ-สถาบัน / สาขาวิชาหลักที่สอน / ระดับ PSF ที่ต้องการยื่น (1/2/3/4) / เคยยื่นมาก่อนหรือไม่

รอรับคำตอบก่อนถามกลุ่มถัดไป

**กลุ่ม 2 — ประวัติการศึกษาและภาระงานสอน**

ถาม: วุฒิการศึกษาทุกระดับ (สาขา มหาวิทยาลัย ปีสำเร็จ เรียงจากสูงสุด) / ภาระงานสอน 3 ปีการศึกษาล่าสุด (รหัสวิชา ชื่อวิชา ระดับ ชั่วโมงทฤษฎี ชั่วโมงปฏิบัติ)

**กลุ่ม 3 — กรณีศึกษาที่ 1**

ถามตามลำดับ รอคำตอบแต่ละข้อก่อนถามต่อ:

1. **ข้อมูลรายวิชา:** ชื่อ รหัส ระดับ จำนวนนิสิต ปีการศึกษา เป้าหมายหลัก
2. **ปัญหาก่อนออกแบบ:** "ก่อนออกแบบหรือปรับปรุงวิชานี้ พบปัญหาหรือความท้าทายอะไรบ้างครับ"
3. **ด้านที่ 1 — ออกแบบรายวิชา:** กรอบ/หลักการ ลำดับการเรียนรู้ นวัตกรรม หลักฐานที่มี (ชื่อเอกสาร + สถานะ: พร้อมใช้/คำบอกเล่า/ควรมีเสริม)
4. **ด้านที่ 2 — จัดการเรียนรู้:** กิจกรรมจริง วิธีสร้างการมีส่วนร่วม หลักฐานที่มี
5. **ด้านที่ 3 — วัดและประเมินผล:** สัดส่วนคะแนน วิธีให้ feedback หลักฐานที่มี
6. **ด้านที่ 4 — พัฒนาและปรับปรุง:** สิ่งที่ปรับปรุงแล้ว / อยู่ระหว่างพัฒนา / ผลที่กล่าวได้อย่างระมัดระวัง / ข้อจำกัดของหลักฐาน

ถ้าคำตอบใด claim โดยไม่มีหลักฐาน → ถามต่อ: "มีเอกสาร ตัวเลข หรือผลประเมินประกอบมั้ยครับ สถานะพร้อมใช้หรือเป็นคำบอกเล่า"

**กลุ่ม 4 — กรณีศึกษาที่ 2**

ถามในรูปแบบเดียวกับกลุ่ม 3 ทุกขั้นตอน ต้องเป็นวิชาหรือบริบทที่แตกต่างจากกรณีที่ 1

**กลุ่ม 5 — การพัฒนาวิชาชีพ**

ถาม: อบรม สัมมนา ศึกษาดูงาน หรืองานวิจัยที่ติดตามในช่วง 3 ปีที่ผ่านมา / การช่วยเหลือเพื่อนอาจารย์ / feedback ที่ได้รับและนำมาพัฒนาตนเอง

**บันทึกและยืนยัน**

บันทึกลง `cv_background.md` และ `teaching_cases.md` แจ้งอาจารย์ตรวจสอบ รอ confirm → ไป **ขั้นตอนที่ 1**

---

## ขั้นตอนที่ 1: เตรียม session และตรวจหลักฐาน

กำหนด writing target ตามระดับที่อาจารย์แจ้ง:

| ระดับ | ความยาว Part 3 | โจทย์หลักที่ต้องแสดง |
|------|--------------|-------------------|
| 1 | ~3,000 คำ | สอนดีในห้องเรียนตัวเอง |
| 2 | ~3,000 คำ | สอนดี + ช่วยเพื่อนอาจารย์ + นวัตกรรม + self-evaluation |
| 3 | ~5,000 คำ | สอนดี + วิจัยในชั้นเรียน + นวัตกรรมการประเมิน + impact ระดับหลักสูตร + ผู้นำวิชาชีพ |

สร้างไฟล์จาก `~/.hermes/skills/psf-writer/PSF_structure.md`:
- `PSF_part2.md`
- `PSF_part3.md`

ทดสอบ pandoc:
```bash
pandoc PSF_part3.md -o PSF_part3.docx --reference-doc=$HOME/.hermes/psf_template.docx
```

**Evidence Pre-check** — อ่าน `teaching_cases.md` และแสดงสรุปให้อาจารย์เห็นก่อนเขียน:

```
📋 Evidence Pre-check

กรณีที่ 1 — [ชื่อวิชา]
✅ พร้อมใช้:    [รายการ]
⚠️ ควรมีเสริม:  [รายการ]
📝 คำบอกเล่า:   [รายการ — ใช้ได้ แต่จะระบุในเนื้อหาว่าไม่มีเอกสารยืนยัน]

กรณีที่ 2 — [ชื่อวิชา]
✅ พร้อมใช้:    [รายการ]
⚠️ ควรมีเสริม:  [รายการ]
📝 คำบอกเล่า:   [รายการ]
```

แจ้งอาจารย์: claim ที่ไม่มีหลักฐานจะเขียนด้วยภาษาระมัดระวัง ไม่ยืนยันเกินข้อมูล รอ confirm → ไป **ขั้นตอนที่ 2**

---

## ขั้นตอนที่ 2: เขียน Part 2 (ประวัติตนเอง)

1. อ่าน `cv_background.md`
2. เขียน `PSF_part2.md` ครอบคลุม: คุณวุฒิการศึกษาเรียงจากสูงสุด / ประสบการณ์สอนและพัฒนาวิชาชีพ / ตารางภาระงานสอน 3 ปีล่าสุด ความยาวรวมไม่เกิน 1 หน้า A4
3. Render → แจ้งอาจารย์ตรวจสอบ → รอ approve ก่อนไปต่อ

---

## ขั้นตอนที่ 3: เขียน Part 3 (Reflective Writing)

### 3a. วิเคราะห์ก่อนเขียน

อ่าน `teaching_cases.md` แล้ว mapping:
- dimension ร/ส/ค ที่เกี่ยวข้องกับแต่ละด้าน
- educational principles ที่สนับสนุน
- evidence ที่มีในไฟล์

แสดง mapping ให้อาจารย์ยืนยันทิศทางก่อนเขียน

### 3b. เขียน reflective writing

เขียนตาม model **What–So What–Now What** ทุกย่อหน้า:
- **What:** อธิบายสิ่งที่ทำพร้อม context
- **So What:** วิเคราะห์เชิงวิพากษ์ — *ค้นพบอะไร* (ไม่ใช่แค่บอกว่าใช้เครื่องมืออะไร) พร้อมหลักฐาน เชื่อมกับ educational principle
- **Now What:** เปลี่ยนแปลงการสอนอย่างไรจริง ๆ — เฉพาะเจาะจง ไม่ใช่แค่ "จะพัฒนาต่อ"

**กฎที่ต้องทำทุกระดับ:**
- ทุก claim มี **(ร x.x.x)** / **(ส x.x.x)** / **(ค x.x.x)** กำกับ
- Educational principles กระจายในเนื้อหา ไม่แยก section
- ใช้เฉพาะข้อมูลใน `teaching_cases.md` ห้ามแต่งเพิ่ม
- เขียน first person ("ข้าพเจ้า...")
- ต้องมี limitation อย่างน้อย 1 จุดต่อกรณีศึกษา
- **กฎ: method ≠ evidence** — อธิบายว่าใช้เครื่องมืออะไรไม่ใช่หลักฐาน หลักฐานคือสิ่งที่ค้นพบจากการใช้เครื่องมือนั้น

**เพิ่มตามระดับ:**

ระดับ 2 — ต้องมีเพิ่ม:
- การแลกเปลี่ยน/ช่วยเพื่อนอาจารย์อย่างเป็นรูปธรรม (ร 1.2.x, ส 2.x.x)
- นวัตกรรมการสอนพร้อมผลที่วัดได้ (ส 2.2.x)
- การประเมินและปรับปรุงตนเองอย่างเป็นระบบ (ส 2.4.x)

ระดับ 3 — ต้องมีทั้งหมดของระดับ 2 และเพิ่ม:
- วิจัยในชั้นเรียน + ผลลัพธ์เชิงเนื้อหา (ส 3.1.x)
- นวัตกรรมการประเมิน — แยกให้ชัดจากนวัตกรรมการสอน (ส 3.3.x)
- Impact ระดับหลักสูตร (ส 3.2.x)
- บทบาทที่ปรึกษา/พี่เลี้ยงอาจารย์ในองค์กร (ร 3.x.x, ค 3.x.x)
- ความเป็นผู้นำด้านจรรยาบรรณ (ค 3.2.x)

### 3c. Render และ approve

```bash
pandoc PSF_part3.md -o PSF_part3.docx --reference-doc=$HOME/.hermes/psf_template.docx
```

รอ approve กรณีที่ 1 ก่อนเขียนกรณีที่ 2 แล้วทำ 3a–3c ซ้ำสำหรับกรณีที่ 2

### 3d. ส่วนค่านิยม (ค 3.1 / ค 3.2)

เพิ่มส่วนท้าย `PSF_part3.md` ด้วยเนื้อหาการพัฒนาตนเองและจรรยาบรรณ อ่านจากส่วนการพัฒนาวิชาชีพใน `teaching_cases.md` Render → รอ approve

---

## ขั้นตอนที่ 4: Revision Mode (ใช้เมื่อมี PSF_review.md)

### 4a. อ่านและสรุป review

อ่าน `PSF_review.md` ทั้งหมด แล้วแจ้งอาจารย์:

> "ผลการตรวจมีข้อเสนอแนะทั้งหมด [N] จุดครับ:
> **Part 2:** [รายการ] **Part 3:** [รายการ]
> จะ confirm ทีละจุดนะครับ"

### 4b. ถามทีละจุด

สำหรับแต่ละข้อใน review:

> "**จุดที่ [N]:** [สรุปปัญหา]
> reviewer แนะนำให้ปรับเป็น: [ตัวอย่างจาก PSF_review.md]
> อาจารย์ยอมรับการแก้ไขนี้มั้ยครับ? (ใช่ / ไม่ / แก้เองแล้ว)"

รอคำตอบก่อนไปจุดถัดไปทุกครั้ง

### 4c. เขียน version ใหม่

หลัง confirm ครบทุกจุด:

1. ตรวจ version ล่าสุด:
```bash
ls PSF_part3_v*.md 2>/dev/null | sort -V | tail -1
ls PSF_part2_v*.md 2>/dev/null | sort -V | tail -1
```

2. เขียนเฉพาะจุดที่ approve บันทึกเป็น `PSF_part2_v[N].md` / `PSF_part3_v[N].md` **ห้ามแตะต้นฉบับและ version ก่อนหน้า**

3. Render:
```bash
pandoc PSF_part3_v[N].md -o PSF_part3_v[N].docx --reference-doc=$HOME/.hermes/psf_template.docx
```

4. แสดง diff summary:
```
📝 แก้ไขแล้ว: ✓ [section] — [สิ่งที่เปลี่ยน]
ไม่ได้แก้:   [section] — อาจารย์ปฏิเสธ/แก้เองแล้ว
```

---

## ขั้นตอนที่ 5: Export สุดท้าย

```bash
pandoc PSF_part2.md PSF_part3_v[N].md -o PSF_Application.docx \
  --reference-doc=$HOME/.hermes/psf_template.docx

pandoc PSF_part2.md PSF_part3_v[N].md -o PSF_Application.pdf \
  --pdf-engine=xelatex \
  --include-in-header=$HOME/.hermes/thai_pdf.tex
```

(ถ้า Part 2 มี version ใหม่ด้วย ให้ใช้ `PSF_part2_v[N].md`)

แจ้งอาจารย์: ไฟล์ `.md` ทุก version เก็บครบ / `PSF_Application.docx` สำหรับตรวจสอบ / `PSF_Application.pdf` สำหรับ submit

---

## Revision Loop ทั่วไป

หลัง render แต่ละส่วน วน loop จนอาจารย์ยืนยัน:

```
render → แจ้งอาจารย์ตรวจสอบ → รอ comment
  ├── มี comment → แก้เฉพาะจุดที่ระบุ → re-render → วนซ้ำ
  └── "ผ่าน" / "ตกลง" / "โอเค" → ไปขั้นตอนถัดไป
```

- แก้เฉพาะจุดที่อาจารย์ระบุ ห้ามแตะส่วนอื่น
- Re-render ทันทีทุกครั้งที่แก้
- ถ้า comment ไม่ชัดเจน → ถามให้ชัดก่อนแก้
- ห้ามไปขั้นตอนถัดไปจนกว่าจะได้รับคำยืนยันชัดเจน
