8.1 KiB
name, description, version, scope, depends-on, user-invocable
| name | description | version | scope | depends-on | user-invocable |
|---|---|---|---|---|---|
| save-memory | บันทึก session log และอัปเดต project memory ตามโครงสร้างใหม่ | 1.9.0 | project-management | true |
บันทึก Memory (Save Memory)
Skill นี้ใช้สำหรับบันทึก session log และอัปเดต project memory ตามโครงสร้างใหม่ที่ reorganization แล้ว
โครงสร้าง Memory ใหม่
memory/
├── README.md (index + overview)
├── mcp-tools.md (MCP MariaDB + Memory Tools)
└── project-memory-override.md (OS rules, Current Decisions, Environment, Next Session Focus)
specs/88-logs/
├── rollouts.md (Recent rollouts table)
└── session-YYYY-MM-DD-[topic].md (Session logs)
ขั้นตอนการบันทึก Memory
1. สร้าง Session Log (ถ้ามีงาน session ใหม่)
เมื่อทำงาน session ใหม่ให้:
-
สร้างไฟล์ session log ใหม่ ใน
specs/88-logs/- ชื่อไฟล์:
session-YYYY-MM-DD-[topic].md - ตัวอย่าง:
session-2026-06-07-memory-reorganization.md
- ชื่อไฟล์:
-
บันทึกเนื้อหาใน session log:
# Session [N] — YYYY-MM-DD ([Topic]) ## Summary [สรุปสิ่งที่ทำใน session นี้] ## ปัญหาที่พบ (Root Cause) [อธิบายปัญหาและสาเหตุ] ## การแก้ไข (Fix) | ไฟล์ | การเปลี่ยนแปลง | | -------------- | ---------------------- | | [path/to/file] | [อธิบายการเปลี่ยนแปลง] | ## กฎที่ Lock แล้ว [บันทึก pattern หรือ decision ที่ตกลง] ## Verification [วิธีตรวจสอบว่างานสำเร็จ] -
อัปเดต
specs/88-logs/rollouts.md- เพิ่ม entry ใหม่ในตาราง Recent Rollouts
- รูปแบบ:
| วันที่ | Version | รายการ | สถานะ |
2. อัปเดต Project Memory (ถ้ามี decision ใหม่)
เมื่อมีการตัดสินใจสำคัญใหม่ให้:
-
เปิดไฟล์
memory/project-memory-override.md -
อัปเดตตาราง "Current Decisions (Locked)"
- เพิ่ม entry ใหม่ถ้ามี decision ใหม่
- รูปแบบ:
| ID | Decision | ADR |
-
อัปเดต "Next Session Focus"
- เพิ่มงานใหม่ถ้ามี
- ทำเครื่องหมาย
[ ]สำหรับงานที่ยังไม่เสร็จ - ทำเครื่องหมาย
[X]สำหรับงานที่เสร็จแล้ว
-
อัปเดต "Environment & Services" (ถ้ามีการเปลี่ยนแปลง)
- อัปเดต URL, port, หรือ notes ถ้ามีการเปลี่ยน infrastructure
3. อัปเดต MCP Tools (ถ้ามี tools ใหม่)
เมื่อมี MCP tools ใหม่ให้:
-
เปิดไฟล์
memory/mcp-tools.md -
เพิ่ม tool ใหม่ในตาราง "Available Tools"
- รูปแบบ:
| Tool | Purpose | Example Usage |
- รูปแบบ:
-
เพิ่ม usage example และ warnings ถ้าจำเป็น
4. อัปเดต Root Documentation (ถ้ามีการเปลี่ยนแปลง)
เมื่อมีการเปลี่ยนแปลงที่ส่งผลต่อเอกสารระดับ root ให้:
-
ARCHITECTURE.md — อัปเดตเมื่อ:
- เปลี่ยน architecture หลัก
- เพิ่ม/ลบ component สำคัญ
- เปลี่ยน data flow หรือ integration pattern
-
CHANGELOG.md — อัปเดตเมื่อ:
- Deploy version ใหม่
- เพิ่ม feature หรือ breaking change สำคัญ
- รูปแบบ:
## [version] (YYYY-MM-DD)→### feat(scope): description
-
CONTEXT.md — อัปเดตเมื่อ:
- เปลี่ยน domain terminology หลัก
- เพิ่ม concept ใหม่ที่ใช้ทั่ว project
- อัปเดต glossary หรือ business rules
-
CONTRIBUTING.md — อัปเดตเมื่อ:
- เปลี่ยน workflow การทำงาน
- เพิ่ม/เปลี่ยน coding standards
- อัปเดต CI/CD process
-
README.md — อัปเดตเมื่อ:
- เปลี่ยน project structure
- เพิ่ม/เปลี่ยน installation steps
- อัปเดต feature overview หรือ tech stack
Template สำหรับ Session Log
# Session [N] — YYYY-MM-DD ([Topic])
## Summary
[สรุปสิ่งที่ทำใน session นี้ใน 1-2 ประโยค]
## ปัญหาที่พบ (Root Cause)
[อธิบายปัญหาและสาเหตุหลัก]
## การแก้ไข (Fix)
| ไฟล์ | การเปลี่ยนแปลง |
| -------------- | ---------------------- |
| `path/to/file` | [อธิบายการเปลี่ยนแปลง] |
## กฎที่ Lock แล้ว
[บันทึก pattern หรือ decision ที่ตกลงและไม่ควรเปลี่ยน]
## Verification
- [ ] [check 1]
- [ ] [check 2]
ข้อควรระวัง
- ห้าม บันทึก rules ที่ซ้ำกับ specs/ (ADRs, glossary, guidelines)
- ห้าม บันทึก commands ที่ซ้ำกับ specs/05-Engineering-Guidelines/
- ห้าม บันทึก environment ที่ซ้ำกับ specs/04-Infrastructure-OPS/
- ใช้
specs/88-logs/สำหรับ session history และ rollouts - ใช้
memory/project-memory-override.mdสำหรับ OS rules, decisions, environment ที่ไม่มีใน specs - ใช้
memory/mcp-tools.mdสำหรับ MCP tools documentation - อัปเดต Root Documentation (ARCHITECTURE.md, CHANGELOG.md, CONTEXT.md, CONTRIBUTING.md, README.md) เฉพาะเมื่อมีการเปลี่ยนแปลงที่ส่งผลต่อ project architecture, version, terminology, workflow หรือ structure
ตัวอย่างการใช้งาน
กรณีที่ 1: ทำงาน session ใหม่
1. สร้างไฟล์ specs/88-logs/session-2026-06-07-bug-fix.md
2. บันทึกปัญหา, การแก้ไข, verification
3. อัปเดต specs/88-logs/rollouts.md
กรณีที่ 2: มี decision ใหม่
1. เปิด memory/project-memory-override.md
2. เพิ่ม entry ใหม่ในตาราง Current Decisions
3. อัปเดต Next Session Focus
กรณีที่ 3: เปลี่ยน infrastructure
1. เปิด memory/project-memory-override.md
2. อัปเดตตาราง Environment & Services
3. อัปเดต Key Environment Variables ถ้าจำเป็น
กรณีที่ 4: อัปเดต Root Documentation
1. ตรวจสอบว่ามีการเปลี่ยนแปลงที่ส่งผลต่อ ARCHITECTURE.md, CHANGELOG.md, CONTEXT.md, CONTRIBUTING.md, หรือ README.md
2. อัปเดตไฟล์ที่เกี่ยวข้องตามรูปแบบที่กำหนด
3. ตรวจสอบว่าการเปลี่ยนแปลงสอดคล้องกับ specs/ และ ADRs