ENDEAVOR LOCAL AGENT TH
Local agent ภาษาไทยเต็มรูปแบบ ขับเคลื่อนด้วย Qwen3.6-35B ผ่าน MLX และ LangGraph ReAct Agent
ต้องการเครื่อง: Mac Apple Silicon, RAM 48GB ขึ้นไป (สำหรับโมเดล 35B) — เครื่อง RAM น้อยกว่านี้ใช้ Qwen3-14B แทนได้
ดูซอร์สโค้ดบน GitHub → · ดาวน์โหลด →
บทความในหมวดนี้
เริ่มต้นใช้งาน ENDEAVOR LOCAL AGENT TH
Local agent ภาษาไทยเต็มรูปแบบ ขับเคลื่อนด้วย Qwen3.6-35B ผ่าน MLX และ LangGraph ReAct Agent — รันบนเครื่อง 100% ไม่มี API key
ENDEAVOR LOCAL AGENT TH ทำงานอย่างไร — เจาะลึกสถาปัตยกรรม
ทำไมโมเดล 35B ถึงวางแผนก่อนลงมือได้ — planner จัดหมวด simple/complex กลไกบังคับสร้างแผนแบบ deterministic ระบบ sandbox สองชั้น standing trigger ที่ทำงานเองโดยไม่ต้องมีคนพิมพ์ และ 26 เครื่องมือ
Tool: web_search — ค้นเว็บแล้วคืนแค่สรุป ไม่ยัด context เต็มก้อน
เจาะลึกว่า web_search ของ ENDEAVOR LOCAL AGENT TH ดึงเนื้อหาเต็มหน้าจริงมาสรุปด้วยโมเดล 35B ตัวเดียวกัน แล้วเก็บ raw ไว้ใน cache แยกจาก context อย่างไร
Tool: recall_web — ดึงเนื้อหาเต็มจาก cache โดยไม่ต้องพิมพ์สรุปซ้ำ
เจาะลึกว่า recall_web ของ ENDEAVOR LOCAL AGENT TH ดึงเนื้อหาดิบที่ web_search เคยเก็บไว้กลับมาได้อย่างไร รวมถึง auto re-fetch เมื่อ cache หมดอายุ
Tool: browse_url — อ่าน URL เดียวผ่าน Jina Reader โดยไม่ต้องเปิด browser
เจาะลึกว่า browse_url ของ ENDEAVOR LOCAL AGENT TH ดึงเนื้อหาหน้าเว็บที่ render ด้วย JavaScript ผ่านบริการ Jina Reader ได้อย่างไร โดยไม่ต้องรัน browser จริง
Tool: browser_use — agent ย่อยที่รัน browser จริงเมื่อ login/กรอกฟอร์มจำเป็น
เจาะลึกว่า browser_use ของ ENDEAVOR LOCAL AGENT TH เรียกใช้ AI agent ตัวที่สอง (browser-use + Playwright) ขับเคลื่อนด้วยโมเดลตัวเดียวกันในเครื่อง เพื่อคลิก/scroll/กรอกฟอร์มแทนคน
Tool: fetch_sitemap — ดึงรายชื่อ URL ครบทั้งเว็บจาก sitemap.xml แทนการค้นทีละหน้า
เจาะลึกว่า fetch_sitemap ของ ENDEAVOR LOCAL AGENT TH ใช้ sitemap.xml ที่เว็บไซต์เผยแพร่เองเพื่อดึงรายการ URL ครบถ้วนในครั้งเดียว แทนการพึ่ง web_search ที่คืนแค่บางหน้า
Tool: batch_browse — อ่านหลาย URL ในคำเรียกเดียว ด้วยสถาปัตยกรรม 2 เฟสที่กัน LLM ชนกัน
เจาะลึกว่า batch_browse ของ ENDEAVOR LOCAL AGENT TH แยกขั้นดึง HTTP แบบขนานออกจากขั้นสรุปด้วย LLM แบบเรียงคิวอย่างไร เพื่อแก้ปัญหา thread ทับซ้อนกันที่ MLX server รับพร้อมกันไม่ได้
Tool: scrape_table — ดึงตารางจากเว็บ JS-rendered แบบ deterministic ไม่พึ่ง AI
เจาะลึกว่า scrape_table ของ ENDEAVOR LOCAL AGENT TH ใช้ Playwright + pandas.read_html ดึงตารางตัวเลขจากเว็บที่ render ด้วย React/Vue มาเป็น CSV โดยไม่ต้องผ่านโมเดล AI เลย
Tool: bash — shell เต็มรูปแบบที่ป้องกันด้วย sandbox ระดับ OS แทน allow-list
เจาะลึกว่า bash ของ ENDEAVOR LOCAL AGENT TH ต่างจาก AGENT LITE อย่างไร — เปิดให้รันคำสั่งอะไรก็ได้ แต่ล็อกการเขียนไฟล์ด้วย macOS sandbox-exec profile แทนการจำกัดรายชื่อคำสั่ง
Tool: python_exec — รันโค้ด Python ในอินเทอร์พรีเตอร์เดียวกับที่ขับเคลื่อน agent
เจาะลึกว่า python_exec ของ ENDEAVOR LOCAL AGENT TH รันโค้ดวิเคราะห์ข้อมูลด้วย pandas/numpy โดยไม่ต้องผ่าน shell escaping ที่ยุ่งยากของ bash -c ได้อย่างไร
Tool: plot — สร้างกราฟที่ตัวอักษรไทยไม่บิดเบี้ยว ด้วยการ render ผ่าน CoreText
เจาะลึกว่า plot ของ ENDEAVOR LOCAL AGENT TH แก้ปัญหา matplotlib วาดสระ/วรรณยุกต์ไทยลอยผิดตำแหน่งอย่างไร ด้วยการ render ข้อความไทยแยกผ่าน macOS CoreText แล้ววางทับภาพกราฟอีกที
Tool: read_file — สุ่มตัวอย่างเอกสารใหญ่แบบปักหมุดคำที่ query ถามถึงไม่ให้หายไป
เจาะลึกว่า read_file ของ ENDEAVOR LOCAL AGENT TH สร้าง structure map สำหรับไฟล์โค้ดใหญ่ และสุ่มตัวอย่างเอกสารใหญ่แบบ query-aware ไม่ให้ตัวเลขสำคัญหายไปตอน sample
Tool: write_file — สร้างไฟล์ใหม่แบบ atomic เท่านั้น ไม่ใช่สำหรับแก้ไฟล์เดิม
เจาะลึกว่า write_file ของ ENDEAVOR LOCAL AGENT TH ถูกจำกัดขอบเขตให้สร้างไฟล์ใหม่เท่านั้น แยกหน้าที่ออกจาก edit อย่างชัดเจน เพื่อป้องกันการเขียนทับไฟล์เดิมโดยไม่ตั้งใจ
Tool: edit — แก้ไฟล์แบบ find-and-replace พร้อม fallback กันช่องว่างไม่ตรงกัน
เจาะลึกว่า edit ของ ENDEAVOR LOCAL AGENT TH แก้ไฟล์เดิมแบบ surgical โดยบังคับให้ข้อความเดิมต้องไม่กำกวม พร้อมกลไก normalize whitespace ที่กู้การแก้ไขที่พลาดแค่ trailing space
Tool: grep — ค้น regex ข้ามไฟล์พร้อมกันไฟ ReDoS จากบรรทัดที่ยาวผิดปกติ
เจาะลึกว่า grep ของ ENDEAVOR LOCAL AGENT TH ค้นหาข้อความข้ามไฟล์หลายไฟล์พร้อมกันด้วย regex อย่างไร และทำไมถึงข้ามบรรทัดที่ยาวเกิน 2,000 ตัวอักษรโดยตั้งใจ
Tool: workspace_ls — บังคับให้ agent ดูรายชื่อไฟล์จริงก่อนอ้าง path เอง
เจาะลึกว่า workspace_ls ของ ENDEAVOR LOCAL AGENT TH ป้องกันโมเดลเดา path ไฟล์แบบผิดๆ อย่างไร และทำไมมันถึงเป็น hard rule ก่อนเรียก tool_loop แบบอ่านหลายไฟล์
Tool: read_image — OCR ล้วนๆ ไม่มี vision model เพราะโมเดล 35B เป็น text-only
เจาะลึกว่า read_image ของ ENDEAVOR LOCAL AGENT TH ใช้ Apple Vision OCR อย่างเดียวโดยไม่คิวภาพให้โมเดลดู ต่างจาก AGENT LITE อย่างไร รวมถึงการอ่านหน้าจอ (screen) และ URL ภาพจากเว็บ
Tool: remember — 4 โหมดจัดการความจำถาวร พร้อม conflict-scan และ compaction ด้วย LLM
เจาะลึกว่า remember ของ ENDEAVOR LOCAL AGENT TH บันทึกความจำระยะยาวลง memory.md อย่างไร — append/replace/forget/insert, การเช็ค conflict อัตโนมัติด้วย LLM ตอนเขียนทุกครั้ง, และ compaction ด้วย LLM แทนการตัดบรรทัดเก่าทิ้งดื้อๆ เมื่อไฟล์ใหญ่เกิน
Tool: create_plan — ให้โมเดลตัวเบาที่ temperature=0 วางแผน แทน main agent วางแผนเอง
เจาะลึกว่า create_plan ของ ENDEAVOR LOCAL AGENT TH เรียก planner LLM แยกที่ตั้งค่าเฉพาะทางมาวางแผนงานหลายขั้นตอน แทนที่จะให้ main agent (temperature สูงกว่า) คิดขั้นตอนเอง
Tool: tool_loop — วน loop ด้วย Python ล้วนๆ โมเดลเรียกครั้งเดียว ไม่มีทางหลุด
เจาะลึกว่า tool_loop ของ ENDEAVOR LOCAL AGENT TH ประมวลผลรายการสิบหรือร้อยรายการโดยไม่พึ่งให้โมเดลวนเรียก tool ซ้ำเองทีละรอบ ซึ่งเป็นจุดที่โมเดลมักหลุด loop กลางทาง