---
read_when:
    - คุณต้องการทำความเข้าใจการกำหนดเส้นทางและการแยกเซสชัน
    - คุณต้องการกำหนดค่า DM scope สำหรับการตั้งค่าแบบหลายผู้ใช้
summary: วิธีที่ OpenClaw จัดการเซสชันการสนทนา
title: การจัดการเซสชัน
x-i18n:
    generated_at: "2026-04-23T05:31:47Z"
    model: gpt-5.4
    provider: openai
    source_hash: d099ef7f3b484cf0fa45ddbf5648a7497d6509209e4de08c8484102eca073a2b
    source_path: concepts/session.md
    workflow: 15
---

# การจัดการเซสชัน

OpenClaw จัดระเบียบบทสนทนาเป็น **เซสชัน** แต่ละข้อความจะถูกกำหนดเส้นทางไปยัง
เซสชันตามแหล่งที่มา -- DM แชตกลุ่ม Cron job เป็นต้น

## วิธีการกำหนดเส้นทางข้อความ

| แหล่งที่มา      | พฤติกรรม                  |
| --------------- | ------------------------- |
| ข้อความโดยตรง   | ใช้เซสชันร่วมกันโดยค่าเริ่มต้น |
| แชตกลุ่ม        | แยกต่อกลุ่ม              |
| ห้อง/ช่องทาง    | แยกต่อห้อง               |
| Cron job        | เซสชันใหม่ทุกครั้งที่รัน |
| Webhook         | แยกต่อ hook              |

## การแยก DM

โดยค่าเริ่มต้น DM ทั้งหมดจะใช้เซสชันเดียวกันเพื่อความต่อเนื่อง ซึ่งเหมาะกับ
การตั้งค่าแบบผู้ใช้คนเดียว

<Warning>
หากมีหลายคนที่สามารถส่งข้อความถึงเอเจนต์ของคุณได้ ให้เปิดใช้การแยก DM หากไม่ทำเช่นนั้น
ผู้ใช้ทุกคนจะใช้บริบทการสนทนาเดียวกัน -- ข้อความส่วนตัวของ Alice จะมองเห็นได้โดย Bob
</Warning>

**วิธีแก้:**

```json5
{
  session: {
    dmScope: "per-channel-peer", // แยกตามช่องทาง + ผู้ส่ง
  },
}
```

ตัวเลือกอื่น:

- `main` (ค่าเริ่มต้น) -- DM ทั้งหมดใช้เซสชันเดียวกัน
- `per-peer` -- แยกตามผู้ส่ง (ข้ามทุกช่องทาง)
- `per-channel-peer` -- แยกตามช่องทาง + ผู้ส่ง (แนะนำ)
- `per-account-channel-peer` -- แยกตามบัญชี + ช่องทาง + ผู้ส่ง

<Tip>
หากบุคคลเดียวกันติดต่อคุณมาจากหลายช่องทาง ให้ใช้
`session.identityLinks` เพื่อเชื่อมตัวตนเหล่านั้นให้ใช้เซสชันเดียวกัน
</Tip>

ตรวจสอบการตั้งค่าของคุณด้วย `openclaw security audit`

## วงจรชีวิตของเซสชัน

เซสชันจะถูกนำกลับมาใช้ใหม่จนกว่าจะหมดอายุ:

- **รีเซ็ตรายวัน** (ค่าเริ่มต้น) -- สร้างเซสชันใหม่เวลา 4:00 AM ตามเวลาท้องถิ่นของโฮสต์ gateway
- **รีเซ็ตเมื่อว่าง** (ไม่บังคับ) -- สร้างเซสชันใหม่หลังไม่มีการใช้งานช่วงหนึ่ง ตั้งค่า
  `session.reset.idleMinutes`
- **รีเซ็ตด้วยตนเอง** -- พิมพ์ `/new` หรือ `/reset` ในแชต `/new <model>` ยัง
  ใช้สำหรับเปลี่ยนโมเดลด้วย

เมื่อกำหนดทั้งการรีเซ็ตรายวันและการรีเซ็ตเมื่อว่างไว้ ระบบจะยึดตัวที่หมดอายุก่อน

เซสชันที่มีเซสชัน CLI แบบ provider-owned ที่ยังใช้งานอยู่จะไม่ถูกตัดโดยค่าเริ่มต้นรายวันแบบ implicit
ใช้ `/reset` หรือกำหนดค่า `session.reset` อย่างชัดเจนเมื่อเซสชันเหล่านั้นควรหมดอายุตามเวลา

## ตำแหน่งที่เก็บสถานะ

สถานะของเซสชันทั้งหมดเป็นของ **gateway** ไคลเอนต์ UI จะสอบถาม gateway เพื่อขอ
ข้อมูลเซสชัน

- **Store:** `~/.openclaw/agents/<agentId>/sessions/sessions.json`
- **ทรานสคริปต์:** `~/.openclaw/agents/<agentId>/sessions/<sessionId>.jsonl`

## การบำรุงรักษาเซสชัน

OpenClaw จะควบคุมขนาดที่เก็บของเซสชันโดยอัตโนมัติเมื่อเวลาผ่านไป โดยค่าเริ่มต้น จะทำงาน
ในโหมด `warn` (รายงานสิ่งที่จะถูกล้าง) ตั้งค่า `session.maintenance.mode`
เป็น `"enforce"` เพื่อให้ล้างอัตโนมัติ:

```json5
{
  session: {
    maintenance: {
      mode: "enforce",
      pruneAfter: "30d",
      maxEntries: 500,
    },
  },
}
```

ดูตัวอย่างล่วงหน้าด้วย `openclaw sessions cleanup --dry-run`

## การตรวจสอบเซสชัน

- `openclaw status` -- พาธของ session store และกิจกรรมล่าสุด
- `openclaw sessions --json` -- ทุกเซสชัน (กรองด้วย `--active <minutes>`)
- `/status` ในแชต -- การใช้บริบท โมเดล และสวิตช์ต่าง ๆ
- `/context list` -- สิ่งที่อยู่ใน system prompt

## อ่านเพิ่มเติม

- [Session Pruning](/th/concepts/session-pruning) -- การตัดผลลัพธ์ของเครื่องมือ
- [Compaction](/th/concepts/compaction) -- การสรุปบทสนทนายาว
- [Session Tools](/th/concepts/session-tool) -- เครื่องมือของเอเจนต์สำหรับงานข้ามเซสชัน
- [Session Management Deep Dive](/th/reference/session-management-compaction) --
  schema ของ store, ทรานสคริปต์, นโยบายการส่ง, metadata ของต้นทาง และการกำหนดค่าขั้นสูง
- [Multi-Agent](/th/concepts/multi-agent) — การกำหนดเส้นทางและการแยกเซสชันข้ามเอเจนต์
- [Background Tasks](/th/automation/tasks) — วิธีที่งานแบบ detached สร้าง task record พร้อมการอ้างอิงเซสชัน
- [Channel Routing](/th/channels/channel-routing) — วิธีที่ข้อความขาเข้าถูกกำหนดเส้นทางไปยังเซสชัน
