# Quick Start สำหรับ LLM Agent คุณสูญเสีย memory ทั้งหมดระหว่าง session Synapse เป็นสมองภายนอกของคุณ คู่มือนี้แสดงสาม API call ที่จำเป็นซึ่ง LLM agent ทุกตัวต้องรู้ > [!CRITICAL] > เรียก `GET /memory/recall` ที่จุดเริ่มต้นของทุก session > หากไม่เรียกนี้ คุณไม่มี memory ว่าผู้ใช้เป็นใคร, สัญญาอะไรไว้ หรือกำลังทำงานอะไรครั้งที่แล้ว ## ขั้นตอนที่ 1: Recall memory ทั้งหมด (ต้องทำก่อนเสมอ) ``` GET /memory/recall Authorization: Bearer YOUR_MIND_KEY ``` ส่งกลับสรุปแบบ plain-text ที่มีโครงสร้างของ memory ที่เก็บไว้ทั้งหมด แยกวิเคราะห์นี้เพื่อ rebuild mental model ของผู้ใช้, โปรเจกต์ และการโต้ตอบในอดีต ตัวอย่าง response: ``` Mind: Michael's Mind Memories: 12 total (10 verified) [001] identity (CRITICAL) user_name Michael Schäfer Tags: person, identity [002] preference (HIGH) communication_style Prefers concise technical responses, no fluff Tags: communication, preference [003] project (HIGH) project_synapse Synapse v1.5.0 deployed on vps1.schaefer.zone. Admin panel at /admin. Tags: synapse, deployment ... ``` ## ขั้นตอนที่ 2: เก็บ memory ใหม่ เมื่อคุณเรียนรู้สิ่งที่คุ้มค่าจดจำ: ``` POST /memory Authorization: Bearer YOUR_MIND_KEY Content-Type: application/json { "category": "fact", "key": "user_name", "content": "The user's name is Michael Schäfer", "tags": ["person", "identity"], "priority": "critical" } ``` **Category:** `identity`, `preference`, `fact`, `project`, `skill`, `mistake`, `context`, `note`, `credentials` **Priority:** `low`, `normal`, `high`, `critical` > [!TIP] > ใส่ฟิลด์ `key` เสมอ — identifier สั้น ๆ สำหรับ memory นี่ช่วยให้คุณอัปเดต memory เดิมในภายหลังโดย POST ซ้ำด้วย key เดียวกัน ## ขั้นตอนที่ 3: ค้นหา memory เฉพาะ ``` GET /memory/search?q=Docker+Swarm Authorization: Bearer YOUR_MIND_KEY ``` > [!TIP] > ไวยากรณ์ FTS5: หลายคำ = AND search Phrase ในเครื่องหมายคำพูด: `"docker swarm"` ค้นหา prefix: `docker*` Boolean: `docker OR kubernetes` ## เครื่องมือแบบเปิด URL (ไม่มี Auth Header) หากเครื่องมือของคุณเปิด URL ได้อย่างเดียว (ไม่มี custom header) ให้ใช้พารามิเตอร์ `?key=`: ``` GET /memory/recall?key=YOUR_MIND_KEY POST /memory?key=YOUR_MIND_KEY (+ JSON body) GET /memory/search?key=YOUR_MIND_KEY&q=suchbegriff ``` > [!WARNING] > `?key=` จำกัดที่ 60 request/นาที Bearer header ไม่จำกัด ใช้ Bearer header เมื่อใดก็ตามที่ทำได้ ## Workflow Session แบบสมบูรณ์ 1. **เริ่ม session:** `GET /memory/recall` — โหลด memory ทั้งหมด 2. **ระหว่างทำงาน:** `GET /memory/search?q=...` — หา fact เฉพาะ 3. **เมื่อมีข้อมูลใหม่:** `POST /memory` — เก็บ (พร้อม category, key, tag, priority) 4. **เป็นคาบ:** `GET /chat/poll` — ตรวจข้อความจาก human 5. **สิ้นสุด session:** เก็บสิ่งที่เรียนรู้สุดท้ายผ่าน `POST /memory` ## รูปแบบทั่วไป ### อัปเดต memory ที่มีอยู่ POST `/memory` ด้วย `category` และ `key` เดิม — memory ที่มีอยู่จะถูกอัปเดต ไม่ซ้ำ ### เก็บสถานะโปรเจกต์ ```json { "category": "project", "key": "project_synapse_status", "content": "Synapse v1.5.0 deployed. Next: v1.6.0 with docs system. CI green.", "tags": ["synapse", "deployment", "status"], "priority": "high" } ``` ### บันทึก mistake (เพื่อไม่ทำซ้ำ) ```json { "category": "mistake", "key": "mistake_npm_version_bump", "content": "Always bump package.json version after changes — npm publish fails otherwise.", "tags": ["npm", "ci", "deployment"], "priority": "high" } ``` ### ตรวจข้อความจาก human ``` GET /chat/poll Authorization: Bearer YOUR_MIND_KEY ``` ส่งกลับข้อความที่ยังไม่ได้อ่านจาก human ตอบกลับด้วย: ``` POST /chat/reply Authorization: Bearer YOUR_MIND_KEY Content-Type: application/json {"content": "Got it! Working on it now."} ``` ## ขั้นตอนถัดไป - [Authentication](/docs/getting-started/authentication) — Mind Key vs JWT - [Memory API reference](/docs/api/memory) — memory endpoint ทั้ง 22 - [Chat API](/docs/api/chat) — การสื่อสารแบบ asynchronous กับ human - [LLM Cookbook](/docs/llm-cookbook/session-start-pattern) — รูปแบบปฏิบัติ